7 my $m=new IO
::Socket
::INET
(Listen
=>1,LocalPort
=>2229,Reuse
=>1,Proto
=>'tcp');
8 my $O=new IO
::Select
($m);
10 $verbose = ( $ARGV[0] eq '-v' ) ?
1 : 0;
14 while (@S = $O->can_read) {
21 my $R=sysread($_, $i, 16000);
23 # Log message received:
24 print "XmlSocketServer: received \"$i\"\n" if $verbose;
27 $T=syswrite($_, "\n", 16000);
34 # Sleep a bit before sending a reply to mimic web traffic
36 Time
::HiRes
::sleep(0.1);
37 print "XmlSocketServer: sending \"$i\" \n" if $verbose;
39 $i =~ s/\*NEWLINE\*/\n/g;
40 $i =~ s/\*NULL\*/\0/g;
42 $T=syswrite($_, $i, 16000);
45 if ($i =~ m/closeNow/) {
46 print("XmlSocketServer: closing...\n") if $verbose;
47 close($C) || die "Could not close reading Socket";
53 close($m) || die "Could not close server Socket";
54 print("XmlSocketServer: salut!\n") if $verbose;