Dear Florian Ragwitz, Hi. This is imacat from Taiwan. I have made more tests. It seems that this keep-running daemon is this "SSL test server on port 1212" in test.pl line 98, and is the cause that CPANPLUS hangs waiting for. Once I kill it CPANPLUS returns. Further investigation reveals that: "kill $pid" is not working at test.pl line 134. According to the perlfunc(1) documentation http://perldoc.perl.org/functions/kill.html It show that "kill 15, $pid" should be used instead of "kill $pid". You omitted the kill signal and Perl treats $pid as the signal with an empty process ID list. I have make some tests. After changing "kill $pid" to "kill 15, $pid" that daemon is killed, and CPANPLUS returns as usual when tests finish. There seem to be still another daemon running, with a PID next to that one. I don't quite understand yet. I attached a simple patch that may solve this issue, in the hope that it helps. Please tell me if I could be of any help, or if you need any more information. Thank you. -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 diff -u -r Net_SSLeay.pm-1.30.orig/test.pl Net_SSLeay.pm-1.30/test.pl - --- Net_SSLeay.pm-1.30.orig/test.pl 2005-12-01 10:20:34.000000000 +0800 +++ Net_SSLeay.pm-1.30/test.pl 2007-03-28 03:57:05.000000000 +0800 @@ -131,7 +131,7 @@ print "\t\t...took $secs secs (" . int($mb*1024/$secs). " KB/s)\n" if $trace; print &test(10, ($res =~ /OK\s*$/)); - -kill $pid; # We don't need that server any more +kill 15, $pid; # We don't need that server any more if ($exe_path !~ /\.exe$/i) { # Not Windows where fork does not work $res = `$perl examples/cli-cert.pl $cert_pem $key_pem examples`; -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) iD8DBQFGCXcmi9gubzC5S1wRAvSiAJsFgLm/Cm5CyCsGqdhD7C5CY5r3pwCdFePd OP+TVUtPMeo6l/lyMMuOhXk= =i+fU -----END PGP SIGNATURE-----