2f72a17b8e
syslogd: If system has SO_REUSEPORT, use it
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 13:28:02 +01:00
095aa56996
Minor, don't touch PID file on SIGHUP in debug mode
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 13:28:02 +01:00
f606667038
syslogd: Add support for FreeBSD -s, secure mode
...
- Update man page
- Enable -s in default systemd service settings
- Add support for SecureMode, with shutdown()
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 13:28:02 +01:00
d607d6b845
syslogd: Update usage text and man page for new -b flag, drop -r
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 13:28:02 +01:00
762e09d7e8
syslogd: Drop -l HOST flag, the RFCs are very clear on this point
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 13:28:02 +01:00
d1035377cc
syslogd: Drop -s HOST flag in favor of future BSD SecureMode
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 13:28:02 +01:00
4ee6211277
syslogd: Refactor internals to use new socket API
...
This patch is inspired, in part, by FreeBSD syslogd but now diverges
onto its own path. Special handling for AF_UNIX sockets are required
on Linux, which unlike BSD cannot use getaddrinfo() on UNIX sockets.
- Rip out old funix[] and finet support
- Add new concept of peers
- Linked list of peers can be > 20
- Temporarily open up to accept all remote conns
- Remove old logerror(), replaced with new log macros
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 13:28:01 +01:00
07677c78a5
Graft struct addrinfo support on top of new socket API
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 13:28:01 +01:00
a4c1acbca8
syslogd: Drop -r flag, to be replaced with BSD -s (secure) flag
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 09:19:54 +01:00
c66411e8c2
Use new log macros and err.h fns
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-12 08:56:06 +01:00
53c2d0e3d9
Export flog() function and define new log macros ERR(), WARN(), etc.
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-11 18:52:00 +01:00
90fb520c06
Add socket helper functions from SMCRoute, licesened as 3-clause BSD
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-10 11:22:14 +01:00
c31a7d1031
Minor refactor/cleanup
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-10 09:35:01 +01:00
a2feba69e2
Allow klogd to send LOG_KERN messages to syslogd
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-09 11:46:56 +01:00
b15420fdc5
syslogd: Inherit parsed PRI value in RFC3164 front-end
...
The RFC5424 front-end already does this.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-09 11:23:03 +01:00
9aaa7ec8c4
syslogd: Install SIGHUP handler earlier
...
When a heavily loaded system starts up syslogd may not in time reach its
original installation of the SIGHUP handler before receiving the signal.
It will then die and have to be restarted by PID 1.
This patch installs the SIGHUP handler early, with all the other signals
right after command line parsing.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-08 16:15:29 +01:00
dd5b470342
Fix assert when buffer->hostname == NULL at startup
...
Default to use 'from' in RFC3164 parser, just like the RFC5424 parser
already does.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-08 15:50:09 +01:00
0a3c5e1544
syslogd: Update usage text, drop -a add -b and simplify
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-08 08:50:17 +01:00
3377f07a5a
klogd: Update usage text, no more -i or -I
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-08 08:50:17 +01:00
cc96379252
syslogd: Fix RFC5424 structured-data parser
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 23:21:33 +01:00
22c3fa9fa3
syslogd: Increase debug logging of raw incoming and parsed messages
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 23:21:33 +01:00
3f68d765db
logger: Change usage text slightly for readability
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 23:21:33 +01:00
31815d6143
logger: Add NetBSD -d SD for RFC5424 structured data
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 23:21:31 +01:00
e25f835a5a
logger: Add NetBSD -m MSGID support for logging RFC5424 style
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 23:20:11 +01:00
f2e1793cda
logger: Add NetBSD -n option for LOG_NDELAY
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 22:03:11 +01:00
0aa57978ee
logger: Add NetBSD -i option for LOG_PID
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 21:54:47 +01:00
d3461fd6a3
logger: Add NetBSD -c option for LOG_CONS
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 21:08:01 +01:00
fff4368e80
RFC5424 sec 6.1 states that we *should* support 2048 byte long msgs
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 20:56:02 +01:00
07033382ee
Minor, type cast logit() argument for Coverity Scan
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 20:35:54 +01:00
11819e5b7f
Type cast arguments to logit(), fixes warnings from Coverity
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 19:37:12 +01:00
884a0a180b
Use correct format specifier for ssize_t, found by Coverity Scan
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 19:37:04 +01:00
774523f6e2
Fix missing argument to logit() and clean up unreadable code
...
Found by Coverity Scan
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 19:36:49 +01:00
7533f96ca9
Fix invalid/missing/extra argument to logit(), found by Coverity
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 19:24:38 +01:00
64c6866667
Minor, drop debug log message for normal case
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 19:08:29 +01:00
f8e87f143d
syslogd: Drop -a SOCK support, replaced with multiple -p SOCK args
...
The -p SOCK syntax is what NetBSD syslogd use, so this is more of an
alignment with upstream.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 19:08:29 +01:00
d723574eee
logger: Update usage text with missing -u SOCK
info
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-07 06:47:53 +01:00
1544cddd5a
Drop unnecessary (and buggy) debug logs
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 16:53:48 +01:00
533ca61faa
Support for sending messages to a custom port on remote server
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 14:23:03 +01:00
ff4b9e0499
Minor, code formatting
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 13:55:05 +01:00
d3abc7aa16
Minor, whitespace formatting
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 13:45:38 +01:00
fc4b804a6d
Add LOG_WARN alias
...
Along with syslogp(), this is ia killer vendor lock-in feature.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 13:45:21 +01:00
31d7298516
Refactor, factor out getaddrinfo() code duplication to a sep. func.
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 13:35:06 +01:00
65ac085a97
Add backwards compatibility handling with sysklogd v1.6
...
This patch adds compatibility with sysklgd v1.6 and also adds the new
action flag "RFC3164" to explicitly be able to set old format. This
format is the default, except for remote syslog. Also, the rotation
support added in v1.6 has chnaged syntax which this patch addresses.
- Remote syslog defaults to BSD format, w/o timestamp and hostname
- Support reading log rotation without ';rotate=' prefix
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 12:26:54 +01:00
02a67ef273
Refactor, move daemon defines to header file
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 12:08:09 +01:00
3ced4508b4
Add missing globfree(), found using -fsanitize=address
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 08:48:50 +01:00
ec06b220e4
If available, use O_TMPFILE, fix insecure tempfile found by Coverity
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 07:04:06 +01:00
3cff584621
Refactor wallmsg() slightly, fixes "unused value" found by Coverity
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-06 07:03:57 +01:00
e8674a8fd7
Check return value from setsockopt(), found by Coverity Scan
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-05 15:56:47 +01:00
3c2c353c37
Handle open() errors during log rotation, found by Coverity Scan
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-05 11:04:44 +01:00
0bf36c59a6
Refactor, close() may try to close -1, found by Coverity Scan
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com >
2019-11-05 10:28:26 +01:00