"GOT", but the "O" is a cute, smiling pufferfish. Index | Thread | Search

From:
Christian Weisgerber <naddy@mips.inka.de>
Subject:
Re: prevent got from creating unsigned tags when the key file is missing
To:
gameoftrees@openbsd.org
Date:
Mon, 4 Jul 2022 10:55:12 -0000

Download raw body.

Thread
On 2022-07-03, Omar Polo <op@omarpolo.com> wrote:

>> > If anyone asks, I don't know why ssh-keygen(1) is printing a CRLF for
>> > the missing key message to stderr.
>
> from usr.bin/ssh/log.c
>
>     370         } else if (log_on_stderr) {
>     371                 snprintf(msgbuf, sizeof msgbuf, "%s%s%.*s\r\n",
>     372                     (log_on_stderr > 1) ? progname : "",
>     373                     (log_on_stderr > 1) ? ": " : "",
>     374                     (int)sizeof msgbuf - 3, fmtbuf);
>     375                 (void)write(log_stderr_fd, msgbuf, strlen(msgbuf));
>
> and that seems to have been there for quite a while.  (i tracked it down
> to 9a24126 -- or revision 1.16 of log.c -- in 2001)

... where it was copied from log-client.c.  There it was introduced
in rev 1.2 in 1999 by markus:

  the logging output needs \r, say "debug: " when debuggin

I think this is for reporting messages during an SSH session, when
ssh(1) has put the TTY into raw mode, so no LF to CR LF translation
will happen.

So it's a side effect of re-using that facility for ssh-keygen(1).

-- 
Christian "naddy" Weisgerber                          naddy@mips.inka.de