checkAPIs.pl: support for new-style dissectors in check_hf_entries
[metze/wireshark/wip.git] / epan / dissectors / packet-ansi_a.h
1 /* packet-ansi_a.h
2  *
3  * Copyright 2003, Michael Lum <mlum [AT] telostech.com>,
4  * In association with Telos Technology Inc.
5  *
6  * Wireshark - Network traffic analyzer
7  * By Gerald Combs <gerald@wireshark.org>
8  * Copyright 1998 Gerald Combs
9  *
10  * SPDX-License-Identifier: GPL-2.0-or-later
11  */
12
13 #include <epan/proto.h>
14
15 typedef struct _ansi_a_tap_rec_t {
16     /*
17      * value from packet-bssap.h
18      */
19     guint8              pdu_type;
20     guint8              message_type;
21 } ansi_a_tap_rec_t;
22
23 typedef struct ext_value_string_t
24 {
25     guint32             value;
26     const gchar         *strptr;
27     gint                dec_index;
28 }
29 ext_value_string_t;
30
31
32 /*
33  * the following allows TAP code access to the messages
34  * without having to duplicate it. With MSVC and a
35  * libwireshark.dll, we need a special declaration.
36  */
37 WS_DLL_PUBLIC const ext_value_string_t *ansi_a_bsmap_strings;
38 WS_DLL_PUBLIC const ext_value_string_t *ansi_a_dtap_strings;
39 WS_DLL_PUBLIC const ext_value_string_t ansi_a_ios501_bsmap_strings[];
40 WS_DLL_PUBLIC const ext_value_string_t ansi_a_ios501_dtap_strings[];
41 WS_DLL_PUBLIC const ext_value_string_t ansi_a_ios401_bsmap_strings[];
42 WS_DLL_PUBLIC const ext_value_string_t ansi_a_ios401_dtap_strings[];
43
44 /*
45  * Not strictly A-interface info, but put here to avoid file polution
46  *
47  * Title                3GPP2                   Other
48  *
49  *   Administration of Parameter Value Assignments for
50  *   cdma2000 Spread Spectrum Standards
51  *                      3GPP2 C.R1001-H v1.0    TSB-58-I (or J?)
52  */
53 WS_DLL_PUBLIC const value_string ansi_tsb58_encoding_vals[];
54 WS_DLL_PUBLIC const value_string ansi_tsb58_srvc_cat_vals[];
55 WS_DLL_PUBLIC value_string_ext ansi_tsb58_srvc_cat_vals_ext;
56 WS_DLL_PUBLIC const value_string ansi_tsb58_language_ind_vals[];
57 WS_DLL_PUBLIC value_string_ext ansi_tsb58_language_ind_vals_ext;
58
59 #define ANSI_TSB58_SRVC_CAT_CMAS_MIN    0x1000
60 #define ANSI_TSB58_SRVC_CAT_CMAS_MAX    0x1004
61
62 /*
63  * Title                3GPP2                   Other
64  *
65  *                      3GPP2 C.S0005
66  */
67 WS_DLL_PUBLIC const value_string ansi_a_ms_info_rec_num_type_vals[];
68 WS_DLL_PUBLIC const value_string ansi_a_ms_info_rec_num_plan_vals[];
69 /*
70  * END Not strictly A-interface info
71  */
72
73 #define A_VARIANT_IS634         4
74 #define A_VARIANT_TSB80         5
75 #define A_VARIANT_IS634A        6
76 #define A_VARIANT_IOS2          7
77 #define A_VARIANT_IOS3          8
78 #define A_VARIANT_IOS401        9
79 #define A_VARIANT_IOS501        10
80
81 WS_DLL_PUBLIC gint a_global_variant;
82
83 /*
84  * allows ANSI MAP to use this for IS-880 enhancements
85  * based on the 'ansi_a_ios401_elem_1_strings/ansi_a_ios501_elem_1_strings'
86  */
87 WS_DLL_PUBLIC const ext_value_string_t *ansi_a_elem_1_strings;
88
89 /*
90  * maximum number of strings that are allowed
91  * 255 because IEI are 1 octet in length
92  *
93  * this define is required by dissectors that need to
94  * size based on the 'ansi_a_elem_1_strings'
95  * array
96  */
97 #define ANSI_A_MAX_NUM_IOS_ELEM_1_STRINGS       255
98
99 void dissect_cdma2000_a1_elements(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint32 offset, guint len);
100
101 /*
102  * Editor modelines  -  http://www.wireshark.org/tools/modelines.html
103  *
104  * Local variables:
105  * c-basic-offset: 4
106  * tab-width: 8
107  * indent-tabs-mode: nil
108  * End:
109  *
110  * vi: set shiftwidth=4 tabstop=8 expandtab:
111  * :indentSize=4:tabSize=8:noTabs=true:
112  */