diff options
author | Luis Ontanon <luis.ontanon@gmail.com> | 2007-03-21 00:48:46 +0000 |
---|---|---|
committer | Luis Ontanon <luis.ontanon@gmail.com> | 2007-03-21 00:48:46 +0000 |
commit | 5fa8e751492a3d47d7d9d60586ad20a7006d8e5c (patch) | |
tree | 2fd7e9f13537d9a62869a04150e5031ca0a6c4bc /epan/dissectors/packet-ranap.c | |
parent | 1b2cddf0b3b38627882c25eb9e282d4910feb551 (diff) |
packet_info.c and packet.c
add sccp_info to struct _packet_info (Sorry but the way private_data works and the fact that TCAP uses it and BSSAP/RANAP can be tunnelled on GSMMAP over TCAP makes it impossible to avoid)
SCCP
- Have SCCP to have a TAP,
- Fix associations so that every message belongs to the association.
- Export message type values so that they can be used by a tap listener
RANAP
- Have RANAP information attached to the sccp_info
BSSAP + GSM_A
- Have DTAP, BSSMAP and BSSAP info attached to the sccp_info
svn path=/trunk/; revision=21076
Diffstat (limited to 'epan/dissectors/packet-ranap.c')
-rw-r--r-- | epan/dissectors/packet-ranap.c | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/epan/dissectors/packet-ranap.c b/epan/dissectors/packet-ranap.c index 732437d24e..23ad3c9385 100644 --- a/epan/dissectors/packet-ranap.c +++ b/epan/dissectors/packet-ranap.c @@ -1,6 +1,6 @@ /* Do not modify this file. */ /* It is created automatically by the ASN.1 to Wireshark dissector compiler */ -/* .\packet-ranap.c */ +/* ./packet-ranap.c */ /* ../../tools/asn2wrs.py -e -F -p ranap -c ranap.cnf -s packet-ranap-template ranap.asn */ /* Input file: packet-ranap-template.c */ @@ -40,6 +40,7 @@ #include <epan/prefs.h> #include <epan/conversation.h> #include <epan/tap.h> +#include <epan/emem.h> #include <stdio.h> #include <string.h> @@ -48,6 +49,7 @@ #include "packet-per.h" #include "packet-ranap.h" #include "packet-e212.h" +#include "packet-sccp.h" #define SCCP_SSN_RANAP 0x8E @@ -592,7 +594,7 @@ static int hf_ranap_private_id = -1; /* PrivateIE_ID */ static int hf_ranap_private_value = -1; /* RANAP_PRIVATE_IES_Value */ /*--- End of included file: packet-ranap-hf.c ---*/ -#line 67 "packet-ranap-template.c" +#line 69 "packet-ranap-template.c" /* Initialize the subtree pointers */ static int ett_ranap = -1; @@ -859,7 +861,7 @@ static gint ett_ranap_PrivateIE_Container = -1; static gint ett_ranap_PrivateIE_Field = -1; /*--- End of included file: packet-ranap-ett.c ---*/ -#line 72 "packet-ranap-template.c" +#line 74 "packet-ranap-template.c" /* Global variables */ @@ -868,6 +870,7 @@ static guint type_of_message; static guint32 ProcedureCode; static guint32 ProtocolIE_ID; + static int dissect_ranap_ies(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree); static int dissect_ranap_FirstValue_ies(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree); static int dissect_ranap_SecondValue_ies(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree); @@ -9755,7 +9758,7 @@ static int dissect_RANAP_PDU_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree * /*--- End of included file: packet-ranap-fn.c ---*/ -#line 85 "packet-ranap-template.c" +#line 88 "packet-ranap-template.c" @@ -10230,6 +10233,7 @@ static int dissect_ranap_ies(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_ break; } + return offset; } @@ -10743,6 +10747,7 @@ dissect_ranap(tvbuff_t *tvb, packet_info *pinfo, proto_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, "RANAP"); + /* create the ranap protocol tree */ ranap_item = proto_tree_add_item(tree, proto_ranap, tvb, 0, -1, FALSE); @@ -10750,6 +10755,18 @@ dissect_ranap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) offset = dissect_RANAP_PDU_PDU(tvb, pinfo, ranap_tree); + if (pinfo->sccp_info) { + sccp_msg_info_t* sccp_msg = pinfo->sccp_info; + const gchar* str = val_to_str(ProcedureCode, ranap_ProcedureCode_vals,"Unknown RANAP"); + + if (sccp_msg->assoc) + sccp_msg->assoc->proto = SCCP_PLOAD_RANAP; + + if (! sccp_msg->label) { + sccp_msg->label = se_strdup(str); + } + } + } static gboolean @@ -10787,6 +10804,7 @@ dissect_sccp_ranap_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) dissect_ranap(tvb, pinfo, tree); + return TRUE; } @@ -12889,7 +12907,7 @@ void proto_register_ranap(void) { "ranap.RANAP_PRIVATE_IES_Value", HFILL }}, /*--- End of included file: packet-ranap-hfarr.c ---*/ -#line 1150 "packet-ranap-template.c" +#line 1168 "packet-ranap-template.c" }; /* List of subtrees */ @@ -13158,7 +13176,7 @@ void proto_register_ranap(void) { &ett_ranap_PrivateIE_Field, /*--- End of included file: packet-ranap-ettarr.c ---*/ -#line 1157 "packet-ranap-template.c" +#line 1175 "packet-ranap-template.c" }; /* Register protocol */ |