summaryrefslogtreecommitdiff
path: root/asn1/tcap
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2008-09-13 16:38:21 +0000
committerAnders Broman <anders.broman@ericsson.com>2008-09-13 16:38:21 +0000
commiteb9dc794b251d1f2ff7df34b8a9ea59af1056cbd (patch)
tree30939347a3049d29ab56f3c4c82a3039241fee6f /asn1/tcap
parent16512c7b8c8e9c6659300f08456e2dee6f4a6fbb (diff)
downloadwireshark-eb9dc794b251d1f2ff7df34b8a9ea59af1056cbd.tar.gz
Start to get rid of the "old" ANSI TCAP stuff.
svn path=/trunk/; revision=26189
Diffstat (limited to 'asn1/tcap')
-rw-r--r--asn1/tcap/packet-tcap-template.c52
-rw-r--r--asn1/tcap/tcap.asn121
-rw-r--r--asn1/tcap/tcap.cnf40
3 files changed, 2 insertions, 211 deletions
diff --git a/asn1/tcap/packet-tcap-template.c b/asn1/tcap/packet-tcap-template.c
index 972284d076..7318547352 100644
--- a/asn1/tcap/packet-tcap-template.c
+++ b/asn1/tcap/packet-tcap-template.c
@@ -104,7 +104,6 @@ static void raz_tcap_private(struct tcap_private_t * p_tcap_private);
static int dissect_tcap_param(asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset);
static int dissect_tcap_UserInformation(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_);
static int dissect_tcap_ITU_ComponentPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_);
-static int dissect_tcap_ANSI_ComponentPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_);
static int dissect_tcap_TheExternUserInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset,asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_);
static GHashTable* ansi_sub_dissectors = NULL;
@@ -650,57 +649,6 @@ dissect_tcap_ITU_ComponentPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offs
return offset;
}
-/*
- * Call ANSI Subdissector to decode the Tcap Component
- */
-static int
-dissect_tcap_ANSI_ComponentPDU(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_)
-{
- dissector_handle_t subdissector_handle;
- gboolean is_subdissector=FALSE;
- struct tcaphash_context_t * p_tcap_context=NULL;
-
- gchar str[20];
-
-
- /*
- * Handle The TCAP Service Response Time
- */
- if ( gtcap_HandleSRT ) {
- if (!tcap_subdissector_used) {
- p_tcap_context=tcapsrt_call_matching(tvb, actx->pinfo, tcap_stat_tree, gp_tcapsrt_info);
- tcap_subdissector_used=TRUE;
- gp_tcap_context=p_tcap_context;
- tcap_private.context=p_tcap_context;
- } else {
- /* Take the last TCAP context */
- p_tcap_context = gp_tcap_context;
- tcap_private.context=p_tcap_context;
- }
- }
-
- if (p_tcap_context) {
- /* tcap_private.TransactionID_str = bytes_to_str(&(p_tcap_context->session_id),4); */
- g_snprintf(str, sizeof(str), "(%d)",p_tcap_context->session_id);
- tcap_private.TransactionID_str = str;
- }
-
- if ( (subdissector_handle
- = get_ansi_tcap_subdissector(actx->pinfo->match_port))) {
- /* Found according to SSN */
- is_subdissector=TRUE;
- } else {
- /* Nothing found, take the Data handler */
- subdissector_handle = data_handle;
- is_subdissector=TRUE;
- } /* SSN */
-
- /* Call the sub dissector if present, and not already called */
- if (is_subdissector)
- call_dissector(subdissector_handle, tvb, actx->pinfo, tree);
-
- return offset;
-}
static int
dissect_tcap_TheExternUserInfo(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, asn1_ctx_t *actx _U_, proto_tree *tree, int hf_index _U_)
diff --git a/asn1/tcap/tcap.asn b/asn1/tcap/tcap.asn
index bcbbdfc415..99e3e5f24c 100644
--- a/asn1/tcap/tcap.asn
+++ b/asn1/tcap/tcap.asn
@@ -132,13 +132,11 @@ TCMessage ::= CHOICE {
continue [APPLICATION 5] IMPLICIT Continue,
abort [APPLICATION 7] IMPLICIT Abort ,
-- and we now get clever making this ansi and itu!
- ansiunidirectional [ PRIVATE 1 ] IMPLICIT UniTransactionPDU ,
ansiqueryWithPerm [ PRIVATE 2 ] IMPLICIT TransactionPDU ,
ansiqueryWithoutPerm [ PRIVATE 3 ] IMPLICIT TransactionPDU ,
ansiresponse [ PRIVATE 4 ] IMPLICIT TransactionPDU ,
ansiconversationWithPerm [ PRIVATE 5 ] IMPLICIT TransactionPDU ,
- ansiconversationWithoutPerm [ PRIVATE 6 ] IMPLICIT TransactionPDU ,
- ansiabort [ PRIVATE 22 ] IMPLICIT AbortPDU
+ ansiconversationWithoutPerm [ PRIVATE 6 ] IMPLICIT TransactionPDU
}
Unidirectional ::= SEQUENCE{
@@ -353,21 +351,11 @@ ReturnErrorProblem ::= INTEGER { unrecognizedInvokeID (0),
mistypedParameter (4) }
-
-UniTransactionPDU ::= SEQUENCE
-
- {
- identifier TransactionID ,
- dialoguePortionansi DialoguePortionANSI OPTIONAL ,
- componentPortion ComponentSequence OPTIONAL
- }
-
TransactionPDU ::= SEQUENCE
{
identifier TransactionID ,
- dialoguePortionansi DialoguePortionANSI OPTIONAL ,
- componentPortion ComponentSequence OPTIONAL
+ dialoguePortionansi DialoguePortionANSI OPTIONAL
}
--TransactionPDU should include either a Dialogue Portion , a Component Sequence or both
@@ -378,32 +366,6 @@ TransactionID ::= [PRIVATE 7 ] IMPLICIT OCTET STRING
-- 8 Octet for Conversation in the order Originating then Responding TID
-AbortPDU ::= SEQUENCE
- {
- identifier TransactionID ,
- dialoguePortionansi DialoguePortionANSI OPTIONAL ,
- causeInformation CHOICE {
- abortCause P-Abort-cause ,
- userInformation UserInformation -- UserAbortInformation
- } OPTIONAL
-}
-
---when the Abort package is generated by the Transaction sublayer,
-
---the P-Abort-cause must be present
-
-P-Abort-cause ::= [ PRIVATE 23 ] IMPLICIT INTEGER {
- unrecognizedPackageType ( 1 ) ,
- incorrestTransactionPortion ( 2 ) ,
- badlyStructuredTransactionPortion ( 3 ) ,
- unassignedRespondingTransactionID ( 4 ) ,
- permissionToReleaseProblem ( 5 ) ,
- resourceUnavilable ( 6 ) ,
- unrecognizedDialoguePortionID ( 7 ) ,
- badlyStructuredDialoguePortion ( 8 ) ,
- missingDialoguePortion ( 9 ) ,
- inconsistentDialoguePortion ( 10 ) }
-
DialoguePortionANSI ::= [ PRIVATE 25 ] IMPLICIT SEQUENCE {
version ProtocolVersion OPTIONAL ,
applicationContext [0] CHOICE {
@@ -435,85 +397,6 @@ Confidentiality ::= SEQUENCE {
... }
--UserAbortInformation ::= [ PRIVATE 24 ] EXTERNAL
-
-ComponentSequence ::= [ PRIVATE 8 ] IMPLICIT SEQUENCE OF ComponentPDU
-
-ComponentPDU ::=
- CHOICE {
- invokeLastansi [ PRIVATE 9 ] IMPLICIT InvokePDU ,
- returnResultLastansi [ PRIVATE 10 ] IMPLICIT ReturnResultPDU,
- returnErroransi [ PRIVATE 11 ] IMPLICIT ReturnErrorPDU ,
- rejectansi [ PRIVATE 12 ] IMPLICIT RejectPDU ,
- invokeNotLastansi [ PRIVATE 13 ] IMPLICIT InvokePDU ,
- returnResultNotLastansi [ PRIVATE 14 ] IMPLICIT ReturnResultPDU
- }
-
-InvokePDU ::= SEQUENCE {
- componentIDs [ PRIVATE 15 ] IMPLICIT OCTET STRING (SIZE(0..2)) OPTIONAL ,
- operationCode OperationCode OPTIONAL,
- parameterinv ANSIparamch
- }
-ANSIParameters ::= ANY
-
-ANSIparamch ::= SEQUENCE {
- ansiparams ANSIParameters OPTIONAL,
- ansiparams1 ANSIParameters OPTIONAL,
- ansiparams2 ANSIParameters OPTIONAL,
- ansiparams3 ANSIParameters OPTIONAL,
- ansiparams4 ANSIParameters OPTIONAL,
- ansiparams5 ANSIParameters OPTIONAL,
- ansiparams6 ANSIParameters OPTIONAL,
- ansiparams7 ANSIParameters OPTIONAL,
- ansiparams8 ANSIParameters OPTIONAL,
- ansiparams9 ANSIParameters OPTIONAL,
- ansiparams10 ANSIParameters OPTIONAL,
- ansiparams11 ANSIParameters OPTIONAL,
- ansiparams12 ANSIParameters OPTIONAL,
- ansiparams13 ANSIParameters OPTIONAL,
- ansiparams14 ANSIParameters OPTIONAL,
- ansiparams15 ANSIParameters OPTIONAL,
- ansiparams16 ANSIParameters OPTIONAL,
- ansiparams17 ANSIParameters OPTIONAL,
- ansiparams18 ANSIParameters OPTIONAL,
- ansiparams19 ANSIParameters OPTIONAL,
- ansiparams20 ANSIParameters OPTIONAL,
- ansiparams21 ANSIParameters OPTIONAL
- }
-
-ReturnResultPDU ::= SEQUENCE {
- componentID ComponentID,
- parameterrr ANSIparamch
- }
-
-
-ComponentID ::= [ PRIVATE 15 ] IMPLICIT OCTET STRING ( SIZE(1) )
-
-ReturnErrorPDU ::= SEQUENCE {
- componentID ComponentID ,
- errorCode ErrorCode ,
- parameterre ANSIparamch
- }
-
-RejectPDU ::= SEQUENCE {
- componentID ComponentID ,
- rejectProblem [PRIVATE 21 ] IMPLICIT ProblemPDU,
- parameterrj ANSIparamch
-}
-
-
-ProblemPDU ::= INTEGER {
- general-unrecognisedComponentType (257) ,
- general-incorrectComponentPortion ( 258 ) ,
- general-badlyStructuredCompPortion ( 259 )
-
- }
-
-
-OperationCode ::= CHOICE
- {
- national [PRIVATE 16] IMPLICIT INTEGER (-32768..32767),
- private [PRIVATE 17] IMPLICIT INTEGER
- }
ErrorCode ::= CHOICE
{
diff --git a/asn1/tcap/tcap.cnf b/asn1/tcap/tcap.cnf
index f911f6ee70..98b4577aec 100644
--- a/asn1/tcap/tcap.cnf
+++ b/asn1/tcap/tcap.cnf
@@ -140,38 +140,6 @@ dissect_tcap_TheExternUserInfo(implicit_tag, next_tvb, 0, actx, tcap_top_tree, h
return comp_offset+len;
#----------------------------------------------------------------------------------------
-#.FN_BODY ANSIParameters
-/* we are doing the ParamSet here so need to look at the tags*/
- guint32 len;
-len = tvb_length_remaining(tvb, offset);
-if (len > 2) /* arghhh I dont know whether this is constructed or not! */
- offset = dissect_tcap_param(actx,tree,tvb,offset);
-else
-offset = dissect_ber_octet_string(TRUE, actx, tree, tvb, 0, hf_index,
- NULL);
-
-#----------------------------------------------------------------------------------------
-#.FN_BODY ComponentPDU
-tvbuff_t *next_tvb;
-gint8 class;
-gboolean pc;
-gint tag;
-guint32 len, comp_offset;
-gint ind_field;
-
-comp_offset = dissect_ber_identifier(actx->pinfo, tree, tvb, offset, &class, &pc, &tag);
-comp_offset = dissect_ber_length(actx->pinfo, tree, tvb, comp_offset, &len, &ind_field);
-/* we can believe the length now */
-next_tvb = tvb_new_subset(tvb, offset, len+comp_offset-offset, len+comp_offset-offset);
-
-if (!next_tvb)
- return offset;
-
-%(DEFAULT_BODY)s
-
-dissect_tcap_ANSI_ComponentPDU(implicit_tag, next_tvb, 0, actx, tcap_top_tree, hf_index);
-
-#----------------------------------------------------------------------------------------
#.FN_BODY OrigTransactionID
tvbuff_t *parameter_tvb;
guint8 len, i;
@@ -285,14 +253,6 @@ if (check_col(actx->pinfo->cinfo, COL_INFO))
#.END
-#.FN_HDR AbortPDU
-gp_tcapsrt_info->ope=TC_ANSI_ABORT;
-
-if (check_col(actx->pinfo->cinfo, COL_INFO))
- col_set_str(actx->pinfo->cinfo, COL_INFO, "Abort ");
-#.END
-
-
#.FN_HDR TCMessage/ansiqueryWithPerm
gp_tcapsrt_info->ope=TC_ANSI_ALL;
if (check_col(actx->pinfo->cinfo, COL_INFO))