summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorPeter Marko <peter.marko@siemens.com>2026-01-01 13:14:43 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2026-01-26 09:45:39 +0000
commit8df07c56620109ce2d7092139c99327f0ead08f1 (patch)
treeb312fe989551e1a2a9dde4f0c6d334840bc112ba /meta
parentbfe84d74fe04e261854525b6a2f53fdc3c9ac93c (diff)
downloadpoky-8df07c56620109ce2d7092139c99327f0ead08f1.tar.gz
cups: allow unknown directives in conf files
Patch for CVE-2025-61915 by mistake causes fatal error on unknown directives in configuration files. The default configuration already contains unknown directive in non-systemd setups: Unknown directive IdleExitTimeout on line 32 of /etc/cups/cupsd.conf Backport fix for this from 2.4.x branch which reverts this behavior. (From OE-Core rev: 2f36a12a72cf1f91a2d6ee68bd04292979608eb9) Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Paul Barker <paul@pbarker.dev> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-extended/cups/cups.inc1
-rw-r--r--meta/recipes-extended/cups/cups/0001-conf.c-Fix-stopping-scheduler-on-unknown-directive.patch43
2 files changed, 44 insertions, 0 deletions
diff --git a/meta/recipes-extended/cups/cups.inc b/meta/recipes-extended/cups/cups.inc
index 12668ca023..c7475d2b81 100644
--- a/meta/recipes-extended/cups/cups.inc
+++ b/meta/recipes-extended/cups/cups.inc
@@ -19,6 +19,7 @@ SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/cups-${PV}-source.tar.gz \
19 file://CVE-2025-58364.patch \ 19 file://CVE-2025-58364.patch \
20 file://CVE-2025-58436.patch \ 20 file://CVE-2025-58436.patch \
21 file://CVE-2025-61915.patch \ 21 file://CVE-2025-61915.patch \
22 file://0001-conf.c-Fix-stopping-scheduler-on-unknown-directive.patch \
22 " 23 "
23 24
24GITHUB_BASE_URI = "https://github.com/OpenPrinting/cups/releases" 25GITHUB_BASE_URI = "https://github.com/OpenPrinting/cups/releases"
diff --git a/meta/recipes-extended/cups/cups/0001-conf.c-Fix-stopping-scheduler-on-unknown-directive.patch b/meta/recipes-extended/cups/cups/0001-conf.c-Fix-stopping-scheduler-on-unknown-directive.patch
new file mode 100644
index 0000000000..cf01c82cd6
--- /dev/null
+++ b/meta/recipes-extended/cups/cups/0001-conf.c-Fix-stopping-scheduler-on-unknown-directive.patch
@@ -0,0 +1,43 @@
1From 277d3b1c49895f070bbf4b73cada011d71fbf9f3 Mon Sep 17 00:00:00 2001
2From: Zdenek Dohnal <zdohnal@redhat.com>
3Date: Thu, 4 Dec 2025 09:04:37 +0100
4Subject: [PATCH] conf.c: Fix stopping scheduler on unknown directive
5
6Change the return value to do not trigger stopping the scheduler in case
7of unknown directive, because stopping the scheduler on config errors
8should only happen in case of syntax errors.
9
10Upstream-Status: Backport [https://github.com/OpenPrinting/cups/commit/277d3b1c49895f070bbf4b73cada011d71fbf9f3]
11Signed-off-by: Peter Marko <peter.marko@siemens.com>
12---
13 scheduler/conf.c | 14 +++++++-------
14 1 file changed, 7 insertions(+), 7 deletions(-)
15
16diff --git a/scheduler/conf.c b/scheduler/conf.c
17index 7d6da0252..0e7be0ef4 100644
18--- a/scheduler/conf.c
19+++ b/scheduler/conf.c
20@@ -2697,16 +2697,16 @@ parse_variable(
21 {
22 /*
23 * Unknown directive! Output an error message and continue...
24+ *
25+ * Return value 1 is on purpose - we ignore unknown directives to log
26+ * error, but do not stop the scheduler in case error in configuration
27+ * is set to be fatal.
28 */
29
30- if (!value)
31- cupsdLogMessage(CUPSD_LOG_ERROR, "Missing value for %s on line %d of %s.",
32- line, linenum, filename);
33- else
34- cupsdLogMessage(CUPSD_LOG_ERROR, "Unknown directive %s on line %d of %s.",
35- line, linenum, filename);
36+ cupsdLogMessage(CUPSD_LOG_ERROR, "Unknown directive %s on line %d of %s.",
37+ line, linenum, filename);
38
39- return (0);
40+ return (1);
41 }
42
43 switch (var->type)