Dissect cdma2000HandoffInvokeIOSData.

svn path=/trunk/; revision=20409
This commit is contained in:
Anders Broman 2007-01-12 17:50:20 +00:00
parent 61b7428ae5
commit 69238439c4
4 changed files with 185 additions and 75 deletions

View File

@ -326,7 +326,14 @@ static gint ett_cdmachanneldata = -1;
static gint ett_cdmastationclassmark = -1;
static gint ett_channeldata = -1;
static gint ett_confidentialitymodes = -1;
static gint ett_CDMA2000HandoffInvokeIOSData = -1;
static gint ett_CDMA2000HandoffResponseIOSData = -1;
static gint ett_originationtriggers = -1;
static gint ett_pacaindicator = -1;
static gint ett_callingpartyname = -1;
static gint ett_triggercapability = -1;
static gint ett_winoperationscapability = -1;
static gint ett_controlnetworkid = -1;
static gint ett_transactioncapability = -1;
static gint ett_cdmaserviceoption = -1;
static gint ett_systemcapabilities = -1;
@ -1226,38 +1233,38 @@ dissect_ansi_map_cdmacallmode(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_mscid);
/* Call Mode (octet 1, bit A) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cdma, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit B) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_amps, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_namps, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit D) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls1, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit E) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls2, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit F) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls3, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit G) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls4, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit H) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls5, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit G) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls4, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit F) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls3, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit E) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls2, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit D) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls1, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_namps, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit B) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_amps, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit A) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cdma, tvb, offset, 1, FALSE);
length--;
if ( length == 0)
return;
offset++;
/* Call Mode (octet 2, bit A) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls6, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit B) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls7, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls8, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit D) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls9, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit E) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls10, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit D) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls9, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls8, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit B) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls7, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit A) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls6, tvb, offset, 1, FALSE);
}
/* 6.5.2.30 CDMAChannelData */
@ -2083,7 +2090,7 @@ dissect_ansi_map_pacaindicator(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_pacaindicator);
/* PACA Level (octet 1, bits B-E) */
proto_tree_add_item(subtree, hf_ansi_map_PACA_Level, tvb, offset, 1, FALSE);
/* Permanent Activation (PA) (octet 1, bit A) */
@ -3001,7 +3008,7 @@ dissect_ansi_map_callingpartyname(tvbuff_t *tvb, packet_info *pinfo, proto_tree
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_callingpartyname);
/* Availability (octet 1, bit E) N.S0012-0 v 1.0*/
/* Presentation Status (octet 1, bits A and B) */
@ -3053,7 +3060,7 @@ dissect_ansi_map_triggercapability(tvbuff_t *tvb, packet_info *pinfo, proto_tree
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_triggercapability);
/* O_No_Answer (ONA) (octet 1, bit H)*/
@ -3136,7 +3143,7 @@ dissect_ansi_map_winoperationscapability(tvbuff_t *tvb, packet_info *pinfo, prot
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_winoperationscapability);
/* PositionRequest (POS) (octet 1, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_winoperationscapability_pos, tvb, offset, 1, FALSE);
@ -3156,7 +3163,7 @@ dissect_ansi_map_controlnetworkid(tvbuff_t *tvb, packet_info *pinfo, proto_tree
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_controlnetworkid);
/* MarketID octet 1 and 2 */
proto_tree_add_item(subtree, hf_ansi_map_MarketID, tvb, offset, 2, FALSE);
offset = offset + 2;
@ -4419,29 +4426,29 @@ void proto_register_ansi_map(void) {
FT_UINT8, BASE_DEC, VALS(ansi_map_cdmachanneldata_band_cls_vals), 0x7c,
"Band Class", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b6,
{ "Long Code Mask MSB (byte 6)", "ansi_map.cdmachanneldata.lc_mask_b6",
{ "Long Code Mask (byte 6) MSB", "ansi_map.cdmachanneldata.lc_mask_b6",
FT_UINT8, BASE_HEX, NULL, 0x03,
"Long Code Mask MSB (byte 6)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b5,
{ "Long Code Mask (byte 5)", "ansi_map.cdmachanneldata.lc_mask_b5",
FT_UINT8, BASE_HEX, NULL, 0x0,
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 5)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b4,
{ "Long Code Mask (byte 4)", "ansi_map.cdmachanneldata.lc_mask_b4",
FT_UINT8, BASE_HEX, NULL, 0x0,
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 4)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b3,
{ "Long Code Mask (byte 3)", "ansi_map.cdmachanneldata.lc_mask_b3",
FT_UINT8, BASE_HEX, NULL, 0x0,
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 3)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b2,
{ "Long Code Mask (byte 2)", "ansi_map.cdmachanneldata.lc_mask_b2",
FT_UINT8, BASE_HEX, NULL, 0x0,
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 2)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b1,
{ "Long Code Mask LSB(byte 1)", "ansi_map.cdmachanneldata.lc_mask_b1",
FT_UINT8, BASE_HEX, NULL, 0x0,
"Long Code Mask LSB(byte 1)", HFILL }},
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 1)LSB", HFILL }},
{&hf_ansi_map_cdmachanneldata_np_ext,
{ "NP EXT", "ansi_map.cdmachanneldata.np_ext",
FT_BOOLEAN, 8, NULL,0x80,
@ -4748,7 +4755,14 @@ void proto_register_ansi_map(void) {
&ett_cdmastationclassmark,
&ett_channeldata,
&ett_confidentialitymodes,
&ett_CDMA2000HandoffInvokeIOSData,
&ett_CDMA2000HandoffResponseIOSData,
&ett_originationtriggers,
&ett_pacaindicator,
&ett_callingpartyname,
&ett_triggercapability,
&ett_winoperationscapability,
&ett_controlnetworkid,
&ett_transactioncapability,
&ett_cdmaserviceoption,
&ett_systemcapabilities,

View File

@ -10904,6 +10904,60 @@ static void (*dtap_msg_fcn[])(tvbuff_t *tvb, proto_tree *tree, guint32 offset, g
NULL, /* NONE */
};
/* Utillity function to dissect CDMA200 A1 elements in ANSI MAP messages */
void
dissect_cdma2000_a1_elements(tvbuff_t *tvb, _U_ packet_info *pinfo, proto_tree *tree, guint32 offset, guint len){
guint32 curr_offset;
guint32 consumed;
guint curr_len;
curr_offset = offset;
curr_len = len;
/* 0x22 IS-95 Channel Identity */
ELEM_OPT_TLV(ANSI_A_E_IS95_CHAN_ID, "");
/* 0x09 IS-2000 Channel Identity */
ELEM_OPT_TLV(ANSI_A_E_IS2000_CHAN_ID, "");
/* 0x0f IS-2000 Non-Negotiable Service */
ELEM_OPT_TLV(ANSI_A_E_IS2000_NN_SCR, "");
/* 0x62 IS-95/IS-2000 Cause Value */
ELEM_OPT_TLV(ANSI_A_E_IS2000_CAUSE, "");
/* 0x10 Extended Handoff Direction Parameters */
ELEM_OPT_TLV(ANSI_A_E_EXT_HO_DIR_PARAMS, "");
/* 0x16 Hard Handoff Parameters */
ELEM_OPT_TLV(ANSI_A_E_HHO_PARAMS, "");
/* 0x11 IS-2000 Mobile Capabilities */
ELEM_OPT_TLV(ANSI_A_E_IS2000_MOB_CAP, "");
/* 0x0e IS-2000 Service Configuration Record */
ELEM_OPT_TLV(ANSI_A_E_IS2000_SCR, "");
/* 0x14 PDSN IP Address */
switch (a_variant)
{
case A_VARIANT_IOS401:
ELEM_OPT_TLV(ANSI_A_E_PDSN_IP_ADDR, "");
break;
case A_VARIANT_IOS501:
ELEM_OPT_TLV(ANSI_A_E_S_PDSN_ADDR, "");
break;
}
/* 0x18 Protocol Type */
ELEM_OPT_TLV(ANSI_A_E_PTYPE, "");
ELEM_OPT_TLV(ANSI_A_E_QOS_PARAMS, "");
/* 0x2a Service Option List */
ELEM_OPT_TLV(ANSI_A_E_SO_LIST, "");
/* Source RNC to Target RNC Transparent Container */
ELEM_OPT_TLV(ANSI_A_E_SRNC_TRNC_TC, "");
/* 0x3a Target RNC to source RNC Transparent Container */
ELEM_OPT_TLV(ANSI_A_E_TRNC_SRNC_TC, "");
/* Slot Cycle Index */
ELEM_OPT_TLV(ANSI_A_E_SCI, ""); /* XXX TV used elswhere?? */
ELEM_OPT_TLV(ANSI_A_E_ACC_NET_ID, "");/* XXX TV used elswhere?? */
ELEM_OPT_TLV(ANSI_A_E_IS2000_CHAN_ID_3X, "");
/* 0x2a Service Option List ( XX in Response this is mentioned last
* need to repete it here?
*/
ELEM_OPT_TLV(ANSI_A_E_SO_LIST, "");
}
/* GENERIC MAP DISSECTOR FUNCTIONS */
static void

View File

@ -78,3 +78,5 @@ WS_VAR_IMPORT const ext_value_string_t *ansi_a_elem_1_strings;
* array
*/
#define ANSI_A_MAX_NUM_IOS_ELEM_1_STRINGS 255
void dissect_cdma2000_a1_elements(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint32 offset, guint len);

View File

@ -700,7 +700,14 @@ static gint ett_cdmachanneldata = -1;
static gint ett_cdmastationclassmark = -1;
static gint ett_channeldata = -1;
static gint ett_confidentialitymodes = -1;
static gint ett_CDMA2000HandoffInvokeIOSData = -1;
static gint ett_CDMA2000HandoffResponseIOSData = -1;
static gint ett_originationtriggers = -1;
static gint ett_pacaindicator = -1;
static gint ett_callingpartyname = -1;
static gint ett_triggercapability = -1;
static gint ett_winoperationscapability = -1;
static gint ett_controlnetworkid = -1;
static gint ett_transactioncapability = -1;
static gint ett_cdmaserviceoption = -1;
static gint ett_systemcapabilities = -1;
@ -916,7 +923,7 @@ static gint ett_ansi_map_MobileStationMSID = -1;
static gint ett_ansi_map_NewlyAssignedMSID = -1;
/*--- End of included file: packet-ansi_map-ett.c ---*/
#line 335 "packet-ansi_map-template.c"
#line 342 "packet-ansi_map-template.c"
/* Global variables */
static dissector_handle_t data_handle=NULL;
@ -1811,38 +1818,38 @@ dissect_ansi_map_cdmacallmode(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_mscid);
/* Call Mode (octet 1, bit A) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cdma, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit B) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_amps, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_namps, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit D) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls1, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit E) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls2, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit F) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls3, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit G) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls4, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit H) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls5, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit G) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls4, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit F) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls3, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit E) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls2, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit D) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls1, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_namps, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit B) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_amps, tvb, offset, 1, FALSE);
/* Call Mode (octet 1, bit A) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cdma, tvb, offset, 1, FALSE);
length--;
if ( length == 0)
return;
offset++;
/* Call Mode (octet 2, bit A) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls6, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit B) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls7, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls8, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit D) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls9, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit E) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls10, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit D) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls9, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls8, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit B) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls7, tvb, offset, 1, FALSE);
/* Call Mode (octet 2, bit A) */
proto_tree_add_item(subtree, hf_ansi_map_cdmacallmode_cls6, tvb, offset, 1, FALSE);
}
/* 6.5.2.30 CDMAChannelData */
@ -2668,7 +2675,7 @@ dissect_ansi_map_pacaindicator(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_pacaindicator);
/* PACA Level (octet 1, bits B-E) */
proto_tree_add_item(subtree, hf_ansi_map_PACA_Level, tvb, offset, 1, FALSE);
/* Permanent Activation (PA) (octet 1, bit A) */
@ -3586,7 +3593,7 @@ dissect_ansi_map_callingpartyname(tvbuff_t *tvb, packet_info *pinfo, proto_tree
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_callingpartyname);
/* Availability (octet 1, bit E) N.S0012-0 v 1.0*/
/* Presentation Status (octet 1, bits A and B) */
@ -3638,7 +3645,7 @@ dissect_ansi_map_triggercapability(tvbuff_t *tvb, packet_info *pinfo, proto_tree
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_triggercapability);
/* O_No_Answer (ONA) (octet 1, bit H)*/
@ -3721,7 +3728,7 @@ dissect_ansi_map_winoperationscapability(tvbuff_t *tvb, packet_info *pinfo, prot
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_winoperationscapability);
/* PositionRequest (POS) (octet 1, bit C) */
proto_tree_add_item(subtree, hf_ansi_map_winoperationscapability_pos, tvb, offset, 1, FALSE);
@ -3741,7 +3748,7 @@ dissect_ansi_map_controlnetworkid(tvbuff_t *tvb, packet_info *pinfo, proto_tree
proto_tree *subtree;
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_originationtriggers);
subtree = proto_item_add_subtree(item, ett_controlnetworkid);
/* MarketID octet 1 and 2 */
proto_tree_add_item(subtree, hf_ansi_map_MarketID, tvb, offset, 2, FALSE);
offset = offset + 2;
@ -5429,7 +5436,7 @@ static int dissect_reauthenticationReport_impl(packet_info *pinfo, proto_tree *t
static int
dissect_ansi_map_ServiceIndicator(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
#line 385 "ansi_map.cnf"
#line 411 "ansi_map.cnf"
tvbuff_t *parameter_tvb = NULL;
guint8 ServiceIndicator;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
@ -5930,8 +5937,21 @@ static int dissect_alertCode_impl(packet_info *pinfo, proto_tree *tree, tvbuff_t
static int
dissect_ansi_map_CDMA2000HandoffInvokeIOSData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
#line 385 "ansi_map.cnf"
tvbuff_t *parameter_tvb = NULL;
proto_item *item;
proto_tree *subtree;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
&parameter_tvb);
if (parameter_tvb){
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_CDMA2000HandoffInvokeIOSData);
dissect_cdma2000_a1_elements(parameter_tvb, pinfo, subtree, 0, tvb_length_remaining(tvb,0));
}
return offset;
}
@ -6616,8 +6636,21 @@ static int dissect_bsmcstatus_impl(packet_info *pinfo, proto_tree *tree, tvbuff_
static int
dissect_ansi_map_CDMA2000HandoffResponseIOSData(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
#line 398 "ansi_map.cnf"
tvbuff_t *parameter_tvb = NULL;
proto_item *item;
proto_tree *subtree;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
NULL);
&parameter_tvb);
if (parameter_tvb){
item = get_ber_last_created_item();
subtree = proto_item_add_subtree(item, ett_CDMA2000HandoffResponseIOSData);
dissect_cdma2000_a1_elements(parameter_tvb, pinfo, subtree, 0, tvb_length_remaining(tvb,0));
}
return offset;
}
@ -13384,7 +13417,7 @@ static void dissect_OriginationRequestRes_PDU(tvbuff_t *tvb, packet_info *pinfo,
/*--- End of included file: packet-ansi_map-fn.c ---*/
#line 3363 "packet-ansi_map-template.c"
#line 3370 "packet-ansi_map-template.c"
static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset) {
@ -14444,29 +14477,29 @@ void proto_register_ansi_map(void) {
FT_UINT8, BASE_DEC, VALS(ansi_map_cdmachanneldata_band_cls_vals), 0x7c,
"Band Class", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b6,
{ "Long Code Mask MSB (byte 6)", "ansi_map.cdmachanneldata.lc_mask_b6",
{ "Long Code Mask (byte 6) MSB", "ansi_map.cdmachanneldata.lc_mask_b6",
FT_UINT8, BASE_HEX, NULL, 0x03,
"Long Code Mask MSB (byte 6)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b5,
{ "Long Code Mask (byte 5)", "ansi_map.cdmachanneldata.lc_mask_b5",
FT_UINT8, BASE_HEX, NULL, 0x0,
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 5)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b4,
{ "Long Code Mask (byte 4)", "ansi_map.cdmachanneldata.lc_mask_b4",
FT_UINT8, BASE_HEX, NULL, 0x0,
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 4)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b3,
{ "Long Code Mask (byte 3)", "ansi_map.cdmachanneldata.lc_mask_b3",
FT_UINT8, BASE_HEX, NULL, 0x0,
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 3)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b2,
{ "Long Code Mask (byte 2)", "ansi_map.cdmachanneldata.lc_mask_b2",
FT_UINT8, BASE_HEX, NULL, 0x0,
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 2)", HFILL }},
{&hf_ansi_map_cdmachanneldata_lc_mask_b1,
{ "Long Code Mask LSB(byte 1)", "ansi_map.cdmachanneldata.lc_mask_b1",
FT_UINT8, BASE_HEX, NULL, 0x0,
"Long Code Mask LSB(byte 1)", HFILL }},
FT_UINT8, BASE_HEX, NULL, 0xff,
"Long Code Mask (byte 1)LSB", HFILL }},
{&hf_ansi_map_cdmachanneldata_np_ext,
{ "NP EXT", "ansi_map.cdmachanneldata.np_ext",
FT_BOOLEAN, 8, NULL,0x80,
@ -16205,7 +16238,7 @@ void proto_register_ansi_map(void) {
"ansi_map.MobileStationIMSI", HFILL }},
/*--- End of included file: packet-ansi_map-hfarr.c ---*/
#line 4735 "packet-ansi_map-template.c"
#line 4742 "packet-ansi_map-template.c"
};
/* List of subtrees */
@ -16222,7 +16255,14 @@ void proto_register_ansi_map(void) {
&ett_cdmastationclassmark,
&ett_channeldata,
&ett_confidentialitymodes,
&ett_CDMA2000HandoffInvokeIOSData,
&ett_CDMA2000HandoffResponseIOSData,
&ett_originationtriggers,
&ett_pacaindicator,
&ett_callingpartyname,
&ett_triggercapability,
&ett_winoperationscapability,
&ett_controlnetworkid,
&ett_transactioncapability,
&ett_cdmaserviceoption,
&ett_systemcapabilities,
@ -16437,7 +16477,7 @@ void proto_register_ansi_map(void) {
&ett_ansi_map_NewlyAssignedMSID,
/*--- End of included file: packet-ansi_map-ettarr.c ---*/
#line 4756 "packet-ansi_map-template.c"
#line 4770 "packet-ansi_map-template.c"
};