diff options
author | Michael Mann <mmann78@netscape.net> | 2013-11-28 18:11:02 +0000 |
---|---|---|
committer | Michael Mann <mmann78@netscape.net> | 2013-11-28 18:11:02 +0000 |
commit | 8dab82556c2a4799800b09a111dab61cb9935883 (patch) | |
tree | 8d58b8edafc5053ada1654af6955dffa1b9753b4 /epan/dissectors/packet-bthci_evt.c | |
parent | 30ae01c73bee0443409e29141ff23bc4629ef736 (diff) |
Bluetooth improvements. Bug 9446 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9446)
From Michal Labedzki.
1. Bluetooth: HFP: Fix recognizing roles. There is need to check which side SDP record is, then it is possible to recognize roles.
2. Bluetooth: RFCOMM/HFP: Fix recognizing services and roles. Direction bit means only that device is initiator of connection or not. But need information who is owner of connection (remote device or localhost), so use this information from L2CAP.
3. Bluetooth: HFP: Fix unexpected expert info
4. Bluetooth: HCI: Set addresses to host/controller. Also optimize a little handing of dissectors handles.
svn path=/trunk/; revision=53628
Diffstat (limited to 'epan/dissectors/packet-bthci_evt.c')
-rw-r--r-- | epan/dissectors/packet-bthci_evt.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/epan/dissectors/packet-bthci_evt.c b/epan/dissectors/packet-bthci_evt.c index f1dbc04073..f79b8701cd 100644 --- a/epan/dissectors/packet-bthci_evt.c +++ b/epan/dissectors/packet-bthci_evt.c @@ -44,6 +44,7 @@ #include "packet-sdp.h" static dissector_handle_t bthci_cmd_handle; +static dissector_handle_t bthci_evt_handle; /* Initialize the protocol and registered fields */ static int proto_bthci_evt = -1; @@ -3662,6 +3663,9 @@ dissect_bthci_evt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *dat break; } + SET_ADDRESS(&pinfo->src, AT_STRINGZ, 11, "controller"); + SET_ADDRESS(&pinfo->dst, AT_STRINGZ, 5, "host"); + hci_data = (hci_data_t *) data; DISSECTOR_ASSERT(hci_data); @@ -5845,7 +5849,7 @@ proto_register_bthci_evt(void) /* Register the protocol name and description */ proto_bthci_evt = proto_register_protocol("Bluetooth HCI Event", "HCI_EVT", "bthci_evt"); - new_register_dissector("bthci_evt", dissect_bthci_evt, proto_bthci_evt); + bthci_evt_handle = new_register_dissector("bthci_evt", dissect_bthci_evt, proto_bthci_evt); /* Required function calls to register the header fields and subtrees used */ proto_register_field_array(proto_bthci_evt, hf, array_length(hf)); @@ -5864,9 +5868,6 @@ proto_register_bthci_evt(void) void proto_reg_handoff_bthci_evt(void) { - dissector_handle_t bthci_evt_handle; - - bthci_evt_handle = find_dissector("bthci_evt"); dissector_add_uint("hci_h4.type", HCI_H4_TYPE_EVT, bthci_evt_handle); dissector_add_uint("hci_h1.type", BTHCI_CHANNEL_EVENT, bthci_evt_handle); |