my $ref = $conns{$call};
delete $conns{$call} if $ref && $ref == $conn;
}
-
- $conn->{delay} = Mojo::IOLoop->delay (
-# Mojo::IOLoop->delay (
- sub {
- my $delay = shift;
- dbg("before drain $call") if $dbg;
- $sock->on(drain => $delay->begin);
- 1;
- },
- sub {
- my $delay = shift;
- dbg("before _close_it $call") if $dbg;
- _close_it($conn);
- 1;
- }
- );
- $conn->{delay}->wait;
-
+ _close_it($conn);
} else {
dbg((ref $conn) . " socket missing on $conn->{call}") if $dbg;
_close_it($conn);
$sock->timeout(0);
$sock->start;
$conn->{peerhost} = $handle->peerhost;
+ $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');
my ($rproc, $eproc) = &{$server_conn->{rproc}} ($conn, $conn->{peerhost}, $conn->{peerport});