ff6046
From b63440ad69581bad39a2eda7ab449f8a3f901c4e Mon Sep 17 00:00:00 2001
ff6046
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
ff6046
Date: Sat, 11 Aug 2018 11:43:09 +0200
ff6046
Subject: [PATCH] bus-message: return -EBADMSG not -EINVAL on invalid !gvariant
ff6046
 messages
ff6046
ff6046
(cherry picked from commit d831fb6f2bde829f9309aea242f502587662d1cc)
ff6046
ff6046
Resolves: #1696224
ff6046
---
ff6046
 src/libsystemd/sd-bus/bus-message.c               |   2 +-
ff6046
 ...crash-4162a61a79e4c5a832ca5232212f75fa560a1f75 | Bin 0 -> 534 bytes
ff6046
 2 files changed, 1 insertion(+), 1 deletion(-)
ff6046
 create mode 100644 test/fuzz/fuzz-bus-message/crash-4162a61a79e4c5a832ca5232212f75fa560a1f75
ff6046
ff6046
diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c
ff6046
index e71d29f91d..613722a1a0 100644
ff6046
--- a/src/libsystemd/sd-bus/bus-message.c
ff6046
+++ b/src/libsystemd/sd-bus/bus-message.c
ff6046
@@ -5047,7 +5047,7 @@ static int message_skip_fields(
ff6046
 
ff6046
                         *signature += l;
ff6046
                 } else
ff6046
-                        return -EINVAL;
ff6046
+                        return -EBADMSG;
ff6046
         }
ff6046
 }
ff6046
 
ff6046
diff --git a/test/fuzz/fuzz-bus-message/crash-4162a61a79e4c5a832ca5232212f75fa560a1f75 b/test/fuzz/fuzz-bus-message/crash-4162a61a79e4c5a832ca5232212f75fa560a1f75
ff6046
new file mode 100644
ff6046
index 0000000000000000000000000000000000000000..5faf3308e7ac9c14d66422169e74ba8c05ad7319
ff6046
GIT binary patch
ff6046
literal 534
ff6046
zcmd5(y$ZrW3{L#Rf|Cy*1sA)t;uE+zxcCZJw53qIqj#v2xH$UGez{(yI63-3NWO$5
ff6046
zU+!uqzB5rdCwdYQvnEi=V1glA8o?i`lMy}upTQSe=c-Assy=GTr+lHv=4$0!Vy$EX
ff6046
z_LzYX&1*Ob(W(=vPGKsxuBpzYaDn6&un5*x;uk`Xz?Yk^O%qgGJ(zd
ff6046
sLgf|{Zt3X?n*AhyXRr3JnuD(2&Q!)fgDPC^-?wYdB
ff6046
ff6046
literal 0
ff6046
HcmV?d00001
ff6046