Skip site navigation (1)Skip section navigation (2)
Date:      17 Apr 2000 22:07:37 +0200
From:      naddy@mips.rhein-neckar.de (Christian Weisgerber)
To:        freebsd-i18n@freebsd.org
Subject:   Re: syslogd and 8th bit.
Message-ID:  <8dfqu9$1f91$1@bigeye.rhein-neckar.de>
References:  <38FA957E.49FE3A7F@iname.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Eugene Grosbein <eugen@iname.com> wrote:

> syslogd strips 8th bit from messages. Why?

src/usr.sbin/syslogd/syslogd.c, line ~580:

        while ((c = *p++ & 0177) != '\0' &&
            q < &line[sizeof(line) - 1])
 
It's been like this since 4.4BSD-Lite. (I could trace it through
the CSRG archives, but that wouldn't buy us anything, I guess.)

I suspect it's simply a remainder from the old mindset that characters
with a set top bit are invalid / control characters. Strictly
speaking, accepting 8-bit characters from the net without any
attached character set information (or implicit agreement that they
are to be interpreted as, say, UTF-8) *is* pointless.

This concerns other network protocols as well, e.g. finger. Our
finger(1) uses setlocale(LC_ALL, "") and isprint(), but clearly
assumes a single-byte character set. (Note that RFC1288 specifies
finger to be ASCII only.)

Is there a formal spec (RFC) for the syslog protocol?

-- 
Christian "naddy" Weisgerber                  naddy@mips.rhein-neckar.de



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-i18n" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8dfqu9$1f91$1>