Bluetooth: GATT/L2CAP: Add support for 6LoWPAN

6LoWPAN is used by GATT level profile called IPSP.

Change-Id: Iff2e1a8d531072d9bba03e7d84b56db59110cb35
Reviewed-on: https://code.wireshark.org/review/8045
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
This commit is contained in:
Michal Labedzki 2015-03-28 12:58:17 +01:00
parent 57911165b8
commit 6aba675431
1 changed files with 8 additions and 3 deletions

View File

@ -31,9 +31,11 @@
#include <epan/addr_resolv.h>
#include "packet-ipv6.h"
#include "packet-6lowpan.h"
#include "packet-btl2cap.h"
#include "packet-zbee.h"
void proto_register_6lowpan(void);
void proto_reg_handoff_6lowpan(void);
#include "packet-zbee.h"
/* Definitions for 6lowpan packet disassembly structures and routines */
@ -289,6 +291,7 @@ static expert_field ei_6lowpan_illegal_dest_addr_mode = EI_INIT;
static expert_field ei_6lowpan_bad_ipv6_header_length = EI_INIT;
/* Subdissector handles. */
static dissector_handle_t handle_6lowpan;
static dissector_handle_t data_handle;
static dissector_handle_t ipv6_handle;
@ -2790,7 +2793,7 @@ proto_register_6lowpan(void)
expert_register_field_array(expert_6lowpan, ei, array_length(ei));
/* Register the dissector with wireshark. */
new_register_dissector("6lowpan", dissect_6lowpan, proto_6lowpan);
handle_6lowpan = new_register_dissector("6lowpan", dissect_6lowpan, proto_6lowpan);
/* Register the dissector init function */
register_init_routine(proto_init_6lowpan);
@ -2894,8 +2897,10 @@ proto_reg_handoff_6lowpan(void)
ipv6_handle = find_dissector("ipv6");
/* Register the 6LoWPAN dissector with IEEE 802.15.4 */
dissector_add_for_decode_as(IEEE802154_PROTOABBREV_WPAN_PANID, find_dissector("6lowpan"));
dissector_add_for_decode_as(IEEE802154_PROTOABBREV_WPAN_PANID, handle_6lowpan);
heur_dissector_add(IEEE802154_PROTOABBREV_WPAN, dissect_6lowpan_heur, proto_6lowpan);
dissector_add_uint("btl2cap.psm", BTL2CAP_PSM_LE_IPSP, handle_6lowpan);
} /* proto_reg_handoff_6lowpan */