in reply to Alarm and Telnet issues

anonymous subroutines use curly braces, so the sub you're assigning to $SIG{ALRM} should be:
#curly braces instead of parentheses local $SIG{ALRM} = sub {die "timeout\n"};
not sure if thats causing all the problems, but i hope it helps

__________
The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.
- Terry Pratchett