By default newline translation is done.
I don't know if it will help... just an idea...
Have you tried changing the binmode?
$mode = 1
$obj->binmode($mode);
From the
Net::Telnet documentation:
If $mode is 1 then binmode is on and newline translation is not done.
If $mode is 0 then binmode is off and newline translation is done. In the input stream, each sequence of CR LF is converted to "\n" and in the output stream, each occurrence of "\n" is converted to a sequence of CR LF.
Maybe you can then see in
input_log() and
dump_log() exactly what's happening.