roll back last change and only added the neccessary fix

This commit is contained in:
daniceexi 2013-10-15 14:26:44 -04:00
parent a8c7dca997
commit d6cef63a03

View File

@ -876,9 +876,6 @@ until ($quit) {
next; #just keep pulling things off listen queue onto our own
}
my $cnnection=shift @pendingconnections;
my $previous = select ($cnnection); #assure that perl buffering is not in play at the low level
$|=1;
select ($previous);
my $connection;
my $child = xCAT::Utils->xfork(); #Yes we fork, IO::Socket::SSL is not threadsafe..
if ($child) {
@ -915,9 +912,6 @@ until ($quit) {
unless ($connection) {
xexit 0;
}
$previous=select($connection); #also assure buffering not in play at SSL socket, which seems to be possibly independent of lower socket
$|=1;
select($previous);
$clientselect->add($connection);
my $peerhost=undef;
my $peerfqdn=undef;
@ -1738,7 +1732,7 @@ sub service_connection {
my $bytesread;
do { $bytesread=sysread($sock,$line,65536,length($line)) } while ($bytesread);
if (length($line)==0) {
if (not defined $bytesread and ($! == EAGAIN or $! == ECHILD)) { next; } # ECHILD makes no sense, but some platform does it
if (not defined $bytesread and ($! == EAGAIN or $! == ECHILD)) { next; } # ECHILD makes no sense, but some platform does
last;
}
$flags=fcntl($sock,F_GETFL,0);