Joachim Nilsson
f44a026d86
syslogd: Fix broken wallmsg(), off-by one iov
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-15 08:31:46 +01:00
Joachim Nilsson
bd5903509d
syslogd: Fix RFC3164 formatting, no space after <PRI> field
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-15 08:26:21 +01:00
Joachim Nilsson
09f6b7bf6c
syslogd: Minor, don't log to console when exiting ...
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 19:13:49 +01:00
Joachim Nilsson
54edca09d9
syslogd: Close open UNIX and inet sockets on SIGTERM
...
When creating Inet sockets we may get multiple struct addrinfo records.
With this patch we support up to 16 records per Internet peer. When
closing we iterate over all peers and all records.
Refactor socket_close() to clean up any lingering socket path when
closing UNIX socket.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 19:11:34 +01:00
Joachim Nilsson
4192e543a5
syslogd: Use common nomenclature for next pointer
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 18:44:01 +01:00
Joachim Nilsson
0f0f8f845d
syslogd: Add FreeBSD and NetBSD -n flag to disable DNS query
...
This patch re-adds the -n flag, but now to disable DNS reverse-query for
all incoming messages. This can potentially speed up logging a lot for
small/embedded systems that act as log sink.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 17:16:51 +01:00
Joachim Nilsson
cf9d281e5b
syslogd: Adopt FreeBSD -F instead of -n to run in foreground
...
This change will probably break most installations. We do this to free
up '-n' for use as disabling DNS lookups, from FreeBSD *and* NetBSD.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 17:08:47 +01:00
Joachim Nilsson
9d415f313f
syslogd: Add FreeBSD -k option to allow LOG_KERNEL facility messages
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 16:44:51 +01:00
Joachim Nilsson
c465f340bc
syslogd: NetBSD/FreeBSD -T option, log remote msgs with local time
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 16:16:23 +01:00
Joachim Nilsson
12fa1f6682
syslogd: Accept pre-RFC3164 formatted messages from remote hosts
...
This patch makes us wire-compatible with older versions of ourself, and
current versions set up to use default remote format.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 16:09:20 +01:00
Joachim Nilsson
06b26aae7b
syslogd: Reformat usage text a bit for readability, hopefully
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 15:16:05 +01:00
Joachim Nilsson
62137926ec
syslogd: Add support for FreeBSD -a allowed_peer filtering
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 14:48:49 +01:00
Joachim Nilsson
4b175653cb
syslogd: Fix formatting of usage text, and spell check
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 10:27:39 +01:00
Joachim Nilsson
c2d9f80859
syslogd: Drop -h flag, does not do anything since 353cd10
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 10:22:15 +01:00
Joachim Nilsson
45c7dcc6df
syslogd: Only warn when opening /proc/kmsg fails, continue anyway
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 09:55:33 +01:00
Joachim Nilsson
353cd10a06
Refactor, graft in FreeBSD fprintlog_first() & fprintlog_successive()
...
This patch looks big, but it's really just fprintlog() being split up
into three new functions: fprintlog_first() & fprintlog_successive() and
fprintlog_write(). Similar to how the FreeBSD syslogd is structured.
In the refactoring process Joey's proxy-prevention was removed.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 09:43:57 +01:00
Joachim Nilsson
97dfe638b4
Fix uninitialized variable, found by Coverity Scan
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-13 08:16:14 +01:00
Joachim Nilsson
69608f7158
syslogd: Fix RFC3164 TAG formatting when no PID is included
...
This patch fixes the omission of final ':' following a content TAG when
an app-name without a process ID is included.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-12 16:42:44 +01:00
Joachim Nilsson
d92f8466f8
syslogd: Minor refactor, move init code from main() to init()
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-12 16:42:44 +01:00
Joachim Nilsson
823bb4cf2a
Support for building the project w/o separate klogd (default)
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-12 16:42:44 +01:00
Joachim Nilsson
0455da805f
syslogd: Rename -R flag to -r, same as logger tool
...
Now that we've dropped the previous -r flag we can rename the rotation
flag so it's the same between both logger and syslogd.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-12 13:30:25 +01:00
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
c31a7d1031
Minor refactor/cleanup
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-10 09:35:01 +01:00
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
cc96379252
syslogd: Fix RFC5424 structured-data parser
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-07 23:21:33 +01:00
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
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
Joachim Nilsson
1544cddd5a
Drop unnecessary (and buggy) debug logs
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-06 16:53:48 +01:00
Joachim Nilsson
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
Joachim Nilsson
ff4b9e0499
Minor, code formatting
...
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-11-06 13:55:05 +01:00