From 7ba714ad7fe8256edfaad7d9a0f09aeb9611ca44 Mon Sep 17 00:00:00 2001 From: Havoc Pennington Date: Thu, 30 Jan 2003 04:20:44 +0000 Subject: 2003-01-30 Havoc Pennington * dbus/dbus-message.c: use message->byte_order instead of DBUS_COMPILER_BYTE_ORDER throughout. (dbus_message_create_header): pad header to align the start of the body of the message to 8-byte boundary * dbus/dbus-marshal.h: make all the demarshalers take const DBusString arguments. * dbus/dbus-message.c (_dbus_message_loader_return_buffer): validate message args here, so we don't have to do slow validation later, and so we catch bad messages as they are incoming. Also add better checks on header_len and body_len. Also fill in message->byte_order * dbus/dbus-string.c (_dbus_string_validate_utf8): new (not implemented properly) (_dbus_string_validate_nul): new function to check all-nul * dbus/dbus-marshal.c (_dbus_marshal_get_field_end_pos): rename get_arg_end_pos and remove all validation (_dbus_marshal_validate_arg): actually do validation here. --- dbus/dbus-string.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'dbus/dbus-string.h') diff --git a/dbus/dbus-string.h b/dbus/dbus-string.h index c762a68f..e71f7fee 100644 --- a/dbus/dbus-string.h +++ b/dbus/dbus-string.h @@ -181,6 +181,14 @@ dbus_bool_t _dbus_string_validate_ascii (const DBusString *str, int start, int len); +dbus_bool_t _dbus_string_validate_utf8 (const DBusString *str, + int start, + int len); + +dbus_bool_t _dbus_string_validate_nul (const DBusString *str, + int start, + int len); + DBUS_END_DECLS; #endif /* DBUS_STRING_H */ -- cgit