Add call to the Teleservice dissector add a bunch of missing Return signals and
fix up some cut and paste errors. svn path=/trunk/; revision=20293
This commit is contained in:
parent
97df0c4a56
commit
b2312da614
|
@ -255,9 +255,9 @@ AuthenticationRequest ::= [PRIVATE 18] SET {
|
|||
|
||||
-- AuthenticationRequest RETURN RESULT Parameters
|
||||
AuthenticationRequestRes ::= [PRIVATE 18] SET {
|
||||
analogRedirectRecord [225] IMPLICIT AnalogRedirectRecord,
|
||||
analogRedirectRecord [225] IMPLICIT AnalogRedirectRecord OPTIONAL,
|
||||
-- O 6.5.2.bd j
|
||||
authenticationAlgorithmVersion [77] IMPLICIT AuthenticationAlgorithmVersion,
|
||||
authenticationAlgorithmVersion [77] IMPLICIT AuthenticationAlgorithmVersion OPTIONAL,
|
||||
-- O 6.5.2.7 a
|
||||
authenticationResponseUniqueChallenge [37] IMPLICIT AuthenticationResponseUniqueChallenge OPTIONAL,
|
||||
-- O 6.5.2.12 b
|
||||
|
@ -273,7 +273,7 @@ AuthenticationRequestRes ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.at j
|
||||
denyAccess [50] IMPLICIT DenyAccess OPTIONAL,
|
||||
-- O 6.5.2.54 e
|
||||
mobileIdentificationNumber [8] IMPLICIT MobileIdentificationNumber,
|
||||
mobileIdentificationNumber [8] IMPLICIT MobileIdentificationNumber OPTIONAL,
|
||||
-- O 6.5.2.81 l
|
||||
roamingIndication [239] IMPLICIT RoamingIndication OPTIONAL,
|
||||
-- O 6.5.2.br m
|
||||
|
@ -728,9 +728,9 @@ FeatureRequestRes ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.2 b
|
||||
announcementList [130] IMPLICIT AnnouncementList OPTIONAL,
|
||||
-- O 6.5.2.6 c
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 d
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 d
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 d
|
||||
|
@ -1262,9 +1262,9 @@ InformationDirective ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.3 a
|
||||
announcementList [130] IMPLICIT AnnouncementList OPTIONAL,
|
||||
-- O 6.5.2.6 b
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 c
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 c
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 c
|
||||
|
@ -1297,9 +1297,9 @@ InformationForward ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.3 a
|
||||
announcementList [130] IMPLICIT AnnouncementList OPTIONAL,
|
||||
-- O 6.5.2.6 a
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 b
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 b
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 b
|
||||
|
@ -1353,9 +1353,9 @@ InterSystemPage ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.21 a
|
||||
callingPartyNumberDigits2 [81] IMPLICIT CallingPartyNumberDigits2 OPTIONAL,
|
||||
-- O 6.5.2.22 a
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 a
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 a
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 a
|
||||
|
@ -1481,9 +1481,9 @@ InterSystemPage2 ::= [PRIVATE 18] SET {
|
|||
-- M 6.5.2.63
|
||||
alertCode [75] IMPLICIT AlertCode OPTIONAL,
|
||||
-- O 6.5.2.3 a
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 b
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 b
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 b
|
||||
|
@ -1585,9 +1585,9 @@ InterSystemSetup ::= [PRIVATE 18] SET {
|
|||
-- (IS-751)
|
||||
alertCode [75] IMPLICIT AlertCode OPTIONAL,
|
||||
-- O 6.5.2.3 a, g
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 b, g
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 b, g
|
||||
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
|
@ -1693,9 +1693,9 @@ LocationRequestRes ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.1 c
|
||||
announcementList [130] IMPLICIT AnnouncementList OPTIONAL,
|
||||
-- O 6.5.2.6 d
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 e
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 e
|
||||
cdmaServiceOption [175] IMPLICIT CDMAServiceOption OPTIONAL,
|
||||
-- O 6.5.2.f
|
||||
|
@ -1859,9 +1859,9 @@ OriginationRequestRes ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.2 b
|
||||
announcementList [130] IMPLICIT AnnouncementList OPTIONAL,
|
||||
-- O 6.5.2.6 c
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 d, e
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 d, e
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 d, e, f
|
||||
|
@ -2326,9 +2326,9 @@ RoutingRequest ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.21 c, t
|
||||
callingPartyNumberDigits2 [81] IMPLICIT CallingPartyNumberDigits2 OPTIONAL,
|
||||
-- O 6.5.2.22 c, t
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 c
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
--, O 6.5.2.24 c
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 c
|
||||
|
@ -2674,9 +2674,9 @@ TransferToNumberRequestRes ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.2 c
|
||||
announcementList [130] IMPLICIT AnnouncementList OPTIONAL,
|
||||
-- O 6.5.2.6 d
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 e
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 e
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 e, f
|
||||
|
@ -2795,9 +2795,9 @@ UnsolicitedResponseRes ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.21 d
|
||||
callingPartyNumberDigits2 [81] IMPLICIT CallingPartyNumberDigits2 OPTIONAL,
|
||||
-- O 6.5.2.22 d
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 c
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 c
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 c
|
||||
|
@ -3035,9 +3035,9 @@ ServiceRequestRes ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.6 e
|
||||
callingPartyName [243] IMPLICIT CallingPartyName OPTIONAL,
|
||||
-- O 6.5.2.bw a
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 a
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 a
|
||||
callingPartySubaddress [84] IMPLICIT CallingPartySubaddress OPTIONAL,
|
||||
-- O 6.5.2.25 a
|
||||
|
@ -3461,9 +3461,9 @@ TBusyRes ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.2 b
|
||||
announcementList [130] IMPLICIT AnnouncementList OPTIONAL,
|
||||
-- O 6.5.2.6 c
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 d, e
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 d, e
|
||||
carrierDigits [86] IMPLICIT CarrierDigits OPTIONAL,
|
||||
-- O 6.5.2.28 l
|
||||
|
@ -3564,9 +3564,9 @@ TNoAnswerRes ::= [PRIVATE 18] SET {
|
|||
-- O 6.5.2.2 b
|
||||
announcementList [130] IMPLICIT AnnouncementList OPTIONAL,
|
||||
-- O 6.5.2.6 c
|
||||
callingPartyNumberString1 [84] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
callingPartyNumberString1 [82] IMPLICIT CallingPartyNumberString1 OPTIONAL,
|
||||
-- O 6.5.2.23 d, e
|
||||
callingPartyNumberString2 [85] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
callingPartyNumberString2 [83] IMPLICIT CallingPartyNumberString2 OPTIONAL,
|
||||
-- O 6.5.2.24 d, e
|
||||
carrierDigits [86] IMPLICIT CarrierDigits OPTIONAL,
|
||||
-- O 6.5.2.28 l
|
||||
|
@ -3757,7 +3757,7 @@ CallControlDirective ::= [PRIVATE 18] SET {
|
|||
}
|
||||
|
||||
-- z-2 CallControlDirective RETURN RESULT Parameters
|
||||
CallControlDirectiveres ::= [PRIVATE 18] SET {
|
||||
CallControlDirectiveRes ::= [PRIVATE 18] SET {
|
||||
callStatus [310] IMPLICIT CallStatus OPTIONAL
|
||||
-- O 6.5.2.en a
|
||||
|
||||
|
@ -4461,7 +4461,7 @@ CallingPartyNumberDigits2 ::= DigitsType
|
|||
|
||||
-- 6.5.2.23
|
||||
-- 1 0 0 1 1 1 1 1 (0x9f)
|
||||
-- 0 1 0 1 0 0 1 0 (0x52)(84)
|
||||
-- 0 1 0 1 0 0 1 0 (0x52)(82)
|
||||
CallingPartyNumberString1 ::= DigitsType
|
||||
|
||||
-- 6.5.2.24
|
||||
|
@ -5375,9 +5375,11 @@ SMS-OriginatingAddress ::= DigitsType
|
|||
SMS-OriginationRestrictions ::= OCTET STRING
|
||||
|
||||
-- 6.5.2.137
|
||||
-- N.S0005-0 v 1.0
|
||||
-- 1 0 0 1 1 1 1 1 (0x9f)
|
||||
-- 0 1 1 1 0 1 0 0 (0x74)(116)
|
||||
SMS-TeleserviceIdentifier ::= OCTET STRING
|
||||
-- SMS-TeleserviceIdentifier ::= OCTET STRING
|
||||
SMS-TeleserviceIdentifier ::= INTEGER
|
||||
|
||||
-- 6.5.2.138
|
||||
-- 1 0 0 1 1 1 1 1 (0x9f)
|
||||
|
|
|
@ -351,20 +351,32 @@ VAL_PTR = ¶meter_tvb
|
|||
}
|
||||
|
||||
# 6.5.2.124
|
||||
#.FN_BODY SMS-BearerData VAL_PTR = ¶meter_tvb
|
||||
tvbuff_t *parameter_tvb = NULL;
|
||||
#.FN_BODY SMS-BearerData VAL_PTR = &SMS_BearerData_tvb
|
||||
SMS_BearerData_tvb = NULL;
|
||||
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
# 6.5.2.158 TerminationTreatment
|
||||
#.FN_PARS TerminationTreatment
|
||||
# 6.5.2.137
|
||||
# N.S0005-0 v 1.0
|
||||
#.FN_BODY SMS-TeleserviceIdentifier VAL_PTR = &ansi_map_sms_tele_id
|
||||
static gint32 ansi_map_sms_tele_id = -1;
|
||||
|
||||
%(DEFAULT_BODY)s
|
||||
if ((ansi_map_sms_tele_id != -1)&&(SMS_BearerData_tvb !=NULL))
|
||||
{
|
||||
dissector_try_port(is637_tele_id_dissector_table, ansi_map_sms_tele_id, SMS_BearerData_tvb, g_pinfo, g_tree);
|
||||
ansi_map_sms_tele_id = -1;
|
||||
}
|
||||
|
||||
# 6.5.2.159 TerminationTriggers
|
||||
#.FN_PARS TerminationTriggers
|
||||
VAL_PTR = ¶meter_tvb
|
||||
|
||||
#.FN_BODY TerminationTreatment
|
||||
#.FN_BODY TerminationTriggers
|
||||
tvbuff_t *parameter_tvb = NULL;
|
||||
%(DEFAULT_BODY)s
|
||||
if (parameter_tvb){
|
||||
dissect_ansi_map_terminationtreatment(parameter_tvb,pinfo,tree);
|
||||
dissect_ansi_map_terminationtriggers(parameter_tvb,pinfo,tree);
|
||||
}
|
||||
|
||||
# 6.5.2.160 TransactionCapability
|
||||
|
|
|
@ -163,11 +163,11 @@ static int hf_ansi_map_trans_cap_uzci = -1;
|
|||
static int hf_ansi_map_trans_cap_ndss = -1;
|
||||
static int hf_ansi_map_trans_cap_nami = -1;
|
||||
static int hf_ansi_trans_cap_multerm = -1;
|
||||
static int hf_ansi_map_terminationtreatment_busy = -1;
|
||||
static int hf_ansi_map_terminationtreatment_rf = -1;
|
||||
static int hf_ansi_map_terminationtreatment_npr = -1;
|
||||
static int hf_ansi_map_terminationtreatment_na = -1;
|
||||
static int hf_ansi_map_terminationtreatment_nr = -1;
|
||||
static int hf_ansi_map_terminationtriggers_busy = -1;
|
||||
static int hf_ansi_map_terminationtriggers_rf = -1;
|
||||
static int hf_ansi_map_terminationtriggers_npr = -1;
|
||||
static int hf_ansi_map_terminationtriggers_na = -1;
|
||||
static int hf_ansi_map_terminationtriggers_nr = -1;
|
||||
static int hf_ansi_trans_cap_tl = -1;
|
||||
static int hf_ansi_trans_cap_waddr = -1;
|
||||
static int hf_ansi_map_MarketID = -1;
|
||||
|
@ -306,7 +306,7 @@ static dissector_table_t is683_dissector_table; /* IS-683-A (OTA) */
|
|||
static dissector_table_t is801_dissector_table; /* IS-801 (PLD) */
|
||||
static packet_info *g_pinfo;
|
||||
static proto_tree *g_tree;
|
||||
static gint32 ansi_map_sms_tele_id = -1;
|
||||
tvbuff_t *SMS_BearerData_tvb = NULL;
|
||||
static gboolean is683_ota;
|
||||
static gboolean is801_pld;
|
||||
static gboolean ansi_map_is_invoke;
|
||||
|
@ -2129,10 +2129,11 @@ static const value_string ansi_map_SMS_ChargeIndicator_vals[] = {
|
|||
original originator.
|
||||
*/
|
||||
|
||||
/* 6.5.2.130 SMS_NotificationIndicator */
|
||||
/* 6.5.2.130 SMS_NotificationIndicator N.S0005-0 v 1.0*/
|
||||
static const value_string ansi_map_SMS_NotificationIndicator_vals[] = {
|
||||
{ 0, "Not used"},
|
||||
{ 1, "Do not notify when available"},
|
||||
{ 1, "Notify when available"},
|
||||
{ 2, "Do not notify when available"},
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
|
@ -2244,7 +2245,7 @@ static const value_string ansi_map_TerminationTreatment_vals[] = {
|
|||
|
||||
/* 6.5.2.159 TerminationTriggers */
|
||||
/* Busy (octet 1, bits A and B) */
|
||||
static const value_string ansi_map_terminationtreatment_busy_vals[] = {
|
||||
static const value_string ansi_map_terminationtriggers_busy_vals[] = {
|
||||
{ 0, "Busy Call"},
|
||||
{ 1, "Busy Trigger"},
|
||||
{ 2, "Busy Leg"},
|
||||
|
@ -2252,7 +2253,7 @@ static const value_string ansi_map_terminationtreatment_busy_vals[] = {
|
|||
{ 0, NULL }
|
||||
};
|
||||
/* Routing Failure (RF) (octet 1, bits C and D) */
|
||||
static const value_string ansi_map_terminationtreatment_rf_vals[] = {
|
||||
static const value_string ansi_map_terminationtriggers_rf_vals[] = {
|
||||
{ 0, "Failed Call"},
|
||||
{ 1, "Routing Failure Trigger"},
|
||||
{ 2, "Failed Leg"},
|
||||
|
@ -2260,7 +2261,7 @@ static const value_string ansi_map_terminationtreatment_rf_vals[] = {
|
|||
{ 0, NULL }
|
||||
};
|
||||
/* No Page Response (NPR) (octet 1, bits E and F) */
|
||||
static const value_string ansi_map_terminationtreatment_npr_vals[] = {
|
||||
static const value_string ansi_map_terminationtriggers_npr_vals[] = {
|
||||
{ 0, "No Page Response Call"},
|
||||
{ 1, "No Page Response Trigger"},
|
||||
{ 2, "No Page Response Leg"},
|
||||
|
@ -2268,7 +2269,7 @@ static const value_string ansi_map_terminationtreatment_npr_vals[] = {
|
|||
{ 0, NULL }
|
||||
};
|
||||
/* No Answer (NA) (octet 1, bits G and H) */
|
||||
static const value_string ansi_map_terminationtreatment_na_vals[] = {
|
||||
static const value_string ansi_map_terminationtriggers_na_vals[] = {
|
||||
{ 0, "No Answer Call"},
|
||||
{ 1, "No Answer Trigger"},
|
||||
{ 2, "No Answer Leg"},
|
||||
|
@ -2276,15 +2277,15 @@ static const value_string ansi_map_terminationtreatment_na_vals[] = {
|
|||
{ 0, NULL }
|
||||
};
|
||||
/* None Reachable (NR) (octet 2, bit A) */
|
||||
static const value_string ansi_map_terminationtreatment_nr_vals[] = {
|
||||
static const value_string ansi_map_terminationtriggers_nr_vals[] = {
|
||||
{ 0, "Member Not Reachable"},
|
||||
{ 1, "Group Not Reachable"},
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
|
||||
/* 6.5.2.159 TerminationTriggers N.S0005-0 v 1.0*/
|
||||
static void
|
||||
dissect_ansi_map_terminationtreatment(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree){
|
||||
dissect_ansi_map_terminationtriggers(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree){
|
||||
|
||||
int offset = 0;
|
||||
proto_item *item;
|
||||
|
@ -2294,18 +2295,18 @@ dissect_ansi_map_terminationtreatment(tvbuff_t *tvb, packet_info *pinfo, proto_t
|
|||
subtree = proto_item_add_subtree(item, ett_transactioncapability);
|
||||
|
||||
/* Busy (octet 1, bits A and B) */
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtreatment_busy, tvb, offset, 1, FALSE);
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtriggers_busy, tvb, offset, 1, FALSE);
|
||||
/* Routing Failure (RF) (octet 1, bits C and D) */
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtreatment_rf, tvb, offset, 1, FALSE);
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtriggers_rf, tvb, offset, 1, FALSE);
|
||||
/* No Answer (NA) (octet 1, bits G and H) */
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtreatment_na, tvb, offset, 1, FALSE);
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtriggers_na, tvb, offset, 1, FALSE);
|
||||
/* No Page Response (NPR) (octet 1, bits E and F) */
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtreatment_npr, tvb, offset, 1, FALSE);
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtriggers_npr, tvb, offset, 1, FALSE);
|
||||
|
||||
offset++;
|
||||
|
||||
/* None Reachable (NR) (octet 2, bit A) */
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtreatment_nr, tvb, offset, 1, FALSE);
|
||||
proto_tree_add_item(subtree, hf_ansi_map_terminationtriggers_nr, tvb, offset, 1, FALSE);
|
||||
}
|
||||
|
||||
/* 6.5.2.160 TransactionCapability (TIA/EIA-41.5-D, page 5-315) */
|
||||
|
@ -3447,18 +3448,39 @@ static int dissect_returnData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
|
|||
|
||||
|
||||
switch(OperationCode){
|
||||
case 1: /*Handoff Measurement Request*/
|
||||
offset = dissect_ansi_map_HandoffMeasurementRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 2: /*Facilities Directive*/
|
||||
offset = dissect_ansi_map_FacilitiesDirectiveRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 4: /*Handoff Back*/
|
||||
offset = dissect_ansi_map_HandoffBackRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 6: /*Qualification Request*/
|
||||
case 5: /*Facilities Release*/
|
||||
offset = dissect_ansi_map_FacilitiesReleaseRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 6: /*Qualification Request*/
|
||||
offset = dissect_ansi_map_QualificationRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 10: /*Reset Circuit*/
|
||||
offset = dissect_ansi_map_ResetCircuitRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 13: /*Registration Notification*/
|
||||
offset = dissect_ansi_map_RegistrationNotificationRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 14: /*Registration Cancellation*/
|
||||
offset = dissect_ansi_map_RegistrationCancellationRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 15: /*Location Request*/
|
||||
offset = dissect_ansi_map_LocationRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 16: /*Routing Request*/
|
||||
offset = dissect_ansi_map_RoutingRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 17: /*Feature Request*/
|
||||
offset = dissect_ansi_map_FeatureRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 23: /*Transfer To Number Request*/
|
||||
offset = dissect_ansi_map_TransferToNumberRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
|
@ -3477,27 +3499,46 @@ static int dissect_returnData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
|
|||
case 31: /*Count Request*/
|
||||
offset = dissect_ansi_map_CountRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 32: /*Inter System Page*/
|
||||
offset = dissect_ansi_map_InterSystemPageRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 33: /*Unsolicited Response*/
|
||||
offset = dissect_ansi_map_UnsolicitedResponseRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 35: /*Handoff Measurement Request 2*/
|
||||
offset = dissect_ansi_map_HandoffMeasurementRequest2Res(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 36: /*Facilities Directive 2*/
|
||||
offset = dissect_ansi_map_FacilitiesDirective2Res(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 37: /*Handoff Back 2*/
|
||||
offset = dissect_ansi_map_HandoffBack2Res(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 38: /*Handoff To Third 2*/
|
||||
offset = dissect_ansi_map_HandoffToThird2Res(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 39: /*Authentication Directive Forward*/
|
||||
offset = dissect_ansi_map_AuthenticationDirectiveForwardRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 40: /*Authentication Status Report*/
|
||||
offset = dissect_ansi_map_AuthenticationStatusReportRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
/*Reserved 41*/
|
||||
case 43: /*Information Forward*/
|
||||
offset = dissect_ansi_map_InformationForwardRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 45: /*Inter System Page 2*/
|
||||
offset = dissect_ansi_map_InterSystemPage2Res(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 46: /*Inter System Setup*/
|
||||
offset = dissect_ansi_map_InterSystemSetupRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 47: /*OriginationRequest*/
|
||||
offset = dissect_ansi_map_OriginationRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 48: /*Random Variable Request*/
|
||||
offset = dissect_ansi_map_RandomVariableRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 50: /*Remote User Interaction Directive*/
|
||||
offset = dissect_ansi_map_RemoteUserInteractionDirectiveRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
|
@ -3517,18 +3558,28 @@ static int dissect_returnData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
|
|||
offset = dissect_ansi_map_SMSRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
/* N.S0008-0 v 1.0 */
|
||||
case 56: /*OTASP Request 6.4.2.CC*/
|
||||
offset = dissect_ansi_map_OTASPRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 58: /*Change Facilities*/
|
||||
offset = dissect_ansi_map_ChangeFacilitiesRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 59: /*Change Service*/
|
||||
offset = dissect_ansi_map_ChangeServiceRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 60: /*Parameter Request*/
|
||||
offset = dissect_ansi_map_ParameterRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 61: /*TMSI Directive*/
|
||||
offset = dissect_ansi_map_TMSIDirectiveRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 63: /*Service Request*/
|
||||
offset = dissect_ansi_map_ServiceRequestRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
/* N.S0013 */
|
||||
case 64: /*Analyzed Information Request*/
|
||||
offset = dissect_ansi_map_AnalyzedInformationRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 68: /*Facility Selected and Available*/
|
||||
offset = dissect_ansi_map_FacilitySelectedAndAvailableRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
|
@ -3541,12 +3592,18 @@ static int dissect_returnData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
|
|||
case 73: /*Seize Resource*/
|
||||
offset = dissect_ansi_map_SeizeResourceRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 74: /*SRF Directive*/
|
||||
offset = dissect_ansi_map_SRFDirectiveRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 75: /*T Busy*/
|
||||
offset = dissect_ansi_map_TBusyRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 76: /*T NoAnswer*/
|
||||
offset = dissect_ansi_map_TNoAnswerRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 81: /*Call Control Directive*/
|
||||
offset = dissect_ansi_map_CallControlDirectiveRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
case 83: /*O Disconnect*/
|
||||
offset = dissect_ansi_map_ODisconnectRes(TRUE, tvb, offset, pinfo, tree, -1);
|
||||
break;
|
||||
|
@ -3592,55 +3649,42 @@ dissect_ansi_map(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
proto_tree *ansi_map_tree = NULL;
|
||||
int offset = 0;
|
||||
|
||||
SMS_BearerData_tvb = NULL;
|
||||
g_pinfo = pinfo;
|
||||
|
||||
g_tree = tree;
|
||||
/*
|
||||
* Make entry in the Protocol column on summary display
|
||||
*/
|
||||
if (check_col(pinfo->cinfo, COL_PROTOCOL))
|
||||
{
|
||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "ANSI MAP");
|
||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "ANSI MAP");
|
||||
}
|
||||
|
||||
/* In the interest of speed, if "tree" is NULL, don't do any work not
|
||||
* necessary to generate protocol tree items.
|
||||
*/
|
||||
if (tree)
|
||||
{
|
||||
g_tree = tree;
|
||||
|
||||
/*
|
||||
* create the ansi_map protocol tree
|
||||
*/
|
||||
ansi_map_item =
|
||||
proto_tree_add_item(tree, proto_ansi_map, tvb, 0, -1, FALSE);
|
||||
|
||||
ansi_map_tree =
|
||||
proto_item_add_subtree(ansi_map_item, ett_ansi_map);
|
||||
|
||||
|
||||
|
||||
ansi_map_item = proto_tree_add_item(tree, proto_ansi_map, tvb, 0, -1, FALSE);
|
||||
ansi_map_tree = proto_item_add_subtree(ansi_map_item, ett_ansi_map);
|
||||
ansi_map_is_invoke = FALSE;
|
||||
is683_ota = FALSE;
|
||||
is801_pld = FALSE;
|
||||
dissect_ansi_map_ComponentPDU(FALSE, tvb, offset, pinfo, ansi_map_tree, -1);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
static void range_delete_callback(guint32 ssn)
|
||||
{
|
||||
if (ssn) {
|
||||
delete_ansi_tcap_subdissector(ssn , ansi_map_handle);
|
||||
add_ansi_tcap_subdissector(ssn , ansi_map_handle);
|
||||
}
|
||||
if (ssn) {
|
||||
delete_ansi_tcap_subdissector(ssn , ansi_map_handle);
|
||||
add_ansi_tcap_subdissector(ssn , ansi_map_handle);
|
||||
}
|
||||
}
|
||||
|
||||
static void range_add_callback(guint32 ssn)
|
||||
{
|
||||
if (ssn) {
|
||||
add_ansi_tcap_subdissector(ssn , ansi_map_handle);
|
||||
}
|
||||
if (ssn) {
|
||||
add_ansi_tcap_subdissector(ssn , ansi_map_handle);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -3835,25 +3879,25 @@ void proto_register_ansi_map(void) {
|
|||
{ "Multiple Terminations", "ansi_map.trans_cap_multerm",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_trans_cap_multerm_vals), 0x0f,
|
||||
"Multiple Terminations", HFILL }},
|
||||
{ &hf_ansi_map_terminationtreatment_busy,
|
||||
{ "Busy", "ansi_map.terminationtreatment.busy",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtreatment_busy_vals), 0x03,
|
||||
{ &hf_ansi_map_terminationtriggers_busy,
|
||||
{ "Busy", "ansi_map.terminationtriggers.busy",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtriggers_busy_vals), 0x03,
|
||||
"Busy", HFILL }},
|
||||
{ &hf_ansi_map_terminationtreatment_rf,
|
||||
{ "Routing Failure (RF)", "ansi_map.terminationtreatment.rf",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtreatment_rf_vals), 0x0c,
|
||||
{ &hf_ansi_map_terminationtriggers_rf,
|
||||
{ "Routing Failure (RF)", "ansi_map.terminationtriggers.rf",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtriggers_rf_vals), 0x0c,
|
||||
"Routing Failure (RF)", HFILL }},
|
||||
{ &hf_ansi_map_terminationtreatment_npr,
|
||||
{ "No Page Response (NPR)", "ansi_map.terminationtreatment.npr",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtreatment_npr_vals), 0x30,
|
||||
{ &hf_ansi_map_terminationtriggers_npr,
|
||||
{ "No Page Response (NPR)", "ansi_map.terminationtriggers.npr",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtriggers_npr_vals), 0x30,
|
||||
"No Page Response (NPR)", HFILL }},
|
||||
{ &hf_ansi_map_terminationtreatment_na,
|
||||
{ "No Answer (NA)", "ansi_map.terminationtreatment.na",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtreatment_na_vals), 0xc0,
|
||||
{ &hf_ansi_map_terminationtriggers_na,
|
||||
{ "No Answer (NA)", "ansi_map.terminationtriggers.na",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtriggers_na_vals), 0xc0,
|
||||
"No Answer (NA)", HFILL }},
|
||||
{ &hf_ansi_map_terminationtreatment_nr,
|
||||
{ "None Reachable (NR)", "ansi_map.terminationtreatment.nr",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtreatment_nr_vals), 0x01,
|
||||
{ &hf_ansi_map_terminationtriggers_nr,
|
||||
{ "None Reachable (NR)", "ansi_map.terminationtriggers.nr",
|
||||
FT_UINT8, BASE_DEC, VALS(ansi_map_terminationtriggers_nr_vals), 0x01,
|
||||
"None Reachable (NR)", HFILL }},
|
||||
{ &hf_ansi_trans_cap_tl,
|
||||
{ "TerminationList (TL)", "ansi_map.trans_cap_tl",
|
||||
|
|
Loading…
Reference in New Issue