All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] dbus: More complete buffer size check in dbus_message_from_blob
@ 2016-03-19  6:00 Andrew Zaborowski
  2016-03-19  6:00 ` [PATCH] dbus: Replace copy_params/size_params with macros Andrew Zaborowski
                   ` (8 more replies)
  0 siblings, 9 replies; 19+ messages in thread
From: Andrew Zaborowski @ 2016-03-19  6:00 UTC (permalink / raw)
  To: ell

[-- Attachment #1: Type: text/plain, Size: 798 bytes --]

---
 ell/dbus-message.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/ell/dbus-message.c b/ell/dbus-message.c
index 84d42d4..f9e13e2 100644
--- a/ell/dbus-message.c
+++ b/ell/dbus-message.c
@@ -643,9 +643,14 @@ struct l_dbus_message *dbus_message_from_blob(const void *data, size_t size)
 
 	message->header_size = align_len(DBUS_HEADER_SIZE +
 						hdr->field_length, 8);
-	message->header = l_malloc(message->header_size);
-
 	message->body_size = hdr->body_length;
+
+	if (message->header_size + message->body_size < size) {
+		l_free(message);
+		return NULL;
+	}
+
+	message->header = l_malloc(message->header_size);
 	message->body = l_malloc(message->body_size);
 
 	memcpy(message->header, data, message->header_size);
-- 
2.5.0


^ permalink raw reply related	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2016-03-21 22:09 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-19  6:00 [PATCH] dbus: More complete buffer size check in dbus_message_from_blob Andrew Zaborowski
2016-03-19  6:00 ` [PATCH] dbus: Replace copy_params/size_params with macros Andrew Zaborowski
2016-03-21 16:42   ` Denis Kenzior
2016-03-19  6:00 ` [PATCH] unit: Add int64_t casts in dbus tests failing on i386 Andrew Zaborowski
2016-03-21 16:44   ` Denis Kenzior
2016-03-19  6:00 ` [PATCH] dbus: Take iter->sig_len into account in l_dbus_message_iter_get_variant Andrew Zaborowski
2016-03-21 16:59   ` Denis Kenzior
2016-03-19  6:00 ` [PATCH] gvariant: Exclude container's offsets from child iterator len Andrew Zaborowski
2016-03-21 17:57   ` Denis Kenzior
2016-03-21 22:09     ` Andrzej Zaborowski
2016-03-19  6:00 ` [PATCH] gvariant: Reset container's variable_is_last for fixed-size structs Andrew Zaborowski
2016-03-21 18:05   ` Denis Kenzior
2016-03-19  6:00 ` [PATCH] dbus: Fix returned body_size in _dbus1_builder_finish Andrew Zaborowski
2016-03-21 17:02   ` Denis Kenzior
2016-03-19  6:00 ` [PATCH 1/2] dbus: Add _gvariant_builder_mark and _rewind Andrew Zaborowski
2016-03-21 18:05   ` Denis Kenzior
2016-03-19  6:00 ` [PATCH 2/2] unit: reuse mark+rewind, complex 1 tests for gvariant-message Andrew Zaborowski
2016-03-21 18:06   ` Denis Kenzior
2016-03-21 17:16 ` [PATCH] dbus: More complete buffer size check in dbus_message_from_blob Denis Kenzior

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.