diff options
-rw-r--r-- | epan/dissectors/packet-bthci_cmd.c | 196 |
1 files changed, 99 insertions, 97 deletions
diff --git a/epan/dissectors/packet-bthci_cmd.c b/epan/dissectors/packet-bthci_cmd.c index 79101d6fbf..386e841dff 100644 --- a/epan/dissectors/packet-bthci_cmd.c +++ b/epan/dissectors/packet-bthci_cmd.c @@ -19,12 +19,12 @@ * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. - * + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. @@ -269,7 +269,7 @@ const value_string bthci_cmd_opcode_vals[] = { {0x0428, "Setup Synchronous Connection"}, {0x0429, "Accept Synchronous Connection Request"}, {0x042a, "Reject Synchronous Connection Request"}, - {0x042b, "IO Capability Response"}, + {0x042b, "IO Capability Request Reply"}, {0x042c, "User Confirmation Request Reply"}, {0x042d, "User Confirmation Request Negative Reply"}, {0x042e, "User Passkey Request Reply"}, @@ -446,8 +446,8 @@ const value_string bthci_cmd_status_vals[] = { {0x30, "Parameter Out Of Mandatory Range"}, {0x32, "Role Switch Pending"}, {0x34, "Reserved Slot Violation"}, - {0x35, "Role Switch Failed"}, - {0x36, "Extended Inquiry Response Too Large"}, + {0x35, "Role Switch Failed"}, + {0x36, "Extended Inquiry Response Too Large"}, {0x37, "Secure Simple Pairing Not Supported By Host"}, {0x38, "Host Busy - Pairing"}, {0, NULL } @@ -569,10 +569,12 @@ const value_string bthci_cmd_oob_data_present_vals[] = { }; const value_string bthci_cmd_auth_req_vals[] = { - {0x00, "MITM Protection Not Required - Single Profile. Numeric Comparison, Automatic Accept Allowed" }, - {0x01, "MITM Protection Required - Single Profile. Use IO Capability To Determine Procedure" }, - {0x02, "MITM Protection Not Required - All Profiles. Numeric Comparison, Automatic Accept Allowed" }, - {0x03, "MITM Protection Required - All Profiles. Use IO Capability To Determine Procedure" }, + {0x00, "MITM Protection Not Required - No Bonding. Numeric Comparison, Automatic Accept Allowed" }, + {0x01, "MITM Protection Required - No Bonding. Use IO Capabilty To Determine Procedure" }, + {0x02, "MITM Protection Not Required - Dedicated Bonding. Numeric Comparison, Automatic Accept Allowed" }, + {0x03, "MITM Protection Required - Dedicated Bonding. Use IO Capabilty To Determine Procedure" }, + {0x04, "MITM Protection Not Required - General Bonding. Numeric Comparison, Automatic Accept Allowed" }, + {0x05, "MITM Protection Required - General Bonding. Use IO Capabilty To Determine Procedure" }, { 0, NULL } }; @@ -639,13 +641,13 @@ static const value_string cmd_read_all_flag_values[] = { {0x00, "Return Link Key for specified BD_ADDR" }, {0x01, "Return all stored Link Keys" }, {0, NULL } -}; +}; static const value_string cmd_delete_all_flag_values[] = { {0x00, "Delete only Link Key for specified BD_ADDR" }, {0x01, "Delete all stored Link Keys" }, {0, NULL } -}; +}; static const value_string cmd_scan_enable_values[] = { {0x00, "No Scans enabled" }, @@ -696,8 +698,8 @@ static const value_string cmd_en_disabled[] = { static const value_string cmd_flow_contr_enable[] = { {0x00, "Flow control off in direction from Host Controller to Host." }, - {0x01, "ON - HCI ACL Data Packets / OFF - HCI SCO Data Packets" }, - {0x02, "OFF - HCI ACL Data Packets / ON - HCI SCO Data Packets" }, + {0x01, "ON - HCI ACL Data Packets / OFF - HCI SCO Data Packets" }, + {0x02, "OFF - HCI ACL Data Packets / ON - HCI SCO Data Packets" }, {0x03, "ON - HCI ACL Data Packets / ON - HCI SCO Data Packets" }, {0, NULL } }; @@ -798,7 +800,7 @@ static const value_string cmd_notification_types[] = { }; -static int +static int dissect_bthci_cmd_bd_addr(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree) { guint8 i, bd_addr[6]; @@ -811,13 +813,13 @@ dissect_bthci_cmd_bd_addr(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, pro proto_item_append_text(item, "%02x%02x:%02x:%02x%02x%02x (%s)", bd_addr[0], bd_addr[1], bd_addr[2], bd_addr[3], bd_addr[4], bd_addr[5], get_ether_name(bd_addr)); - + offset+=6; return offset; } -static int +static int dissect_bthci_cmd_cod(int type, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree) { guint8 cod1, cod2; @@ -858,7 +860,7 @@ dissect_bthci_cmd_cod(int type, tvbuff_t *tvb, int offset, packet_info *pinfo _U return offset+3; } -static int +static int dissect_bthci_ext_inquiry_response(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree) { guint8 i, j, length, type; @@ -869,7 +871,7 @@ dissect_bthci_ext_inquiry_response(tvbuff_t *tvb, int offset, packet_info *pinfo ti_eir=proto_tree_add_text(tree, tvb, offset, 240, "Extended Inquiry Response Data"); ti_eir_subtree=proto_item_add_subtree(ti_eir, ett_eir_subtree); } - + i=0; while(i<240){ length = tvb_get_guint8(tvb, offset+i); @@ -882,7 +884,7 @@ dissect_bthci_ext_inquiry_response(tvbuff_t *tvb, int offset, packet_info *pinfo ti_eir_struct_subtree = proto_item_add_subtree(ti_eir_struct, ett_eir_struct_subtree); type = tvb_get_guint8(tvb, offset+i+1); - + proto_item_append_text(ti_eir_struct,"%s", val_to_str(type, bthci_cmd_eir_data_type_vals, "Unknown")); proto_tree_add_item(ti_eir_struct_subtree,hf_bthci_cmd_eir_struct_length, tvb, offset+i, 1, TRUE); @@ -945,7 +947,7 @@ dissect_link_control_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, prot guint32 clock_value; switch(cmd_ocf) { - case 0x0001: /* Inquiry */ + case 0x0001: /* Inquiry */ proto_tree_add_item(tree, hf_bthci_cmd_lap, tvb, offset, 3, TRUE); offset+=3; proto_tree_add_item(tree, hf_bthci_cmd_inq_length, tvb, offset, 1, TRUE); @@ -984,12 +986,12 @@ dissect_link_control_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, prot proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh1, tvb, offset, 2, TRUE); proto_tree_add_item(tree, hf_bthci_cmd_packet_type_2dh3, tvb, offset, 2, TRUE); proto_tree_add_item(tree, hf_bthci_cmd_packet_type_3dh3, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dm3, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh3, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dm3, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh3, tvb, offset, 2, TRUE); proto_tree_add_item(tree, hf_bthci_cmd_packet_type_2dh5, tvb, offset, 2, TRUE); proto_tree_add_item(tree, hf_bthci_cmd_packet_type_3dh5, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dm5, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh5, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dm5, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh5, tvb, offset, 2, TRUE); offset+=2; proto_tree_add_item(tree, hf_bthci_cmd_page_scan_repetition_mode, tvb, offset, 1, TRUE); @@ -1004,7 +1006,7 @@ dissect_link_control_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, prot proto_tree_add_item(tree, hf_bthci_cmd_clock_offset_valid , tvb, offset, 2, TRUE); offset+=2; - proto_tree_add_item(tree, hf_bthci_cmd_allow_role_switch, tvb, offset, 1, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_allow_role_switch, tvb, offset, 1, TRUE); offset++; break; @@ -1018,9 +1020,9 @@ dissect_link_control_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, prot case 0x0007: /* Add SCO Connection */ proto_tree_add_item(tree, hf_bthci_cmd_connection_handle, tvb, offset, 2, TRUE); offset+=2; - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_hv1, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_hv2, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_hv3, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_hv1, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_hv2, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_hv3, tvb, offset, 2, TRUE); offset+=2; break; @@ -1047,7 +1049,7 @@ dissect_link_control_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, prot proto_tree_add_item(tree, hf_bthci_cmd_link_key, tvb, offset, 16, TRUE); offset+=16; - break; + break; case 0x000c: /* Link Key Request Negative Reply */ offset = dissect_bthci_cmd_bd_addr(tvb, offset, pinfo, tree); @@ -1075,12 +1077,12 @@ dissect_link_control_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, prot proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh1, tvb, offset, 2, TRUE); proto_tree_add_item(tree, hf_bthci_cmd_packet_type_2dh3, tvb, offset, 2, TRUE); proto_tree_add_item(tree, hf_bthci_cmd_packet_type_3dh3, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dm3, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh3, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dm3, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh3, tvb, offset, 2, TRUE); proto_tree_add_item(tree, hf_bthci_cmd_packet_type_2dh5, tvb, offset, 2, TRUE); proto_tree_add_item(tree, hf_bthci_cmd_packet_type_3dh5, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dm5, tvb, offset, 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh5, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dm5, tvb, offset, 2, TRUE); + proto_tree_add_item(tree, hf_bthci_cmd_packet_type_dh5, tvb, offset, 2, TRUE); offset+=2; break; @@ -1094,7 +1096,7 @@ dissect_link_control_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, prot offset+=2; proto_tree_add_item(tree, hf_bthci_cmd_encryption_enable, tvb, offset, 1, TRUE); offset++; - break; + break; case 0x0017: /* Master Link Key */ proto_tree_add_item(tree, hf_bthci_cmd_key_flag, tvb, offset, 1, TRUE); @@ -1244,7 +1246,7 @@ dissect_link_policy_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto proto_tree_add_item(tree, hf_bthci_cmd_connection_handle, tvb, offset, 2, TRUE); offset+=2; item = proto_tree_add_item(tree, hf_bthci_cmd_max_interval_sniff, tvb, offset, 2, TRUE); - proto_item_append_text(item, " slots (%g msec)", tvb_get_letohs(tvb, offset)*0.625); + proto_item_append_text(item, " slots (%g msec)", tvb_get_letohs(tvb, offset)*0.625); offset+=2; item = proto_tree_add_item(tree, hf_bthci_cmd_min_interval_sniff, tvb, offset, 2, TRUE); proto_item_append_text(item, " slots (%g msec)", tvb_get_letohs(tvb, offset)*0.625); @@ -1361,7 +1363,7 @@ dissect_link_policy_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto } static void -dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, +dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, guint16 cmd_ocf) { proto_item *item; @@ -1445,7 +1447,7 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin case 0x01: /* Inquiry Result Filter */ proto_tree_add_item(tree, hf_bthci_cmd_inquiry_result_filter_condition_type, tvb, offset, 1, TRUE); - filter_condition_type = tvb_get_guint8(tvb, offset); + filter_condition_type = tvb_get_guint8(tvb, offset); offset++; switch (filter_condition_type) { case 0x01: @@ -1466,7 +1468,7 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin case 0x02: /* Connection Setup Filter */ proto_tree_add_item(tree, hf_bthci_cmd_connection_setup_filter_condition_type, tvb, offset, 1, TRUE); - filter_condition_type = tvb_get_guint8(tvb, offset); + filter_condition_type = tvb_get_guint8(tvb, offset); offset++; switch (filter_condition_type) { case 0x00: @@ -1531,7 +1533,7 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin break; case 0x0013: /* Change Local Name */ - proto_tree_add_item(tree, hf_bthci_cmd_device_name, + proto_tree_add_item(tree, hf_bthci_cmd_device_name, tvb, offset, 248, FALSE); offset+=248; break; @@ -1555,18 +1557,18 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin break; case 0x001a: /* Write Scan Enable */ - proto_tree_add_item(tree, hf_bthci_cmd_scan_enable, + proto_tree_add_item(tree, hf_bthci_cmd_scan_enable, tvb, offset, 1, TRUE); offset++; - break; + break; case 0x0020: /* Write Authentication Enable */ - proto_tree_add_item(tree, hf_bthci_cmd_authentication_enable, + proto_tree_add_item(tree, hf_bthci_cmd_authentication_enable, tvb, offset, 1, TRUE); offset++; break; - case 0x0022: /* Write Encryption Mode */ + case 0x0022: /* Write Encryption Mode */ proto_tree_add_item(tree, hf_bthci_cmd_encrypt_mode, tvb, offset, 1, TRUE); offset++; break; @@ -1611,15 +1613,15 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin case 0x002c: /* Write Hold Mode Activity */ proto_tree_add_item(tree, hf_bthci_cmd_hold_mode_act_page, tvb, offset, 1, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_hold_mode_act_inquiry, + proto_tree_add_item(tree, hf_bthci_cmd_hold_mode_act_inquiry, tvb, offset, 1, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_hold_mode_act_periodic, + proto_tree_add_item(tree, hf_bthci_cmd_hold_mode_act_periodic, tvb, offset, 1, TRUE); offset++; break; case 0x002d: /* Read Transmit Power Level */ - proto_tree_add_item(tree, hf_bthci_cmd_connection_handle, + proto_tree_add_item(tree, hf_bthci_cmd_connection_handle, tvb, offset, 2, TRUE); offset+=2; proto_tree_add_item(tree, hf_bthci_cmd_power_level_type, @@ -1634,7 +1636,7 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin break; case 0x0031: /* Set Host Controller To Host Flow Control */ - proto_tree_add_item(tree, hf_bthci_cmd_flow_contr_enable, + proto_tree_add_item(tree, hf_bthci_cmd_flow_contr_enable, tvb, offset, 1, TRUE); offset++; break; @@ -1655,23 +1657,23 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin break; case 0x0035: /* Host Number Of Completed Packets */ - proto_tree_add_item(tree, hf_bthci_cmd_num_handles, + proto_tree_add_item(tree, hf_bthci_cmd_num_handles, tvb, offset, 1, TRUE); num8 = tvb_get_guint8(tvb, offset); offset++; for (i=0; i<num8; i++) { - proto_tree_add_item(tree, hf_bthci_cmd_connection_handle, + proto_tree_add_item(tree, hf_bthci_cmd_connection_handle, tvb, offset+(i*4), 2, TRUE); - proto_tree_add_item(tree, hf_bthci_cmd_num_compl_packets, + proto_tree_add_item(tree, hf_bthci_cmd_num_compl_packets, tvb, offset+2+(i*4), 2, TRUE); } break; case 0x0037: /* Write Link Supervision Timeout */ - proto_tree_add_item(tree, hf_bthci_cmd_connection_handle, + proto_tree_add_item(tree, hf_bthci_cmd_connection_handle, tvb, offset, 2, TRUE); offset+=2; - item = proto_tree_add_item(tree, hf_bthci_cmd_timeout, + item = proto_tree_add_item(tree, hf_bthci_cmd_timeout, tvb, offset, 2, TRUE); timeout = tvb_get_letohs(tvb, offset); if(timeout>0){ @@ -1698,7 +1700,7 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin break; case 0x003e: /* Write Page Scan Mode */ - proto_tree_add_item(tree, hf_bthci_cmd_page_scan_mode, + proto_tree_add_item(tree, hf_bthci_cmd_page_scan_mode, tvb, 3, 1, TRUE); break; @@ -1719,7 +1721,7 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin item = proto_tree_add_item(tree, hf_bthci_cmd_interval, tvb, offset, 2, TRUE); proto_item_append_text(item, " slots (%g msec)", tvb_get_letohs(tvb, offset)*0.625); offset+=2; - item = proto_tree_add_item(tree, hf_bthci_cmd_window, tvb, offset, 2, TRUE); + item = proto_tree_add_item(tree, hf_bthci_cmd_window, tvb, offset, 2, TRUE); proto_item_append_text(item, " slots (%g msec)", tvb_get_letohs(tvb, offset)*0.625); offset+=2; break; @@ -1794,7 +1796,7 @@ dissect_host_controller_baseband_cmd(tvbuff_t *tvb, int offset, packet_info *pin } static void -dissect_informational_parameters_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, +dissect_informational_parameters_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, guint16 cmd_ocf) { switch(cmd_ocf) { @@ -1813,7 +1815,7 @@ dissect_informational_parameters_cmd(tvbuff_t *tvb, int offset, packet_info *pin } static void -dissect_status_parameters_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, +dissect_status_parameters_cmd(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, guint16 cmd_ocf) { switch(cmd_ocf) { @@ -1948,52 +1950,52 @@ dissect_bthci_cmd(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) */ void proto_register_bthci_cmd(void) -{ +{ /* Setup list of header fields See Section 1.6.1 for details*/ static hf_register_info hf[] = { { &hf_bthci_cmd_opcode, - { "Command Opcode","bthci_cmd.opcode", FT_UINT16, BASE_HEX, + { "Command Opcode","bthci_cmd.opcode", FT_UINT16, BASE_HEX, VALS(bthci_cmd_opcode_vals), 0x0, "HCI Command Opcode", HFILL } }, { &hf_bthci_cmd_ogf, { "ogf", "bthci_cmd.ogf", - FT_UINT16, BASE_HEX, VALS(bthci_ogf_vals), 0xfc00, + FT_UINT16, BASE_HEX, VALS(bthci_ogf_vals), 0xfc00, "Opcode Group Field", HFILL } }, { &hf_bthci_cmd_ocf, { "ocf", "bthci_cmd.ocf", - FT_UINT16, BASE_HEX, NULL, 0x03ff, + FT_UINT16, BASE_HEX, NULL, 0x03ff, "Opcode Command Field", HFILL } }, { &hf_bthci_cmd_param_length, { "Parameter Total Length", "bthci_cmd.param_length", - FT_UINT8, BASE_DEC, NULL, 0x0, + FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL } }, { &hf_bthci_cmd_params, { "Command Parameters", "bthci_cmd.params", - FT_BYTES, BASE_NONE, NULL, 0x0, + FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL } }, { &hf_bthci_cmd_lap, { "LAP", "bthci_cmd.lap", - FT_UINT24, BASE_HEX, NULL, 0x0, + FT_UINT24, BASE_HEX, NULL, 0x0, "LAP for the inquiry access code", HFILL } }, { &hf_bthci_cmd_inq_length, { "Inquiry Length", "bthci_cmd.inq_length", - FT_UINT8, BASE_DEC, NULL, 0x0, + FT_UINT8, BASE_DEC, NULL, 0x0, "Inquiry Length (*1.28s)", HFILL } }, { &hf_bthci_cmd_num_responses, { "Num Responses", "bthci_cmd.num_responses", - FT_UINT8, BASE_DEC, NULL, 0x0, + FT_UINT8, BASE_DEC, NULL, 0x0, "Number of Responses", HFILL } }, { &hf_bthci_cmd_encrypt_mode, { "Encryption Mode", "bthci_cmd.encrypt_mode", - FT_UINT8, BASE_HEX, VALS(encrypt_mode_vals), 0x0, + FT_UINT8, BASE_HEX, VALS(encrypt_mode_vals), 0x0, NULL, HFILL } }, { &hf_bthci_cmd_bd_addr, @@ -2093,18 +2095,18 @@ proto_register_bthci_cmd(void) }, { &hf_bthci_cmd_status, { "Status", "bthci_cmd.status", - FT_UINT8, BASE_HEX, VALS(bthci_cmd_status_vals), 0x0, + FT_UINT8, BASE_HEX, VALS(bthci_cmd_status_vals), 0x0, NULL, HFILL } }, - { &hf_bthci_cmd_max_period_length, + { &hf_bthci_cmd_max_period_length, { "Max Period Length", "bthci_cmd.max_period_length", - FT_UINT16, BASE_DEC, NULL, 0x0, + FT_UINT16, BASE_DEC, NULL, 0x0, "Maximum amount of time specified between consecutive inquiries.", HFILL } }, - { &hf_bthci_cmd_min_period_length, + { &hf_bthci_cmd_min_period_length, { "Min Period Length", "bthci_cmd.min_period_length", - FT_UINT16, BASE_DEC, NULL, 0x0, + FT_UINT16, BASE_DEC, NULL, 0x0, "Minimum amount of time specified between consecutive inquiries.", HFILL } }, { &hf_bthci_cmd_connection_handle, @@ -2114,7 +2116,7 @@ proto_register_bthci_cmd(void) }, { &hf_bthci_cmd_reason, { "Reason", "bthci_cmd.reason", - FT_UINT8, BASE_HEX, VALS(bthci_cmd_status_vals), 0x0, + FT_UINT8, BASE_HEX, VALS(bthci_cmd_status_vals), 0x0, NULL, HFILL } }, { &hf_bthci_cmd_num_link_keys, @@ -2251,7 +2253,7 @@ proto_register_bthci_cmd(void) { "Enable Master Slave Switch", "bthci_cmd.link_policy_switch", FT_UINT16, BASE_DEC, VALS(cmd_boolean), 0x0001, NULL, HFILL } - }, + }, { &hf_bthci_cmd_link_policy_setting_hold, { "Enable Hold Mode", "bthci_cmd.link_policy_hold", FT_UINT16, BASE_DEC, VALS(cmd_boolean), 0x0002, @@ -2311,7 +2313,7 @@ proto_register_bthci_cmd(void) { "Authentication Enable", "bthci_cmd.auth_enable", FT_UINT8, BASE_HEX, VALS(cmd_authentication_enable_values), 0x0, NULL, HFILL } - }, + }, { &hf_bthci_cmd_input_coding, { "Input Coding", "bthci_cmd.input_coding", FT_UINT16, BASE_DEC, VALS(cmd_input_coding_values), 0x0300, @@ -2321,12 +2323,12 @@ proto_register_bthci_cmd(void) { "Input Data Format", "bthci_cmd.input_data_format", FT_UINT16, BASE_DEC, VALS(cmd_input_data_format_values), 0x00c0, NULL, HFILL } - }, + }, { &hf_bthci_cmd_input_sample_size, { "Input Sample Size", "bthci_cmd.input_sample_size", FT_UINT16, BASE_DEC, VALS(cmd_input_sample_size_values), 0x0020, NULL, HFILL } - }, + }, { &hf_bthci_cmd_linear_pcm_bit_pos, { "Linear PCM Bit Pos", "bthci_cmd.lin_pcm_bit_pos", FT_UINT16, BASE_DEC, NULL, 0x001c, @@ -2374,7 +2376,7 @@ proto_register_bthci_cmd(void) }, { &hf_bthci_cmd_device_name, { "Device Name", "bthci_cmd.device_name", - FT_STRINGZ, BASE_NONE, NULL, 0x0, + FT_STRINGZ, BASE_NONE, NULL, 0x0, "Userfriendly descriptive name for the device", HFILL } }, { &hf_bthci_cmd_num_curr_iac, @@ -2486,47 +2488,47 @@ proto_register_bthci_cmd(void) { "Link Key Request", "bthci_cmd.evt_mask_26", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x40, "Link Key Request Bit", HFILL } - }, + }, { &hf_bthci_cmd_evt_mask_27, { "Link Key Notification", "bthci_cmd.evt_mask_27", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x80, "Link Key Notification Bit", HFILL } - }, + }, { &hf_bthci_cmd_evt_mask_30, { "Loopback Command", "bthci_cmd.evt_mask_30", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x01, "Loopback Command Bit", HFILL } - }, + }, { &hf_bthci_cmd_evt_mask_31, { "Data Buffer Overflow" , "bthci_cmd.evt_mask_31", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x02, "Data Buffer Overflow Bit", HFILL } - }, + }, { &hf_bthci_cmd_evt_mask_32, { "Max Slots Change", "bthci_cmd.evt_mask_32", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x04, "Max Slots Change Bit", HFILL } - }, + }, { &hf_bthci_cmd_evt_mask_33, { "Read Clock Offset Complete", "bthci_cmd.evt_mask_33", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x08, "Read Clock Offset Complete Bit", HFILL } - }, + }, { &hf_bthci_cmd_evt_mask_34, { "Connection Packet Type Changed", "bthci_cmd.evt_mask_34", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x10, "Connection Packet Type Changed Bit", HFILL } - }, + }, { &hf_bthci_cmd_evt_mask_35, { "QoS Violation", "bthci_cmd.evt_mask_35", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x20, "QoS Violation Bit", HFILL } - }, + }, { &hf_bthci_cmd_evt_mask_36, { "Page Scan Mode Change", "bthci_cmd.evt_mask_36", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x40, "Page Scan Mode Change Bit", HFILL } - }, + }, { &hf_bthci_cmd_evt_mask_37, { "Page Scan Repetition Mode Change", "bthci_cmd.evt_mask_37", FT_UINT8, BASE_HEX, VALS(cmd_boolean), 0x80, @@ -2647,22 +2649,22 @@ proto_register_bthci_cmd(void) {"Host ACL Data Packet Length (bytes)", "bthci_cmd.max_data_length_acl", FT_UINT16, BASE_DEC, NULL, 0x0, "Max Host ACL Data Packet length of data portion host is able to accept", HFILL } - }, + }, { &hf_bthci_cmd_host_data_packet_length_sco, {"Host SCO Data Packet Length (bytes)", "bthci_cmd.max_data_length_sco", FT_UINT8, BASE_DEC, NULL, 0x0, "Max Host SCO Data Packet length of data portion host is able to accept", HFILL } - }, + }, { &hf_bthci_cmd_host_total_num_acl_data_packets, {"Host Total Num ACL Data Packets", "bthci_cmd.max_data_num_acl", FT_UINT16, BASE_DEC, NULL, 0x0, "Total Number of HCI ACL Data Packets that can be stored in the data buffers of the Host", HFILL } - }, + }, { &hf_bthci_cmd_host_total_num_sco_data_packets, {"Host Total Num SCO Data Packets", "bthci_cmd.max_data_num_sco", FT_UINT16, BASE_DEC, NULL, 0x0, "Total Number of HCI SCO Data Packets that can be stored in the data buffers of the Host", HFILL } - }, + }, { &hf_bthci_cmd_power_level_type, {"Type", "bthci_cmd.power_level_type", FT_UINT8, BASE_HEX, VALS(cmd_power_level_types), 0x0, @@ -2712,7 +2714,7 @@ proto_register_bthci_cmd(void) {"Inquiry Mode", "bthci_cmd.inq_scan_type", FT_UINT8, BASE_DEC, VALS(cmd_inq_modes), 0x0, NULL, HFILL} - }, + }, { &hf_bthci_cmd_fec_required, {"FEC Required", "bthci_cmd.fec_required", FT_UINT8, BASE_DEC, VALS(cmd_boolean), 0x0, @@ -2722,7 +2724,7 @@ proto_register_bthci_cmd(void) {"Erroneous Data Reporting", "bthci_cmd.err_data_reporting", FT_UINT8, BASE_DEC, VALS(cmd_en_disabled), 0x0, NULL, HFILL} - }, + }, { &hf_bthci_cmd_tx_power, {"Power Level (dBm)", "bthci_cmd.power_level", FT_INT8, BASE_DEC, NULL, 0x0, @@ -2860,27 +2862,27 @@ proto_register_bthci_cmd(void) }, { &hf_bthci_cmd_eir_struct_length, { "Length", "bthci_cmd.eir_struct_length", - FT_UINT8, BASE_DEC, NULL, 0x0, + FT_UINT8, BASE_DEC, NULL, 0x0, "Structure Length", HFILL } }, { &hf_bthci_cmd_eir_struct_type, { "Type", "bthci_cmd.eir_data_type", - FT_UINT8, BASE_HEX, VALS(bthci_cmd_eir_data_type_vals), 0x0, + FT_UINT8, BASE_HEX, VALS(bthci_cmd_eir_data_type_vals), 0x0, "Data Type", HFILL } }, { &hf_bthci_cmd_sc_uuid16, { "UUID", "bthci_cmd.service_class_uuid16", - FT_UINT16, BASE_HEX, VALS(bthci_cmd_service_class_type_vals), 0x0, + FT_UINT16, BASE_HEX, VALS(bthci_cmd_service_class_type_vals), 0x0, "16-bit Service Class UUID", HFILL } }, { &hf_bthci_cmd_sc_uuid32, { "UUID", "bthci_cmd.service_class_uuid32", - FT_UINT32, BASE_HEX, NULL, 0x0, + FT_UINT32, BASE_HEX, NULL, 0x0, "32-bit Service Class UUID", HFILL } }, { &hf_bthci_cmd_sc_uuid128, { "UUID", "bthci_cmd.service_class_uuid128", - FT_BYTES, BASE_NONE, NULL, 0x0, + FT_BYTES, BASE_NONE, NULL, 0x0, "128-bit Service Class UUID", HFILL } } }; |