pkgsrc/sysutils/dbus/patches/patch-CVE-2011-2200

27 lines
972 B
Text

$NetBSD: patch-CVE-2011-2200,v 1.1 2011/06/13 22:06:39 tez Exp $
Patch for CVE-2011-2200 from http://cgit.freedesktop.org/dbus/dbus/commit/?h=dbus-1.2&id=6519a1f77c61d753d4c97efd6e15630eb275336e
--- dbus/dbus-marshal-header.c.orig 2011-06-13 16:48:26.166342800 -0500
+++ dbus/dbus-marshal-header.c 2011-06-13 16:52:02.755479400 -0500
@@ -1462,14 +1462,20 @@
_dbus_header_byteswap (DBusHeader *header,
int new_order)
{
+ unsigned char byte_order;
+
if (header->byte_order == new_order)
return;
+ byte_order = _dbus_string_get_byte (&header->data, BYTE_ORDER_OFFSET);
+ _dbus_assert (header->byte_order == byte_order);
+
_dbus_marshal_byteswap (&_dbus_header_signature_str,
0, header->byte_order,
new_order,
&header->data, 0);
+ _dbus_string_set_byte (&header->data, BYTE_ORDER_OFFSET, new_order);
header->byte_order = new_order;
}