defect 4375: fix the xcatd which has issue to receive request from xcatd which is longer than about 160,000 bytes
This commit is contained in:
parent
089315126c
commit
900963b1db
@ -2157,7 +2157,7 @@ sub get_request {
|
||||
my $encode = shift;
|
||||
my $request = shift;
|
||||
if ($encode eq "xml") {
|
||||
my $line = "";
|
||||
my $line = $request;
|
||||
while ((!$request) || ($request !~ m/<\/xcatrequest>/)) {
|
||||
my $flags=fcntl($sock,F_GETFL,0);
|
||||
$flags |= O_NONBLOCK; #we want sysread to bail on us, select seems to be evil to us still..
|
||||
@ -2171,7 +2171,7 @@ sub get_request {
|
||||
$flags=fcntl($sock,F_GETFL,0);
|
||||
$flags &= ~O_NONBLOCK; #now we want *print* to be blocking IO
|
||||
fcntl($sock,F_SETFL,$flags);
|
||||
$request .= $line;
|
||||
$request = $line;
|
||||
}
|
||||
return eval { XMLin($request, SuppressEmpty=>undef,ForceArray=>1) };
|
||||
} elsif ($encode eq "storable") {
|
||||
|
Loading…
Reference in New Issue
Block a user