[PATCH v2 1/1] paint visual host key with unicode box-drawing characters

Ben Lindstrom mouring at eviladmin.org
Wed Jul 8 11:05:00 AEST 2015



Christian Hesse wrote:
> Hello everybody,
>
> this is an updated version with these changes:
>
> * unicode characters are encoded using octal values
> * added two more unicode characters to replace brackets
> * made ssh work, but:
>
> Christian Hesse<list at eworm.de>  on Mon, 2015/07/06 15:18:
>> --- a/log.c
>> +++ b/log.c
>> @@ -444,7 +444,7 @@ do_log(LogLevel level, const char *fmt, va_list args)
>>   		tmp_handler(level, fmtbuf, log_handler_ctx);
>>   		log_handler = tmp_handler;
>>   	} else if (log_on_stderr) {
>> -		snprintf(msgbuf, sizeof msgbuf, "%s\r\n", fmtbuf);
>> +		/* we want unicode multi byte characters, so do not use
>> fmtbuf here */ (void)write(log_stderr_fd, msgbuf, strlen(msgbuf));
>>   	} else {
>>   #if defined(HAVE_OPENLOG_R)&&  defined(SYSLOG_DATA_INIT)
>
> Does that break anything?

I don't think this is right.. You are logging "msgbuf" to 
write(log_stderr, ..) but you just deleted the line that GENERATES that 
variable..  So your logging nothing but an undefined string.

At least it needs to swap it to use fmtbuf, but I suspect this screws up 
the output as you no longer are doing \r\n in the general case where 
this may be required.

So I'm not convinced this is right.

- Ben


More information about the openssh-unix-dev mailing list