aboutsummaryrefslogtreecommitdiff
path: root/repos/core/busybox/0031-syslogd-fix-wrong-OPT_locallog-flag-detection.patch
blob: efb1410b2280b68f6d39578d1ba9dd18b853bd7a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
From 3db0791a409be9b4c2f08cf3081d2d5141c3314c Mon Sep 17 00:00:00 2001
From: Andrej Valek <andrej.v@skyrain.eu>
Date: Wed, 16 Oct 2024 10:15:08 +0200
Subject: [PATCH] syslogd: fix wrong OPT_locallog flag detection

The OPT_locallog was set on "option_mask32" but checked on local
"opts" variable. While this flag it's used on multiple places can't be
has to be used with "option_mask32". Without this change syslogd
is more-less unusable while no messages are logged locally.

See:

* https://lists.busybox.net/pipermail/busybox/2024-October/090969.html
* https://lists.busybox.net/pipermail/busybox/2023-September/090499.html

Signed-off-by: Andrej Valek <andrej.v@skyrain.eu>
---
 sysklogd/syslogd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
index 7558051f0..fa03aa280 100644
--- a/sysklogd/syslogd.c
+++ b/sysklogd/syslogd.c
@@ -1179,7 +1179,7 @@ int syslogd_main(int argc UNUSED_PARAM, char **argv)
 			}
 		}
 #endif
-		if (!ENABLE_FEATURE_REMOTE_LOG || (opts & OPT_locallog)) {
+		if (!ENABLE_FEATURE_REMOTE_LOG || (option_mask32 & OPT_locallog)) {
 			recvbuf[sz] = '\0'; /* ensure it *is* NUL terminated */
 			split_escape_and_log(recvbuf, sz);
 		}