2 * Declarations of exported routines and tables for Q.931 and Q.2931 frame
4 * Guy Harris <guy@alum.mit.edu>
8 * Wireshark - Network traffic analyzer
9 * By Gerald Combs <gerald@wireshark.org>
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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
27 #ifndef __PACKET_Q931_H__
28 #define __PACKET_Q931_H__
30 extern void dissect_q931_bearer_capability_ie(tvbuff_t *, int, int,
33 extern void dissect_q931_cause_ie(tvbuff_t *, int, int,
34 proto_tree *, int, guint8 *,const value_string *);
36 extern void dissect_q931_progress_indicator_ie(tvbuff_t *, int, int,
39 extern void dissect_q931_high_layer_compat_ie(tvbuff_t *, int, int,
42 extern void dissect_q931_user_user_ie(tvbuff_t *tvb, packet_info *pinfo, int offset, int len,
45 extern const value_string q931_cause_location_vals[];
47 typedef struct _q931_packet_info {
48 gchar *calling_number;
56 * the following allows TAP code access to the messages
57 * without having to duplicate it. With MSVC and a
58 * libwireshark.dll, we need a special declaration.
60 WS_VAR_IMPORT const value_string q931_cause_code_vals[];
61 WS_VAR_IMPORT const value_string q931_message_type_vals[];
63 extern const value_string q931_protocol_discriminator_vals[];
64 extern const value_string q931_progress_description_vals[];
65 extern const value_string q931_call_state_vals[];
68 * Q.931 message types.
70 #define Q931_ESCAPE 0x00
71 #define Q931_ALERTING 0x01
72 #define Q931_CALL_PROCEEDING 0x02
73 #define Q931_CONNECT 0x07
74 #define Q931_CONNECT_ACK 0x0F
75 #define Q931_PROGRESS 0x03
76 #define Q931_SETUP 0x05
77 #define Q931_SETUP_ACK 0x0D
78 #define Q931_HOLD 0x24
79 #define Q931_HOLD_ACK 0x28
80 #define Q931_HOLD_REJECT 0x30
81 #define Q931_RESUME 0x26
82 #define Q931_RESUME_ACK 0x2E
83 #define Q931_RESUME_REJECT 0x22
84 #define Q931_RETRIEVE 0x31
85 #define Q931_RETRIEVE_ACK 0x33
86 #define Q931_RETRIEVE_REJECT 0x37
87 #define Q931_SUSPEND 0x25
88 #define Q931_SUSPEND_ACK 0x2D
89 #define Q931_SUSPEND_REJECT 0x21
90 #define Q931_USER_INFORMATION 0x20
91 #define Q931_DETACH 0x40
92 #define Q931_DETACH_ACKNOWLEDGE 0x48
93 #define Q931_DISCONNECT 0x45
94 #define Q931_RELEASE 0x4D
95 #define Q931_RELEASE_COMPLETE 0x5A
96 #define Q931_RESTART 0x46
97 #define Q931_RESTART_ACK 0x4E
98 #define Q931_CONGESTION_CONTROL 0x79
99 #define Q931_FACILITY 0x62
100 #define Q931_FACILITY_ACKNOWLEDGE 0x6A
101 #define Q931_FACILITY_REJECT 0x72
102 #define Q931_INFORMATION 0x7B
103 #define Q931_NOTIFY 0x6E
104 #define Q931_REGISTER 0x64
105 #define Q931_SEGMENT 0x60
106 #define Q931_STATUS 0x7D
107 #define Q931_STATUS_ENQUIRY 0x75
108 #define Q931_VERSION 0x0a
109 #define Q931_GROUIP_SERVICE 0x06
110 #define Q931_GROUIP_SERVICE_ACK 0x0b
111 #define Q931_RESYNC_REQ 0x08
112 #define Q931_RESYNC_RESP 0x09
115 * Maintenance message types.
116 * AT&T TR41459, Nortel NIS A211-1, Telcordia SR-4994, ...
118 #define DMS_SERVICE_ACKNOWLEDGE 0x07
119 #define DMS_SERVICE 0x0F