Workaround an IO::Socket::IP bug
Workaround an apparent IO:Socket::IP bug where a seemingly valid server socket is being returned even though a valid connection does not exist. This causes the tests to intermittently hang. We additionally check that the peerport looks ok to verify that the returned socket looks usable. Reviewed-by: Richard Levitte <levitte@openssl.org>
This commit is contained in:
parent
5c4328f04f
commit
6ae5452481
1 changed files with 3 additions and 1 deletions
|
@ -236,7 +236,9 @@ sub clientstart
|
|||
};
|
||||
|
||||
$retry--;
|
||||
if ($@ || !defined($server_sock)) {
|
||||
#Some buggy IP factories can return a defined server_sock that hasn't
|
||||
#actually connected, so we check peerport too
|
||||
if ($@ || !defined($server_sock) || !defined($server_sock->peerport)) {
|
||||
$server_sock->close() if defined($server_sock);
|
||||
undef $server_sock;
|
||||
if ($retry) {
|
||||
|
|
Loading…
Reference in a new issue