aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-bthci_evt.c
diff options
context:
space:
mode:
authorMichal Labedzki <michal.labedzki@tieto.com>2016-11-22 13:35:21 +0100
committerMichael Mann <mmann78@netscape.net>2017-03-03 19:58:54 +0000
commitf5ed7a5cb8b1508afd4c992762da6514e2c1016f (patch)
treee0f0055df69a2176da21b9d02c41900d4dfce3b7 /epan/dissectors/packet-bthci_evt.c
parentf22964da50418c6f3d7d9fef1c130d4887173351 (diff)
Bluetooth: HCI_EVT: Implement all remaining events/commands
Event: Authenticated Payload Timeout Expired Commands: Set Connectionless Slave Broadcast Set Connectionless Slave Broadcast Receive Set MWS Signaling Read Synchronization Train Parameters Write Synchronization Train Parameters Read Secure Connections Host Support Read Authenticated Payload Timeout Read Local OOB Extended Data Read Extended Page Timeout Read Extended Inquiry Length LE Read Suggested Default Data Length LE Write Suggested Default Data Length LE Read Resolving List Size LE Read Peer Resolvable Address LE Read Local Resolvable Address LE Read Maximum Data Length Change-Id: Id57693b284151b054b7e06237744629a6af98057 Reviewed-on: https://code.wireshark.org/review/20354 Petri-Dish: Michal Labedzki <michal.tomasz.labedzki@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
Diffstat (limited to 'epan/dissectors/packet-bthci_evt.c')
-rw-r--r--epan/dissectors/packet-bthci_evt.c375
1 files changed, 369 insertions, 6 deletions
diff --git a/epan/dissectors/packet-bthci_evt.c b/epan/dissectors/packet-bthci_evt.c
index c628701c24..805ea124c2 100644
--- a/epan/dissectors/packet-bthci_evt.c
+++ b/epan/dissectors/packet-bthci_evt.c
@@ -427,6 +427,36 @@ static int hf_bthci_evt_vendor_codecs = -1;
static int hf_bthci_evt_vendor_codecs_item = -1;
static int hf_bthci_evt_codec_id = -1;
static int hf_bthci_evt_vendor_codec_id = -1;
+static int hf_bthci_evt_mws_bt_rx_priority_assert_offset = -1;
+static int hf_bthci_evt_mws_bt_rx_priority_assert_jitter = -1;
+static int hf_bthci_evt_mws_bt_rx_priority_deassert_offset = -1;
+static int hf_bthci_evt_mws_bt_rx_priority_deassert_jitter = -1;
+static int hf_bthci_evt_mws_bt_tx_priority_assert_offset = -1;
+static int hf_bthci_evt_mws_bt_tx_priority_assert_jitter = -1;
+static int hf_bthci_evt_mws_bt_tx_priority_deassert_offset = -1;
+static int hf_bthci_evt_mws_bt_tx_priority_deassert_jitter = -1;
+static int hf_bthci_evt_mws_802_rx_priority_assert_offset = -1;
+static int hf_bthci_evt_mws_802_rx_priority_assert_jitter = -1;
+static int hf_bthci_evt_mws_802_rx_priority_deassert_offset = -1;
+static int hf_bthci_evt_mws_802_rx_priority_deassert_jitter = -1;
+static int hf_bthci_evt_mws_802_tx_priority_assert_offset = -1;
+static int hf_bthci_evt_mws_802_tx_priority_assert_jitter = -1;
+static int hf_bthci_evt_mws_802_tx_priority_deassert_offset = -1;
+static int hf_bthci_evt_mws_802_tx_priority_deassert_jitter = -1;
+static int hf_bthci_evt_sync_train_interval = -1;
+static int hf_bthci_evt_sync_train_to = -1;
+static int hf_bthci_evt_secure_connection_host_support = -1;
+static int hf_bthci_evt_authenticated_payload_timeout = -1;
+static int hf_bthci_evt_c192 = -1;
+static int hf_bthci_evt_r192 = -1;
+static int hf_bthci_evt_c256 = -1;
+static int hf_bthci_evt_r256 = -1;
+static int hf_bthci_evt_extended_inquiry_length = -1;
+static int hf_bthci_evt_suggested_max_tx_octets = -1;
+static int hf_bthci_evt_suggested_max_tx_time = -1;
+static int hf_bthci_evt_suggested_max_rx_octets = -1;
+static int hf_bthci_evt_suggested_max_rx_time = -1;
+static int hf_bthci_evt_resolving_list_size = -1;
static const int *hfx_bthci_evt_le_features[] = {
&hf_bthci_evt_le_features_encryption,
@@ -2836,6 +2866,7 @@ dissect_bthci_evt_command_complete(tvbuff_t *tvb, int offset,
case 0x2014: /* LE Set Host Channel Classification */
case 0x201d: /* LE Receiver Test */
case 0x201e: /* LE Transmitter Test */
+ case 0x2024: /* LE Write Suggested Default Data Length */
case 0x2027: /* LE Add Device to Resolving List */
case 0x2028: /* LE Remove Device From Resolving List */
case 0x2029: /* LE Clear Resolving List */
@@ -2889,6 +2920,8 @@ dissect_bthci_evt_command_complete(tvbuff_t *tvb, int offset,
case 0x0440: /* Truncated Page Cancel */
case 0x0445: /* Remote OOB Extended Data Request Reply */
case 0x0c60: /* Send Keypress Notification */
+ case 0x202B: /* LE Read Peer Resolvable Address */
+ case 0x202C: /* LE Read Local Resolvable Address */
proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_LITTLE_ENDIAN);
send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
offset += 1;
@@ -4332,24 +4365,199 @@ dissect_bthci_evt_command_complete(tvbuff_t *tvb, int offset,
}
case 0x0441: /* Set Connectionless Slave Broadcast */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_lt_addr, tvb, offset, 1, ENC_NA);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_connectionless_slave_broadcast_interval, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ break;
case 0x0442: /* Set Connectionless Slave Broadcast Receive */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ offset = dissect_bd_addr(hf_bthci_evt_bd_addr, pinfo, tree, tvb, offset, FALSE, bluetooth_data->interface_id, bluetooth_data->adapter_id, NULL);
+
+ proto_tree_add_item(tree, hf_bthci_evt_lt_addr, tvb, offset, 1, ENC_NA);
+ offset += 1;
+
+ break;
case 0x0C70: /* Set MWS Signaling */
+ proto_tree_add_item(tree, hf_bthci_evt_mws_bt_rx_priority_assert_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_bt_rx_priority_assert_jitter, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_bt_rx_priority_deassert_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_bt_rx_priority_deassert_jitter, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_802_rx_priority_assert_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_802_rx_priority_assert_jitter, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_802_rx_priority_deassert_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_802_rx_priority_deassert_jitter, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_bt_tx_priority_assert_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_bt_tx_priority_assert_jitter, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_bt_tx_priority_deassert_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_bt_tx_priority_deassert_jitter, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_802_tx_priority_assert_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_802_tx_priority_assert_jitter, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_802_tx_priority_deassert_offset, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_mws_802_tx_priority_deassert_jitter, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ break;
case 0x0C77: /* Read Synchronization Train Parameters */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_sync_train_interval, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_sync_train_to, tvb, offset, 4, ENC_LITTLE_ENDIAN);
+ offset += 4;
+
+ proto_tree_add_item(tree, hf_bthci_evt_service_data, tvb, offset, 1, ENC_LITTLE_ENDIAN);
+ offset += 1;
+
+ break;
case 0x0C78: /* Write Synchronization Train Parameters */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_sync_train_interval, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ break;
case 0x0C79: /* Read Secure Connections Host Support */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_secure_connection_host_support, tvb, offset, 1, ENC_LITTLE_ENDIAN);
+ offset += 1;
+
+ break;
case 0x0C7B: /* Read Authenticated Payload Timeout */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_connection_handle, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_authenticated_payload_timeout, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ break;
case 0x0C7D: /* Read Local OOB Extended Data */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_c192, tvb, offset, 16, ENC_NA);
+ offset += 16;
+
+ proto_tree_add_item(tree, hf_bthci_evt_r192, tvb, offset, 16, ENC_NA);
+ offset += 16;
+
+ proto_tree_add_item(tree, hf_bthci_evt_c256, tvb, offset, 16, ENC_NA);
+ offset += 16;
+
+ proto_tree_add_item(tree, hf_bthci_evt_r256, tvb, offset, 16, ENC_NA);
+ offset += 16;
+
+ break;
case 0x0C7E: /* Read Extended Page Timeout */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ item = proto_tree_add_item(tree, hf_bthci_evt_timeout, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ proto_item_append_text(item, " slots (%g msec)", tvb_get_guint16(tvb, offset, ENC_LITTLE_ENDIAN) * 0.625);
+
+ break;
case 0x0C80: /* Read Extended Inquiry Length */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ item = proto_tree_add_item(tree, hf_bthci_evt_extended_inquiry_length, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ proto_item_append_text(item, " slots (%g msec)", tvb_get_guint16(tvb, offset, ENC_LITTLE_ENDIAN) * 0.625);
+
+ break;
case 0x2023: /* LE Read Suggested Default Data Length */
- case 0x2024: /* LE Write Suggested Default Data Length */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_suggested_max_tx_octets, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_suggested_max_tx_time, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ break;
case 0x202A: /* LE Read Resolving List Size */
- case 0x202B: /* LE Read Peer Resolvable Address */
- case 0x202C: /* LE Read Local Resolvable Address */
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_resolving_list_size, tvb, offset, 1, ENC_NA);
+ offset += 1;
+
+ break;
case 0x202F: /* LE Read Maximum Data Length */
-/* TODO */
- proto_tree_add_expert(tree, pinfo, &ei_event_undecoded, tvb, offset, tvb_captured_length_remaining(tvb, offset));
- offset += tvb_reported_length_remaining(tvb, offset);
+ proto_tree_add_item(tree, hf_bthci_evt_status, tvb, offset, 1, ENC_NA);
+ send_hci_summary_status_tap(tvb_get_guint8(tvb, offset), pinfo, bluetooth_data);
+ offset += 1;
+
+ proto_tree_add_item(tree, hf_bthci_evt_suggested_max_tx_octets, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_suggested_max_tx_time, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_suggested_max_rx_octets, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ proto_tree_add_item(tree, hf_bthci_evt_suggested_max_rx_time, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
break;
@@ -5302,6 +5510,11 @@ dissect_bthci_evt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *dat
offset += 1;
break;
+ case 0x57: /* Authenticated Payload Timeout Expired */
+ proto_tree_add_item(tree, hf_bthci_evt_connection_handle, tvb, offset, 2, ENC_LITTLE_ENDIAN);
+ offset += 2;
+
+ break;
case 0xfe: /* Bluetooth Logo Testing */
/* TODO: Implement above cases */
proto_tree_add_expert(bthci_evt_tree, pinfo, &ei_event_undecoded, tvb, offset, tvb_captured_length_remaining(tvb, offset));
@@ -7580,6 +7793,156 @@ proto_register_bthci_evt(void)
{ "Codec", "bthci_evt.vendor_codecs.item.codec_id",
FT_UINT16, BASE_HEX, NULL, 0x0,
NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_bt_rx_priority_assert_offset,
+ { "Bluetooth Rx Priority Assert Offset", "bthci_evt.mws.bt.rx_priority.assert.offset",
+ FT_INT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_bt_rx_priority_assert_jitter,
+ { "Bluetooth Rx Priority Assert Jitter", "bthci_evt.mws.bt.rx_priority.assert.jitter",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_bt_rx_priority_deassert_offset,
+ { "Bluetooth Rx Priority Deassert Offset", "bthci_evt.mws.bt.rx_priority.deassert.offset",
+ FT_INT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_bt_rx_priority_deassert_jitter,
+ { "Bluetooth Rx Priority Deassert Jitter", "bthci_evt.mws.bt.rx_priority.deassert.jitter",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_bt_tx_priority_assert_offset,
+ { "Bluetooth Tx Priority Assert Offset", "bthci_evt.mws.bt.tx_priority.assert.offset",
+ FT_INT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_bt_tx_priority_assert_jitter,
+ { "Bluetooth Tx Priority Assert Jitter", "bthci_evt.mws.bt.tx_priority.assert.jitter",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_bt_tx_priority_deassert_offset,
+ { "Bluetooth Tx Priority Deassert Offset", "bthci_evt.mws.bt.tx_priority.deassert.offset",
+ FT_INT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_bt_tx_priority_deassert_jitter,
+ { "Bluetooth Tx Priority Deassert Jitter", "bthci_evt.mws.bt.tx_priority.deassert.jitter",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_802_rx_priority_assert_offset,
+ { "802 Rx Priority Assert Offset", "bthci_evt.mws.802.rx_priority.assert.offset",
+ FT_INT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_802_rx_priority_assert_jitter,
+ { "802 Rx Priority Assert Jitter", "bthci_evt.mws.802.rx_priority.assert.jitter",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_802_rx_priority_deassert_offset,
+ { "802 Rx Priority Deassert Offset", "bthci_evt.mws.802.rx_priority.deassert.offset",
+ FT_INT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_802_rx_priority_deassert_jitter,
+ { "802 Rx Priority Deassert Jitter", "bthci_evt.mws.802.rx_priority.deassert.jitter",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_802_tx_priority_assert_offset,
+ { "802 Tx Priority Assert Offset", "bthci_evt.mws.802.tx_priority.assert.offset",
+ FT_INT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_802_tx_priority_assert_jitter,
+ { "802 Tx Priority Assert Jitter", "bthci_evt.mws.802.tx_priority.assert.jitter",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_802_tx_priority_deassert_offset,
+ { "802 Tx Priority Deassert Offset", "bthci_evt.mws.802.tx_priority.deassert.offset",
+ FT_INT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_mws_802_tx_priority_deassert_jitter,
+ { "802 Tx Priority Deassert Jitter", "bthci_evt.mws.802.tx_priority.deassert.jitter",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_sync_train_interval,
+ { "Synchronization Train Interval", "bthci_evt.sync_train_interval",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_sync_train_to,
+ { "Synchronization Train To", "bthci_evt.sync_train_to",
+ FT_UINT32, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_secure_connection_host_support,
+ { "Secure Connection Host Support", "bthci_evt.secure_connection_host_support",
+ FT_UINT8, BASE_HEX, VALS(evt_enable_values), 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_authenticated_payload_timeout,
+ { "Authenticated Payload Timeout", "bthci_evt.authenticated_payload_timeout",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_c192,
+ { "C 192", "bthci_evt.c192",
+ FT_BYTES, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_r192,
+ { "R 192", "bthci_evt.r192",
+ FT_BYTES, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_c256,
+ { "C 256", "bthci_evt.c256",
+ FT_BYTES, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_r256,
+ { "R 256", "bthci_evt.r256",
+ FT_BYTES, BASE_NONE, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_extended_inquiry_length,
+ { "Extended Inquiry Length", "bthci_evt.extended_inquiry_length",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_suggested_max_tx_octets,
+ { "Suggested Max Tx Octets", "bthci_evt.suggested_max_tx_octets",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_suggested_max_tx_time,
+ { "Suggested Max Tx Time", "bthci_evt.suggested_max_tx_time",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_suggested_max_rx_octets,
+ { "Suggested Max Rx Octets", "bthci_evt.suggested_max_rx_octets",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_suggested_max_rx_time,
+ { "Suggested Max Rx Time", "bthci_evt.suggested_max_rx_time",
+ FT_UINT16, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
+ },
+ { &hf_bthci_evt_resolving_list_size,
+ { "Resolving List Size", "bthci_evt.resolving_list_size",
+ FT_UINT8, BASE_DEC, NULL, 0x0,
+ NULL, HFILL }
}
};