Closed sbrown4 closed 3 years ago
I've gotten this once in the test cases, but it's unfortunately intermittent. If I need to I can revert that commit.
dbus-monitor pcap output shows that the message length is 1499. But, the header in the wireshark output doesn't seem to match the dump. The dump header is longer. Below is a dump and the corresponding pcap file.
buffer: 1499 bytearray(b'l\x02\x01\x01\x9b\x05\x00\x00\n\x00\x00\x00/\x00\x00\x00l\x02\x01\x01\x00\x00\x00\x00\x08\x00\x00\x005\x00\x00\x00\x06\x01s\x00\x06\x00\x00\x00:1.345\x00\x00\x05\x01u\x00\x07\x00\x00\x00\x07\x01s\x00\x14\x00\x00\x00org.freedesktop.DBus\x00\x00\x00\x00\x06\x01s\x00\x06\x00\x00\x00:1.345\x00\x00\x05\x01u\x00\x08\x00\x00\x00\x08\x01g\x00\x01s\x00\x00\x07\x01s\x00\x06\x00\x00\x00:1.336\x00\x00\x96\x05\x00\x00<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"\n"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">\n<node>\n\t<interface name="org.freedesktop.DBus.Introspectable">\n\t\t<method name="Introspect">\n\t\t\t<arg name="xml" type="s" direction="out"/>\n\t\t</method>\n\t</interface>\n\t<interface name="org.bluez.mesh.Network1">\n\t\t<method name="Join">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="uuid" type="ay" direction="in"/>\n\t\t</method>\n\t\t<method name="Cancel">\n\t\t</method>\n\t\t<method name="Attach">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="token" type="t" direction="in"/>\n\t\t\t<arg name="node" type="o" direction="out"/>\n\t\t\t<arg name="configuration" type="a(ya(qa{sv}))" direction="out"/>\n\t\t</method>\n\t\t<method name="Leave">\n\t\t\t<arg name="token" type="t" direction="in"/>\n\t\t</method>\n\t\t<method name="CreateNetwork">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="uuid" type="ay" direction="in"/>\n\t\t</method>\n\t\t<method name="Import">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="uuid" type="ay" direction="in"/>\n\t\t\t<arg name="dev_key" type="ay" direction="in"/>\n\t\t\t<arg name="net_key" type="ay" direction="in"/>\n\t\t\t<arg name="net_index" type="q" direction="in"/>\n\t\t\t<arg name="flags" type="a{sv}" direction="in"/>\n\t\t\t<arg name="iv_index" type="u" direction="in"/>\n\t\t\t<arg name')
prov-bad.pcap.gz
cf7d499 should disable those unmarshaller changes by default. Let me know if that fixes it.
That fixed it. The new buffer is below.
Thanks
buffer: 1499 bytearray(b'l\x02\x01\x01\x9b\x05\x00\x00\x0b\x00\x00\x00/\x00\x00\x00\x06\x01s\x00\x06\x00\x00\x00:1.346\x00\x00\x05\x01u\x00\x08\x00\x00\x00\x08\x01g\x00\x01s\x00\x00\x07\x01s\x00\x06\x00\x00\x00:1.336\x00\x00\x96\x05\x00\x00<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"\n"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">\n<node>\n\t<interface name="org.freedesktop.DBus.Introspectable">\n\t\t<method name="Introspect">\n\t\t\t<arg name="xml" type="s" direction="out"/>\n\t\t</method>\n\t</interface>\n\t<interface name="org.bluez.mesh.Network1">\n\t\t<method name="Join">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="uuid" type="ay" direction="in"/>\n\t\t</method>\n\t\t<method name="Cancel">\n\t\t</method>\n\t\t<method name="Attach">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="token" type="t" direction="in"/>\n\t\t\t<arg name="node" type="o" direction="out"/>\n\t\t\t<arg name="configuration" type="a(ya(qa{sv}))" direction="out"/>\n\t\t</method>\n\t\t<method name="Leave">\n\t\t\t<arg name="token" type="t" direction="in"/>\n\t\t</method>\n\t\t<method name="CreateNetwork">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="uuid" type="ay" direction="in"/>\n\t\t</method>\n\t\t<method name="Import">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="uuid" type="ay" direction="in"/>\n\t\t\t<arg name="dev_key" type="ay" direction="in"/>\n\t\t\t<arg name="net_key" type="ay" direction="in"/>\n\t\t\t<arg name="net_index" type="q" direction="in"/>\n\t\t\t<arg name="flags" type="a{sv}" direction="in"/>\n\t\t\t<arg name="iv_index" type="u" direction="in"/>\n\t\t\t<arg name="unicast" type="q" direction="in"/>\n\t\t</method>\n\t</interface>\n</node>\n\x00')
This occurs with the latest commit bb0a24789. The buffer
self.buf
length and contents is from dbus_next/_private/unmarshaller.py", line 260 and appears to be truncated. dbus-monitor shows the full message. The buffer and traceback is below.buffer: 1499 bytearray(b'l\x02\x01\x01\x9b\x05\x00\x00\x15\x00\x00\x00/\x00\x00\x00l\x02\x01\x01\x00\x00\x00\x00\x08\x00\x00\x005\x00\x00\x00\x06\x01s\x00\x06\x00\x00\x00:1.326\x00\x00\x05\x01u\x00\x07\x00\x00\x00\x07\x01s\x00\x14\x00\x00\x00org.freedesktop.DBus\x00\x00\x00\x00\x06\x01s\x00\x06\x00\x00\x00:1.326\x00\x00\x05\x01u\x00\x08\x00\x00\x00\x08\x01g\x00\x01s\x00\x00\x07\x01s\x00\x06\x00\x00\x00:1.294\x00\x00\x96\x05\x00\x00<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"\n"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">\n<node>\n\t<interface name="org.freedesktop.DBus.Introspectable">\n\t\t<method name="Introspect">\n\t\t\t<arg name="xml" type="s" direction="out"/>\n\t\t</method>\n\t</interface>\n\t<interface name="org.bluez.mesh.Network1">\n\t\t<method name="Join">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="uuid" type="ay" direction="in"/>\n\t\t</method>\n\t\t<method name="Cancel">\n\t\t</method>\n\t\t<method name="Attach">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="token" type="t" direction="in"/>\n\t\t\t<arg name="node" type="o" direction="out"/>\n\t\t\t<arg name="configuration" type="a(ya(qa{sv}))" direction="out"/>\n\t\t</method>\n\t\t<method name="Leave">\n\t\t\t<arg name="token" type="t" direction="in"/>\n\t\t</method>\n\t\t<method name="CreateNetwork">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="uuid" type="ay" direction="in"/>\n\t\t</method>\n\t\t<method name="Import">\n\t\t\t<arg name="app" type="o" direction="in"/>\n\t\t\t<arg name="uuid" type="ay" direction="in"/>\n\t\t\t<arg name="dev_key" type="ay" direction="in"/>\n\t\t\t<arg name="net_key" type="ay" direction="in"/>\n\t\t\t<arg name="net_index" type="q" direction="in"/>\n\t\t\t<arg name="flags" type="a{sv}" direction="in"/>\n\t\t\t<arg name="iv_index" type="u" direction="in"/>\n\t\t\t<arg name')