epan/dissectors/pidl/samr/samr.cnf cnf_dissect_lsa_BinaryString => lsarpc_dissect_str...
[wireshark-sm.git] / epan / dissectors / packet-e212.h
bloba75ed4990408d968def71fdd2e2a8fb46b8df65a
1 /* packet-e212.h
2 * E212 tables
3 * Copyright 2006, Anders Broman <anders.broman@ericsson.com>
5 * Wireshark - Network traffic analyzer
6 * By Gerald Combs <gerald@wireshark.org>
7 * Copyright 1998 Gerald Combs
9 * SPDX-License-Identifier: GPL-2.0-or-later
12 #ifndef __PACKET_E212_H__
13 #define __PACKET_E212_H__
15 #include <epan/value_string.h>
16 #include "ws_symbol_export.h"
18 extern value_string_ext E212_codes_ext;
20 extern value_string_ext mcc_mnc_2digits_codes_ext;
22 extern value_string_ext mcc_mnc_3digits_codes_ext;
24 typedef enum {
25 E212_NONE,
26 E212_LAI,
27 E212_RAI,
28 E212_SAI,
29 E212_CGI,
30 E212_ECGI,
31 E212_TAI,
32 E212_NRCGI,
33 E212_5GSTAI,
34 E212_GUMMEI,
35 E212_GUAMI,
36 } e212_number_type_t;
38 char* dissect_e212_mcc_mnc_wmem_packet_str(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset, e212_number_type_t number_type, bool little_endian);
40 WS_DLL_PUBLIC
41 int dissect_e212_mcc_mnc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset, e212_number_type_t number_type, bool little_endian);
43 WS_DLL_PUBLIC
44 int dissect_e212_mcc_mnc_in_address(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset);
46 WS_DLL_PUBLIC
47 int dissect_e212_mcc_mnc_in_utf8_address(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, int offset);
49 /**
51 * Given a tvbuff, an offset into the tvbuff, and a length that starts
52 * at that offset, fetch BCD encoded digits from a tvbuff starting from either
53 * the low or high half byte, formatting the digits according to a digit
54 * set of 0-9 returning "?" for overdecadic digits and then
55 * create a string in the tree and a corresponding filter
57 * Note a tvbuff content of 0xf is considered a 'filler' and will end the
58 * conversion.
60 * When skip_first is true, the high bit of the skipped nibble is treated as a odd/even indicator,
61 * according to Figure 10.5.4/3GPP TS 24.008 Mobile Identity information element
63 * A wmem allocated string will be returned.
65 WS_DLL_PUBLIC
66 const char * dissect_e212_imsi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset, int length, bool skip_first);
68 /**
70 * Given a tvbuff, an offset into the tvbuff, and a length that starts
71 * at that offset, fetch UTF8-encoded digits from the tvbuff and then
72 * create a string in the tree and a corresponding filter.
74 * The wmem allocated string will be returned.
76 WS_DLL_PUBLIC
77 const char * dissect_e212_utf8_imsi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset, int length);
79 #endif /* __PACKET_E212_H__ */
82 * Editor modelines - https://www.wireshark.org/tools/modelines.html
84 * Local variables:
85 * c-basic-offset: 4
86 * tab-width: 8
87 * indent-tabs-mode: nil
88 * End:
90 * vi: set shiftwidth=4 tabstop=8 expandtab:
91 * :indentSize=4:tabSize=8:noTabs=true: