sysklogd: add timestamp option to ignore message timestamps
Some syslog producers provide inconsistent timestamps, so provide an option
to ignore the message timestamps and always locally timestamp. In order to
implement this, invert the valid-timestamp check, but only use the timestamp
if this option is not enabled.
This is in line with what what other syslogd implementations do:
From sysklogd syslogd.c:
* Sun Nov 7 12:28:47 CET 2004: Martin Schulze <joey@infodrom.org>
* Discard any timestamp information found in received syslog
* messages. This will affect local messages sent from a
* different timezone.
rsyslog's imuxsock module similary has an (enabled by default)
IgnoreTimestamp option:
https://www.rsyslog.com/doc/v8-stable/configuration/modules/imuxsock.html
function old new delta
packed_usage 32877 32912 +35
timestamp_and_log 363 376 +13
syslogd_main 1638 1641 +3
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 51/0) Total: 51 bytes
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>