Fix #49: add support for -8 command line option to allow 8-bit data

This patch allows the user to disable the 8-bit data check in the log
message validator.  If you have experienced problems with logging any
unicode (utf-8) messages after v1.6, this option is for you.

The correct way to handle this is to add proper parser support for the
Unicode BOM, defined in RFC5424[1], as NetBSD syslogd does[2], search
for IS_BOM().

[1]: https://datatracker.ietf.org/doc/html/rfc5424#appendix-A.8
[2]: http://cvsweb.netbsd.org/bsdweb.cgi/src/usr.sbin/syslogd/syslogd.c?rev=1.138

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2022-03-07 20:51:42 +01:00
parent eb6e85e851
commit 6022d3c7d0
4 changed files with 47 additions and 5 deletions

View File

@@ -38,7 +38,7 @@
.Nd log systems messages
.Sh SYNOPSIS
.Nm
.Op Fl ?46AdFHKknsTtv
.Op Fl ?468AdFHKknsTtv
.Op Fl a Ar addr[/len][:port]
.Op Fl a Ar name[:port]
.Op Fl b Ar addr[:port]
@@ -129,6 +129,22 @@ to use IPv4 addresses only.
Force
.Nm
to use IPv6 addresses only.
.It Fl 8
Tells
.Nm
not to interfere with 8-bit data. Normally
.Nm
replaces C1 control characters
.Pq ISO 8859 and Unicode characters
with their
.Dq M- Ns Em x
equivalent. Note, this option does not change the way
.Nm
alters control characters
.Pq see Xr iscntrl 3 .
They are always replaced with their
.Dq ^ Ns Em x
equivalent.
.It Fl A
Ordinarily,
.Nm