hopefully recover better from lost ssh connections
authorivan <ivan>
Fri, 14 Nov 2003 08:43:24 +0000 (08:43 +0000)
committerivan <ivan>
Fri, 14 Nov 2003 08:43:24 +0000 (08:43 +0000)
FS/bin/freeside-selfservice-server

index 05fa72b..d2358e3 100644 (file)
@@ -74,7 +74,13 @@ while (1) {
 
     warn "receiving packet from client\n" if $Debug;
 
-    my $packet = fd_retrieve($reader);
+    my $packet = eval { fd_retrieve($reader); };
+    if ( $@ ) {
+      warn "Storable error receiving packet from client".
+           " (assuming lost connection): $@\n"
+        if $Debug;
+      last;
+    }
     warn "packet received\n".
          join('', map { " $_=>$packet->{$_}\n" } keys %$packet )
       if $Debug > 1;
@@ -120,6 +126,9 @@ while (1) {
 
   }
 
+  warn "connection lost, reconnecting\n" if $Debug;
+  sleep 3;
+
 }
 
 ###