У вас строгий включен (что всегда хорошая идея). Жалуется на эти звонки:
die "Cannot resolve hostname $ipn";
die "Invalid packet size requested: $sizen"
потому что вы не объявили переменные с именами $ipn
или $sizen
. Вы имели в виду:
die "Cannot resolve hostname $ip\n";
die "Invalid packet size requested: $size\n"
Если так, то strict
делал свою работу и ловил вашу ошибку. У вас есть другие строки, заканчивающиеся на ...n"
, которые, вероятно, должны были быть ...\n"
, но, поскольку они не являются ссылками на переменные, strict
не может сказать, что есть проблема.