$cnum = 0;
$connect_timeout = 5;
$disc_waittime = 1.5;
-%conns;
our %delqueue;
return $ref;
}
-# this is called as a FUNCTION i.e my $conn = Msg::get($call);
-sub get
-{
- return $conns{shift};
-}
-
# this is only called by any dependent processes going away unexpectedly
sub pid_gone
{
$sock->timeout(0);
$sock->start;
$conn->{peerhost} = eval { $handle->peerhost; };
- dbg((ref $conn) . " connected $conn->{cnum} to $conn->{peerhost}:$conn->{peerport}") if isdbg('connll');
+ dbg((ref $conn) . " connected $conn->{cnum} to $conn->{peerhost}:$conn->{peerport}") if isdbg('conn') || isdbg ('connect');
if ($conn->{on_connect}) {
&{$conn->{on_connect}}($conn, $handle);
}
my ($pkg, $fn, $line) = caller if $dbg;
if ($count >= 2) {
- dbg((ref $conn) . "::disconnect on call $conn->{call} attempt $conn->{disconnecting} called from ${pkg}::${fn} line $line FORCING CLOSE ") if $dbg;
+ dbgtrace((ref $conn) . "::disconnect on call $conn->{call} attempt $conn->{disconnecting} called from ${pkg}::${fn} line $line FORCING CLOSE ") if $dbg;
_close_it($conn);
return;
}
$sock->on(read => sub {$conn->_rcv($_[1])});
$sock->timeout(0);
$sock->start;
- $conn->{peerhost} = $handle->peerhost;
+ $conn->{peerhost} = $handle->peerhost || 'unknown';
$conn->{peerhost} =~ s|^::ffff:||; # chop off leading pseudo IPV6 stuff on dual stack listeners
- $conn->{peerport} = $handle->peerport;
- dbg((ref $conn) . " accept $conn->{cnum} from $conn->{peerhost}:$conn->{peerport}") if isdbg('connll');
+ $conn->{peerport} = $handle->peerport || 0;
+ dbg((ref $conn) . " accept $conn->{cnum} from $conn->{peerhost}:$conn->{peerport}") if isdbg('conn') || isdbg('connect');
my ($rproc, $eproc) = &{$server_conn->{rproc}} ($conn, $conn->{peerhost}, $conn->{peerport});
$conn->{sort} = 'Incoming';
if ($eproc) {
if (isdbg('connll')) {
my ($pkg, $fn, $line) = caller;
- dbg((ref $conn) . "::DESTROY on call $call called from ${pkg}::${fn} line $line ");
-
+ dbgtrace((ref $conn) . "::DESTROY on call $call called from ${pkg}::${fn} line $line ");
}
my $call = $conn->{call} || 'unallocated';