Wireshark 4.7.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
osi-utils.h
Go to the documentation of this file.
1
9#pragma once
10/* OSI Global defines, common for all OSI protocols */
11
12#define MAX_NSAP_LEN 30
13#define MAX_SYSTEMID_LEN 15
14#define MAX_AREA_LEN 30
15
16#define RFC1237_NSAP_LEN 20
17#define RFC1237_FULLAREA_LEN 13
18#define RFC1237_SYSTEMID_LEN 6
19#define RFC1237_SELECTOR_LEN 1
20
21#define RFC1237_IDI_LEN 2
22#define RFC1237_AFI_LEN 1
23#define RFC1237_DFI_LEN 1
24#define RFC1237_ORG_LEN 3
25#define RFC1237_AA_LEN 3
26#define RFC1237_RSVD_LEN 2
27#define RFC1237_RD_LEN 2
28#define RFC1237_AREA_LEN 3 /* XXX - this not the length of the Area field in RFC 1237; what is it? */
29
30/*
31 * NSAP AFI values.
32 * See ISO/IEC 8348 (2001-10)/X.213 (10/2001) Annex A.
33 *
34 * Individual values.
35 */
36#define NSAP_IDI_IANA_ICP_DEC 0x34 /* IANA ICP, decimal */
37#define NSAP_IDI_IANA_ICP_BIN 0x35 /* IANA ICP, binary */
38#define NSAP_IDI_X_121_DEC_FSD_NZ 0x36 /* X.121, decimal, IDI first significant digit non-zero */
39#define NSAP_IDI_X_121_BIN_FSD_NZ 0x37 /* X.121, binary, IDI first significant digit non-zero */
40#define NSAP_IDI_ISO_DCC_DEC 0x38 /* ISO DCC, decimal */
41#define NSAP_IDI_ISO_DCC_BIN 0x39 /* ISO DCC, binary */
42#define NSAP_IDI_F_69_DEC_FSD_NZ 0x40 /* F.69, decimal, IDI first significant digit non-zero */
43#define NSAP_IDI_F_69_BIN_FSD_NZ 0x41 /* F.69, binary, IDI first significant digit non-zero */
44#define NSAP_IDI_E_163_DEC_FSD_NZ 0x42 /* E.163, decimal, IDI first significant digit non-zero */
45#define NSAP_IDI_E_163_BIN_FSD_NZ 0x43 /* E.163, binary, IDI first significant digit non-zero */
46#define NSAP_IDI_E_164_DEC_FSD_NZ 0x44 /* E.163, decimal, IDI first significant digit non-zero */
47#define NSAP_IDI_E_164_BIN_FSD_NZ 0x45 /* E.163, binary, IDI first significant digit non-zero */
48#define NSAP_IDI_ISO_6523_ICD_DEC 0x46 /* ISO 6523-ICD, decimal */
49#define NSAP_IDI_ISO_6523_ICD_BIN 0x47 /* ISO 6523-ICD, binary */
50//#define NSAP_IDI_GOSIP2 0x47
51#define NSAP_IDI_LOCAL_DEC 0x48 /* Local, decimal */
52#define NSAP_IDI_LOCAL_BIN 0x49 /* Local, binary */
53#define NSAP_IDI_LOCAL_ISO_646_CHAR 0x50 /* Local, ISO/IEC 646 character */
54#define NSAP_IDI_LOCAL_NATIONAL_CHAR 0x51 /* Local, national character */
55#define NSAP_IDI_X_121_DEC_FSD_Z 0x52 /* X.121, decimal, IDI first significant digit zero */
56#define NSAP_IDI_X_121_BIN_FSD_Z 0x53 /* X.121, binary, IDI first significant digit zero */
57#define NSAP_IDI_F_69_DEC_FSD_Z 0x54 /* F.69, decimal, IDI first significant digit zero */
58#define NSAP_IDI_F_69_BIN_FSD_Z 0x55 /* F.69, binary, IDI first significant digit zero */
59#define NSAP_IDI_E_163_DEC_FSD_Z 0x56 /* E.163, decimal, IDI first significant digit zero */
60#define NSAP_IDI_E_163_BIN_FSD_Z 0x57 /* E.163, binary, IDI first significant digit zero */
61#define NSAP_IDI_E_164_DEC_FSD_Z 0x58 /* E.163, decimal, IDI first significant digit zero */
62#define NSAP_IDI_E_164_BIN_FSD_Z 0x59 /* E.163, binary, IDI first significant digit zero */
63#define NSAP_IDI_ITU_T_IND_DEC 0x76 /* ITU-T IND, decimal */
64#define NSAP_IDI_ITU_T_IND_BIN 0x77 /* ITU-T IND, binary */
65
66/*
67 * Group values.
68 */
69#define NSAP_IDI_IANA_ICP_DEC_GROUP 0xB8 /* IANA ICP, decimal */
70#define NSAP_IDI_IANA_ICP_BIN_GROUP 0xB9 /* IANA ICP, binary */
71#define NSAP_IDI_X_121_DEC_FSD_NZ_GROUP 0xBA /* X.121, decimal */
72#define NSAP_IDI_X_121_BIN_FSD_NZ_GROUP 0xBB /* X.121, binary */
73#define NSAP_IDI_ISO_DCC_DEC_GROUP 0xBC /* ISO DCC, decimal */
74#define NSAP_IDI_ISO_DCC_BIN_GROUP 0xBD /* ISO DCC, binary */
75#define NSAP_IDI_F_69_DEC_FSD_NZ_GROUP 0xBE /* F.69, decimal */
76#define NSAP_IDI_F_69_BIN_FSD_NZ_GROUP 0xBF /* F.69, binary */
77#define NSAP_IDI_E_163_DEC_FSD_NZ_GROUP 0xC0 /* E.163, decimal */
78#define NSAP_IDI_E_163_BIN_FSD_NZ_GROUP 0xC1 /* E.163, binary */
79#define NSAP_IDI_E_164_DEC_FSD_NZ_GROUP 0xC2 /* E.163, decimal */
80#define NSAP_IDI_E_164_BIN_FSD_NZ_GROUP 0xC3 /* E.163, binary */
81#define NSAP_IDI_ISO_6523_ICD_DEC_GROUP 0xC4 /* ISO 6523-ICD, decimal */
82#define NSAP_IDI_ISO_6523_ICD_BIN_GROUP 0xC5 /* ISO 6523-ICD, binary */
83#define NSAP_IDI_LOCAL_DEC_GROUP 0xC6 /* Local, decimal */
84#define NSAP_IDI_LOCAL_BIN_GROUP 0xC7 /* Local, binary */
85#define NSAP_IDI_LOCAL_ISO_646_CHAR_GROUP 0xC8 /* Local, ISO/IEC 646 character */
86#define NSAP_IDI_LOCAL_NATIONAL_CHAR_GROUP 0xC9 /* Local, national character */
87#define NSAP_IDI_X_121_DEC_FSD_Z_GROUP 0xCA /* X.121, decimal, IDI first significant digit zero */
88#define NSAP_IDI_X_121_BIN_FSD_Z_GROUP 0xCB /* X.121, binary, IDI first significant digit zero */
89#define NSAP_IDI_F_69_DEC_FSD_Z_GROUP 0xCC /* F.69, decimal, IDI first significant digit zero */
90#define NSAP_IDI_F_69_BIN_FSD_Z_GROUP 0xCD /* F.69, binary, IDI first significant digit zero */
91#define NSAP_IDI_E_163_DEC_FSD_Z_GROUP 0xCE /* E.163, decimal, IDI first significant digit zero */
92#define NSAP_IDI_E_163_BIN_FSD_Z_GROUP 0xCF /* E.163, binary, IDI first significant digit zero */
93#define NSAP_IDI_E_164_DEC_FSD_Z_GROUP 0xD0 /* E.163, decimal, IDI first significant digit zero */
94#define NSAP_IDI_E_164_BIN_FSD_Z_GROUP 0xD1 /* E.163, binary, IDI first significant digit zero */
95#define NSAP_IDI_ITU_T_IND_DEC_GROUP 0xE2 /* ITU-T IND, decimal */
96#define NSAP_IDI_ITU_T_IND_BIN_GROUP 0xE3 /* ITU-T IND, binary */
97
107WS_DLL_PUBLIC char* print_nsap_net ( wmem_allocator_t *scope, tvbuff_t *tvb, const int offset, int length );
108
118WS_DLL_PUBLIC char* print_area ( wmem_allocator_t *scope, tvbuff_t *tvb, const int offset, int length );
119
128char* print_system_id(wmem_allocator_t *scope, const uint8_t *ad, int length);
129
139WS_DLL_PUBLIC char* tvb_print_system_id( wmem_allocator_t *scope, tvbuff_t *tvb, const int offset, int length);
140
149void print_system_id_buf( const uint8_t *ad, int length, char *buf, int buf_len);
150
151WS_DLL_PUBLIC char* print_address_prefix( wmem_allocator_t *, tvbuff_t *, const int, int );
152
158WS_DLL_PUBLIC int get_osi_address_type(void);
159
166WS_DLL_PUBLIC void register_osi_address_type(void);
167
168/*
169 * Editor modelines
170 *
171 * Local Variables:
172 * c-basic-offset: 2
173 * tab-width: 8
174 * indent-tabs-mode: nil
175 * End:
176 *
177 * ex: set shiftwidth=2 tabstop=8 expandtab:
178 * :indentSize=2:tabSize=8:noTabs=true:
179 */
WS_DLL_PUBLIC char * print_area(wmem_allocator_t *scope, tvbuff_t *tvb, const int offset, int length)
Prints an area of a TVB buffer as a string.
Definition osi-utils.c:136
WS_DLL_PUBLIC int get_osi_address_type(void)
Retrieves the current OSI address type.
Definition osi-utils.c:280
char * print_system_id(wmem_allocator_t *scope, const uint8_t *ad, int length)
Prints a system ID as a string.
Definition osi-utils.c:75
WS_DLL_PUBLIC char * print_nsap_net(wmem_allocator_t *scope, tvbuff_t *tvb, const int offset, int length)
Prints an NSAP network address.
Definition osi-utils.c:36
WS_DLL_PUBLIC char * tvb_print_system_id(wmem_allocator_t *scope, tvbuff_t *tvb, const int offset, int length)
Prints a formatted string representation of a system ID buffer.
Definition osi-utils.c:85
void print_system_id_buf(const uint8_t *ad, int length, char *buf, int buf_len)
Prints a formatted string representation of a system ID buffer.
Definition osi-utils.c:91
WS_DLL_PUBLIC void register_osi_address_type(void)
Registers the OSI address type if not already registered.
Definition osi-utils.c:285
Internal memory allocator interface used by the wmem subsystem.
Definition wmem_allocator.h:34
Definition tvbuff-int.h:33