[PATCH 1/1] log: do not print carriage return

Damien Miller djm at mindrot.org
Sat Sep 7 20:03:42 AEST 2019


On Fri, 6 Sep 2019, Christian Hesse wrote:

> From: Christian Hesse <mail at eworm.de>
> 
> Logging to stderr results in line endings being terminated with carriage
> return (\r) and new line (\n). While this is fine for terminals it may
> have undesired effects when running from crond and logging to syslog
> or similar.
> 
> I run ssh from cron on an recent linux host. Viewing logs with
> journalctl I see:
> 
> Sep 06 16:50:01 linux CROND[152575]: [96B blob data]
> 
> Adding switch --all for unprintable characters it shows:
> 
> Sep 06 16:50:01 linux CROND[152575]: (root) CMDOUT (Warning: Permanently
> added '10.52.33.217' (ED25519) to the list of known hosts.^M)
> 
> Note the control character ^M. Removing the carriage return fixes this.

AFAIK we need the carriage return because the terminal may be in raw mode
and treating newline characters as advancing to the next line only.

-d


More information about the openssh-unix-dev mailing list