X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FMsg.pm;h=839b5e453313e05db16f6f536ba26d3e4b1cdd31;hb=0b0810956c3a067e27395105c1581dbe8523a9e1;hp=f3dec8b1610b5743e5596b7b406bd9d9ed760304;hpb=f62f7f8ba8aa59de4f4ed8a19f0300b6804a0009;p=spider.git diff --git a/perl/Msg.pm b/perl/Msg.pm index f3dec8b1..839b5e45 100644 --- a/perl/Msg.pm +++ b/perl/Msg.pm @@ -135,7 +135,8 @@ sub connect { blocking($sock, 0); my $ip = gethostbyname($to_host); - my $r = $sock->connect($to_port, $ip); +# my $r = $sock->connect($to_port, $ip); + my $r = connect($sock, pack_sockaddr_in($to_port, $ip)); unless ($r) { return undef unless $! == EINPROGRESS; } @@ -167,8 +168,6 @@ sub disconnect { $call ||= 'unallocated'; dbg('connll', "Connection $call disconnected"); - set_event_handler ($sock, read => undef, write => undef, error => undef); - unless ($^O =~ /^MS/i) { kill 'TERM', $conn->{pid} if exists $conn->{pid}; } @@ -181,6 +180,7 @@ sub disconnect { } return unless defined($sock); + set_event_handler ($sock, read => undef, write => undef, error => undef); shutdown($sock, 3); close($sock); }