in reply to How to close a telnet connection when using strict

$pro is defined in your code snippet and would resolve to a Net::Telnet object reference in your telnetDisconnect call.

It looks to me like $pro gets overwritten in some of the code you've removed while creating your test case above. Check your code for incorrect $pro assignments.