Blame SOURCES/0163-bus-message-let-s-always-use-EBADMSG-when-the-messag.patch

a3e2b5
From 3924b6cf7e42e624a4bcf10f4f0cac3f717ecb5f Mon Sep 17 00:00:00 2001
a3e2b5
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
a3e2b5
Date: Mon, 9 Jul 2018 11:12:33 +0200
a3e2b5
Subject: [PATCH] bus-message: let's always use -EBADMSG when the message is
a3e2b5
 bad
a3e2b5
a3e2b5
-EINVAL means the arguments were somehow wrong, so translate the code we get
a3e2b5
internally into -EBADMSG when returning.
a3e2b5
a3e2b5
(cherry picked from commit 69bd42ca072dfb2f7603b1f82053063293ab54b5)
a3e2b5
a3e2b5
Resolves: #1696224
a3e2b5
---
a3e2b5
 src/libsystemd/sd-bus/bus-message.c                |   2 ++
a3e2b5
 .../crash-c1b37b4729b42c0c05b23cba4eed5d8102498a1e | Bin 0 -> 93 bytes
a3e2b5
 2 files changed, 2 insertions(+)
a3e2b5
 create mode 100644 test/fuzz/fuzz-bus-message/crash-c1b37b4729b42c0c05b23cba4eed5d8102498a1e
a3e2b5
a3e2b5
diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c
a3e2b5
index 1d06fcb80e..83f17436a1 100644
a3e2b5
--- a/src/libsystemd/sd-bus/bus-message.c
a3e2b5
+++ b/src/libsystemd/sd-bus/bus-message.c
a3e2b5
@@ -5414,6 +5414,8 @@ int bus_message_parse_fields(sd_bus_message *m) {
a3e2b5
                                 &m->root_container.item_size,
a3e2b5
                                 &m->root_container.offsets,
a3e2b5
                                 &m->root_container.n_offsets);
a3e2b5
+                if (r == -EINVAL)
a3e2b5
+                        return -EBADMSG;
a3e2b5
                 if (r < 0)
a3e2b5
                         return r;
a3e2b5
         }
a3e2b5
diff --git a/test/fuzz/fuzz-bus-message/crash-c1b37b4729b42c0c05b23cba4eed5d8102498a1e b/test/fuzz/fuzz-bus-message/crash-c1b37b4729b42c0c05b23cba4eed5d8102498a1e
a3e2b5
new file mode 100644
a3e2b5
index 0000000000000000000000000000000000000000..2ae1a8715a12c65fba27d8e60216112a99b0ace7
a3e2b5
GIT binary patch
a3e2b5
literal 93
a3e2b5
wcmd1FDP>|PH8L_f3B<@i03SeB2xg~!`?q0o*WZ8t85
a3e2b5
a3e2b5
literal 0
a3e2b5
HcmV?d00001
a3e2b5