|
Packit |
4e8bc4 |
#!/usr/bin/perl
|
|
Packit |
4e8bc4 |
|
|
Packit |
4e8bc4 |
use strict;
|
|
Packit |
4e8bc4 |
use Test::More tests => 1;
|
|
Packit |
4e8bc4 |
use FindBin qw($Bin);
|
|
Packit |
4e8bc4 |
use lib "$Bin/lib";
|
|
Packit |
4e8bc4 |
use MemcachedTest;
|
|
Packit |
4e8bc4 |
|
|
Packit |
4e8bc4 |
my $server = new_memcached();
|
|
Packit |
4e8bc4 |
my $sock = $server->sock;
|
|
Packit |
4e8bc4 |
|
|
Packit |
4e8bc4 |
{
|
|
Packit |
4e8bc4 |
print $sock "quit\r\n";
|
|
Packit |
4e8bc4 |
|
|
Packit |
4e8bc4 |
# Five seconds ought to be enough to get hung up on.
|
|
Packit |
4e8bc4 |
my $oldalarmt = alarm(5);
|
|
Packit |
4e8bc4 |
|
|
Packit |
4e8bc4 |
# Verify we can't read anything.
|
|
Packit |
4e8bc4 |
my $bytesread = -1;
|
|
Packit |
4e8bc4 |
eval {
|
|
Packit |
4e8bc4 |
local $SIG{'ALRM'} = sub { die "timeout" };
|
|
Packit |
4e8bc4 |
my $data = "";
|
|
Packit |
4e8bc4 |
$bytesread = sysread($sock, $data, 24),
|
|
Packit |
4e8bc4 |
};
|
|
Packit |
4e8bc4 |
is($bytesread, 0, "Read after quit.");
|
|
Packit |
4e8bc4 |
|
|
Packit |
4e8bc4 |
# Restore signal stuff.
|
|
Packit |
4e8bc4 |
alarm($oldalarmt);
|
|
Packit |
4e8bc4 |
}
|