summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHavoc Pennington <hp@redhat.com>2003-03-02 16:26:15 +0000
committerHavoc Pennington <hp@redhat.com>2003-03-02 16:26:15 +0000
commit7584a7bdccc6c7cf9f3d11c315f088794729b7e4 (patch)
treec1c9fd915e794b62e816e8d979bb27dca2989bdb
parent108f662ad2f8688f857d0be3ab1878c1446189df (diff)
2003-03-02 Havoc Pennington <hp@pobox.com>
* dbus/dbus-message.c (decode_header_data): fix to always init message_padding, from Benjamin Dauvergne
-rw-r--r--ChangeLog5
-rw-r--r--dbus/dbus-message.c9
2 files changed, 11 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index eecf66ec..1505e69f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2003-03-02 Havoc Pennington <hp@pobox.com>
+ * dbus/dbus-message.c (decode_header_data): fix to always init
+ message_padding, from Benjamin Dauvergne
+
+2003-03-02 Havoc Pennington <hp@pobox.com>
+
* configure.in: 0.5
* NEWS: Update.
diff --git a/dbus/dbus-message.c b/dbus/dbus-message.c
index 09ebeef8..59d412ce 100644
--- a/dbus/dbus-message.c
+++ b/dbus/dbus-message.c
@@ -2355,6 +2355,8 @@ _dbus_message_loader_unref (DBusMessageLoader *loader)
* it can probably always return a buffer size to read exactly
* the body of the next message, thus avoiding any memory wastage
* or reallocs.
+ *
+ * @todo we need to enforce a max length on strings in header fields.
*
* @param loader the message loader.
* @param buffer the buffer
@@ -2399,6 +2401,7 @@ _dbus_message_loader_get_buffer (DBusMessageLoader *loader,
#define DBUS_HEADER_FIELD_SENDER_AS_UINT32 \
FOUR_CHARS_TO_UINT32 ('s', 'n', 'd', 'r')
+/* FIXME impose max length on name, srvc, sndr */
static dbus_bool_t
decode_header_data (const DBusString *data,
int header_len,
@@ -2533,10 +2536,10 @@ decode_header_data (const DBusString *data,
_dbus_verbose ("header alignment padding is not nul\n");
return FALSE;
}
-
- if (message_padding)
- *message_padding = header_len - pos;
}
+
+ if (message_padding)
+ *message_padding = header_len - pos;
return TRUE;
}