Wireshark  2.9.0-477-g68ec514b
The Wireshark network protocol analyzer
packet-tcap.h
Go to the documentation of this file.
1 /* Do not modify this file. Changes will be overwritten. */
2 /* Generated automatically by the ASN.1 to Wireshark dissector compiler */
3 /* packet-tcap.h */
4 /* asn2wrs.py -b -p tcap -c ./tcap.cnf -s ./packet-tcap-template -D . -O ../.. tcap.asn UnidialoguePDUs.asn DialoguePDUs.asn */
5 
6 /* Input file: packet-tcap-template.h */
7 
8 #line 1 "./asn1/tcap/packet-tcap-template.h"
9 /* packet-tcap.h
10  *
11  * Copyright 2004, Tim Endean <endeant@hotmail.com>
12  *
13  * Wireshark - Network traffic analyzer
14  * By Gerald Combs <gerald@wireshark.org>
15  * Copyright 1998 Gerald Combs
16  *
17  * SPDX-License-Identifier: GPL-2.0-or-later
18  */
19 
20 
21 #ifndef PACKET_tcap_H
22 #define PACKET_tcap_H
23 
24 #include "ws_symbol_export.h"
25 
26 /* TCAP component type */
27 #define TCAP_COMP_INVOKE 0xa1
28 #define TCAP_COMP_RRL 0xa2
29 #define TCAP_COMP_RE 0xa3
30 #define TCAP_COMP_REJECT 0xa4
31 #define TCAP_COMP_RRN 0xa7
32 
33 
34 #define ANSI_TC_INVOKE_L 0xe9
35 #define ANSI_TC_RRL 0xea
36 #define ANSI_TC_RE 0xeb
37 #define ANSI_TC_REJECT 0xec
38 #define ANSI_TC_INVOKE_N 0xed
39 #define ANSI_TC_RRN 0xee
40 
41 
42 #define TCAP_SEQ_TAG 0x30
43 #define TCAP_SET_TAG 0x31
44 
45 #define TCAP_INVOKE_ID_TAG 0x02
46 #define TCAP_LINKED_ID_TAG 0x80
47 
48 #define TCAP_EOC_LEN 2
49 
50 #define TCAP_CONSTRUCTOR(TCtag) (TCtag & 0x20)
51 
52 #define TC_BEGIN 1
53 #define TC_CONT 2
54 #define TC_END 3
55 #define TC_ABORT 4
56 #define TC_ANSI_ABORT 5
57 #define TC_ANSI_ALL 6
58 
59 struct tcap_private_t {
60  gboolean acv; /* Is the Application Context Version present */
61  const void * oid;
62  guint32 session_id;
63  void * context;
64  gchar *TransactionID_str;
65  guint32 src_tid;
66  guint32 dst_tid;
67 };
68 
74 #define LENGTH_OID 23
75 struct tcaphash_context_t {
76  struct tcaphash_context_key_t * key;
77  guint32 session_id;
78  guint32 first_frame;
79  guint32 last_frame;
80  nstime_t begin_time;
81  nstime_t end_time;
82  gboolean responded;
83  gboolean closed;
84  gboolean upper_dissector;
85  gboolean oid_present;
86  gchar oid[LENGTH_OID+1];
87  gboolean subdissector_present;
88  dissector_handle_t subdissector_handle;
89  void (* callback) (tvbuff_t *,packet_info *, proto_tree *, struct tcaphash_context_t *);
90  struct tcaphash_begincall_t * begincall;
91  struct tcaphash_contcall_t * contcall;
92  struct tcaphash_endcall_t * endcall;
93  struct tcaphash_ansicall_t * ansicall;
94 };
95 
96 struct tcaphash_begincall_t {
97  struct tcaphash_begin_info_key_t * beginkey;
98  struct tcaphash_context_t * context;
99  gboolean father;
100  struct tcaphash_begincall_t * next_begincall;
101  struct tcaphash_begincall_t * previous_begincall;
102 };
103 
104 struct tcaphash_contcall_t {
105  struct tcaphash_cont_info_key_t * contkey;
106  struct tcaphash_context_t * context;
107  gboolean father;
108  struct tcaphash_contcall_t * next_contcall;
109  struct tcaphash_contcall_t * previous_contcall;
110 };
111 
112 struct tcaphash_endcall_t {
113  struct tcaphash_end_info_key_t * endkey;
114  struct tcaphash_context_t * context;
115  gboolean father;
116  struct tcaphash_endcall_t * next_endcall;
117  struct tcaphash_endcall_t * previous_endcall;
118 };
119 
120 struct tcaphash_ansicall_t {
121  struct tcaphash_ansi_info_key_t * ansikey;
122  struct tcaphash_context_t * context;
123  gboolean father;
124  struct tcaphash_ansicall_t * next_ansicall;
125  struct tcaphash_ansicall_t * previous_ansicall;
126 };
127 
131 struct tcaphash_context_key_t {
132  guint32 session_id;
133 };
134 
136  guint32 hashKey;
137  guint32 tid;
138  guint32 pc_hash;
139 };
140 
142  guint32 hashKey;
143  guint32 src_tid;
144  guint32 dst_tid;
145  guint32 opc_hash;
146  guint32 dpc_hash;
147 };
148 
150  guint32 hashKey;
151  guint32 tid;
152  guint32 opc_hash;
153  guint32 dpc_hash;
154 };
155 
157  guint32 hashKey;
158  guint32 tid;
159  guint32 opc_hash;
160  guint32 dpc_hash;
161 };
162 
163 
165 struct tcapsrt_info_t {
166  guint32 tcap_session_id;
167  guint32 src_tid;
168  guint32 dst_tid;
169  guint8 ope;
170 };
171 
176 void tcapsrt_init_routine(void);
177 
182 struct tcapsrt_info_t * tcapsrt_razinfo(void);
183 
184 void tcapsrt_close(struct tcaphash_context_t * p_tcaphash_context,
185  packet_info * pinfo _U_);
186 
203  packet_info * pinfo _U_,
204  proto_tree *tree,
205  struct tcapsrt_info_t * p_tcap_info);
206 
207 WS_DLL_PUBLIC gboolean gtcap_StatSRT;
208 
209 extern gint tcap_standard;
210 
211 extern const value_string tcap_component_type_str[];
212 void proto_reg_handoff_tcap(void);
213 void proto_register_tcap(void);
214 
215 extern dissector_handle_t get_itu_tcap_subdissector(guint32 ssn);
216 dissector_handle_t get_ansi_tcap_subdissector(guint32 ssn);
217 
218 extern void add_ansi_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
219 WS_DLL_PUBLIC void add_itu_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
220 
221 extern void delete_ansi_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
222 WS_DLL_PUBLIC void delete_itu_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
223 
224 extern void call_tcap_dissector(dissector_handle_t, tvbuff_t*, packet_info*, proto_tree*);
225 
226 
227 /*--- Included file: packet-tcap-exp.h ---*/
228 #line 1 "./asn1/tcap/packet-tcap-exp.h"
229 extern const value_string tcap_UniDialoguePDU_vals[];
230 extern const value_string tcap_DialoguePDU_vals[];
231 int dissect_tcap_UniDialoguePDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
232 int dissect_tcap_DialoguePDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
233 
234 /*--- End of included file: packet-tcap-exp.h ---*/
235 #line 219 "./asn1/tcap/packet-tcap-template.h"
236 
237 #endif /* PACKET_tcap_H */
Definition: packet-tcap-template.h:148
struct tcaphash_context_t * tcapsrt_call_matching(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, struct tcapsrt_info_t *p_tcap_info)
Definition: packet_info.h:44
struct tcapsrt_info_t * tcapsrt_razinfo(void)
Definition: packet-tcap-template.c:1655
Definition: packet-tcap-template.h:123
Definition: tvbuff-int.h:35
Definition: packet.c:659
Definition: nstime.h:27
Definition: packet-tcap-template.h:104
Definition: packet-tcap-template.h:112
Definition: packet-tcap-template.h:88
Definition: packet-tcap-template.h:67
Definition: asn1.h:63
Definition: packet-tcap-template.h:127
Definition: value_string.h:24
Definition: packet-tcap-template.h:157
Definition: proto.h:759
Definition: packet-tcap-template.h:51
Definition: packet-tcap-template.h:141
Definition: packet-tcap-template.h:133
Definition: packet-tcap-template.h:96
void tcapsrt_init_routine(void)