diff options
author | ivan <ivan> | 2003-11-14 08:43:24 +0000 |
---|---|---|
committer | ivan <ivan> | 2003-11-14 08:43:24 +0000 |
commit | 17b3560111539da506f7f6bb575dd3776375466f (patch) | |
tree | 18b2ff9084ad3b6aac3f672094defaed2361d00c /FS/bin/freeside-selfservice-server | |
parent | 948d16c8038c5976c71a32b00a1ff3f46f97262e (diff) |
hopefully recover better from lost ssh connections
Diffstat (limited to 'FS/bin/freeside-selfservice-server')
-rw-r--r-- | FS/bin/freeside-selfservice-server | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/FS/bin/freeside-selfservice-server b/FS/bin/freeside-selfservice-server index 05fa72b43..d2358e33c 100644 --- a/FS/bin/freeside-selfservice-server +++ b/FS/bin/freeside-selfservice-server @@ -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; + } ### |