6efd8b9b4a
Obtained from [1]. [1] http://amtrickey.net/download/wmget-0.6.0-src.tar.gz
46 lines
981 B
Perl
Executable file
46 lines
981 B
Perl
Executable file
#!/usr/bin/perl -w
|
|
use strict;
|
|
|
|
use IO::Handle;
|
|
use IO::Socket;
|
|
|
|
&run_server ();
|
|
|
|
sub run_server {
|
|
local $SIG{PIPE} = 'IGNORE';
|
|
|
|
my $servsock = new IO::Socket (
|
|
Domain => AF_INET,
|
|
Type => SOCK_STREAM,
|
|
Proto => "tcp",
|
|
Reuse => 1,
|
|
Listen => 1,
|
|
LocalPort => 8000,
|
|
) or die "new IO::Socket: $!";
|
|
|
|
print "to test, enter wmget http://localhost:8000/...\n";
|
|
|
|
while (my $client = $servsock->accept) {
|
|
$client->autoflush (1);
|
|
|
|
while (<$client>) {
|
|
print STDERR "> $_";
|
|
last if not /\S/;
|
|
}
|
|
|
|
print STDERR "headers done. sending data...\n";
|
|
|
|
print $client "HTTP/1.0 200 Ok, here you go...\r\n";
|
|
print $client "Content-Type: text/plain\r\n";
|
|
print $client "Content-Length: 1000\r\n\r\n";
|
|
|
|
# generate bogus data, and do it slowly....
|
|
for (1..10) {
|
|
print $client "x" x 99, "\n";
|
|
sleep 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
|