Debian Patches

Status for rsyslog/8.2606.0-4

Patch Description Author Forwarded Bugs Origin Last update
Don-t-create-a-database.patch Don't create a database
dbconfig-common, which is used by rsyslog-mysql and rsyslog-pgsql, takes
care of creating the database for us.
Michael Biebl <biebl@debian.org> no 2014-03-13
Fix-doc-version-for-sphinx-build.patch Fix doc version for sphinx-build Michael Biebl <biebl@debian.org> yes upstream 2026-06-25
config-keep-empty-include-globs-silent.patch config: keep empty include globs silent


Before/After: Before, non-optional unmatched include globs emitted a parser warning; after, they continue without diagnostics.

Technical Overview:

Remove the parser_warnmsg() call from cnfDoInclude() when glob() reports GLOB_NOMATCH for a wildcard pattern.

Keep the no-match branch non-fatal and let it fall through the existing cleanup path.

Refresh the empty wildcard include test so it captures config-check and startup diagnostics.

Assert that no include no-match, warning, or error text is emitted while injected messages still pass through.

Update the release note to describe the preserved silent behavior.

closes https://github.com/rsyslog/rsyslog/issues/7286

With the help of AI-Agents: Codex

(cherry picked from commit e0651c0196043dc2abba1e33cc0fa83baa485e6d)
Rainer Gerhards <rgerhards@adiscon.com> no 2026-06-26
testbench-add-daemon-termination-oracle.patch testbench: add daemon termination oracle

Why:
Issue #7285 reported that omkafka-unreachable-shutdown could crash
rsyslogd during late daemon shutdown. The important stack trace did not
point at omkafka message processing. It pointed at imdiag unloading while
calling pthread_cancel() for timeoutGuard:

pthread_cancel
modExit (plugins/imdiag/.libs/imdiag.so)
modPrepareUnload
modUnloadAndDestructAll
deinitAll

The same report also showed a second testbench problem: in some local runs the
daemon crashed but the daemonized test still reported success, because the
harness only observed that the pid disappeared. For daemonized rsyslogd tests,
shell wait cannot reliably prove that the real daemon reached normal main
return.

Impact:
This makes imdiag timeoutGuard shutdown cooperative and adds a testbench-only
proper termination oracle. The omkafka test is the reproducer from #7285, but
the underlying bug is general imdiag/testbench daemon shutdown plumbing.

Before/After:
Before, imdiag could call pthread_cancel() while unloading the module, which
could segfault during late shutdown. Daemonized tests could also pass after a
crash if the daemon pid disappeared without leaving first-class clean-shutdown
evidence.

After, modExit signals timeoutGuard with a condition variable and joins it in
the process that created the thread. The daemon child does not try to cancel or
join a pthread_t copied across fork. Clean daemon shutdown tests can require a
proper termination file written as the final main-return action; timeoutGuard
abort writes the same file with an error reason before aborting.

Technical Overview:
- Replace timeoutGuard pthread_cancel() cleanup with cooperative stop/join.
- Track the timeoutGuard creator pid so daemon children skip copied pthread_t
cleanup after fork.
- Add imdiag properTerminationFile and copy it into core-owned storage.
- Write the marker as the final action before leaving main.
- Open the marker with O_NOFOLLOW and fail with stderr plus non-zero status if
creation, writing, or close fails.
- Make timeoutGuard write the marker with status=error, reason=timeoutGuard,
phase=timeoutguard-abort, and queue.overall.size before aborting.
- Add diag.sh helpers for configuring and checking the marker.
- Use the helper in omkafka-unreachable-shutdown.sh.
- Document the daemonized test oracle and the imdiag parameter.

Validation:
- devtools/format-code.sh --git-changed --check --check-if-available
- make -j$(nproc) check TESTS=""
- ./tests/imdiag-proper-termination-timeoutguard.sh
- ./tests/omkafka-unreachable-shutdown.sh
- ./doc/tools/build-doc-linux.sh --clean --format html --jobs "${RSYSLOG_LOCAL_DOC_JOBS:-$(nproc)}"
- make distcheck TEST_RUN_TYPE=MOCK-OK -j$(nproc)
- local negative check: symlink properTerminationFile exits non-zero and does
not write the symlink target
- local negative check: SIGABRT exits non-zero and does not create the marker
- local regression experiment: reintroducing the old pthread_cancel() modExit
path made omkafka-unreachable-shutdown fail immediately with a missing proper
termination marker; restoring cooperative stop made it pass again.

With the help of AI-Agents: OpenAI Codex

(cherry picked from commit 37a624442eee8ffac80cb46398b0bc2c8a30bcbf)
Rainer Gerhards <rgerhards@adiscon.com> no 2026-06-25
Revert-tests-keep-epoll-preload-helper-test-only.patch Revert "tests: keep epoll preload helper test-only"
This reverts commit a81d1629ab83c5ab0b496ea7789edd6780e433c0.

Keep the platform check as epoll is not available on other platforms
than Linux.
Michael Biebl <biebl@debian.org> no 2026-06-29
Use-check_LTLIBRARIES-to-generate-liboverride_-test-libra.patch Use check_LTLIBRARIES to generate liboverride_* test libraries
check_LTLIBRARIES is almost exactly what we want aside from generating
a .so. To force libtool to generate a .so, specify a dummy rpath.

See https://stackoverflow.com/a/8278784
Michael Biebl <biebl@debian.org> no 2026-06-29

All known versions for source package 'rsyslog'

Links