in reply to telnet wrapper

Generally, you do not want to echo anything on the client side. The server should echo characters when it is necessary. There is a telnet protocol command to enable or disable local echo. I don't know enough about the wxWorks telnet server, but it should do all the echoing.

So, when you start perl your terminal or window is in echo mode. You need to turn it off as telnet does when it is talking directly to a terminal (under most *nix systems the telnet client checks to see if it is on a terminal and only then does it turn off the echo). Doing that should fix your problem.