Newlines cause other problems than just cross-platform transfert.
As read in perlport :
Due to the ``text'' mode translation, DOSish perls have limitations of using seek
and tell when a file is being accessed in ``text'' mode. Specifically, if you stick to seek-ing to locations you got from tell (and no others),
you are usually free to use seek and tell even in ``text'' mode. In general, using seek or tell or other file operations that count bytes instead of characters, without considering the length of \n, may be non-portable.
If you use binmode on a file, however, you can usually use seek and tell with arbitrary values quite safely.