c2dfb7
From 19a9c67b79ebb9a65bc2aec8d8f2799262ef0cb2 Mon Sep 17 00:00:00 2001
c2dfb7
From: Lennart Poettering <lennart@poettering.net>
c2dfb7
Date: Thu, 17 Jan 2019 18:15:37 +0100
c2dfb7
Subject: [PATCH] sd-bus: make sure dispatch_rqueue() initializes return
c2dfb7
 parameter on all types of success
c2dfb7
c2dfb7
Let's make sure our own code follows coding style and initializes all
c2dfb7
return values on all types of success (and leaves it uninitialized in
c2dfb7
all types of failure).
c2dfb7
c2dfb7
(cherry picked from commit c0bc4ec5cc17ac61773d1e9362b0ffa8382c1ff1)
c2dfb7
Related: CVE-2020-1712
c2dfb7
---
c2dfb7
 src/libsystemd/sd-bus/sd-bus.c | 4 +++-
c2dfb7
 1 file changed, 3 insertions(+), 1 deletion(-)
c2dfb7
c2dfb7
diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c
c2dfb7
index 64026f7ee1..55b008cc9f 100644
c2dfb7
--- a/src/libsystemd/sd-bus/sd-bus.c
c2dfb7
+++ b/src/libsystemd/sd-bus/sd-bus.c
c2dfb7
@@ -1814,8 +1814,10 @@ static int dispatch_rqueue(sd_bus *bus, bool hint_priority, int64_t priority, sd
c2dfb7
                 r = bus_read_message(bus, hint_priority, priority);
c2dfb7
                 if (r < 0)
c2dfb7
                         return r;
c2dfb7
-                if (r == 0)
c2dfb7
+                if (r == 0) {
c2dfb7
+                        *m = NULL;
c2dfb7
                         return ret;
c2dfb7
+                }
c2dfb7
 
c2dfb7
                 ret = 1;
c2dfb7
         }