USB: call USB control dissector table when recipient is "other"

Otherwise USB HUB dissector is no more called (see the capture in bug 8161 for an example)

Change-Id: Ie8ac1c8ca19bf292d8fc69d9b0b3729f696ffc07
Reviewed-on: https://code.wireshark.org/review/3802
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
This commit is contained in:
Pascal Quantin 2014-08-23 13:02:48 +02:00 committed by Martin Kaiser
parent 59b750c087
commit 6854d8989e
1 changed files with 5 additions and 1 deletions

View File

@ -2693,8 +2693,12 @@ try_dissect_next_protocol(proto_tree *tree, proto_tree *parent, tvbuff_t *next_t
usb_conv_info->usb_trans_info = usb_trans_info;
}
else if (ctrl_recip == RQT_SETUP_RECIPIENT_OTHER) {
heur_subdissector_list = heur_control_subdissector_list;
usb_dissector_table = usb_control_dissector_table;
}
else {
/* the recipient is "other" or "reserved"
/* the recipient is "reserved"
it makes no sense to set usb_dissector_table since there's no way for
us to link this message to a device class */
heur_subdissector_list = heur_control_subdissector_list;