Your "required" file should have a true value at the end.
$$_[0] uses $_ as an arrayref, probably not what you want; try dropping one of the $ and passing $pro, not \$pro. (Or use ${$_[0]}->close with passing \$pro.)
Comment on Re: How to close a telnet connection when using strict