#create the socket #i'm running spamd like this: #spamd -x -ufilter -d --socketpath=/var/spool/filter/spamd.sock my $DSOCKET = "/var/spool/filter/spamd.sock" my $socket = IO::Socket::UNIX->new(PeerAddr => $DSOCKET, Type => SOCK_DGRAM, Timeout => 0 ) || die "No puedo Conectarme a: $DSOCKET:$@\n"; #write to the socket my $msg = "PROCESS SPAMC/1.2\nContent-length: $ARGV[0]\nUser: filter\n\r\n"; print $socket $msg; my $bytes=0; #while($line = ){ while(){ $bytes += length($_); print "(BYTES=$bytes) ENTRANDO $_"; print $socket $_; } #finish writing: #i used shutdown i two ways with equal results #my $val = $socket->shutdown(1); my $val = shutdown($socket,1); print "FINISHED($val)\n"; #at this line it hangs. print "First Line ".<$socket>."\n";