Round 2 of Bluetooth SDP updates:
- replace a lot of proto_tree_add_text with named fields
- dissect more of the protocol
- misc fixes
svn path=/trunk/; revision=48655
Centralize logic related to per-interface conversations, and expose it for use
by class-specific dissectors.
Class-specific descriptor dissectors also need to know the interface in whose
context they are called to work.
This is a prerequisite for a USB Video Class dissector, which needs to decode
many class-specific descriptors.
svn path=/trunk/; revision=47990
tvbuff and runs to the end of the tvbuff? Let me count the ways....
Replace a bunch of different ways of doing that (some incorrect, in that
they're not properly handling tvbuffs where the captured and reported
lengths are different) with tvb_new_subset_remaining().
svn path=/trunk/; revision=47751
Improve handling of truncated USB Configuration descriptors.
In contrast to other descriptor types, configuration descriptors have varying
lengths and may be quite long. This makes them much more prone to truncation
by a host that is cautious about reading large descriptors.
A real-world case has arisen where a host requests a partial configuration
descriptor of a USB webcam, and wireshark improperly reports that the response
is malformed.
Change configuration descriptor dissection to distinguish between truncation
induced by the host, which is not an error, and descriptor truncation or
reporting of invalid descriptor lengths by the device, which are.
This patch also relieves class-specific dissectors of the burden of checking
that the descriptor length and type fields are available, and that all the
bytes claimed by the descriptor length are also available.
svn path=/trunk/; revision=47676
PATCH] USB: Add support for vendor_id/product_id,
bus_id/device_address and class/subclass/protocol tables
USB subdissectors can be decoded by class/subclass/protocol. If fail try vendor_id/product_id.
bus_id/device_address is intented to use by DecodeBy, so user can decode specified device as need.
Part of:
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5032
svn path=/trunk/; revision=46306
USB: Add support for vendor_id/product_id,
bus_id/device_address and class/subclass/protocol
tables
USB subdissectors can be decoded by class/subclass/protocol. If fail try vendor_id/product_id.
bus_id/device_address is intented to use by DecodeBy, so user can decode specified device as need.
Part of:
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5032
svn path=/trunk/; revision=46283
Also:
- create/use several extended variable strings;
- remove some uneeded variable initializers;
- reformat some long lines;
- reformat hf[] entries;
- do some whitespace and formatting changes to use a consistent style.
svn path=/trunk/; revision=46253
variable because we were passing the address of a single guint8 as a
char*. Work around it by making the guint8 an array and filling the last
element with 0 as if it were a null-terminated string.
svn path=/trunk/; revision=45339
in dissect_usb_interface_descriptor() and
dissect_usb_endpoint_descriptor, the offset should be incremented
depending on the number of bytes we dissected, not based on the len
field (len field==0 would then cause an endless loop)
also fixed one occurrence of old_offset-offset, that's probably a typo,
the values will always be negative...
svn path=/trunk/; revision=45310
Conversation address generation during processing of endpoint descriptors
is not being done in a manner consistent with that of general USB
packet dissection. I am not aware of any observable manifestation of this
bug.
svn path=/trunk/; revision=41634