5 * Copyright 2003, Michael Lum <mlum [AT] telostech.com>,
6 * In association with Telos Technology Inc.
8 * Wireshark - Network traffic analyzer
9 * By Gerald Combs <gerald@wireshark.org>
10 * Copyright 1998 Gerald Combs
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
30 #define ISUP_MAX_NUM_MESSAGE_TYPES 256
32 typedef struct _isup_tap_rec_t {
34 /* added for VoIP calls analysis, see gtk/voip_calls.c*/
36 gchar *calling_number;
42 * the following allows TAP code access to the messages
43 * without having to duplicate it. With MSVC and a
44 * libwireshark.dll, we need a special declaration.
46 WS_VAR_IMPORT value_string_ext isup_message_type_value_acro_ext;
47 WS_VAR_IMPORT value_string_ext q850_cause_code_vals_ext;
49 * Export some definitions and value_string tables for other dissectors
52 /* Definition of Parameter Types */
53 #define PARAM_TYPE_END_OF_OPT_PARAMS 0
54 #define PARAM_TYPE_CALL_REF 1
55 #define PARAM_TYPE_TRANSM_MEDIUM_REQU 2
56 #define PARAM_TYPE_ACC_TRANSP 3
57 #define PARAM_TYPE_CALLED_PARTY_NR 4
58 #define PARAM_TYPE_SUBSQT_NR 5
59 #define PARAM_TYPE_NATURE_OF_CONN_IND 6
60 #define PARAM_TYPE_FORW_CALL_IND 7
61 #define PARAM_TYPE_OPT_FORW_CALL_IND 8
62 #define PARAM_TYPE_CALLING_PRTY_CATEG 9
63 #define PARAM_TYPE_CALLING_PARTY_NR 10
64 #define PARAM_TYPE_REDIRECTING_NR 11
65 #define PARAM_TYPE_REDIRECTION_NR 12
66 #define PARAM_TYPE_CONNECTION_REQ 13
67 #define PARAM_TYPE_INFO_REQ_IND 14
68 #define PARAM_TYPE_INFO_IND 15
69 #define PARAM_TYPE_CONTINUITY_IND 16
70 #define PARAM_TYPE_BACKW_CALL_IND 17
71 #define PARAM_TYPE_CAUSE_INDICATORS 18
72 #define PARAM_TYPE_REDIRECTION_INFO 19
73 #define PARAM_TYPE_CIRC_GRP_SV_MSG_TYPE 21
74 #define PARAM_TYPE_RANGE_AND_STATUS 22
75 #define PARAM_TYPE_FACILITY_IND 24
76 #define PARAM_TYPE_CLSD_USR_GRP_ILOCK_CD 26
77 #define PARAM_TYPE_USER_SERVICE_INFO 29
78 #define PARAM_TYPE_SIGNALLING_POINT_CODE 30
79 #define PARAM_TYPE_USER_TO_USER_INFO 32
80 #define PARAM_TYPE_CONNECTED_NR 33
81 #define PARAM_TYPE_SUSP_RESUME_IND 34
82 #define PARAM_TYPE_TRANSIT_NETW_SELECT 35
83 #define PARAM_TYPE_EVENT_INFO 36
84 #define PARAM_TYPE_CIRC_ASSIGN_MAP 37
85 #define PARAM_TYPE_CIRC_STATE_IND 38
86 #define PARAM_TYPE_AUTO_CONG_LEVEL 39
87 #define PARAM_TYPE_ORIG_CALLED_NR 40
88 #define PARAM_TYPE_OPT_BACKW_CALL_IND 41
89 #define PARAM_TYPE_USER_TO_USER_IND 42
90 #define PARAM_TYPE_ORIG_ISC_POINT_CODE 43
91 #define PARAM_TYPE_GENERIC_NOTIF_IND 44
92 #define PARAM_TYPE_CALL_HIST_INFO 45
93 #define PARAM_TYPE_ACC_DELIV_INFO 46
94 #define PARAM_TYPE_NETW_SPECIFIC_FACLTY 47
95 #define PARAM_TYPE_USER_SERVICE_INFO_PR 48
96 #define PARAM_TYPE_PROPAG_DELAY_COUNTER 49
97 #define PARAM_TYPE_REMOTE_OPERATIONS 50
98 #define PARAM_TYPE_SERVICE_ACTIVATION 51
99 #define PARAM_TYPE_USER_TELESERV_INFO 52
100 #define PARAM_TYPE_TRANSM_MEDIUM_USED 53
101 #define PARAM_TYPE_CALL_DIV_INFO 54
102 #define PARAM_TYPE_ECHO_CTRL_INFO 55
103 #define PARAM_TYPE_MSG_COMPAT_INFO 56
104 #define PARAM_TYPE_PARAM_COMPAT_INFO 57
105 #define PARAM_TYPE_MLPP_PRECEDENCE 58
106 #define PARAM_TYPE_MCID_REQ_IND 59
107 #define PARAM_TYPE_MCID_RSP_IND 60
108 #define PARAM_TYPE_HOP_COUNTER 61
109 #define PARAM_TYPE_TRANSM_MEDIUM_RQUR_PR 62
110 #define PARAM_TYPE_LOCATION_NR 63
111 #define PARAM_TYPE_REDIR_NR_RSTRCT 64
112 #define PARAM_TYPE_CALL_TRANS_REF 67
113 #define PARAM_TYPE_LOOP_PREV_IND 68
114 #define PARAM_TYPE_CALL_TRANS_NR 69
115 #define PARAM_TYPE_CCSS 75
116 #define PARAM_TYPE_FORW_GVNS 76
117 #define PARAM_TYPE_BACKW_GVNS 77
118 #define PARAM_TYPE_REDIRECT_CAPAB 78
119 #define PARAM_TYPE_NETW_MGMT_CTRL 91
120 #define PARAM_TYPE_CORRELATION_ID 101
121 #define PARAM_TYPE_SCF_ID 102
122 #define PARAM_TYPE_CALL_DIV_TREAT_IND 110
123 #define PARAM_TYPE_CALLED_IN_NR 111
124 #define PARAM_TYPE_CALL_OFF_TREAT_IND 112
125 #define PARAM_TYPE_CHARGED_PARTY_IDENT 113
126 #define PARAM_TYPE_CONF_TREAT_IND 114
127 #define PARAM_TYPE_DISPLAY_INFO 115
128 #define PARAM_TYPE_UID_ACTION_IND 116
129 #define PARAM_TYPE_UID_CAPAB_IND 117
130 #define PARAM_TYPE_REDIRECT_COUNTER 119
131 #define PARAM_TYPE_APPLICATON_TRANS 120
132 #define PARAM_TYPE_COLLECT_CALL_REQ 121
133 #define PARAM_TYPE_CALLING_GEODETIC_LOCATION 129 /* ANSI is the same */
134 #define PARAM_TYPE_GENERIC_NR 192
135 #define PARAM_TYPE_GENERIC_DIGITS 193
136 #define PARAM_TYPE_JURISDICTION 196
137 #define PARAM_TYPE_GENERIC_NAME 199
138 #define PARAM_TYPE_ORIG_LINE_INFO 234
139 #define PARAM_TYPE_CHARGE_NR 235
141 #define ANSI_ISUP_PARAM_TYPE_OPER_SERV_INF 0xC2 /* 194 */
142 #define ANSI_ISUP_PARAM_TYPE_EGRESS 0xC3 /* 195 */
143 #define ANSI_ISUP_PARAM_TYPE_JURISDICTION 0xC4 /* 196 */
144 #define ANSI_ISUP_PARAM_TYPE_CARRIER_ID 0xC5 /* 197 */
145 #define ANSI_ISUP_PARAM_TYPE_BUSINESS_GRP 0xC6 /* 198 */
146 #define ANSI_ISUP_PARAM_TYPE_GENERIC_NAME 0xC7 /* 199*/
147 #define ANSI_ISUP_PARAM_TYPE_NOTIF_IND 0xE1 /* 225 */
149 #define ANSI_ISUP_PARAM_TYPE_CG_CHAR_IND 229
150 #define ANSI_ISUP_PARAM_TYPE_CVR_RESP_IND 230
151 #define ANSI_ISUP_PARAM_TYPE_OUT_TRK_GRP_NM 231
152 #define ANSI_ISUP_PARAM_TYPE_CI_NAME_IND 232
153 #define ANSI_ISUP_PARAM_CLLI_CODE 233
155 #define ANSI_ISUP_PARAM_ORIG_LINE_INF 0xEA /* 234 */
156 #define ANSI_ISUP_PARAM_CHRG_NO 0xEB /* 235 */
157 #define ANSI_ISUP_PARAM_SERV_CODE_IND 0xEC /* 236 */
158 #define ANSI_ISUP_PARAM_SPEC_PROC_REQ 0xED /* 237 */
159 #define ANSI_ISUP_PARAM_CARRIER_SEL_INF 0xEE /* 238 */
160 #define ANSI_ISUP_PARAM_NET_TRANS 0xEF /* 239 */
162 extern const value_string isup_parameter_type_value[];
164 extern value_string_ext isup_transmission_medium_requirement_value_ext;
165 extern value_string_ext bearer_network_connection_characteristics_vals_ext;
166 extern value_string_ext x213_afi_value_ext;
168 WS_VAR_IMPORT value_string_ext isup_calling_partys_category_value_ext;
170 * Export dissection of some parameters
172 void dissect_nsap(tvbuff_t *parameter_tvb,gint offset,gint len, proto_tree *parameter_tree);
173 void dissect_isup_called_party_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
174 void dissect_isup_calling_party_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
175 void dissect_isup_cause_indicators_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
176 void dissect_isup_redirection_information_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
177 void dissect_isup_original_called_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
178 void dissect_isup_redirecting_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
180 void dissect_isup_location_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
182 void dissect_isup_generic_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
184 void dissect_japan_isup_additonal_user_cat(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
185 extern int dissect_codec_mode(proto_tree *tree, tvbuff_t *tvb, int offset, int len);
187 #endif /* PACKET_ISUP_H */