Commit Graph

602 Commits

Author SHA1 Message Date
Joachim Nilsson
773e69ea2e syslogd: Ignore temporary network problems when sending remote
When sending to a remote syslog server, configured as an IP address or
when the DNS name has already been resolved, we may get temporary error
messages like ENETUNREACH and similar from sendmsg().

Before this patch the whole filed was placed in F_FORW_SUSP, like failed
DNS resolve, which introduces a 180 sec delay before even trying again.
A better approach is to just try again with the next syslog message.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2020-01-17 13:01:29 +01:00
Joachim Nilsson
84d70e63fc Drop libcompat to simplify build deps and really fix #11
The original idea with libcompat was to keep as few objects as
possible for linking with libsyslog.  That in turn to prevent
a user of libsyslog from suddenly also getting strong binding
to symbols like strlcpy() from libsyslog, rather than their C
library of choice.

However, this caused strlcpy.c to be built as both .o and .lo
files, which in turn caused really bizarre build problems due
to bad DAG dependency.

This patch drops libcompat and instead marks all replacement APIs
as weak symbols, which a C library can override.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2020-01-16 22:17:23 +01:00
Joachim Nilsson
43eee3d405 Update ChangeLog and bump version for v2.1 release
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2020-01-05 13:33:02 +01:00
Joachim Nilsson
f33acb2521 Travis-CI: Minor fixes
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2020-01-05 13:33:02 +01:00
Joachim Nilsson
0af76f37ae Revert "Travis-CI: Disable clang temporarily for Coverity Scan run"
This reverts commit 100d90b452.
2020-01-05 13:33:02 +01:00
Joachim Nilsson
100d90b452 Travis-CI: Disable clang temporarily for Coverity Scan run
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2020-01-04 10:39:35 +01:00
Joachim Nilsson
e0411a3a56 Fix invalid format specifier for f_prevcount, found by Coverity Scan
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2020-01-03 09:51:48 +01:00
Joachim Nilsson
39ea566d45 Fix minor descriptor leak, found by Coverity Scan
It is safe to always close() the fd here.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2020-01-03 09:46:11 +01:00
Joachim Nilsson
f06ab73e13 Minor updates, spell checking, etc.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-25 08:47:31 +01:00
Joachim Nilsson
38d0440975 Update ChangeLog with latest fixes
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-25 08:25:48 +01:00
Joachim Nilsson
0f7ee8d430 syslogd: Fix variable names shadowing other global or local defs.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-16 22:06:26 +01:00
Joachim Nilsson
ff03287d5a syslogd: Use snprintf() rather than sprintf()
Protects against buffer overruns.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-16 22:06:26 +01:00
Joachim Nilsson
0afdfb4911 syslogd: Handle multiple invocations of SIGHUP
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-16 13:25:48 +01:00
Joachim Nilsson
0e7c76c3f5 .github: sudo do-what-I-mean
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-16 13:17:13 +01:00
Joachim Nilsson
753d6f0cda .github: Attempt number 1231245432432 to install packages in runner
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-16 11:21:37 +01:00
Joachim Nilsson
9c05d380f3
Use non-interactive install
Why isn't the runner configured to use this by default?
2019-12-16 11:18:01 +01:00
Joachim Nilsson
722a77857f
Split apt-get update and install in separate steps
Yaml isn't really suited to writing shell scripts :-/
2019-12-16 11:11:42 +01:00
Joachim Nilsson
ce4a3c1f0a
Run apt-get update first 2019-12-16 11:08:57 +01:00
Joachim Nilsson
55a12321c0
Accept any deps. to packages in runner install 2019-12-16 11:00:56 +01:00
Joachim Nilsson
4bbb813f1b
Install tshark in runner 2019-12-16 10:58:39 +01:00
Joachim Nilsson
731078325a Dump contents of certain log files on build failure
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-16 09:35:56 +01:00
Joachim Nilsson
b3f016aaf1 syslogd: Minor, fix size_t format specifier %zd vs %zu
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-14 10:13:48 +01:00
Joachim Nilsson
0cd3bf1ee6 Relocate GitHub docs to .github/
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-14 09:48:59 +01:00
Joachim Nilsson
c280058e47
Disable clang-tidy check and SoundClound scan for now 2019-12-14 09:47:00 +01:00
Joachim Nilsson
b3694592cf
Fix action, must run autogen.sh first 2019-12-14 09:40:41 +01:00
Joachim Nilsson
65abc37809
Test GitHub action to build and test code 2019-12-14 09:36:03 +01:00
Joachim Nilsson
48bfe6edf4 syslogd: Refactor, use sigaction() instead of deprecated signal()
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-14 08:46:36 +01:00
Joachim Nilsson
dec90a25ab syslogd: Set pipe fd non-blocking in timer backend
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-14 08:00:00 +01:00
Joachim Nilsson
2179d5a862 syslogd: Minor coding style cleanups
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-14 07:59:39 +01:00
Joachim Nilsson
2bbafcbd16 syslogd: Audit usage text, slim down, fix -R to -r conversion
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-10 08:34:49 +01:00
Joachim Nilsson
84f8e51541 man: Add Emacs nroff hinting to all man pages
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 18:29:59 +01:00
Joachim Nilsson
864ddaeb7d man: Change formatting of log msg examples using Li instead of Cm
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 18:29:14 +01:00
Joachim Nilsson
06f669f32e man: Try Li instead of Ql, possibly better in HTML rendition
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 18:24:23 +01:00
Joachim Nilsson
af37f47f91 man: Add more whitespace to HISTORY to make it more readable
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 18:20:28 +01:00
Joachim Nilsson
dca20067c6 man: Try Ql for inline literal display rather than Cm
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 18:20:03 +01:00
Joachim Nilsson
5efd1cffd8 build: Put all GNU autotools support files in aux/
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 18:08:07 +01:00
Joachim Nilsson
7abb1b9137 man: Use .Os to detail project name and version
Also, by convention .Dt should always be in upper case.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 17:32:46 +01:00
Joachim Nilsson
49d66e43a1 Revert "Travis-CI: Disable clang temporarily for Coverity Scan run"
This reverts commit ede638e9fd.
2019-12-09 17:01:45 +01:00
Joachim Nilsson
c01636fa71 README: Add pointers to HTML versions of man pages
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 17:01:02 +01:00
Joachim Nilsson
91c54466fd Minor, let logger use local version of syslog.h
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 16:56:46 +01:00
Joachim Nilsson
e0c2d3ad0d syslogd: Only log INTERNAL_MARK every MarkInterval
Internal log messages of INTERNAL_MARK time were created every 30
seconds (TIMERINTVL) instead of every MarkInterval (default 20 min).

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 15:10:30 +01:00
Joachim Nilsson
7ee7df058b syslogd: Only default to log rotation on actual files
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 13:42:05 +01:00
Joachim Nilsson
d6b7cd6134 syslogd: Minor, factor out O_CREATE
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 13:41:52 +01:00
Joachim Nilsson
08b6c6fd0f man: Sync FreeBSD syslog.conf.5 man page w/ limitations in sysklogd
The FreeBSD syslogd has more priority matching features and can also
group rules per program/hostname logging.  The sysklogd project does
not yet support this, so that is removed and instead the syntax and
examples are better described.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 13:22:46 +01:00
Joachim Nilsson
881fd52acc man: Sync FreeBSD syslogd man page with the realities of the project
Add missing -r option for log rotation and remove -8 option, which we
don't have yet.

Add SECURITY, DEBUGGING, and SIGNALS sections and expand upon the BUGS
section a bit to link things together.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 13:22:46 +01:00
Joachim Nilsson
9262229cc8 syslogd: Add log format and remote port to debug listing of sinks
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-09 13:22:46 +01:00
Joachim Nilsson
ede638e9fd Travis-CI: Disable clang temporarily for Coverity Scan run
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-08 00:06:22 +01:00
Joachim Nilsson
e8a91c870a Remove last traces of klogd
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-08 00:06:12 +01:00
Joachim Nilsson
e15d789c84 Fix #9: Open kernel log pipe after daemonizing
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-07 20:58:16 +01:00
Joachim Nilsson
3462e2ba19 syslogd: Remove debug fprintf() from 6e6c0dd
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2019-12-07 20:58:16 +01:00