]> Frank Brehm's Git Trees - scripts/solaris.git/commitdiff
Loeschen einer SMS ebenfalls unter timeout
authorFrank Brehm <frank@brehm-online.com>
Thu, 20 Oct 2005 08:59:55 +0000 (08:59 +0000)
committerFrank Brehm <frank@brehm-online.com>
Thu, 20 Oct 2005 08:59:55 +0000 (08:59 +0000)
smsd.pl

diff --git a/smsd.pl b/smsd.pl
index e6a99e5ba3f660f41464492867ea18000cf7339c..42ac4a74115b55bf03102bc0cba9c9452995c71a 100755 (executable)
--- a/smsd.pl
+++ b/smsd.pl
@@ -684,11 +684,23 @@ sub do_incoming() {
       $error_code = 0;
       $result = '';
       unless ( $test ) {
-        $result = `$CmdLine`;
-        $error_code = $?;
+
+        {
+          local $SIG{'ALRM'} = sub { die "Timeout\n" };
+          alarm $timeout;
+          $result = `$CmdLine`;
+          $error_code = $?;
+          alarm 0;
+        }
+
+        if ( $@ ) {
+          error "Fehler: $@", "warning";
+          $error_code = 55;
+        }
+
       }
       if ( $error_code ) {
-        error "Error in deleting SMS in SIM Location $i: " . $result, "warn";
+        error "Error in deleting SMS in SIM Location $i: " . $result, "warning";
       } else {
         debug "SMS in SIM Location $i successful deleted.";
       }