Bug Summary

File:builds/wireshark/wireshark/epan/dissectors/packet-dect-nwk.c
Warning:line 2554, column 5
Value stored to 'offset' is never read

Annotated Source Code

Press '?' to see keyboard shortcuts

clang -cc1 -cc1 -triple x86_64-pc-linux-gnu -analyze -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name packet-dect-nwk.c -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -setup-static-analyzer -mrelocation-model pic -pic-level 2 -fhalf-no-semantic-interposition -fno-delete-null-pointer-checks -mframe-pointer=all -relaxed-aliasing -fmath-errno -ffp-contract=on -fno-rounding-math -ffloat16-excess-precision=fast -fbfloat16-excess-precision=fast -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -fdebug-compilation-dir=/builds/wireshark/wireshark/build -fcoverage-compilation-dir=/builds/wireshark/wireshark/build -resource-dir /usr/lib/llvm-22/lib/clang/22 -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /builds/wireshark/wireshark/epan/dissectors -isystem /builds/wireshark/wireshark/build/epan/dissectors -isystem /usr/include/mit-krb5 -isystem /usr/include/libxml2 -isystem /builds/wireshark/wireshark/epan -D CARES_NO_DEPRECATED -D G_DISABLE_DEPRECATED -D G_DISABLE_SINGLE_INCLUDES -D WS_BUILD_DLL -D WS_DEBUG -D WS_DEBUG_UTF_8 -I /builds/wireshark/wireshark/build -I /builds/wireshark/wireshark -I /builds/wireshark/wireshark/include -D _GLIBCXX_ASSERTIONS -internal-isystem /usr/lib/llvm-22/lib/clang/22/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/16/../../../../x86_64-linux-gnu/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -fmacro-prefix-map=/builds/wireshark/wireshark/= -fmacro-prefix-map=/builds/wireshark/wireshark/build/= -fmacro-prefix-map=../= -Wno-format-nonliteral -std=gnu17 -ferror-limit 19 -fvisibility=hidden -fwrapv -fwrapv-pointer -fstrict-flex-arrays=3 -stack-protector 2 -fstack-clash-protection -fcf-protection=full -fgnuc-version=4.2.1 -fskip-odr-check-in-gmf -fexceptions -fcolor-diagnostics -analyzer-output=html -faddrsig -fdwarf2-cfi-asm -o /builds/wireshark/wireshark/sbout/2026-11-03-100334-3662-1 -x c /builds/wireshark/wireshark/epan/dissectors/packet-dect-nwk.c
1/* packet-dect-nwk.c
2 *
3 * Dissector for the DECT (Digital Enhanced Cordless Telecommunications)
4 * NWK protocol layer as described in ETSI EN 300 175-5 V2.7.1 (2017-11)
5 *
6 * Copyright 2018 by Harald Welte <laforge@gnumonks.org>
7 * Copyright 2022 by Bernhard Dick <bernhard@bdick.de>
8 *
9 * Wireshark - Network traffic analyzer
10 * By Gerald Combs <gerald@wireshark.org>
11 * Copyright 1998 Gerald Combs
12 *
13 * SPDX-License-Identifier: GPL-2.0-or-later
14 */
15
16#include "config.h"
17#include <epan/packet.h>
18#include <epan/exceptions.h>
19#include <epan/packet_info.h>
20#include <epan/proto.h>
21#include <epan/tfs.h>
22#include <epan/tvbuff.h>
23#include <epan/wmem_scopes.h>
24#include <ftypes/ftypes.h>
25
26#include "packet-e212.h"
27
28void proto_register_dect_nwk(void);
29void proto_reg_handoff_dect_nwk(void);
30
31static int proto_dect_nwk;
32
33static int hf_nwk_ti;
34static int hf_nwk_pdisc;
35static int hf_nwk_msg_type_lce;
36static int hf_nwk_msg_type_cc;
37static int hf_dect_nwk_message_type_ciss;
38static int hf_dect_nwk_message_type_crss;
39static int hf_dect_nwk_message_type_clms;
40static int hf_dect_nwk_message_type_coms;
41static int hf_nwk_msg_type_mm;
42
43static int ett_dect_nwk_s_ie_element;
44
45static int hf_dect_nwk_s_ie_fl;
46
47static int hf_dect_nwk_s_ie_fl_type;
48static int hf_dect_nwk_s_ie_fl_double_octet_type;
49
50static int hf_dect_nwk_s_ie_fl_control_type;
51
52static int hf_dect_nwk_s_ie_fl_repeat_indicator_type;
53
54static int hf_dect_nwk_s_ie_fl_shift_locking;
55static int hf_dect_nwk_s_ie_fl_shift_new_codeset;
56
57static int hf_dect_nwk_s_ie_fl_basic_service_call_class;
58static int hf_dect_nwk_s_ie_fl_basic_service_type;
59
60static int hf_dect_nwk_s_ie_fl_single_display_display_info;
61
62static int hf_dect_nwk_s_ie_fl_single_keypad_keypad_info;
63
64static int hf_dect_nwk_s_ie_fl_release_reason_code;
65
66static int hf_dect_nwk_s_ie_fl_signal_value;
67
68static int hf_dect_nwk_s_ie_fl_timer_restart_value;
69
70static int hf_dect_nwk_s_ie_fl_test_hook_control_hook_value;
71
72static int hf_dect_nwk_s_ie_type;
73static int hf_dect_nwk_s_ie_length;
74
75static int hf_dect_nwk_s_ie_octet_group_extension;
76
77static int hf_dect_nwk_s_ie_auth_type_authentication_algorithm;
78static int hf_dect_nwk_s_ie_auth_type_proprietary_algorithm;
79static int hf_dect_nwk_s_ie_auth_type_ak_type;
80static int hf_dect_nwk_s_ie_auth_type_ak_number;
81static int hf_dect_nwk_s_ie_auth_type_inc;
82static int hf_dect_nwk_s_ie_auth_type_def;
83static int hf_dect_nwk_s_ie_auth_type_txc;
84static int hf_dect_nwk_s_ie_auth_type_upc;
85static int hf_dect_nwk_s_ie_auth_type_cipher_key_number;
86static int hf_dect_nwk_s_ie_auth_type_cipher_key_number_related;
87static int hf_dect_nwk_s_ie_auth_type_default_cipher_key_index;
88static int hf_dect_nwk_s_ie_auth_type_default_cipher_key_algorithm;
89
90static int hf_dect_nwk_s_ie_calling_party_number_type;
91static int hf_dect_nwk_s_ie_calling_party_number_numbering_plan;
92static int hf_dect_nwk_s_ie_calling_party_number_presentation;
93static int hf_dect_nwk_s_ie_calling_party_number_screening;
94static int hf_dect_nwk_s_ie_calling_party_number_address;
95
96static int hf_dect_nwk_s_ie_cipher_info_yn;
97static int hf_dect_nwk_s_ie_cipher_info_algorithm;
98static int hf_dect_nwk_s_ie_cipher_info_proprietary_algorithm;
99static int hf_dect_nwk_s_ie_cipher_info_key_type;
100static int hf_dect_nwk_s_ie_cipher_info_key_number;
101
102static int hf_dect_nwk_s_ie_duration_lock_limits;
103static int hf_dect_nwk_s_ie_duration_time_limits;
104static int hf_dect_nwk_s_ie_duration_time_duration;
105
106static int hf_dect_nwk_s_ie_fixed_identity_type;
107static int hf_dect_nwk_s_ie_fixed_identity_value_length;
108static int hf_dect_nwk_s_ie_fixed_identity_arc;
109static int hf_dect_nwk_s_ie_fixed_identity_ard;
110static int hf_dect_nwk_s_ie_fixed_identity_padding;
111
112static int hf_dect_nwk_s_ie_iwu_to_iwu_sr;
113static int hf_dect_nwk_s_ie_iwu_to_iwu_protocol_discriminator;
114static int hf_dect_nwk_s_ie_iwu_to_iwu_information;
115static int hf_dect_nwk_s_ie_iwu_to_iwu_discriminator_type;
116static int hf_dect_nwk_s_ie_iwu_to_iwu_user_specific_contents;
117static int hf_dect_nwk_s_ie_iwu_to_iwu_emc_discriminator;
118static int hf_dect_nwk_s_ie_iwu_to_iwu_proprietary_contents;
119
120static int ett_dect_nwk_s_ie_location_area_li_type;
121static int hf_dect_nwk_s_ie_location_area_li_type;
122static int hf_dect_nwk_s_ie_location_area_la_level_included;
123static int hf_dect_nwk_s_ie_location_area_li_extended_included;
124static int hf_dect_nwk_s_ie_location_area_la_level;
125static int hf_dect_nwk_s_ie_location_area_eli_type;
126static int hf_dect_nwk_s_ie_location_area_lac;
127static int hf_dect_nwk_s_ie_location_area_ci;
128
129static int hf_dect_nwk_s_ie_multi_display_information;
130
131static int hf_dect_nwk_s_ie_multi_keypad_information;
132
133static int hf_dect_nwk_s_ie_nwk_assigned_identity_type;
134static int hf_dect_nwk_s_ie_nwk_assigned_identity_value_length;
135static int hf_dect_nwk_s_ie_nwk_assigned_identity_value;
136static int hf_dect_nwk_s_ie_nwk_assigned_identity_padding;
137
138static int hf_dect_nwk_s_ie_portable_identity_type;
139static int hf_dect_nwk_s_ie_portable_identity_value_length;
140static int hf_dect_nwk_s_ie_portable_identity_put;
141static int hf_dect_nwk_s_ie_portable_identity_padding;
142static int hf_dect_nwk_s_ie_portable_identity_ipei;
143static int hf_dect_nwk_s_ie_portable_identity_tpui_assignment_type;
144static int hf_dect_nwk_s_ie_portable_identity_tpui_value;
145static int hf_dect_nwk_s_ie_portable_identity_ipui_o_number;
146static int hf_dect_nwk_s_ie_portable_identity_ipui_p_poc;
147static int hf_dect_nwk_s_ie_portable_identity_ipui_p_acc;
148static int hf_dect_nwk_s_ie_portable_identity_ipui_q_bacn;
149static int hf_dect_nwk_s_ie_portable_identity_ipui_r_imsi;
150static int hf_dect_nwk_s_ie_portable_identity_ipui_s_number;
151static int hf_dect_nwk_s_ie_portable_identity_ipui_t_eic;
152static int hf_dect_nwk_s_ie_portable_identity_ipui_t_number;
153static int hf_dect_nwk_s_ie_portable_identity_ipui_u_cacn;
154
155static int hf_dect_nwk_s_ie_rand_rand_field;
156
157static int hf_dect_nwk_s_ie_res_res_field;
158
159static int hf_dect_nwk_s_ie_rs_rs_field;
160
161static int hf_dect_nwk_s_ie_terminal_capability_tone_capabilities;
162static int hf_dect_nwk_s_ie_terminal_capability_display_capabilities;
163static int hf_dect_nwk_s_ie_terminal_capability_echo_parameter;
164static int hf_dect_nwk_s_ie_terminal_capability_n_rej;
165static int hf_dect_nwk_s_ie_terminal_capability_a_vol;
166static int hf_dect_nwk_s_ie_terminal_capability_slot_type_capability;
167static int hf_dect_nwk_s_ie_terminal_capability_slot_type_half_80;
168static int hf_dect_nwk_s_ie_terminal_capability_slot_type_long_640;
169static int hf_dect_nwk_s_ie_terminal_capability_slot_type_long_672;
170static int hf_dect_nwk_s_ie_terminal_capability_slot_type_full;
171static int hf_dect_nwk_s_ie_terminal_capability_slot_type_double;
172static int hf_dect_nwk_s_ie_terminal_capability_stored_display_characters;
173static int hf_dect_nwk_s_ie_terminal_capability_lines_in_display;
174static int hf_dect_nwk_s_ie_terminal_capability_chars_per_line;
175static int hf_dect_nwk_s_ie_terminal_capability_scrolling_behaviour;
176static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1;
177static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_cap;
178static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_gap;
179static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_dect_gsm;
180static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_isdn;
181static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_lrms;
182static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_dprs_stream;
183static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_dprs_asymmetric;
184static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2;
185static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dprs_class_2;
186static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_data_services;
187static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_isdn;
188static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dect_umts_bearer;
189static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dect_umts_sms;
190static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dect_umts_facsimile;
191static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_rap;
192static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3;
193static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_dect_gsm;
194static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_wrs;
195static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_sms;
196static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_dmap;
197static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_cta;
198static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_ethernet;
199static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_token_ring;
200static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4;
201static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_ip;
202static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_ppp;
203static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_v24;
204static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_cf;
205static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_ipq;
206static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_rap_2;
207static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_dprs;
208static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5;
209static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_2bz;
210static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_4bz;
211static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_8bz;
212static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_16bz;
213static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_2a;
214static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_4a;
215static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_8a;
216static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6;
217static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_dect_umts;
218static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_dect_umts_gprs;
219static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_odap;
220static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_f_mms;
221static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_gf;
222static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_fast_hopping;
223static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_no_emission;
224static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7;
225static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_mod64;
226static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_ng_dect_1;
227static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_ng_dect_3;
228static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_headset_management;
229static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_re_keying;
230static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_associated_melody;
231static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_ng_dect_5;
232static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8;
233static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_mux_e_u;
234static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_channel_ipf;
235static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_channel_sipf;
236static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_packet_data_category;
237static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9;
238static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_dprs_3;
239static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_dprs_4;
240static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_dect_ule;
241static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_light_data;
242static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10;
243static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_date_time_recovery;
244static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_extended_list_change;
245static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_screening;
246static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_wrs_2;
247static int hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_wrs_ule;
248static int hf_dect_nwk_s_ie_terminal_capability_dsaa2;
249static int hf_dect_nwk_s_ie_terminal_capability_dsc2;
250static int hf_dect_nwk_s_ie_terminal_capability_control_codes;
251static int hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1;
252static int hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_latin_no1;
253static int hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_latin_no9;
254static int hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_latin_no5;
255static int hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_greek;
256static int hf_dect_nwk_s_ie_terminal_capability_blind_slot_6;
257static int hf_dect_nwk_s_ie_terminal_capability_blind_slot_indication;
258static int hf_dect_nwk_s_ie_terminal_capability_sp0;
259static int hf_dect_nwk_s_ie_terminal_capability_sp1;
260static int hf_dect_nwk_s_ie_terminal_capability_sp2;
261static int hf_dect_nwk_s_ie_terminal_capability_sp3;
262static int hf_dect_nwk_s_ie_terminal_capability_sp4;
263static int hf_dect_nwk_s_ie_terminal_capability_blind_slot_6a;
264static int hf_dect_nwk_s_ie_terminal_capability_sp5;
265static int hf_dect_nwk_s_ie_terminal_capability_sp6;
266static int hf_dect_nwk_s_ie_terminal_capability_sp7;
267static int hf_dect_nwk_s_ie_terminal_capability_sp8;
268static int hf_dect_nwk_s_ie_terminal_capability_sp9;
269static int hf_dect_nwk_s_ie_terminal_capability_sp10;
270static int hf_dect_nwk_s_ie_terminal_capability_sp11;
271
272static int hf_dect_nwk_s_ie_escape_to_proprietary_discriminator_type;
273static int hf_dect_nwk_s_ie_escape_to_proprietary_discriminator;
274
275static int hf_dect_nwk_s_ie_model_identifier_manic;
276static int hf_dect_nwk_s_ie_model_identifier_modic;
277static int hf_dect_nwk_s_ie_model_identifier_imeisv;
278
279static int hf_dect_nwk_s_ie_codec_list_negotiation_indicator;
280static int hf_dect_nwk_s_ie_codec_list_codec_identifier;
281static int hf_dect_nwk_s_ie_codec_list_mac_and_dlc_service;
282static int hf_dect_nwk_s_ie_codec_list_last_codec;
283static int hf_dect_nwk_s_ie_codec_list_c_plane_routing;
284static int hf_dect_nwk_s_ie_codec_list_slot_size;
285
286static int ett_dect_nwk;
287
288static dissector_handle_t dect_nwk_handle;
289
290/*********************************************************************************
291 * DECT DEFINITIONS
292 *********************************************************************************/
293
294/* Section 7.2 */
295enum dect_nwk_proto_disc {
296 DECT_NWK_PDISC_LCE = 0x0,
297 DECT_NWK_PDISC_CC = 0x3,
298 DECT_NWK_PDISC_CISS = 0x4,
299 DECT_NWK_PDISC_MM = 0x5,
300 DECT_NWK_PDISC_CLMS = 0x6,
301 DECT_NWK_PDISC_COMS = 0x7,
302};
303
304/* Section 7.4.1 */
305enum dect_nwk_cc_msg_type {
306 DECT_NWK_CC_ALERTING = 0x01,
307 DECT_NWK_CC_CALL_PROC = 0x02,
308 DECT_NWK_CC_SETUP = 0x05,
309 DECT_NWK_CC_CONNECT = 0x07,
310 DECT_NWK_CC_SETUP_ACK = 0x0d,
311 DECT_NWK_CC_CONNECT_ACK = 0x0f,
312 DECT_NWK_CC_SERVICE_CHANGE = 0x20,
313 DECT_NWK_CC_SERVICE_ACCEPT = 0x21,
314 DECT_NWK_CC_SERVICE_REJECT = 0x23,
315 DECT_NWK_CC_RELEASE = 0x4d,
316 DECT_NWK_CC_RELEASE_COM = 0x5a,
317 DECT_NWK_CC_IWU_INFO = 0x60,
318 DECT_NWK_CC_NOTIFY = 0x6e,
319 DECT_NWK_CC_INFO = 0x7b,
320};
321
322/* Section 7.4.2 */
323enum dect_nwk_ss_msg_type {
324 DECT_NWK_SS_CISS_RELEASE_COM = 0x5a,
325 DECT_NWK_SS_CISS_FACILITY = 0x62,
326 DECT_NWK_SS_CISS_REGISTER = 0x64,
327
328 DECT_NWK_SS_CRSS_HOLD = 0x24,
329 DECT_NWK_SS_CRSS_HOLD_ACK = 0x28,
330 DECT_NWK_SS_CRSS_HOLD_REJ = 0x30,
331 DECT_NWK_SS_CRSS_RETRIEVE = 0x31,
332 DECT_NWK_SS_CRSS_RETRIEVE_ACK = 0x33,
333 DECT_NWK_SS_CRSS_RETRIEVE_REJ = 0x37,
334#define DECT_NWK_SS_CRSS_FACILITYDECT_NWK_SS_CISS_FACILITY DECT_NWK_SS_CISS_FACILITY
335};
336
337/* Section 7.4.3 */
338enum dect_nwk_coms_msg_type {
339 DECT_NWK_COMS_SETUP = 0x05,
340 DECT_NWK_COMS_CONNECT = 0x07,
341 DECT_NWK_COMS_NOTIFY = 0x08,
342 DECT_NWK_COMS_RELEASE = 0x4d,
343 DECT_NWK_COMS_RELEASE_COM = 0x5a,
344 DECT_NWK_COMS_INFO = 0x7b,
345 DECT_NWK_COMS_ACK = 0x78,
346};
347
348/* Section 7.4.4 */
349enum dect_nwk_clms_msg_type {
350 DECT_NWK_CLMS_VARIABLE = 0x01,
351};
352
353/* Section 7.4.5 */
354enum dect_nwk_mm_msg_type {
355 DECT_NWK_MM_AUTH_REQ = 0x40,
356 DECT_NWK_MM_AUTH_REPLY = 0x41,
357 DECT_NWK_MM_KEY_ALLOC = 0x42,
358 DECT_NWK_MM_AUTH_REJ = 0x43,
359 DECT_NWK_MM_ACC_RIGHTS_REQ = 0x44,
360 DECT_NWK_MM_ACC_RIGHTS_ACK = 0x45,
361 DECT_NWK_MM_ACC_RIGHTS_REJ = 0x47,
362 DECT_NWK_MM_ACC_RIGHTS_TERM_REQ = 0x48,
363 DECT_NWK_MM_ACC_RIGHTS_TERM_ACK = 0x49,
364 DECT_NWK_MM_ACC_RIGHTS_TERM_REJ = 0x4b,
365 DECT_NWK_MM_CIPH_REQ = 0x4c,
366 DECT_NWK_MM_CIPH_SUGGEST = 0x4e,
367 DECT_NWK_MM_CIPH_REJ = 0x4f,
368 DECT_NWK_MM_INFO_REQ = 0x50,
369 DECT_NWK_MM_INFO_ACK = 0x51,
370 DECT_NWK_MM_INFO_SUGGEST = 0x52,
371 DECT_NWK_MM_INFO_REJ = 0x53,
372 DECT_NWK_MM_LOCATE_REQ = 0x54,
373 DECT_NWK_MM_LOCATE_ACK = 0x55,
374 DECT_NWK_MM_DETACH = 0x56,
375 DECT_NWK_MM_LOCATE_REJ = 0x57,
376 DECT_NWK_MM_ID_REQ = 0x58,
377 DECT_NWK_MM_ID_REPLY = 0x59,
378 DECT_NWK_MM_IWU = 0x5b,
379 DECT_NWK_MM_TID_ASSIGN = 0x5c,
380 DECT_NWK_MM_TID_ASSIGN_ACK = 0x5d,
381 DECT_NWK_MM_TID_ASSIGN_REJ = 0x5f,
382 DECT_NWK_MM_NOTIFY = 0x6e,
383};
384
385/* Section 7.4.6 */
386enum dect_nwk_lce_msg_type {
387 DECT_NWK_LCE_PAGE_RESP = 0x71,
388 DECT_NWK_LCE_PAGE_REJ = 0x72,
389};
390
391/* Section 7.5.1 */
392enum dect_nwk_s_ie_octet_identifier {
393 DECT_NWK_S_IE_OCTET_FIRST = 0,
394 DECT_NWK_S_IE_OCTET_A = 1,
395 DECT_NWK_S_IE_OCTET_B = 2,
396 DECT_NWK_S_IE_OCTET_C = 3,
397 DECT_NWK_S_IE_OCTET_D = 4,
398 DECT_NWK_S_IE_OCTET_E = 5,
399 DECT_NWK_S_IE_OCTET_F = 6,
400 DECT_NWK_S_IE_OCTET_G = 7,
401 DECT_NWK_S_IE_OCTET_H = 8,
402 DECT_NWK_S_IE_OCTET_I = 9,
403};
404
405/* Section 7.5.3 */
406enum dect_nwk_s_fl_ie_shift_codeset {
407 DECT_NWK_S_FL_IE_SHIFT_CODESET_INITIAL = 0x0,
408 DECT_NWK_S_FL_IE_SHIFT_CODESET_NON_STANDARD_0 = 0x4,
409 DECT_NWK_S_FL_IE_SHIFT_CODESET_NON_STANDARD_1 = 0x5,
410 DECT_NWK_S_FL_IE_SHIFT_CODESET_NON_STANDARD_2 = 0x6,
411 DECT_NWK_S_FL_IE_SHIFT_CODESET_NON_STANDARD_3 = 0x7,
412};
413
414/* Section 7.6.1 */
415enum dect_nwk_s_fl_ie_type {
416 DECT_NWK_S_IE_FL_SHIFT = 0x1,
417 DECT_NWK_S_IE_FL_CONTROL = 0x2,
418 DECT_NWK_S_IE_FL_REPEAT_INDICATOR = 0x5,
419 DECT_NWK_S_IE_FL_DOUBLE_OCTET_ELEMENT = 0x6,
420};
421
422enum dect_nwk_s_fl_ie_control_type {
423 DECT_NWK_S_IE_FL_CONTROL_SENDING_COMPLETE = 0x1,
424 DECT_NWK_S_IE_FL_CONTROL_DELIMITER_REQUEST = 0x2,
425 DECT_NWK_S_IE_FL_CONTROL_USE_TPUI = 0x3
426};
427
428enum dect_nwk_s_fl_ie_double_octet_type {
429 DECT_NWK_S_IE_FL_DOUBLE_OCTET_BASIC_SERVICE = 0x0,
430 DECT_NWK_S_IE_FL_DOUBLE_OCTET_RELEASE_REASON = 0x2,
431 DECT_NWK_S_IE_FL_DOUBLE_OCTET_SIGNAL = 0x4,
432 DECT_NWK_S_IE_FL_DOUBLE_OCTET_TIMER_RESTART = 0x5,
433 DECT_NWK_S_IE_FL_DOUBLE_OCTET_TEST_HOOK_CONTROL = 0x6,
434 DECT_NWK_S_IE_FL_DOUBLE_OCTET_SINGLE_DISPLAY = 0x8,
435 DECT_NWK_S_IE_FL_DOUBLE_OCTET_SINGLE_KEYPAD = 0x9,
436};
437
438/* Section 7.6.3 */
439enum dect_nwk_s_ie_fl_repeat_indicator_type {
440 DECT_NWK_S_IE_FL_REPEAT_INDICATOR_NON_PRIORITIZED = 0x1,
441 DECT_NWK_S_IE_FL_REPEAT_INDICATOR_PRIORITIZED = 0x2,
442};
443
444/* Section 7.6.4 */
445enum dect_nwk_s_ie_fl_basic_service_call_class {
446 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_LIA = 0x2,
447 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_ULE = 0x3,
448 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_MESSAGE = 0x4,
449 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_DECT_ISDN_IIP = 0x7,
450 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_NORMAL = 0x8,
451 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_INTERNAL = 0x9,
452 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_EMERGENCY = 0xA,
453 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_SERVICE = 0xB,
454 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_EXTERNAL_HANDOVER = 0xC,
455 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_SUPPLEMENTARY_SERVICE = 0xD,
456 DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_OA_M = 0xE,
457};
458
459enum dect_nwk_s_ie_fl_basic_service_type {
460 DECT_NWK_S_IE_FL_BASIC_SERVICE_BASIC_SPEECH = 0x0,
461 DECT_NWK_S_IE_FL_BASIC_SERVICE_DECT_GSM_IWP = 0x4,
462 DECT_NWK_S_IE_FL_BASIC_SERVICE_LRMS = 0x5,
463 /* Specification assigns 0b0110 to DECT UMTS IWP and GSM IWP SMS*/
464 DECT_NWK_S_IE_FL_BASIC_SERVICE_DECT_UMTS_IWP_GSM_IWP_SMS = 0x6,
465 DECT_NWK_S_IE_FL_BASIC_SERVICE_WIDEBAND_SPEECH = 0x8,
466 DECT_NWK_S_IE_FL_BASIC_SERVICE_SUOTA_CLASS_4_DPRS = 0x9,
467 DECT_NWK_S_IE_FL_BASIC_SERVICE_SUOTA_CLASS_3_DPRS = 0xA,
468 DECT_NWK_S_IE_FL_BASIC_SERVICE_DTAM_WIDEBAND_SPEECH = 0xB,
469 DECT_NWK_S_IE_FL_BASIC_SERVICE_OTHER = 0xF,
470};
471
472/* Section 7.6.7 */
473enum dect_nwk_s_ie_fl_release_reason {
474 DECT_NWK_S_IE_FL_RELEASE_REASON_NORMAL = 0x00,
475 DECT_NWK_S_IE_FL_RELEASE_REASON_UNEXPECTED_MESSAGE = 0x01,
476 DECT_NWK_S_IE_FL_RELEASE_REASON_UNKNOWN_TRANSACTION_IDENTIFIER = 0x02,
477 DECT_NWK_S_IE_FL_RELEASE_REASON_MANDATORY_INFORMATION_ELEMENT_MISSING = 0x03,
478 DECT_NWK_S_IE_FL_RELEASE_REASON_INVALID_INFORMATION_ELEMENT_CONTENTS = 0x04,
479 DECT_NWK_S_IE_FL_RELEASE_REASON_INCOMPATIBLE_SERVICE = 0x05,
480 DECT_NWK_S_IE_FL_RELEASE_REASON_SERVICE_NOT_IMPLEMENTED = 0x06,
481 DECT_NWK_S_IE_FL_RELEASE_REASON_NEGOTIATION_NOT_SUPPORTED = 0x07,
482 DECT_NWK_S_IE_FL_RELEASE_REASON_INVALID_ENTITY = 0x08,
483 DECT_NWK_S_IE_FL_RELEASE_REASON_AUTHENTICATION_FAILED = 0x09,
484 DECT_NWK_S_IE_FL_RELEASE_REASON_UNKNOWN_IDENTITY = 0x0A,
485 DECT_NWK_S_IE_FL_RELEASE_REASON_NEGOTIATION_FAILED = 0x0B,
486 DECT_NWK_S_IE_FL_RELEASE_REASON_COLLISION = 0x0C,
487 DECT_NWK_S_IE_FL_RELEASE_REASON_TIMER_EXPIRY = 0x0D,
488 DECT_NWK_S_IE_FL_RELEASE_REASON_PARTIAL_RELEASE = 0x0E,
489 DECT_NWK_S_IE_FL_RELEASE_REASON_UNKNOWN = 0x0F,
490 DECT_NWK_S_IE_FL_RELEASE_REASON_USER_DETACHED = 0x10,
491 DECT_NWK_S_IE_FL_RELEASE_REASON_USER_NOT_IN_RANGE = 0x11,
492 DECT_NWK_S_IE_FL_RELEASE_REASON_USER_UNKNOWN = 0x12,
493 DECT_NWK_S_IE_FL_RELEASE_REASON_USER_ALREADY_ACTIVE = 0x13,
494 DECT_NWK_S_IE_FL_RELEASE_REASON_USER_BUSY = 0x14,
495 DECT_NWK_S_IE_FL_RELEASE_REASON_USER_REJECTION = 0x15,
496 DECT_NWK_S_IE_FL_RELEASE_REASON_USER_CALL_MODIFY = 0x16,
497 DECT_NWK_S_IE_FL_RELEASE_REASON_EXTERNAL_HANDOVER_NOT_SUPPORTED = 0x21,
498 DECT_NWK_S_IE_FL_RELEASE_REASON_NETWORK_PARAMETERS_MISSING = 0x22,
499 DECT_NWK_S_IE_FL_RELEASE_REASON_EXTERNAL_HANDOVER_RELEASE = 0x23,
500 DECT_NWK_S_IE_FL_RELEASE_REASON_OVERLOAD = 0x31,
501 DECT_NWK_S_IE_FL_RELEASE_REASON_INSUFFICIENT_RESOURCES = 0x32,
502 DECT_NWK_S_IE_FL_RELEASE_REASON_INSUFFICIENT_BEARERS_AVAILABLE = 0x33,
503 DECT_NWK_S_IE_FL_RELEASE_REASON_IWU_CONGESTION = 0x34,
504 DECT_NWK_S_IE_FL_RELEASE_REASON_SECURITY_ATTACK_ASSUMED = 0x40,
505 DECT_NWK_S_IE_FL_RELEASE_REASON_ENCRYPTION_ACTIVATION_FAILED = 0x41,
506 DECT_NWK_S_IE_FL_RELEASE_REASON_RE_KEYING_FAILED = 0x42,
507 DECT_NWK_S_IE_FL_RELEASE_REASON_NO_CIPHER_KEY_AVAILABLE = 0x43,
508};
509
510/* Section 7.6.8 */
511enum dect_nwk_s_ie_fl_signal_value {
512 DECT_NWK_S_IE_FL_SIGNAL_VALUE_DIAL_TONE_ON = 0x00,
513 DECT_NWK_S_IE_FL_SIGNAL_VALUE_RINGBACK_TONE_ON = 0x01,
514 DECT_NWK_S_IE_FL_SIGNAL_VALUE_INTERCEPT_TONE_ON = 0x02,
515 DECT_NWK_S_IE_FL_SIGNAL_VALUE_NETWORK_CONGESTION_TONE_ON = 0x03,
516 DECT_NWK_S_IE_FL_SIGNAL_VALUE_BUSY_TONE_ON = 0x04,
517 DECT_NWK_S_IE_FL_SIGNAL_VALUE_CONFIRM_TONE_ON = 0x05,
518 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ANSWER_TONE_ON = 0x06,
519 DECT_NWK_S_IE_FL_SIGNAL_VALUE_CALL_WAITING_TONE_ON = 0x07,
520 DECT_NWK_S_IE_FL_SIGNAL_VALUE_OFF_HOOK_WARNING_TONE_ON = 0x08,
521 DECT_NWK_S_IE_FL_SIGNAL_VALUE_NEGATIVE_ACK_TONE = 0x09,
522 DECT_NWK_S_IE_FL_SIGNAL_VALUE_TONES_OFF = 0x3F,
523 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_0 = 0x40,
524 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_1 = 0x41,
525 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_2 = 0x42,
526 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_3 = 0x43,
527 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_4 = 0x44,
528 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_5 = 0x45,
529 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_6 = 0x46,
530 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_7 = 0x47,
531 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_CONTINUOUS = 0x48,
532 DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_OFF = 0x4F,
533};
534
535/* Section 7.6.9 */
536enum dect_nwk_s_ie_fl_timer_restart_value {
537 DECT_NWK_S_IE_FL_TIMER_RESTART_VALUE_RESTART_TIMER = 0x00,
538 DECT_NWK_S_IE_FL_TIMER_RESTART_VALUE_STOP_TIMER = 0x01,
539};
540
541/* Section 7.6.10 */
542enum dect_nwk_s_ie_fl_test_hook_control_hook_value {
543 DECT_NWK_S_IE_FL_TEST_HOOK_CONTROL_HOOK_VALUE_ON_HOOK = 0x00,
544 DECT_NWK_S_IE_FL_TEST_HOOK_CONTROL_HOOK_VALUE_OFF_HOOK = 0x01,
545};
546
547/* Section 7.7.1 */
548enum dect_nkw_s_ie_type {
549 DECT_NWK_S_IE_INFO_TYPE = 0x01,
550 DECT_NWK_S_IE_IDENTITY_TYPE = 0x02,
551 DECT_NWK_S_IE_PORTABLE_IDENTITY = 0x05,
552 DECT_NWK_S_IE_FIXED_IDENTITY = 0x06,
553 DECT_NWK_S_IE_LOCATION_AREA = 0x07,
554 DECT_NWK_S_IE_NWK_ASSIGNED_IDENTITY = 0x09,
555 DECT_NWK_S_IE_AUTH_TYPE = 0x0A,
556 DECT_NWK_S_IE_ALLOCATION_TYPE = 0x0B,
557 DECT_NWK_S_IE_RAND = 0x0C,
558 DECT_NWK_S_IE_RES = 0x0D,
559 DECT_NWK_S_IE_RS = 0x0E,
560 DECT_NWK_S_IE_IWU_ATTRIBUTES = 0x12,
561 DECT_NWK_S_IE_CALL_ATTRIBUES = 0x13,
562 DECT_NWK_S_IE_SERVICE_CHANGE_INFO = 0x16,
563 DECT_NWK_S_IE_CONNECTION_ATTRIBUTES = 0x17,
564 DECT_NWK_S_IE_CIPHER_INFO = 0x19,
565 DECT_NWK_S_IE_CALL_IDENTITY = 0x1A,
566 DECT_NWK_S_IE_CONNECTION_IDENTITY = 0x1B,
567 DECT_NWK_S_IE_FACILITY = 0x1C,
568 DECT_NWK_S_IE_PROGRESS_INDICATOR = 0x1E,
569 DECT_NWK_S_IE_MMS_GENERIC_HEADER = 0x20,
570 DECT_NWK_S_IE_MMS_OBJECT_HEADER = 0x21,
571 DECT_NWK_S_IE_MMS_EXTENDED_HEADER = 0x22,
572 DECT_NWK_S_IE_TIME_DATE = 0x23,
573 DECT_NWK_S_IE_MULTI_DISPLAY = 0x28,
574 DECT_NWK_S_IE_MULTI_KEYPAD = 0x2C,
575 DECT_NWK_S_IE_FEATURE_ACTIVATE = 0x38,
576 DECT_NWK_S_IE_FEATURE_INDICATE = 0x39,
577 DECT_NWK_S_IE_NETWORK_PARAMETER = 0x41,
578 DECT_NWK_S_IE_EXT_HO_INDICATOR = 0x42,
579 DECT_NWK_S_IE_ZAP_FIELD = 0x52,
580 DECT_NWK_S_IE_SERVICE_CLASS = 0x54,
581 DECT_NWK_S_IE_KEY = 0x56,
582 DECT_NWK_S_IE_REJECT_REASON = 0x60,
583 DECT_NWK_S_IE_SETUP_CAPABILITY = 0x62,
584 DECT_NWK_S_IE_TERMINAL_CAPABILITY = 0x63,
585 DECT_NWK_S_IE_END_TO_END_COMPATIBILITY = 0x64,
586 DECT_NWK_S_IE_RATE_PARAMETERS = 0x65,
587 DECT_NWK_S_IE_TRANSIT_DELAY = 0x66,
588 DECT_NWK_S_IE_WINDOW_SIZE = 0x67,
589 DECT_NWK_S_IE_ULE_MAC_CONFIGURATION_INFO = 0x68,
590 DECT_NWK_S_IE_CALLING_PARTY_NUMBER = 0x6C,
591 DECT_NWK_S_IE_CALLING_PARTY_NAME = 0x6D,
592 DECT_NWK_S_IE_CALLED_PARTY_NUMBER = 0x70,
593 DECT_NWK_S_IE_CALLED_PARTY_SUBADDR = 0x71,
594 DECT_NWK_S_IE_DURATION = 0x72,
595 DECT_NWK_S_IE_CALLED_PARTY_NAME = 0x73,
596 DECT_NWK_S_IE_LIST_CHANGE_DETAILS = 0x74,
597 DECT_NWK_S_IE_SEGMENTED_INFO = 0x75,
598 DECT_NWK_S_IE_ALPHANUMERIC = 0x76,
599 DECT_NWK_S_IE_IWU_TO_IWU = 0x77,
600 DECT_NWK_S_IE_MODEL_IDENTIFIER = 0x78,
601 DECT_NWK_S_IE_IWU_PACKET = 0x7A,
602 DECT_NWK_S_IE_ESCAPE_TO_PROPRIETARY = 0x7B,
603 DECT_NWK_S_IE_CODEC_LIST = 0x7C,
604 DECT_NWK_S_IE_EVENTS_NOTIFICATION = 0x7D,
605 DECT_NWK_S_IE_CALL_INFORMATION = 0x7E,
606 DECT_NWK_S_IE_ESCAPE_FOR_EXTENSION = 0x7F,
607};
608
609/* Section 7.7.4 */
610enum dect_nwk_s_ie_auth_type_authentication_algorithm {
611 DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_DSAA = 0x01,
612 DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_DSAA2 = 0x02,
613 DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_UMTS = 0x20,
614 DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_GSM = 0x40,
615 DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_PROPRIETARY = 0x7F,
616};
617
618enum dect_nwk_s_ie_auth_type_ak_type {
619 DECT_NWK_S_IE_AUTH_TYPE_AK_TYPE_USER_AK = 0x1,
620 DECT_NWK_S_IE_AUTH_TYPE_AK_TYPE_USER_PERSONAL_ID = 0x3,
621 DECT_NWK_S_IE_AUTH_TYPE_AK_TYPE_AUTHENTICATION_CODE = 0x4,
622};
623
624enum dect_nwk_s_ie_auth_type_default_cipher_key_algorithm {
625 DECT_NWK_S_IE_AUTH_TYPE_DEFAULT_CIPHER_KEY_ALGORITHM_DSC = 0x0,
626 DECT_NWK_S_IE_AUTH_TYPE_DEFAULT_CIPHER_KEY_ALGORITHM_DSC2 = 0x1,
627};
628
629/* Section 7.7.9 */
630enum dect_nwk_s_ie_calling_party_number_type {
631 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_UNKNOWN = 0x0,
632 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_INTERNATIONAL = 0x1,
633 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_NATIONAL = 0x2,
634 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_NETWORK_SPECIFIC = 0x3,
635 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_SUBSCRIBER = 0x4,
636 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_ABBREVIATED = 0x6,
637 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_RESERVED = 0x7,
638};
639
640enum dect_nwk_s_ie_calling_party_number_numbering_plan {
641 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_UNKNOWN = 0x0,
642 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_ISDN = 0x1,
643 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_DATA = 0x3,
644 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_TCP_IP = 0x7,
645 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_NATIONAL = 0x8,
646 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_PRIVATE = 0x9,
647 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_SIP = 0xA,
648 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_INTERNET = 0xB,
649 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_LAN_MAC = 0xC,
650 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_X400 = 0xD,
651 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_PROFILE = 0xE,
652 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_RESERVED = 0xF,
653};
654
655enum dect_nwk_s_ie_calling_party_number_presentation {
656 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_ALLOWED = 0x0,
657 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_RESTRICTED = 0x1,
658 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_NUMBER_NOT_AVAILABLE = 0x2,
659 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_RESERVED = 0x3,
660};
661
662enum dect_nwk_s_ie_calling_party_number_screening {
663 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_USER_NOT_SCREENED = 0x0,
664 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_USER_VERIFIED_PASSED = 0x1,
665 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_USER_VERIFIED_FAILED = 0x2,
666 DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_NETWORK = 0x3,
667};
668
669/* Section 7.7.10 */
670enum dect_nwk_s_ie_cipher_info_algorithm {
671 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_DSC = 0x01,
672 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_DSC2 = 0x02,
673 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_NO = 0x28,
674 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA1 = 0x29,
675 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA2 = 0x2A,
676 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA3 = 0x2B,
677 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA4 = 0x2C,
678 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA5 = 0x2D,
679 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA6 = 0x2E,
680 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA7 = 0x2F,
681 DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_PROPRIETARY = 0x7F,
682};
683
684enum dect_nwk_s_ie_cipher_info_key_type {
685 DECT_NWK_S_IE_CIPHER_INFO_KEY_TYPE_DERIVED = 0x9,
686 DECT_NWK_S_IE_CIPHER_INFO_KEY_TYPE_STATIC = 0xA,
687};
688
689/* Section 7.7.13 */
690enum dect_nwk_s_ie_duration_lock_limits_type {
691 DECT_NWK_S_IE_DURATION_LOCK_LIMITS_TEMPORARY2 = 0x5,
692 DECT_NWK_S_IE_DURATION_LOCK_LIMITS_TEMPORARY = 0x6,
693 DECT_NWK_S_IE_DURATION_LOCK_LIMITS_NO = 0x7,
694};
695
696enum dect_nwk_s_ie_duration_time_limits_type {
697 DECT_NWK_S_IE_DURATION_TIME_LIMITS_ERASE = 0x0,
698 DECT_NWK_S_IE_DURATION_TIME_LIMITS_DEFINED_1 = 0x1,
699 DECT_NWK_S_IE_DURATION_TIME_LIMITS_DEFINED_2 = 0x2,
700 DECT_NWK_S_IE_DURATION_TIME_LIMITS_STANDARD = 0x4,
701 DECT_NWK_S_IE_DURATION_TIME_LIMITS_INFINITE = 0xF,
702};
703
704/* Section 7.7.18 */
705enum dect_nwk_s_ie_fixed_identity_type {
706 DECT_NWK_S_IE_FIXED_IDENTITY_ARI = 0x00,
707 DECT_NWK_S_IE_FIXED_IDENTITY_ARI_PLUS_RPN = 0x01,
708 DECT_NWK_S_IE_FIXED_IDENTITY_ARI_PLUS_RPN_WRS = 0x02,
709 DECT_NWK_S_IE_FIXED_IDENTITY_PARK = 0x20,
710};
711
712enum dect_nwk_arc_type {
713 DECT_NWK_ARC_TYPE_A = 0x0,
714 DECT_NWK_ARC_TYPE_B = 0x1,
715 DECT_NWK_ARC_TYPE_C = 0x2,
716 DECT_NWK_ARC_TYPE_D = 0x3,
717 DECT_NWK_ARC_TYPE_E = 0x4,
718 DECT_NWK_ARC_TYPE_F = 0x5,
719 DECT_NWK_ARC_TYPE_G = 0x6,
720 DECT_NWK_ARC_TYPE_H = 0x7,
721};
722
723/* Section 7.7.23 */
724enum dect_nwk_s_ie_iwu_to_iwu_protocol_discriminator_type {
725 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_USER_SPECIFIC = 0x00,
726 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_OSI_HIGH_LAYER = 0x01,
727 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_X263 = 0x02,
728 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_LIST_ACCESS = 0x03,
729 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_IA5_CHARS = 0x04,
730 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_ULE_NON_CCM = 0x05,
731 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_SUOTA = 0x06,
732 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_V120 = 0x07,
733 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_Q931_MESSAGE = 0x08,
734 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_Q931_IE = 0x09,
735 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_Q931_PARTIAL = 0x0A,
736 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_ULE_CCM_AUX0 = 0x0C,
737 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_ULE_CCM_AUX1 = 0x0D,
738 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_ULE_CCM_AUX2 = 0x0E,
739 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DTAM = 0x0F,
740 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_GSM_MESSAGE = 0x10,
741 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_GSM_IE = 0x11,
742 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_UMTS_GPRS_IE = 0x12,
743 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_UMTS_GPRS_MESSAGE = 0x13,
744 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_LRMS = 0x14,
745 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_RLL_AP = 0x15,
746 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_WRS = 0x16,
747 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DECT_ISDN_C_PLANE = 0x20,
748 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DECT_ISDN_U_PLANE = 0x21,
749 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DECT_ISDN_OPER = 0x22,
750 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_TERMINAL_DATA = 0x23,
751 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DECT_IP = 0x24,
752 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_MPEG4 = 0x25,
753 DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_UNKNOWN = 0x2F,
754};
755
756enum dect_nwk_s_ie_iwu_to_iwu_discriminator_type {
757 DECT_NWK_S_IE_IWU_TO_IWU_DISCRIMINATOR_TYPE_UNSPECIFIED = 0x00,
758 DECT_NWK_S_IE_IWU_TO_IWU_DISCRIMINATOR_TYPE_EMC = 0x01,
759};
760
761/* Section 7.7.25 */
762enum dect_nwk_s_ie_location_area_eli_type {
763 DECT_NWK_S_IE_LOCATION_AREA_ELI_TYPE_LI_REQ_NOT_INCLUDED = 0x7,
764 DECT_NWK_S_IE_LOCATION_AREA_ELI_TYPE_LI = 0xF,
765};
766
767/* Section 7.7.28 */
768enum dect_nwk_s_ie_nwk_assigned_identity_type {
769 DECT_NWK_S_IE_NWK_ASSIGNED_IDENTITY_TMSI = 0xE4,
770 DECT_NWK_S_IE_NWK_ASSIGNED_IDENTITY_PROPRIETARY = 0xFF,
771};
772
773/* Section 7.7.30 */
774enum dect_nwk_s_ie_portable_identity_type {
775 DECT_NWK_S_IE_PORTABLE_IDENTITY_IPUI = 0x00,
776 DECT_NWK_S_IE_PORTABLE_IDENTITY_IPEI = 0x10,
777 DECT_NWK_S_IE_PORTABLE_IDENTITY_TPUI = 0x20,
778};
779
780enum dect_nwk_s_ie_portable_identity_tpui_assignment_type_coding {
781 DECT_NWK_S_IE_PORTABLE_IDENTITY_TPUI_ASSIGNMENT_TYPE_TPUI = 0x0,
782 DECT_NWK_S_IE_PORTABLE_IDENTITY_TPUI_ASSIGNMENT_TYPE_TPUI_WITH_NUMBER_ASSIGNED = 0x1,
783};
784
785enum dect_nwk_ipui_type {
786 DECT_NWK_IPUI_TYPE_N = 0x0,
787 DECT_NWK_IPUI_TYPE_O = 0x1,
788 DECT_NWK_IPUI_TYPE_P = 0x2,
789 DECT_NWK_IPUI_TYPE_Q = 0x3,
790 DECT_NWK_IPUI_TYPE_R = 0x4,
791 DECT_NWK_IPUI_TYPE_S = 0x5,
792 DECT_NWK_IPUI_TYPE_T = 0x6,
793 DECT_NWK_IPUI_TYPE_U = 0x7,
794};
795
796/* Section 7.7.41 */
797enum dect_nwk_s_ie_terminal_capability_tone_capabilites {
798 DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_NA = 0x0,
799 DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_NO_TONE_CAPABILITY = 0x1,
800 DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_DIAL_TONE_ONLY = 0x2,
801 DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_E182_TONES_SUPPORTED = 0x3,
802 DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_COMPLETE_DECT_TONES_SUPPORTED = 0x4,
803};
804
805enum dect_nwk_s_ie_terminal_capability_display_capabilities {
806 DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_NA = 0x0,
807 DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_NO_DISPLAY = 0x1,
808 DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_NUMERIC = 0x2,
809 DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_NUMERIC_PLUS = 0x3,
810 DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_ALPHANUMERIC = 0x4,
811 DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_FULL_DISPLAY = 0x5,
812};
813
814enum dect_nwk_s_ie_terminal_capability_echo_parameters {
815 DECT_NWK_S_IE_TERMINAL_CAPABILITY_ECHO_PARAMETER_NA = 0x0,
816 DECT_NWK_S_IE_TERMINAL_CAPABILITY_ECHO_PARAMETER_MINIMUM_TCLW = 0x1,
817 DECT_NWK_S_IE_TERMINAL_CAPABILITY_ECHO_PARAMETER_TCLW_FULL = 0x2,
818 DECT_NWK_S_IE_TERMINAL_CAPABILITY_ECHO_PARAMETER_TCLW_VOIP_COMPATIBLE = 0x3,
819};
820
821enum dect_nwk_s_ie_terminal_capability_n_rej_capabilities {
822 DECT_NWK_S_IE_TERMINAL_CAPABILITY_N_REJ_NA = 0x0,
823 DECT_NWK_S_IE_TERMINAL_CAPABILITY_N_REJ_NO = 0x1,
824 DECT_NWK_S_IE_TERMINAL_CAPABILITY_N_REJ_PROVIDED = 0x2,
825};
826
827enum dect_nwk_s_ie_terminal_capability_a_vol_capabilities {
828 DECT_NWK_S_IE_TERMINAL_CAPABILITY_A_VOL_NA = 0x0,
829 DECT_NWK_S_IE_TERMINAL_CAPABILITY_A_VOL_NO_PP_A_VOL = 0x1,
830 DECT_NWK_S_IE_TERMINAL_CAPABILITY_A_VOL_PP_A_VOL_USED = 0x2,
831};
832
833enum dect_nwk_s_ie_terminal_capability_slot_type {
834 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_HALF_80 = 0x1,
835 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_LONG_640 = 0x02,
836 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_LONG_672 = 0x04,
837 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_FULL = 0x08,
838 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_DOUBLE = 0x10,
839};
840
841enum dect_nwk_s_ie_terminal_capability_scrolling_behaviour_type {
842 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SCROLLING_BEHAVIOUR_NOT_SPECIFIED = 0x00,
843 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SCROLLING_BEHAVIOUR_TYPE_1 = 0x01,
844 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SCROLLING_BEHAVIOUR_TYPE_2 = 0x02,
845};
846
847enum dect_nwk_s_ie_terminal_capability_profile_indicator_1 {
848 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_CAP = 0x01,
849 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_GAP = 0x02,
850 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_DECT_GSM = 0x04,
851 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_ISDN = 0x08,
852 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_LRMS = 0x10,
853 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_DPRS_STREAM = 0x20,
854 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_DPRS_ASYMMETRIC = 0x40,
855};
856
857enum dect_nwk_s_ie_terminal_capability_profile_indicator_2 {
858 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DPRS_CLASS_2 = 0x01,
859 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DATA_SERVICES = 0x02,
860 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_ISDN = 0x04,
861 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DECT_UMTS_BEARER = 0x08,
862 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DECT_UMTS_SMS = 0x10,
863 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DECT_UMTS_FACSIMILE = 0x20,
864 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_RAP = 0x40,
865};
866
867enum dect_nwk_s_ie_terminal_capability_profile_indicator_3 {
868 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_DECT_GSM = 0x01,
869 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_WRS = 0x02,
870 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_SMS = 0x04,
871 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_DMAP = 0x08,
872 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_CTA = 0x10,
873 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_ETHERNET = 0x20,
874 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_TOKEN_RING = 0x40,
875};
876
877enum dect_nwk_s_ie_terminal_capability_profile_indicator_4 {
878 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_IP = 0x01,
879 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_PPP = 0x02,
880 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_V24 = 0x04,
881 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_CF = 0x08,
882 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_IPQ = 0x10,
883 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_RAP_2 = 0x20,
884 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_DPRS = 0x40,
885};
886
887enum dect_nwk_s_ie_terminal_capability_profile_indicator_5 {
888 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_2BZ = 0x01,
889 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_4BZ = 0x02,
890 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_8BZ = 0x04,
891 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_16BZ = 0x08,
892 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_2A = 0x10,
893 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_4A = 0x20,
894 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_8A = 0x40,
895};
896enum dect_nwk_s_ie_terminal_capability_profile_indicator_6 {
897 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_DECT_UMTS = 0x01,
898 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_DECT_UMTS_GPRS = 0x02,
899 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_ODAP = 0x04,
900 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_F_MMS = 0x08,
901 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_GF = 0x10,
902 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_FAST_HOPPING = 0x20,
903 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_NO_EMISSION = 0x40,
904};
905
906enum dect_nwk_s_ie_terminal_capability_profile_indicator_7 {
907 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_MOD64 = 0x01,
908 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_NG_DECT_1 = 0x02,
909 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_NG_DECT_3 = 0x04,
910 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_HEADSET_MANAGEMENT = 0x08,
911 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_RE_KEYING = 0x10,
912 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_ASSOCIATED_MELODY = 0x20,
913 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_NG_DECT_5 = 0x40,
914};
915
916enum dect_nwk_s_ie_terminal_capability_profile_indicator_8 {
917 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_MUX_E_U = 0x01,
918 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_CHANNEL_IPF = 0x02,
919 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_CHANNEL_SIPF = 0x04,
920 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CATEGORY = 0x78,
921};
922
923enum dect_nwk_s_ie_terminal_capability_profile_indicator_9 {
924 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_9_DPRS_3 = 0x01,
925 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_9_DPRS_4 = 0x02,
926 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE = 0x1C,
927 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_9_LIGHT_DATA = 0x20,
928};
929
930enum dect_nwk_s_ie_terminal_capability_profile_indicator_10 {
931 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_DATE_TIME_RECOVERY = 0x01,
932 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_EXTENDED_LIST_CHANGE = 0x02,
933 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_SCREENING = 0x04,
934 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_WRS_2 = 0x08,
935 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_WRS_ULE = 0x10,
936};
937
938enum dect_nwk_s_ie_terminal_capability_profile_indicator_8_packet_data_categories {
939 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_NO = 0x0,
940 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_1 = 0x1,
941 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_2 = 0x2,
942 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_3 = 0x3,
943 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_4_8PSK = 0x4,
944 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_4_64QAM = 0x5,
945};
946
947enum dect_nwk_s_ie_terminal_capability_profile_indicator_9_dect_ule_versions {
948 DECT_NWK_S_IE_TERMINA_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE_1_V111 = 0x1,
949 DECT_NWK_S_IE_TERMINA_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE_1_V121 = 0x3,
950 DECT_NWK_S_IE_TERMINA_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE_2 = 0x5,
951 DECT_NWK_S_IE_TERMINA_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE_3 = 0x7,
952};
953
954enum dect_nwk_s_ie_terminal_capability_control_codes {
955 DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_NOT_SPECIFIED = 0x0,
956 DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_0CH = 0x1,
957 DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_CODING_001 = 0x2,
958 DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_CODING_010 = 0x3,
959 DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_CODING_011 = 0x4,
960};
961
962enum dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1 {
963 DECT_NWK_S_IE_TERMINAL_CAPABILITY_ESCAPE_TO_CHAR_SETS_1_LATIN_NO1 = 0x01,
964 DECT_NWK_S_IE_TERMINAL_CAPABILITY_ESCAPE_TO_CHAR_SETS_1_LATIN_NO9 = 0x02,
965 DECT_NWK_S_IE_TERMINAL_CAPABILITY_ESCAPE_TO_CHAR_SETS_1_LATIN_NO5 = 0x04,
966 DECT_NWK_S_IE_TERMINAL_CAPABILITY_ESCAPE_TO_CHAR_SETS_1_GREEK = 0x08,
967};
968
969enum dect_nwk_s_ie_terminal_capability_blind_slot_indication {
970 DECT_NWK_S_IE_TERMINAL_CAPABILITY_BLIND_SLOT_INDICATION_NO = 0x0,
971 DECT_NWK_S_IE_TERMINAL_CAPABILITY_BLIND_SLOT_INDICATION_NOT_POSSIBLE_ADJACENT = 0x1,
972 DECT_NWK_S_IE_TERMINAL_CAPABILITY_BLIND_SLOT_INDICATION_NOT_POSSIBLE_EVERY_SECOND = 0x2,
973 DECT_NWK_S_IE_TERMINAL_CAPABILITY_BLIND_SLOT_INDICATION_LIMITATIONS_IN_FOLLOWING_BITS = 0x3,
974};
975
976enum dect_nwk_s_ie_terminal_capability_blind_slot_6 {
977 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP0 = 0x10,
978 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP1 = 0x08,
979 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP2 = 0x04,
980 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP3 = 0x02,
981 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP4 = 0x01,
982};
983
984enum dect_nwk_s_ie_terminal_capability_blind_slot_6a {
985 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP5 = 0x40,
986 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP6 = 0x20,
987 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP7 = 0x10,
988 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP8 = 0x08,
989 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP9 = 0x04,
990 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP10 = 0x02,
991 DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP11 = 0x01,
992};
993
994/* Section 7.7.45 */
995enum dect_nwk_s_ie_escape_to_proprietary_discriminator_type {
996 DECT_NWK_S_IE_ESCAPE_TO_PROPRIETARY_DISCRIMINATOR_TYPE_UNSPECIFIED = 0x00,
997 DECT_NWK_S_IE_ESCAPE_TO_PROPRIETARY_DISCRIMINATOR_TYPE_EMC = 0x01,
998};
999
1000/* Section 7.7.54 */
1001enum dect_nwk_s_ie_codec_list_negotiation_indicator_type {
1002 DECT_NWK_S_IE_CODEC_LIST_NEGOTIATION_INDICATOR_NOT_POSSIBLE = 0x0,
1003 DECT_NWK_S_IE_CODEC_LIST_NEGOTIATION_INDICATOR_CODEC_NEGOTIATION = 0x1,
1004};
1005
1006enum dect_nwk_s_ie_codec_list_codec_identifier_type {
1007 DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_USER_32 = 0x01,
1008 DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G726_32 = 0x02,
1009 DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G722_64 = 0x03,
1010 DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G711_ALAW_64 = 0x04,
1011 DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G711_ULAW_64 = 0x05,
1012 DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G729_1_32 = 0x06,
1013 DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_MPEG4_32 = 0x07,
1014 DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_MPEG4_64 = 0x08,
1015 DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_USER_64 = 0x09,
1016};
1017
1018enum dect_nwk_s_ie_codec_list_mac_and_dlc_service_type {
1019 DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU1_INA = 0x0,
1020 DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU1_INB = 0x1,
1021 DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU1_IPM = 0x2,
1022 DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU1_IPQ = 0x3,
1023 DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU7_INB = 0x4,
1024 DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU12_INB = 0x5,
1025};
1026
1027enum dect_nwk_s_ie_codec_list_c_plane_routing_type {
1028 DECT_NWK_S_IE_CODEC_LIST_C_PLANE_ROUTING_CS_ONLY = 0x0,
1029 DECT_NWK_S_IE_CODEC_LIST_C_PLANE_ROUTING_CS_PREFERRED_CF_ACCEPTED = 0x1,
1030 DECT_NWK_S_IE_CODEC_LIST_C_PLANE_ROUTING_CF_PREFERRED_CS_ACCEPTED = 0x2,
1031 DECT_NWK_S_IE_CODEC_LIST_C_PLANE_ROUTING_CF_ONLY = 0x4,
1032};
1033
1034enum dect_nwk_s_ie_codec_list_slot_size_type {
1035 DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_HALF = 0x0,
1036 DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_LONG_640 = 0x1,
1037 DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_LONG_672 = 0x2,
1038 DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_FULL = 0x4,
1039 DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_DOUBLE = 0x5,
1040};
1041
1042/* Annex D.2.2 */
1043enum dect_charset_control_codes {
1044 DECT_CHARSET_CANCEL_DTMF_TONE = 0x00,
1045 DECT_CHARSET_RETURN_HOME = 0x02,
1046 DECT_CHARSET_RETURN_END = 0x03,
1047 DECT_CHARSET_DIALLING_PAUSE = 0x05,
1048 DECT_CHARSET_MOVE_FORWARD_TO_NEXT_COLUMN_TAB_POSITION = 0x06,
1049 DECT_CHARSET_MOVE_BACKWARD_TO_NEXT_COLUMN_TAB_POSITION = 0x07,
1050 DECT_CHARSET_MOVE_BACKWARD_ONE_COLUMN = 0x08,
1051 DECT_CHARSET_MOVE_FORWARD_ONE_COLUMN = 0x09,
1052 DECT_CHARSET_MOVE_DOWN_ONE_ROW = 0x0A,
1053 DECT_CHARSET_MOVE_UP_ONE_ROW = 0x0B,
1054 DECT_CHARSET_CLEAR_DISPLAY = 0x0C,
1055 DECT_CHARSET_RETURN_TO_START_OF_CURRENT_ROW = 0x0D,
1056 DECT_CHARSET_FLASH_OFF = 0x0E,
1057 DECT_CHARSET_FLASH_ON = 0x0F,
1058 DECT_CHARSET_XON = 0x11,
1059 DECT_CHARSET_GO_TO_PULSE_DIALLING = 0x12,
1060 DECT_CHARSET_XOFF = 0x13,
1061 DECT_CHARSET_GO_TO_DTMF_DIALLING_DEFINED_TONE_LENGTH = 0x14,
1062 DECT_CHARSET_REGISTER_RECALL = 0x15,
1063 DECT_CHARSET_GO_TO_DTMF_DIALLING_INFINITE_TONE_LENGTH = 0x16,
1064 DECT_CHARSET_INTERNAL_CALL = 0x17,
1065 DECT_CHARSET_SERVICE_CALL = 0x18,
1066 DECT_CHARSET_CLEAR_TO_END_OF_DISPLAY = 0x19,
1067 DECT_CHARSET_CLEAR_TO_END_OF_LINE = 0x1A,
1068 DECT_CHARSET_ESC = 0x1B,
1069 DECT_CHARSET_SUPPLEMENTARY_SERVICE = 0x1C,
1070};
1071
1072/*********************************************************************************
1073 * DECT VALUE STRINGS
1074 *********************************************************************************/
1075
1076/* Section 7.2 */
1077static const value_string nwk_pdisc_vals[] = {
1078 { DECT_NWK_PDISC_LCE, "Link Control Entity (LCE)" },
1079 { DECT_NWK_PDISC_CC, "Call Control (CC)" },
1080 { DECT_NWK_PDISC_CISS, "Call Independent Supplementary Services (CISS)" },
1081 { DECT_NWK_PDISC_MM, "Mobility Management (MM)" },
1082 { DECT_NWK_PDISC_CLMS, "ConnectionLess Message Service (CLMS)" },
1083 { DECT_NWK_PDISC_COMS, "Connection Oriented Message Service (COMS)" },
1084 { 0, NULL((void*)0) }
1085};
1086
1087/* Section 7.4.1 */
1088static const value_string nwk_cc_msgt_vals[] = {
1089 { DECT_NWK_CC_ALERTING, "CC-ALERTING" },
1090 { DECT_NWK_CC_CALL_PROC, "CC-CALL-PROC" },
1091 { DECT_NWK_CC_SETUP, "CC-SETUP" },
1092 { DECT_NWK_CC_CONNECT, "CC-CONNECT" },
1093 { DECT_NWK_CC_SETUP_ACK, "CC-SETUP-ACK" },
1094 { DECT_NWK_CC_CONNECT_ACK, "CC-CONNECT-ACK" },
1095 { DECT_NWK_CC_SERVICE_CHANGE, "CC-SERVICE-CHANGE" },
1096 { DECT_NWK_CC_SERVICE_ACCEPT, "CC-SERVICE-ACCEPT" },
1097 { DECT_NWK_CC_SERVICE_REJECT, "CC-SERVICE-REJECT" },
1098 { DECT_NWK_CC_RELEASE, "CC-RELEASE" },
1099 { DECT_NWK_CC_RELEASE_COM, "CC-RELEASE-COM" },
1100 { DECT_NWK_CC_IWU_INFO, "CC-IWU-INFO" },
1101 { DECT_NWK_CC_NOTIFY, "CC-NOTIFY" },
1102 { DECT_NWK_CC_INFO, "CC-INFO" },
1103 { 0, NULL((void*)0) }
1104};
1105
1106/* Section 7.4.2 */
1107static const value_string dect_nwk_ciss_message_type_vals[] = {
1108 { DECT_NWK_SS_CISS_RELEASE_COM, "CISS-RELEASE-COM" },
1109 { DECT_NWK_SS_CISS_FACILITY, "FACILITY" },
1110 { DECT_NWK_SS_CISS_REGISTER, "CISS-REGISTER" },
1111 { 0, NULL((void*)0) }
1112};
1113
1114static const value_string dect_nwk_crss_message_type_vals[] = {
1115 { DECT_NWK_SS_CRSS_HOLD, "HOLD" },
1116 { DECT_NWK_SS_CRSS_HOLD_ACK, "HOLD-ACK" },
1117 { DECT_NWK_SS_CRSS_HOLD_REJ, "HOLD-REJECT" },
1118 { DECT_NWK_SS_CRSS_RETRIEVE, "RETRIEVE" },
1119 { DECT_NWK_SS_CRSS_RETRIEVE_ACK, "RETRIEVE-ACK" },
1120 { DECT_NWK_SS_CRSS_RETRIEVE_REJ, "RETRIEVE-REJECT" },
1121 { DECT_NWK_SS_CRSS_FACILITYDECT_NWK_SS_CISS_FACILITY, "FACILITY" },
1122 { 0, NULL((void*)0) }
1123};
1124
1125/* Section 7.4.3 */
1126static const value_string dect_nwk_coms_message_type_vals[] = {
1127 { DECT_NWK_COMS_SETUP, "COMS-SETUP" },
1128 { DECT_NWK_COMS_CONNECT, "COMS-CONNECT" },
1129 { DECT_NWK_COMS_NOTIFY, "COMS-NOTIFY" },
1130 { DECT_NWK_COMS_RELEASE, "COMS-RELEASE" },
1131 { DECT_NWK_COMS_RELEASE_COM, "COMS-RELEASE-COM" },
1132 { DECT_NWK_COMS_INFO, "COMS-INFO" },
1133 { DECT_NWK_COMS_ACK, "COMS-ACK" },
1134 { 0, NULL((void*)0) }
1135};
1136
1137/* Section 7.4.4 */
1138static const value_string dect_nwk_clms_message_type_vals[] = {
1139 { DECT_NWK_CLMS_VARIABLE, "CLMS-VARIABLE" },
1140 { 0, NULL((void*)0) }
1141};
1142
1143/* Section 7.4.5 */
1144static const value_string nwk_mm_msgt_vals[] = {
1145 { DECT_NWK_MM_AUTH_REQ, "MM-AUTH-REQ" },
1146 { DECT_NWK_MM_AUTH_REPLY, "MM-AUTH-REPLY" },
1147 { DECT_NWK_MM_KEY_ALLOC, "MM-KEY-ALLOCATE" },
1148 { DECT_NWK_MM_AUTH_REJ, "MM-AUTH-REJECT" },
1149 { DECT_NWK_MM_ACC_RIGHTS_REQ, "MM-ACCESS-RIGHTS-REQUEST" },
1150 { DECT_NWK_MM_ACC_RIGHTS_ACK, "MM-ACCESS-RIGHTS-ACCEPT" },
1151 { DECT_NWK_MM_ACC_RIGHTS_REJ, "MM-ACCESS-RIGHTS-REJECT" },
1152 { DECT_NWK_MM_ACC_RIGHTS_TERM_REQ, "MM-ACCESS-RIGHTS-TERMINATE-REQUEST" },
1153 { DECT_NWK_MM_ACC_RIGHTS_TERM_ACK, "MM-ACCESS-RIGHTS-TERMINATE-ACCEPT" },
1154 { DECT_NWK_MM_ACC_RIGHTS_TERM_REJ, "MM-ACCESS-RIGHTS-TERMINATE-REJECT" },
1155 { DECT_NWK_MM_CIPH_REQ, "MM-CIPHER-REQUEST" },
1156 { DECT_NWK_MM_CIPH_SUGGEST, "MM-CIPHER-SUGGEST" },
1157 { DECT_NWK_MM_CIPH_REJ, "MM-CIPHER-REJECT" },
1158 { DECT_NWK_MM_INFO_REQ, "MM-INFO-REQUEST" },
1159 { DECT_NWK_MM_INFO_ACK, "MM-INFO-ACCEPT" },
1160 { DECT_NWK_MM_INFO_SUGGEST, "MM-INFO-SUGGEST" },
1161 { DECT_NWK_MM_INFO_REJ, "MM-INFO-REJECT" },
1162 { DECT_NWK_MM_LOCATE_REQ, "MM-LOCATE-REQUEST" },
1163 { DECT_NWK_MM_LOCATE_ACK, "MM-LOCATE-ACCEPT" },
1164 { DECT_NWK_MM_DETACH, "MM-DETACH" },
1165 { DECT_NWK_MM_LOCATE_REJ, "MM-LOCATE-REJECT" },
1166 { DECT_NWK_MM_ID_REQ, "MM-IDENTITY-REQUEST" },
1167 { DECT_NWK_MM_ID_REPLY, "MM-IDENTITY-REPLY" },
1168 { DECT_NWK_MM_IWU, "MM-IWU" },
1169 { DECT_NWK_MM_TID_ASSIGN, "MM-TEMPORARY-IDENTITY-ASSIGN" },
1170 { DECT_NWK_MM_TID_ASSIGN_ACK, "MM-TEMPORARY-IDENTITY-ASSIGN-ACK" },
1171 { DECT_NWK_MM_TID_ASSIGN_REJ, "MM-TEMPORARY-IDENTITY-ASSIGN-REJ" },
1172 { DECT_NWK_MM_NOTIFY, "MM-NOTIFY" },
1173 { 0, NULL((void*)0) }
1174};
1175
1176/* Section 7.4.6 */
1177static const value_string nwk_lce_msgt_vals[] = {
1178 { DECT_NWK_LCE_PAGE_RESP, "LCE-PAGE-RESPONSE" },
1179 { DECT_NWK_LCE_PAGE_REJ, "LCE-PAGE-REJECT" },
1180 { 0, NULL((void*)0) }
1181};
1182
1183/* Section 7.5.3 */
1184static const true_false_string dect_nwk_s_ie_fl_shift_locking_tfs = {
1185 "non-locking",
1186 "locking"
1187};
1188
1189static const value_string dect_nwk_s_ie_fl_shift_codeset_val[] = {
1190 { DECT_NWK_S_FL_IE_SHIFT_CODESET_INITIAL, "Initial codeset" },
1191 { DECT_NWK_S_FL_IE_SHIFT_CODESET_NON_STANDARD_0, "Non-Standard codeset 0" },
1192 { DECT_NWK_S_FL_IE_SHIFT_CODESET_NON_STANDARD_1, "Non-Standard codeset 1" },
1193 { DECT_NWK_S_FL_IE_SHIFT_CODESET_NON_STANDARD_2, "Non-Standard codeset 2" },
1194 { DECT_NWK_S_FL_IE_SHIFT_CODESET_NON_STANDARD_3, "Non-Standard codeset 3" },
1195 { 0, NULL((void*)0) }
1196};
1197
1198/* Section 7.6.1 */
1199static const value_string dect_nwk_s_ie_fl_type_val[] = {
1200 { DECT_NWK_S_IE_FL_SHIFT, "SHIFT" },
1201 { DECT_NWK_S_IE_FL_CONTROL, "CONTROL" },
1202 { DECT_NWK_S_IE_FL_REPEAT_INDICATOR, "REPEAT-INDICATOR" },
1203 { DECT_NWK_S_IE_FL_DOUBLE_OCTET_ELEMENT, "DOUBLE-OCTET-ELEMENT" },
1204 { 0, NULL((void*)0) }
1205};
1206
1207static const value_string dect_nwk_s_ie_fl_control_type_val[] = {
1208 { DECT_NWK_S_IE_FL_CONTROL_SENDING_COMPLETE, "SENDING-COMPLETE" },
1209 { DECT_NWK_S_IE_FL_CONTROL_DELIMITER_REQUEST, "DELIMITER-REQUEST" },
1210 { DECT_NWK_S_IE_FL_CONTROL_USE_TPUI, "USE-TPUI" },
1211 { 0, NULL((void*)0) }
1212};
1213
1214static const value_string dect_nwk_s_ie_fl_double_octet_type_val[] = {
1215 { DECT_NWK_S_IE_FL_DOUBLE_OCTET_BASIC_SERVICE, "BASIC-SERVICE" },
1216 { DECT_NWK_S_IE_FL_DOUBLE_OCTET_RELEASE_REASON, "RELEASE-REASON" },
1217 { DECT_NWK_S_IE_FL_DOUBLE_OCTET_SIGNAL, "SIGNAL" },
1218 { DECT_NWK_S_IE_FL_DOUBLE_OCTET_TIMER_RESTART, "TIMER-RESTART" },
1219 { DECT_NWK_S_IE_FL_DOUBLE_OCTET_TEST_HOOK_CONTROL, "TEST-HOOK-CONTROL" },
1220 { DECT_NWK_S_IE_FL_DOUBLE_OCTET_SINGLE_DISPLAY, "SINGLE-DISPLAY" },
1221 { DECT_NWK_S_IE_FL_DOUBLE_OCTET_SINGLE_KEYPAD, "SINGLE-KEYPAD" },
1222 { 0, NULL((void*)0) }
1223};
1224
1225/* Section 7.6.3 */
1226static const value_string dect_nwk_s_ie_fl_repeat_indicator_type_val[] = {
1227 { DECT_NWK_S_IE_FL_REPEAT_INDICATOR_NON_PRIORITIZED, "Non prioritized list" },
1228 { DECT_NWK_S_IE_FL_REPEAT_INDICATOR_PRIORITIZED, "Prioritized list" },
1229 { 0, NULL((void*)0) }
1230};
1231
1232/* Section 7.6.4 */
1233static const value_string dect_nwk_s_ie_fl_basic_service_call_class_val[] = {
1234 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_LIA, "Basic speech default setup attributes" },
1235 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_ULE, "ULE service call setup"},
1236 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_MESSAGE, "Message call setup" },
1237 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_DECT_ISDN_IIP, "DECT/ISDN IIP" },
1238 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_NORMAL, "Normal call setup" },
1239 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_INTERNAL, "Internal call setup" },
1240 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_EMERGENCY, "Emergency call setup" },
1241 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_SERVICE, "Service call setup" },
1242 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_EXTERNAL_HANDOVER, "External handover call setup" },
1243 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_SUPPLEMENTARY_SERVICE, "Supplementary service call setup" },
1244 { DECT_NWK_S_IE_FL_BASIC_SERVICE_CALL_CLASS_OA_M, "OA&M call setup" },
1245 { 0, NULL((void*)0) }
1246};
1247
1248static const value_string dect_nwk_s_ie_fl_basic_service_type_val[] = {
1249 { DECT_NWK_S_IE_FL_BASIC_SERVICE_BASIC_SPEECH, "Basic speech default setup attributes" },
1250 { DECT_NWK_S_IE_FL_BASIC_SERVICE_DECT_GSM_IWP, "DECT GSM IWP profile (Phase 2)" },
1251 { DECT_NWK_S_IE_FL_BASIC_SERVICE_LRMS, "LRMS (E-profile) service" },
1252 { DECT_NWK_S_IE_FL_BASIC_SERVICE_DECT_UMTS_IWP_GSM_IWP_SMS, "DECT UMTS IWP or GSM IWP SMS" },
1253 { DECT_NWK_S_IE_FL_BASIC_SERVICE_WIDEBAND_SPEECH, "Wideband speech default setup attributes" },
1254 { DECT_NWK_S_IE_FL_BASIC_SERVICE_SUOTA_CLASS_4_DPRS, "Light data services: SUOTA, Class 4 DPRS management, default setup attributes" },
1255 { DECT_NWK_S_IE_FL_BASIC_SERVICE_SUOTA_CLASS_3_DPRS, "Light data services: SUOTA, Class 3 DPRS management, default setup attributes" },
1256 { DECT_NWK_S_IE_FL_BASIC_SERVICE_DTAM_WIDEBAND_SPEECH, "DTAM Wideband speech default setup attributes" },
1257 { DECT_NWK_S_IE_FL_BASIC_SERVICE_OTHER, "Other" },
1258 { 0, NULL((void*)0) }
1259};
1260
1261/* Section 7.6.7 */
1262static const value_string dect_nwk_s_ie_fl_release_reason_val[] = {
1263 { DECT_NWK_S_IE_FL_RELEASE_REASON_NORMAL, "Normal" },
1264 { DECT_NWK_S_IE_FL_RELEASE_REASON_UNEXPECTED_MESSAGE, "Unexpected Message" },
1265 { DECT_NWK_S_IE_FL_RELEASE_REASON_UNKNOWN_TRANSACTION_IDENTIFIER, "Unknown Transaction Identifier" },
1266 { DECT_NWK_S_IE_FL_RELEASE_REASON_MANDATORY_INFORMATION_ELEMENT_MISSING, "Mandatory information element missing" },
1267 { DECT_NWK_S_IE_FL_RELEASE_REASON_INVALID_INFORMATION_ELEMENT_CONTENTS, "Invalid information element contents" },
1268 { DECT_NWK_S_IE_FL_RELEASE_REASON_INCOMPATIBLE_SERVICE, "Incompatible service" },
1269 { DECT_NWK_S_IE_FL_RELEASE_REASON_SERVICE_NOT_IMPLEMENTED, "Service not implemented" },
1270 { DECT_NWK_S_IE_FL_RELEASE_REASON_NEGOTIATION_NOT_SUPPORTED, "Negotiation not supported" },
1271 { DECT_NWK_S_IE_FL_RELEASE_REASON_INVALID_ENTITY, "Invalid identity" },
1272 { DECT_NWK_S_IE_FL_RELEASE_REASON_AUTHENTICATION_FAILED, "Authentication failed" },
1273 { DECT_NWK_S_IE_FL_RELEASE_REASON_UNKNOWN_IDENTITY, "Unknown identity" },
1274 { DECT_NWK_S_IE_FL_RELEASE_REASON_NEGOTIATION_FAILED, "Negotiation failed" },
1275 { DECT_NWK_S_IE_FL_RELEASE_REASON_COLLISION, "Collision" },
1276 { DECT_NWK_S_IE_FL_RELEASE_REASON_TIMER_EXPIRY, "Timer expiry" },
1277 { DECT_NWK_S_IE_FL_RELEASE_REASON_PARTIAL_RELEASE, "Partial release" },
1278 { DECT_NWK_S_IE_FL_RELEASE_REASON_UNKNOWN, "Unknown" },
1279 { DECT_NWK_S_IE_FL_RELEASE_REASON_USER_DETACHED, "User detached" },
1280 { DECT_NWK_S_IE_FL_RELEASE_REASON_USER_NOT_IN_RANGE, "User not in range" },
1281 { DECT_NWK_S_IE_FL_RELEASE_REASON_USER_UNKNOWN, "User unknown" },
1282 { DECT_NWK_S_IE_FL_RELEASE_REASON_USER_ALREADY_ACTIVE, "User already active" },
1283 { DECT_NWK_S_IE_FL_RELEASE_REASON_USER_BUSY, "User busy" },
1284 { DECT_NWK_S_IE_FL_RELEASE_REASON_USER_REJECTION, "User rejection" },
1285 { DECT_NWK_S_IE_FL_RELEASE_REASON_USER_CALL_MODIFY, "User call modify" },
1286 { DECT_NWK_S_IE_FL_RELEASE_REASON_EXTERNAL_HANDOVER_NOT_SUPPORTED, "External Handover not supported" },
1287 { DECT_NWK_S_IE_FL_RELEASE_REASON_NETWORK_PARAMETERS_MISSING, "Network Parameters missing" },
1288 { DECT_NWK_S_IE_FL_RELEASE_REASON_EXTERNAL_HANDOVER_RELEASE, "External Handover release" },
1289 { DECT_NWK_S_IE_FL_RELEASE_REASON_OVERLOAD, "Overload" },
1290 { DECT_NWK_S_IE_FL_RELEASE_REASON_INSUFFICIENT_RESOURCES, "Insufficient resources" },
1291 { DECT_NWK_S_IE_FL_RELEASE_REASON_INSUFFICIENT_BEARERS_AVAILABLE, "Insufficient bearers available" },
1292 { DECT_NWK_S_IE_FL_RELEASE_REASON_IWU_CONGESTION, "IWU congestion" },
1293 { DECT_NWK_S_IE_FL_RELEASE_REASON_SECURITY_ATTACK_ASSUMED, "Security attack assumed" },
1294 { DECT_NWK_S_IE_FL_RELEASE_REASON_ENCRYPTION_ACTIVATION_FAILED, "Encryption activation failed" },
1295 { DECT_NWK_S_IE_FL_RELEASE_REASON_RE_KEYING_FAILED, "Re-Keying failed" },
1296 { DECT_NWK_S_IE_FL_RELEASE_REASON_NO_CIPHER_KEY_AVAILABLE, "No Cipher Key available" },
1297 { 0, NULL((void*)0) }
1298};
1299
1300/* Section 7.6.8 */
1301static const value_string dect_nwk_s_ie_fl_signal_value_val[] = {
1302 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_DIAL_TONE_ON, "Dial tone on" },
1303 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_RINGBACK_TONE_ON, "Ring-back tone on" },
1304 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_INTERCEPT_TONE_ON, "Intercept tone on " },
1305 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_NETWORK_CONGESTION_TONE_ON, "Network congestion tone on" },
1306 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_BUSY_TONE_ON, "Busy tone on" },
1307 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_CONFIRM_TONE_ON, "Confirm tone on" },
1308 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ANSWER_TONE_ON, "Answer tone on" },
1309 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_CALL_WAITING_TONE_ON, "Call waiting tone on" },
1310 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_OFF_HOOK_WARNING_TONE_ON, "Off-hook warning tone on" },
1311 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_NEGATIVE_ACK_TONE, "Negative acknowledgement tone" },
1312 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_TONES_OFF, "Tones off" },
1313 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_0, "Alerting on - pattern 0" },
1314 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_1, "Alerting on - pattern 1" },
1315 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_2, "Alerting on - pattern 2" },
1316 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_3, "Alerting on - pattern 3" },
1317 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_4, "Alerting on - pattern 4" },
1318 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_5, "Alerting on - pattern 5" },
1319 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_6, "Alerting on - pattern 6" },
1320 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_PATTERN_7, "Alerting on - pattern 7" },
1321 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_ON_CONTINUOUS, "Alerting on - continuous" },
1322 { DECT_NWK_S_IE_FL_SIGNAL_VALUE_ALERTING_OFF, "Alerting off" },
1323 { 0, NULL((void*)0) }
1324};
1325
1326/* Section 7.6.9 */
1327static const value_string dect_nwk_s_ie_fl_timer_restart_value_val[] = {
1328 { DECT_NWK_S_IE_FL_TIMER_RESTART_VALUE_RESTART_TIMER, "Restart timer" },
1329 { DECT_NWK_S_IE_FL_TIMER_RESTART_VALUE_STOP_TIMER, "Stop timer" },
1330 { 0, NULL((void*)0) }
1331};
1332
1333/* Section 7.6.10 */
1334static const value_string dect_nwk_s_ie_fl_test_hook_control_hook_value_val[] = {
1335 { DECT_NWK_S_IE_FL_TEST_HOOK_CONTROL_HOOK_VALUE_ON_HOOK, "On-Hook" },
1336 { DECT_NWK_S_IE_FL_TEST_HOOK_CONTROL_HOOK_VALUE_OFF_HOOK, "Off-Hook" },
1337 { 0, NULL((void*)0) }
1338};
1339
1340/* Section 7.7.1 */
1341static const value_string dect_nwk_s_ie_type_val[] = {
1342 { DECT_NWK_S_IE_INFO_TYPE, "INFO-TYPE" },
1343 { DECT_NWK_S_IE_IDENTITY_TYPE, "IDENTITY-TYPE" },
1344 { DECT_NWK_S_IE_PORTABLE_IDENTITY, "PORTABLE-IDENTITY" },
1345 { DECT_NWK_S_IE_FIXED_IDENTITY, "FIXED-IDENTITY" },
1346 { DECT_NWK_S_IE_LOCATION_AREA, "LOCATION-AREA" },
1347 { DECT_NWK_S_IE_NWK_ASSIGNED_IDENTITY, "NWK-ASSIGNED-IDENTITY" },
1348 { DECT_NWK_S_IE_AUTH_TYPE, "AUTH-TYPE" },
1349 { DECT_NWK_S_IE_ALLOCATION_TYPE, "ALLOCATION-TYPE" },
1350 { DECT_NWK_S_IE_RAND, "RAND" },
1351 { DECT_NWK_S_IE_RES, "RES" },
1352 { DECT_NWK_S_IE_RS, "RS" },
1353 { DECT_NWK_S_IE_IWU_ATTRIBUTES, "IWU-ATTRIBUTES" },
1354 { DECT_NWK_S_IE_CALL_ATTRIBUES, "CALL-ATTRIBUTES" },
1355 { DECT_NWK_S_IE_SERVICE_CHANGE_INFO, "SERVICE-CHANGE-INFO" },
1356 { DECT_NWK_S_IE_CONNECTION_ATTRIBUTES, "CONNECTION-ATTRIBUTES" },
1357 { DECT_NWK_S_IE_CIPHER_INFO, "CIPHER-INFO" },
1358 { DECT_NWK_S_IE_CALL_IDENTITY, "CALL-IDENTITY" },
1359 { DECT_NWK_S_IE_CONNECTION_IDENTITY, "CONNECTION-IDENTITY" },
1360 { DECT_NWK_S_IE_FACILITY, "FACILITY" },
1361 { DECT_NWK_S_IE_PROGRESS_INDICATOR, "PROGRESS-INDICATOR" },
1362 { DECT_NWK_S_IE_MMS_GENERIC_HEADER, "MMS-GENERIC-HEADER" },
1363 { DECT_NWK_S_IE_MMS_OBJECT_HEADER, "MMS-OBJECT-HEADER" },
1364 { DECT_NWK_S_IE_MMS_EXTENDED_HEADER, "MMS-EXTENDED-HEADER" },
1365 { DECT_NWK_S_IE_TIME_DATE, "TIME-DATE" },
1366 { DECT_NWK_S_IE_MULTI_DISPLAY, "MULTI-DISPLAY" },
1367 { DECT_NWK_S_IE_MULTI_KEYPAD, "MULTI-KEYPAD" },
1368 { DECT_NWK_S_IE_FEATURE_ACTIVATE, "FEATURE-ACTIVATE" },
1369 { DECT_NWK_S_IE_FEATURE_INDICATE, "FEATURE-INDICATE" },
1370 { DECT_NWK_S_IE_NETWORK_PARAMETER, "NETWORK-PARAMETER" },
1371 { DECT_NWK_S_IE_EXT_HO_INDICATOR, "EXT-HO-INDICATOR" },
1372 { DECT_NWK_S_IE_ZAP_FIELD, "ZAP-FIELD" },
1373 { DECT_NWK_S_IE_SERVICE_CLASS, "SERVICE-CLASS" },
1374 { DECT_NWK_S_IE_KEY, "KEY" },
1375 { DECT_NWK_S_IE_REJECT_REASON, "REJECT-REASON" },
1376 { DECT_NWK_S_IE_SETUP_CAPABILITY, "SETUP-CAPABILITY" },
1377 { DECT_NWK_S_IE_TERMINAL_CAPABILITY, "TERMINAL-CAPABILITY" },
1378 { DECT_NWK_S_IE_END_TO_END_COMPATIBILITY, "END-TO-END-COMPATIBILITY" },
1379 { DECT_NWK_S_IE_RATE_PARAMETERS, "RATE-PARAMETERS" },
1380 { DECT_NWK_S_IE_TRANSIT_DELAY, "TRANSIT-DELAY" },
1381 { DECT_NWK_S_IE_WINDOW_SIZE, "WINDOWS-SIZE" },
1382 { DECT_NWK_S_IE_ULE_MAC_CONFIGURATION_INFO, "ULE-MAC-CONFIGURATION-INFO" },
1383 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER, "CALLING-PARTY-NUMBER" },
1384 { DECT_NWK_S_IE_CALLING_PARTY_NAME, "CALLING-PARTY-NAME" },
1385 { DECT_NWK_S_IE_CALLED_PARTY_NUMBER, "CALLED-PARTY-NUMBER" },
1386 { DECT_NWK_S_IE_CALLED_PARTY_SUBADDR, "CALLED-PARTY-SUBADDR" },
1387 { DECT_NWK_S_IE_DURATION, "DURATION" },
1388 { DECT_NWK_S_IE_CALLED_PARTY_NAME, "CALLED-PARTY-NAME" },
1389 { DECT_NWK_S_IE_LIST_CHANGE_DETAILS, "LIST-CHANGE-DETAILS" },
1390 { DECT_NWK_S_IE_SEGMENTED_INFO, "SEGMENTED_INFO" },
1391 { DECT_NWK_S_IE_ALPHANUMERIC, "ALPHANUMERIC" },
1392 { DECT_NWK_S_IE_IWU_TO_IWU, "IWU-TO-IWU" },
1393 { DECT_NWK_S_IE_MODEL_IDENTIFIER, "MODEL-IDENTIFIER" },
1394 { DECT_NWK_S_IE_IWU_PACKET, "IWU-PACKET" },
1395 { DECT_NWK_S_IE_ESCAPE_TO_PROPRIETARY, "ESCAPE-TO-PROPRIETARY" },
1396 { DECT_NWK_S_IE_CODEC_LIST, "CODEC-LIST" },
1397 { DECT_NWK_S_IE_EVENTS_NOTIFICATION, "EVENTS-NOTIFICATION" },
1398 { DECT_NWK_S_IE_CALL_INFORMATION, "CALL-INFORMATION" },
1399 { DECT_NWK_S_IE_ESCAPE_FOR_EXTENSION, "ESCAPE-FOR-EXTENSION" },
1400 { 0, NULL((void*)0) }
1401};
1402
1403/* Section 7.7.4 */
1404static const value_string dect_nwk_s_ie_auth_type_authentication_algorithm_val[] = {
1405 { DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_DSAA, "DECT standard authentication algorithm (DSAA)" },
1406 { DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_DSAA2, "DECT standard authentication algorithm #2 (DSAA2)" },
1407 { DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_UMTS, "GSM authentication algorithm" },
1408 { DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_GSM, "UMTS authentication algorithm" },
1409 { DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_PROPRIETARY, "Escape to proprietary algorithm identifier" },
1410 { 0, NULL((void*)0) }
1411};
1412
1413static const value_string dect_nwk_s_ie_auth_type_ak_type_val[] = {
1414 { DECT_NWK_S_IE_AUTH_TYPE_AK_TYPE_USER_AK, "User authentication key" },
1415 { DECT_NWK_S_IE_AUTH_TYPE_AK_TYPE_USER_PERSONAL_ID, "User personal identity" },
1416 { DECT_NWK_S_IE_AUTH_TYPE_AK_TYPE_AUTHENTICATION_CODE, "Authentication code" },
1417 { 0, NULL((void*)0) }
1418};
1419
1420static const value_string dect_nwk_s_ie_auth_type_default_cipher_key_algorithm_val[] = {
1421 { DECT_NWK_S_IE_AUTH_TYPE_DEFAULT_CIPHER_KEY_ALGORITHM_DSC, "DSC" },
1422 { DECT_NWK_S_IE_AUTH_TYPE_DEFAULT_CIPHER_KEY_ALGORITHM_DSC2, "DSC2" },
1423 { 0, NULL((void*)0) }
1424};
1425
1426static const true_false_string dect_nwk_s_ie_auth_type_cipher_key_number_related_tfs = {
1427 "IPUI/PARK pair",
1428 "IPUI"
1429};
1430
1431/* Section 7.7.9 */
1432static const value_string dect_nwk_s_ie_calling_party_number_type_val[] = {
1433 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_UNKNOWN, "Unknown" },
1434 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_INTERNATIONAL, "International number" },
1435 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_NATIONAL, "National number" },
1436 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_NETWORK_SPECIFIC, "Network specific number" },
1437 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_SUBSCRIBER, "Subscriber number" },
1438 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_ABBREVIATED, "Abbreviated number" },
1439 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_TYPE_RESERVED, "Reserved for extension" },
1440 { 0, NULL((void*)0) }
1441};
1442
1443static const value_string dect_nwk_s_ie_calling_party_number_numbering_plan_val[] = {
1444 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_UNKNOWN, "Unknown" },
1445 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_ISDN, "ISDN/telephony plan" },
1446 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_DATA, "Data plan" },
1447 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_TCP_IP, "TCP/IP address" },
1448 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_NATIONAL, "National standard plan" },
1449 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_PRIVATE, "Private plan" },
1450 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_SIP, "SIP addressing scheme, \"From:\" field" },
1451 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_INTERNET, "Internet character format address" },
1452 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_LAN_MAC, "LAN MAC address" },
1453 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_X400, "Recommendation ITU-T X.400 address" },
1454 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_PROFILE, "Profile service specific alphanumeric identifier" },
1455 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_NUMBERING_PLAN_RESERVED, "Reserved for extension" },
1456 { 0, NULL((void*)0) }
1457};
1458
1459static const value_string dect_nwk_s_ie_calling_party_number_presentation_val[] = {
1460 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_ALLOWED, "Presentation allowed" },
1461 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_RESTRICTED, "Presentation restricted" },
1462 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_NUMBER_NOT_AVAILABLE, "Number not available" },
1463 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_RESERVED, "Reserved" },
1464 { 0, NULL((void*)0) }
1465};
1466
1467static const value_string dect_nwk_s_ie_calling_party_number_screening_val[] = {
1468 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_USER_NOT_SCREENED, "User-provided, not screened" },
1469 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_USER_VERIFIED_PASSED, "User-provided, verified and passed" },
1470 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_USER_VERIFIED_FAILED, "User-provided, verified and failed" },
1471 { DECT_NWK_S_IE_CALLING_PARTY_NUMBER_PRESENTATION_NETWORK, "Network provided" },
1472 { 0, NULL((void*)0) }
1473};
1474
1475/* Section 7.7.10 */
1476static const value_string dect_nwk_s_ie_cipher_info_algorithm_val[] = {
1477 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_DSC, "DECT Standard Cipher algorithm #1 (DSC)" },
1478 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_DSC2, "DECT Standard Cipher algorithm #2 (DSC2)" },
1479 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_NO, "GPRS ciphering not used" },
1480 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA1, "GPRS encryption algorithm GEA/1" },
1481 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA2, "GPRS encryption algorithm GEA/2" },
1482 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA3, "GPRS encryption algorithm GEA/3" },
1483 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA4, "GPRS encryption algorithm GEA/4" },
1484 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA5, "GPRS encryption algorithm GEA/5" },
1485 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA6, "GPRS encryption algorithm GEA/6" },
1486 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_GPRS_GEA7, "GPRS encryption algorithm GEA/7" },
1487 { DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_PROPRIETARY, "Escape to proprietary algorithm identifier" },
1488 { 0, NULL((void*)0) }
1489};
1490
1491static const value_string dect_nwk_s_ie_cipher_info_key_type_val[] = {
1492 { DECT_NWK_S_IE_CIPHER_INFO_KEY_TYPE_DERIVED, "Derived cipher key" },
1493 { DECT_NWK_S_IE_CIPHER_INFO_KEY_TYPE_STATIC, "Static cipher key" },
1494 { 0, NULL((void*)0) }
1495};
1496
1497/* Section 7.7.13 */
1498static const value_string dect_nwk_s_ie_duration_lock_limits_type_val[] = {
1499 { DECT_NWK_S_IE_DURATION_LOCK_LIMITS_TEMPORARY2, "Temporary user limits 2" },
1500 { DECT_NWK_S_IE_DURATION_LOCK_LIMITS_TEMPORARY, "Temporary user limits" },
1501 { DECT_NWK_S_IE_DURATION_LOCK_LIMITS_NO, "No limits" },
1502 { 0, NULL((void*)0) }
1503};
1504
1505static const value_string dect_nwk_s_ie_duration_time_limits_type_val[] = {
1506 { DECT_NWK_S_IE_DURATION_TIME_LIMITS_ERASE, "Erase (time limit zero)" },
1507 { DECT_NWK_S_IE_DURATION_TIME_LIMITS_DEFINED_1, "Defined time limit 1" },
1508 { DECT_NWK_S_IE_DURATION_TIME_LIMITS_DEFINED_2, "Defined time limit 2" },
1509 { DECT_NWK_S_IE_DURATION_TIME_LIMITS_STANDARD, "Standard time limit" },
1510 { DECT_NWK_S_IE_DURATION_TIME_LIMITS_INFINITE, "Infinite" },
1511 { 0, NULL((void*)0) }
1512};
1513
1514/* Section 7.7.18 */
1515static const value_string dect_nwk_s_ie_fixed_identity_type_val[] = {
1516 { DECT_NWK_S_IE_FIXED_IDENTITY_ARI, "Access rights identity (ARI)" },
1517 { DECT_NWK_S_IE_FIXED_IDENTITY_ARI_PLUS_RPN, "Access rights identity plus radio fixed part number (ARI + RPN)" },
1518 { DECT_NWK_S_IE_FIXED_IDENTITY_ARI_PLUS_RPN_WRS, "Access rights identity plus radio fixed part number for WRS (ARI + RPN for WRS)" },
1519 { DECT_NWK_S_IE_FIXED_IDENTITY_PARK, "Portable access rights key (PARK)" },
1520 { 0, NULL((void*)0) }
1521};
1522
1523static const value_string dect_nwk_arc_type_val[] = {
1524 { DECT_NWK_ARC_TYPE_A, "A (small residential 1..7 RFPs" },
1525 { DECT_NWK_ARC_TYPE_B, "B (LAN and multi-cell)" },
1526 { DECT_NWK_ARC_TYPE_C, "C (public access)" },
1527 { DECT_NWK_ARC_TYPE_D, "D (public with GSM/UMTS)" },
1528 { DECT_NWK_ARC_TYPE_E, "E (PP-to-PP)"},
1529 { 0, NULL((void*)0) }
1530};
1531
1532/* Section 7.7.23 */
1533static const value_string dect_nwk_s_ie_iwu_to_iwu_protocol_discriminator_type_val[] = {
1534 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_USER_SPECIFIC, "User specific" },
1535 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_OSI_HIGH_LAYER, "OSI high layer protocols" },
1536 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_X263, "ITU-T X.263" },
1537 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_LIST_ACCESS, "List Access" },
1538 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_IA5_CHARS, "IA 5 characters" },
1539 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_ULE_NON_CCM, "ULE Configuration and Control (non CCM encrypted) service channel" },
1540 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_SUOTA, "Light data service, Software Upgrade Over The Air (SUOTA)" },
1541 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_V120, "ITU-T V.120 Rate adaption" },
1542 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_Q931_MESSAGE, "ITU-T Q.931, message" },
1543 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_Q931_IE, "ITU-T Q.931, information element(s)" },
1544 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_Q931_PARTIAL, "ITU-T Q.931, partial message" },
1545 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_ULE_CCM_AUX0, "ULE CCM encrypted service channel AUX0" },
1546 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_ULE_CCM_AUX1, "ULE CCM encrypted service channel AUX1" },
1547 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_ULE_CCM_AUX2, "ULE CCM encrypted service channel AUX2" },
1548 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DTAM, "Digital Telephone Answering Machine (DTAM)" },
1549 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_GSM_MESSAGE, "GSM, message" },
1550 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_GSM_IE, "GSM, information element(s)" },
1551 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_UMTS_GPRS_IE, "UMTS/GPRS, information element(s)" },
1552 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_UMTS_GPRS_MESSAGE, "UMTS/GPRS, messages" },
1553 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_LRMS, "LRMS" },
1554 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_RLL_AP, "RLL Access Profile" },
1555 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_WRS, "WRS" },
1556 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DECT_ISDN_C_PLANE, "DECT/ISDN Intermediate System C-plane specific" },
1557 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DECT_ISDN_U_PLANE, "DECT/ISDN Intermediate System U-plane specific" },
1558 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DECT_ISDN_OPER, "DECT/ISDN Intermediate System Operation and Maintenance" },
1559 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_TERMINAL_DATA, "Terminal Data" },
1560 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_DECT_IP, "DECT access to IP Networks specific" },
1561 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_MPEG4, "MPEG-4 ER AAC-LD Configuration Description" },
1562 { DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_UNKNOWN, "Unknown" },
1563 { 0, NULL((void*)0) }
1564};
1565
1566static const value_string dect_nwk_s_ie_iwu_to_iwu_discriminator_type_val[] = {
1567 { DECT_NWK_S_IE_IWU_TO_IWU_DISCRIMINATOR_TYPE_UNSPECIFIED, "Unspecified" },
1568 { DECT_NWK_S_IE_IWU_TO_IWU_DISCRIMINATOR_TYPE_EMC, "EMC" },
1569 { 0, NULL((void*)0) }
1570};
1571
1572/* Section 7.7.25 */
1573static const value_string dect_nwk_s_ie_location_area_eli_type_val[] = {
1574 { DECT_NWK_S_IE_LOCATION_AREA_ELI_TYPE_LI_REQ_NOT_INCLUDED, "Location information is requested and not included" },
1575 { DECT_NWK_S_IE_LOCATION_AREA_ELI_TYPE_LI, "Location information" },
1576 { 0, NULL((void*)0) }
1577};
1578
1579/* Section 7.7.28 */
1580static const value_string dect_nwk_s_ie_nwk_assigned_identity_type_val[] = {
1581 { DECT_NWK_S_IE_NWK_ASSIGNED_IDENTITY_TMSI, "Temporary Mobile Subscriber Identity (TMSI, P-TMSI)" },
1582 { DECT_NWK_S_IE_NWK_ASSIGNED_IDENTITY_PROPRIETARY, "Proprietary (application specific)" },
1583 { 0, NULL((void*)0) }
1584};
1585
1586/* Section 7.7.30 */
1587static const value_string dect_nwk_s_ie_portable_identity_type_val[] = {
1588 { DECT_NWK_S_IE_PORTABLE_IDENTITY_IPUI, "International Portable User Identity (IPUI)" },
1589 { DECT_NWK_S_IE_PORTABLE_IDENTITY_IPEI, "International Portable Equipment Identity (IPEI)" },
1590 { DECT_NWK_S_IE_PORTABLE_IDENTITY_TPUI, "Temporary Portable User Identity (TPUI)" },
1591 { 0, NULL((void*)0) }
1592};
1593
1594static const value_string dect_nwk_s_ie_portable_identity_tpui_assignment_type_val[] = {
1595 { DECT_NWK_S_IE_PORTABLE_IDENTITY_TPUI_ASSIGNMENT_TYPE_TPUI, "TPUI" },
1596 { DECT_NWK_S_IE_PORTABLE_IDENTITY_TPUI_ASSIGNMENT_TYPE_TPUI_WITH_NUMBER_ASSIGNED, "TPUI with number assigned" },
1597 { 0, NULL((void*)0) }
1598};
1599
1600/* Section 6.2 in ETSI EN 300 175-6 */
1601static const value_string dect_nwk_ipui_type_val[] = {
1602 { DECT_NWK_IPUI_TYPE_N, "N (residential/default)" },
1603 { DECT_NWK_IPUI_TYPE_O, "O (private)" },
1604 { DECT_NWK_IPUI_TYPE_P, "P (public/public access service)" },
1605 { DECT_NWK_IPUI_TYPE_Q, "Q (public/general)" },
1606 { DECT_NWK_IPUI_TYPE_R, "R (public/IMSI)" },
1607 { DECT_NWK_IPUI_TYPE_S, "S (PSTN/ISDN)" },
1608 { DECT_NWK_IPUI_TYPE_T, "T (private extended)" },
1609 { DECT_NWK_IPUI_TYPE_U, "U (public/general)" },
1610 { 0, NULL((void*)0) }
1611};
1612
1613/* Section 7.7.41 */
1614static const value_string dect_nwk_s_ie_terminal_capability_tone_capabilites_val[] = {
1615 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_NA, "Not applicable" },
1616 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_NO_TONE_CAPABILITY, "No tone capability" },
1617 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_DIAL_TONE_ONLY, "Dial tone only" },
1618 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_E182_TONES_SUPPORTED, "Recommendation ITU-T E.182 tones supported" },
1619 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_TONE_CAPABILITY_COMPLETE_DECT_TONES_SUPPORTED, "Complete DECT tones supported" },
1620 { 0, NULL((void*)0) }
1621};
1622
1623static const value_string dect_nwk_s_ie_terminal_capability_display_capabilities_val[] = {
1624 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_NA, "Not applicable" },
1625 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_NO_DISPLAY, "No Display" },
1626 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_NUMERIC, "Numeric" },
1627 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_NUMERIC_PLUS, "Numeric-plus" },
1628 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_ALPHANUMERIC, "Alphanumeric" },
1629 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_DISPLAY_CAPABILITY_FULL_DISPLAY, "Full display" },
1630 { 0, NULL((void*)0) }
1631};
1632
1633static const value_string dect_nwk_s_ie_terminal_capability_echo_parameters_val[] = {
1634 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_ECHO_PARAMETER_NA, "Not applicable" },
1635 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_ECHO_PARAMETER_MINIMUM_TCLW, "Minimum TCLw" },
1636 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_ECHO_PARAMETER_TCLW_FULL, "TCLw > 46 dB (Full TCLw)" },
1637 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_ECHO_PARAMETER_TCLW_VOIP_COMPATIBLE, "TCLw > 55 dB (VoIP compatible TCLw)" },
1638 { 0, NULL((void*)0) }
1639};
1640
1641static const value_string dect_nwk_s_ie_terminal_capability_n_rej_capabilities_val[] = {
1642 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_N_REJ_NA, "Not applicable" },
1643 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_N_REJ_NO, "No noise rejection" },
1644 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_N_REJ_PROVIDED, "Noise rejection" },
1645 { 0, NULL((void*)0) }
1646};
1647
1648static const value_string dect_nwk_s_ie_terminal_capability_a_vol_capabilities_val[] = {
1649 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_A_VOL_NA, "Not applicable" },
1650 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_A_VOL_NO_PP_A_VOL, "No PP adaptive volume control" },
1651 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_A_VOL_PP_A_VOL_USED, "PP adaptive volume control used" },
1652 { 0, NULL((void*)0) }
1653};
1654
1655static const value_string dect_nwk_s_ie_terminal_capability_scrolling_behaviour_type_val[] = {
1656 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_SCROLLING_BEHAVIOUR_NOT_SPECIFIED, "Not specified" },
1657 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_SCROLLING_BEHAVIOUR_TYPE_1, "Type 1"},
1658 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_SCROLLING_BEHAVIOUR_TYPE_2, "Type 2"},
1659 { 0, NULL((void*)0) }
1660};
1661
1662static const value_string dect_nwk_s_ie_terminal_capability_profile_indicator_8_packet_data_categories_val[] = {
1663 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_NO, "No packet data supported or non categorized system" },
1664 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_1, "Cat 1 (low-end data devices)" },
1665 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_2, "Cat 2 (mid-end data devices)" },
1666 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_3, "Cat 3 (high-end data devices)" },
1667 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_4_8PSK, "Cat 4 (high-level modulation up to 8PSK)" },
1668 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CAT_4_64QAM, "Cat 4 (high-level modulation up to 64QAM" },
1669 { 0, NULL((void*)0) }
1670};
1671
1672static const value_string dect_nwk_s_ie_terminal_capability_profile_indicator_9_dect_ule_versions_val[] = {
1673 { DECT_NWK_S_IE_TERMINA_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE_1_V111, "Phase 1 version v1.1.1" },
1674 { DECT_NWK_S_IE_TERMINA_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE_1_V121, "Phase 1 version v1.2.1" },
1675 { DECT_NWK_S_IE_TERMINA_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE_2, "Phase 2" },
1676 { DECT_NWK_S_IE_TERMINA_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE_3, "Phase 3" },
1677 { 0, NULL((void*)0) }
1678};
1679
1680static const value_string dect_nwk_s_ie_terminal_capability_control_codes_val[] = {
1681 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_NOT_SPECIFIED, "Not specified" },
1682 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_0CH, "0CH (clear display)" },
1683 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_CODING_001, "Coding 001 plus 0x08 to 0x0B and 0x0D" },
1684 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_CODING_010, "Coding 010 plus 0x02, 0x03, 0x06, 0x07, 0x19, 0x1A" },
1685 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_CONTROL_CODES_CODING_011, "Coding 011 plus 0x0E, 0x0F" },
1686 { 0, NULL((void*)0) }
1687};
1688
1689static const value_string dect_nwk_s_ie_terminal_capability_blind_slot_indication_val[] = {
1690 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_BLIND_SLOT_INDICATION_NO, "No blind slots" },
1691 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_BLIND_SLOT_INDICATION_NOT_POSSIBLE_ADJACENT, "Setup is not possible on both slots adjacent to an active slot" },
1692 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_BLIND_SLOT_INDICATION_NOT_POSSIBLE_EVERY_SECOND, "Setup is not possible on every second slot" },
1693 { DECT_NWK_S_IE_TERMINAL_CAPABILITY_BLIND_SLOT_INDICATION_LIMITATIONS_IN_FOLLOWING_BITS, "Limitations indicated in the following bits" },
1694 { 0, NULL((void*)0) }
1695};
1696
1697/* Section 7.7.45 */
1698static const value_string dect_nwk_s_ie_escape_to_proprietary_discriminator_type_val[] = {
1699 { DECT_NWK_S_IE_ESCAPE_TO_PROPRIETARY_DISCRIMINATOR_TYPE_UNSPECIFIED, "Unspecified" },
1700 { DECT_NWK_S_IE_ESCAPE_TO_PROPRIETARY_DISCRIMINATOR_TYPE_EMC, "EMC" },
1701 { 0, NULL((void*)0) }
1702};
1703
1704static const true_false_string tfs_last_more = {
1705 "Last",
1706 "More"
1707};
1708
1709/* Section 7.7.54 */
1710static const value_string dect_nwk_s_ie_codec_list_negotiation_indicator_type_val[] = {
1711 { DECT_NWK_S_IE_CODEC_LIST_NEGOTIATION_INDICATOR_NOT_POSSIBLE, "Negotiation not possible" },
1712 { DECT_NWK_S_IE_CODEC_LIST_NEGOTIATION_INDICATOR_CODEC_NEGOTIATION, "Codec negotiation" },
1713 { 0, NULL((void*)0) }
1714};
1715
1716static const value_string dect_nwk_s_ie_codec_list_codec_identifier_type_val[] = {
1717 { DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_USER_32, "user specific, 32 kbit/s" },
1718 { DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G726_32, "G.726 ADPCM, 32 kbit/s" },
1719 { DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G722_64, "G.722, 64 kbit/s" },
1720 { DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G711_ALAW_64, "G.711 alaw, 64 kbit/s" },
1721 { DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G711_ULAW_64, "G.711 ulaw, 64 kbit/s" },
1722 { DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_G729_1_32, "G.729.1, 32 kbit/s" },
1723 { DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_MPEG4_32, "MPEG-4 ER AAC-LD, 32 kbit/s" },
1724 { DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_MPEG4_64, "MPEG-4 ER AAC-LD, 64 kbit/s" },
1725 { DECT_NWK_S_IE_CODEC_LIST_CODEC_IDENTIFIER_USER_64, "user specific, 64 kbit/s" },
1726 { 0, NULL((void*)0) }
1727};
1728
1729static const value_string dect_nwk_s_ie_codec_list_mac_and_dlc_service_type_val[] = {
1730 { DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU1_INA, "DLC service LU1, MAC service INA" },
1731 { DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU1_INB, "DLC service LU1, MAC service INB" },
1732 { DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU1_IPM, "DLC service LU1, MAC service IPM" },
1733 { DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU1_IPQ, "DLC service LU1, MAC service IPQ" },
1734 { DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU7_INB, "DLC service LU7, MAC service INB" },
1735 { DECT_NWK_S_IE_CODEC_LIST_MAC_AND_DLC_SERVICE_LU12_INB, "DLC service LU12, MAC service INB" },
1736 { 0, NULL((void*)0) }
1737};
1738
1739static const value_string dect_nwk_s_ie_codec_list_c_plane_routing_type_val[] = {
1740 { DECT_NWK_S_IE_CODEC_LIST_C_PLANE_ROUTING_CS_ONLY, "CS only" },
1741 { DECT_NWK_S_IE_CODEC_LIST_C_PLANE_ROUTING_CS_PREFERRED_CF_ACCEPTED, "CS preferred / CF accepted" },
1742 { DECT_NWK_S_IE_CODEC_LIST_C_PLANE_ROUTING_CF_PREFERRED_CS_ACCEPTED, "CF preferred / CS accepted" },
1743 { DECT_NWK_S_IE_CODEC_LIST_C_PLANE_ROUTING_CF_ONLY, "CF only" },
1744 { 0, NULL((void*)0) }
1745};
1746
1747static const value_string dect_nwk_s_ie_codec_list_slot_size_type_val[] = {
1748 { DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_HALF, "Half slot; j = 0" },
1749 { DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_LONG_640, "Long slot; j = 640" },
1750 { DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_LONG_672, "Long slot; j = 672" },
1751 { DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_FULL, "Full slot" },
1752 { DECT_NWK_S_IE_CODEC_LIST_SLOT_SIZE_DOUBLE, "Double slot" },
1753 { 0, NULL((void*)0) }
1754};
1755
1756/* Annex D.2.2 */
1757static const value_string dect_charset_control_codes_val[] = {
1758 { DECT_CHARSET_CANCEL_DTMF_TONE, "Null/cancel DTMF tone" },
1759 { DECT_CHARSET_RETURN_HOME, "Return home" },
1760 { DECT_CHARSET_RETURN_END, "Return end" },
1761 { DECT_CHARSET_DIALLING_PAUSE, "Dialling pause" },
1762 { DECT_CHARSET_MOVE_FORWARD_TO_NEXT_COLUMN_TAB_POSITION, "Move forward to next column tab position" },
1763 { DECT_CHARSET_MOVE_BACKWARD_TO_NEXT_COLUMN_TAB_POSITION, "Move backward to next column tab position" },
1764 { DECT_CHARSET_MOVE_BACKWARD_ONE_COLUMN, "Move backward one column" },
1765 { DECT_CHARSET_MOVE_FORWARD_ONE_COLUMN, "Move forward one column" },
1766 { DECT_CHARSET_MOVE_DOWN_ONE_ROW, "Move down one row" },
1767 { DECT_CHARSET_MOVE_UP_ONE_ROW, "Move up one row" },
1768 { DECT_CHARSET_CLEAR_DISPLAY, "Clear display (and return home)" },
1769 { DECT_CHARSET_RETURN_TO_START_OF_CURRENT_ROW, "Return (to start of current row)" },
1770 { DECT_CHARSET_FLASH_OFF, "Flash off (see note 2)" },
1771 { DECT_CHARSET_FLASH_ON, "Flash on (see note 2)" },
1772 { DECT_CHARSET_XON, "XON (resume transmission)" },
1773 { DECT_CHARSET_GO_TO_PULSE_DIALLING, "Go to pulse dialling" },
1774 { DECT_CHARSET_XOFF, "XOFF (stop transmission)" },
1775 { DECT_CHARSET_GO_TO_DTMF_DIALLING_DEFINED_TONE_LENGTH, "Go to DTMF dialling; defined tone length" },
1776 { DECT_CHARSET_REGISTER_RECALL, "Register recall" },
1777 { DECT_CHARSET_GO_TO_DTMF_DIALLING_INFINITE_TONE_LENGTH, "Go to DTMF dialling; infinite tone length" },
1778 { DECT_CHARSET_INTERNAL_CALL, "Internal call" },
1779 { DECT_CHARSET_SERVICE_CALL, "Service call" },
1780 { DECT_CHARSET_CLEAR_TO_END_OF_DISPLAY, "Clear to end of display" },
1781 { DECT_CHARSET_CLEAR_TO_END_OF_LINE, "Clear to end of line" },
1782 { DECT_CHARSET_ESC, "ESC. ESCape in the IA5 sense" },
1783 { DECT_CHARSET_SUPPLEMENTARY_SERVICE, "Supplementary service" },
1784 { 0, NULL((void*)0) }
1785};
1786
1787/* TOOD: value_string for other protocols */
1788
1789#define DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_MASK0x80 0x80
1790#define DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_SHIFT7 7
1791
1792#define DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_MASK0x7F 0x7F
1793
1794#define DECT_NWK_S_IE_FIXED_LENGTH_MASK0x80 0x80
1795#define DECT_NWK_S_IE_FIXED_LENGTH_SHIFT7 7
1796
1797#define DECT_NWK_S_IE_FL_TYPE_MASK0x70 0x70
1798#define DECT_NWK_S_IE_FL_TYPE_SHIFT4 4
1799#define DECT_NWK_S_IE_FL_DOUBLE_OCTET_TYPE_MASK0x0F 0x0F
1800
1801#define DECT_NWK_S_IE_AUTH_TYPE_DEF_MASK0x40 0x40
1802#define DECT_NWK_S_IE_AUTH_TYPE_DEF_SHIFT6 6
1803
1804#define DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_MASK0x3F 0x3F
1805#define DECT_NWK_S_IE_IWU_TO_IWU_DISCRIMINATOR_TYPE_MASK0x7F 0x7F
1806
1807#define DECT_NWK_S_IE_LOCATION_AREA_LI_EXTENDED_INCLUDED_MASK0x80 0x80
1808#define DECT_NWK_S_IE_LOCATION_AREA_LI_EXTENDED_INCLUDED_SHIFT7 7
1809#define DECT_NWK_S_IE_LOCATION_AREA_ELI_TYPE_MASK0xF0 0xF0
1810#define DECT_NWK_S_IE_LOCATION_AREA_ELI_TYPE_SHIFT4 4
1811
1812#define DECT_NWK_S_IE_TERMINAL_CAPABILITY_STORED_DISPLAY_CHARACTERS_MASK0x7F 0x7F
1813
1814#define DECT_NWK_S_IE_ESCAPE_TO_PROPRIETARY_DISCRIMINATOR_TYPE_MASK0x7F 0x7F
1815
1816#define DECT_NWK_S_IE_CODEC_LIST_LAST_CODEC_MASK0x80 0x80
1817#define DECT_NWK_S_IE_CODEC_LIST_LAST_CODEC_SHIFT7 7
1818
1819/*********************************************************************************
1820 * DECT dissector code
1821 *********************************************************************************/
1822
1823static proto_item* add_dect_nwk_dect_charset_tree_item(proto_tree *tree, packet_info *pinfo, int hfindex, tvbuff_t *tvb, int start, int length)
1824{
1825 const char *keypad_string, *current_char_ptr;
1826 gunichar current_char;
1827 wmem_strbuf_t *keypad_information;
1828
1829 keypad_string = (char*)tvb_get_string_enc(pinfo->pool, tvb, start, length, ENC_DECT_STANDARD_8BITS0x00000056);
1830 current_char_ptr = keypad_string;
1831
1832 keypad_information = wmem_strbuf_new_sized(pinfo->pool, length);
1833 for (int current_char_position = 0; current_char_position < length; current_char_position++ ) {
1834 current_char = g_utf8_get_char(current_char_ptr);
1835 if ( current_char < 0x20 ) {
1836 wmem_strbuf_append_printf(keypad_information, "<<%s>>", val_to_str(pinfo->pool, current_char, dect_charset_control_codes_val, "0x%02x"));
1837 } else {
1838 wmem_strbuf_append_unichar(keypad_information, current_char);
1839 }
1840 current_char_ptr = g_utf8_next_char(current_char_ptr)((current_char_ptr) + g_utf8_skip[*(const guchar *)(current_char_ptr
)])
;
1841 }
1842
1843 return proto_tree_add_string_format_value(tree, hfindex, tvb, start, length, keypad_string ,"%s", wmem_strbuf_get_str(keypad_information));
1844}
1845
1846static int dissect_dect_nwk_s_ie_auth_type(tvbuff_t *tvb, unsigned offset, proto_tree *tree, void _U___attribute__((unused)) *data)
1847{
1848 uint8_t authentication_algorithm;
1849 bool_Bool def;
1850
1851 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_auth_type_authentication_algorithm, tvb, offset, 1, ENC_NA0x00000000, &authentication_algorithm);
1852 offset++;
1853 if ( authentication_algorithm == DECT_NWK_S_IE_AUTH_TYPE_AUTHENTICATION_ALGORITHM_PROPRIETARY ) {
1854 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_proprietary_algorithm, tvb, offset, 1, ENC_NA0x00000000);
1855 offset++;
1856 }
1857 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_ak_type, tvb, offset, 1, ENC_NA0x00000000);
1858 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_ak_number, tvb, offset, 1, ENC_NA0x00000000);
1859 offset++;
1860 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_inc, tvb, offset, 1, ENC_NA0x00000000);
1861 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_def, tvb, offset, 1, ENC_NA0x00000000);
1862 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_txc, tvb, offset, 1, ENC_NA0x00000000);
1863 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_upc, tvb, offset, 1, ENC_NA0x00000000);
1864 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_cipher_key_number, tvb, offset, 1, ENC_NA0x00000000);
1865 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_cipher_key_number_related, tvb, offset, 1, ENC_NA0x00000000);
1866 def = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_AUTH_TYPE_DEF_MASK0x40 ) >> DECT_NWK_S_IE_AUTH_TYPE_DEF_SHIFT6;
1867 offset++;
1868 if( def ) {
1869 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_default_cipher_key_index, tvb, offset, 2, ENC_BIG_ENDIAN0x00000000);
1870 offset += 2;
1871 proto_tree_add_item(tree, hf_dect_nwk_s_ie_auth_type_default_cipher_key_algorithm, tvb, offset, 1, ENC_NA0x00000000);
1872 offset++;
1873 }
1874 return offset;
1875}
1876
1877static int dissect_dect_nwk_s_ie_calling_party_number(tvbuff_t *tvb, unsigned offset, uint8_t ie_length, proto_tree *tree, void _U___attribute__((unused)) *data)
1878{
1879 bool_Bool octet_group_extension;
1880 uint8_t address_length;
1881 proto_tree_add_item(tree, hf_dect_nwk_s_ie_octet_group_extension, tvb, offset, 1, ENC_NA0x00000000);
1882 proto_tree_add_item(tree, hf_dect_nwk_s_ie_calling_party_number_type, tvb, offset, 1, ENC_NA0x00000000);
1883 proto_tree_add_item(tree, hf_dect_nwk_s_ie_calling_party_number_numbering_plan, tvb, offset, 1, ENC_NA0x00000000);
1884 octet_group_extension = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_MASK0x80 ) >> DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_SHIFT7;
1885 offset++;
1886 if ( !octet_group_extension ) {
1887 proto_tree_add_item(tree, hf_dect_nwk_s_ie_octet_group_extension, tvb, offset, 1, ENC_NA0x00000000);
1888 proto_tree_add_item(tree, hf_dect_nwk_s_ie_calling_party_number_presentation, tvb, offset, 1, ENC_NA0x00000000);
1889 proto_tree_add_item(tree, hf_dect_nwk_s_ie_calling_party_number_screening, tvb, offset, 1, ENC_NA0x00000000);
1890 offset++;
1891 address_length = ie_length - 2;
1892 } else {
1893 address_length = ie_length - 1;
1894 }
1895 proto_tree_add_item(tree, hf_dect_nwk_s_ie_calling_party_number_address, tvb, offset, address_length, ENC_DECT_STANDARD_8BITS0x00000056);
1896 return offset + address_length;
1897}
1898
1899static int dissect_dect_nwk_s_ie_cipher_info(tvbuff_t *tvb, unsigned offset, proto_tree *tree, void _U___attribute__((unused)) *data)
1900{
1901 uint8_t algorithm;
1902 proto_tree_add_item(tree, hf_dect_nwk_s_ie_cipher_info_yn, tvb, offset, 1, ENC_NA0x00000000);
1903 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_cipher_info_algorithm, tvb, offset, 1, ENC_NA0x00000000, &algorithm);
1904 offset++;
1905 if (algorithm == DECT_NWK_S_IE_CIPHER_INFO_ALGORITHM_PROPRIETARY) {
1906 proto_tree_add_item(tree, hf_dect_nwk_s_ie_cipher_info_proprietary_algorithm, tvb, offset, 1, ENC_NA0x00000000);
1907 offset++;
1908 }
1909 proto_tree_add_item(tree, hf_dect_nwk_s_ie_cipher_info_key_type, tvb, offset, 1, ENC_NA0x00000000);
1910 proto_tree_add_item(tree, hf_dect_nwk_s_ie_cipher_info_key_number, tvb, offset, 1, ENC_NA0x00000000);
1911 offset++;
1912 return offset;
1913}
1914
1915static int dissect_dect_nwk_s_ie_duration(tvbuff_t *tvb, unsigned offset, uint8_t _U___attribute__((unused)) ie_length, packet_info _U___attribute__((unused)) *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data) {
1916 bool_Bool octet_group_extension;
1917
1918 proto_tree_add_item(tree, hf_dect_nwk_s_ie_octet_group_extension, tvb, offset, 1, ENC_NA0x00000000);
1919 proto_tree_add_item(tree, hf_dect_nwk_s_ie_duration_lock_limits, tvb, offset, 1, ENC_NA0x00000000);
1920 proto_tree_add_item(tree, hf_dect_nwk_s_ie_duration_time_limits, tvb, offset, 1, ENC_NA0x00000000);
1921 octet_group_extension = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_MASK0x80 ) >> DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_SHIFT7;
1922 offset++;
1923
1924 if ( !octet_group_extension ) {
1925 /* Octet 3a does not have an group extension indicator, it is solely defined by the one in octet 3 */
1926 proto_tree_add_item(tree, hf_dect_nwk_s_ie_duration_time_duration, tvb, offset, 1, ENC_NA0x00000000);
1927 offset++;
1928 }
1929
1930 return offset;
1931}
1932
1933/*
1934 * Add an item of no_of_bits bits, a width taken from the packet. A width
1935 * of 0 or wider than the field is not valid.
1936 */
1937static void dect_nwk_add_bits_item(proto_tree *tree, int hfindex, tvbuff_t *tvb, unsigned bit_offset,
1938 unsigned no_of_bits, unsigned max_bits, const unsigned encoding)
1939{
1940 if (no_of_bits == 0 || no_of_bits > max_bits)
1941 THROW(ReportedBoundsError)except_throw(1, (3), ((void*)0));
1942 proto_tree_add_bits_item(tree, hfindex, tvb, bit_offset, no_of_bits, encoding);
1943}
1944
1945static int dissect_dect_nwk_s_ie_fixed_identity(tvbuff_t *tvb, unsigned offset, proto_tree *tree, void _U___attribute__((unused)) *data)
1946{
1947 uint8_t value_length;
1948 unsigned bit_offset, no_of_bits;
1949 proto_tree_add_item(tree, hf_dect_nwk_s_ie_fixed_identity_type, tvb, offset, 1, ENC_NA0x00000000);
1950 offset++;
1951 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_fixed_identity_value_length, tvb, offset, 1, ENC_NA0x00000000, &value_length);
1952 offset++;
1953 proto_tree_add_item(tree, hf_dect_nwk_s_ie_fixed_identity_arc, tvb, offset, 1, ENC_NA0x00000000);
1954 bit_offset = ( offset * 8 ) + 4;
1955 no_of_bits = value_length - 4;
1956 dect_nwk_add_bits_item(tree, hf_dect_nwk_s_ie_fixed_identity_ard, tvb, bit_offset, no_of_bits, 64, ENC_BIG_ENDIAN0x00000000);
1957 bit_offset += no_of_bits;
1958 offset += value_length / 8;
1959 if (value_length % 8) {
1960 no_of_bits = 8 - (value_length % 8);
1961 proto_tree_add_bits_item(tree, hf_dect_nwk_s_ie_fixed_identity_padding, tvb, bit_offset, no_of_bits, ENC_NA0x00000000);
1962 offset++;
1963 }
1964 return offset;
1965}
1966
1967static int dissect_dect_nwk_s_ie_iwu_to_iwu(tvbuff_t *tvb, unsigned offset, uint8_t ie_length, packet_info _U___attribute__((unused)) *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data) {
1968 uint8_t protocol_discriminator, discriminator_type, remaining_length;
1969
1970 proto_tree_add_item(tree, hf_dect_nwk_s_ie_iwu_to_iwu_sr, tvb, offset, 1, ENC_NA0x00000000);
1971 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_iwu_to_iwu_protocol_discriminator, tvb, offset, 1, ENC_NA0x00000000, &protocol_discriminator);
1972 offset++;
1973 remaining_length = ie_length -1;
1974
1975 proto_tree_add_item(tree, hf_dect_nwk_s_ie_iwu_to_iwu_information, tvb, offset, remaining_length, ENC_NA0x00000000);
1976 if ( protocol_discriminator == DECT_NWK_S_IE_IWU_TO_IWU_PROTOCOL_DISCRIMINATOR_USER_SPECIFIC ) {
1977 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_iwu_to_iwu_discriminator_type, tvb, offset, 1, ENC_NA0x00000000, &discriminator_type);
1978 offset++;
1979 remaining_length--;
1980
1981 proto_tree_add_item(tree, hf_dect_nwk_s_ie_iwu_to_iwu_user_specific_contents, tvb, offset, remaining_length, ENC_NA0x00000000);
1982 if ( discriminator_type == DECT_NWK_S_IE_IWU_TO_IWU_DISCRIMINATOR_TYPE_EMC ) {
1983 proto_tree_add_item(tree, hf_dect_nwk_s_ie_iwu_to_iwu_emc_discriminator, tvb, offset, 2, ENC_BIG_ENDIAN0x00000000);
1984 offset += 2;
1985 remaining_length -= 2;
1986 proto_tree_add_item(tree, hf_dect_nwk_s_ie_iwu_to_iwu_proprietary_contents, tvb, offset, remaining_length, ENC_NA0x00000000);
1987 }
1988 }
1989
1990 return offset + remaining_length;
1991}
1992
1993static int dissect_dect_nwk_s_ie_location_area(tvbuff_t *tvb, unsigned offset, packet_info *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
1994{
1995 uint8_t eli_type;
1996 bool_Bool li_extended_included;
1997 proto_tree *li_type_tree;
1998 proto_item *li_type_item;
1999
2000 li_type_item = proto_tree_add_item(tree, hf_dect_nwk_s_ie_location_area_li_type, tvb, offset, 1, ENC_NA0x00000000);
2001 li_type_tree = proto_item_add_subtree(li_type_item, ett_dect_nwk_s_ie_location_area_li_type);
2002 proto_tree_add_item(li_type_tree, hf_dect_nwk_s_ie_location_area_li_extended_included, tvb, offset, 1, ENC_NA0x00000000);
2003 proto_tree_add_item(li_type_tree, hf_dect_nwk_s_ie_location_area_la_level_included, tvb, offset, 1, ENC_NA0x00000000);
2004 proto_tree_add_item(tree, hf_dect_nwk_s_ie_location_area_la_level, tvb, offset, 1, ENC_NA0x00000000);
2005 li_extended_included = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_LOCATION_AREA_LI_EXTENDED_INCLUDED_MASK0x80 ) >> DECT_NWK_S_IE_LOCATION_AREA_LI_EXTENDED_INCLUDED_SHIFT7;
2006 offset++;
2007
2008 if ( li_extended_included ) {
2009 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_location_area_eli_type, tvb, offset, 1, ENC_NA0x00000000, &eli_type);
2010 offset++;
2011 if ( eli_type == DECT_NWK_S_IE_LOCATION_AREA_ELI_TYPE_LI ) {
2012 offset = dissect_e212_mcc_mnc(tvb, pinfo, tree, offset, E212_NONE, false0);
2013 proto_tree_add_item(tree, hf_dect_nwk_s_ie_location_area_lac, tvb, offset, 2, ENC_NA0x00000000);
2014 offset += 2;
2015 proto_tree_add_item(tree, hf_dect_nwk_s_ie_location_area_ci, tvb, offset, 2, ENC_NA0x00000000);
2016 offset += 2;
2017 }
2018 }
2019 return offset;
2020}
2021
2022static int dissect_dect_nwk_s_ie_nwk_assigned_identity(tvbuff_t *tvb, unsigned offset, proto_tree *tree, void _U___attribute__((unused)) *data)
2023{
2024 uint8_t value_length;
2025 unsigned bit_offset, no_of_bits;
2026 proto_tree_add_item(tree, hf_dect_nwk_s_ie_nwk_assigned_identity_type, tvb, offset, 1, ENC_NA0x00000000);
2027 offset++;
2028 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_nwk_assigned_identity_value_length, tvb, offset, 1, ENC_NA0x00000000, &value_length);
2029 offset++;
2030 bit_offset = offset * 8;
2031 dect_nwk_add_bits_item(tree, hf_dect_nwk_s_ie_nwk_assigned_identity_value, tvb, bit_offset, value_length, 127, ENC_NA0x00000000);
2032 bit_offset += value_length;
2033 offset += value_length / 8;
2034 if (value_length % 8) {
2035 no_of_bits = 8 - (value_length % 8);
2036 proto_tree_add_bits_item(tree, hf_dect_nwk_s_ie_nwk_assigned_identity_padding, tvb, bit_offset, no_of_bits, ENC_NA0x00000000);
2037 offset++;
2038 }
2039 return offset;
2040}
2041
2042static int dissect_dect_nwk_s_ie_multi_display(tvbuff_t *tvb, unsigned offset, uint8_t ie_length, packet_info _U___attribute__((unused)) *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2043{
2044 add_dect_nwk_dect_charset_tree_item(tree, pinfo, hf_dect_nwk_s_ie_multi_display_information, tvb, offset, ie_length);
2045 offset += ie_length;
2046
2047 return offset;
2048}
2049
2050static int dissect_dect_nwk_s_ie_multi_keypad(tvbuff_t *tvb, unsigned offset, uint8_t ie_length, packet_info _U___attribute__((unused)) *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2051{
2052 add_dect_nwk_dect_charset_tree_item(tree, pinfo, hf_dect_nwk_s_ie_multi_keypad_information, tvb, offset, ie_length);
2053 offset += ie_length;
2054
2055 return offset;
2056}
2057
2058static int dissect_dect_nwk_s_ie_portable_identity(tvbuff_t *tvb, unsigned offset, proto_tree *tree, void _U___attribute__((unused)) *data)
2059{
2060 uint8_t value_length, identity_type, ipui_type;
2061 unsigned bit_offset, no_of_bits, overflow_bits_in_last_byte, no_of_bytes;
2062 bool_Bool bcd_last_byte_odd;
2063 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_portable_identity_type, tvb, offset, 1, ENC_NA0x00000000, &identity_type);
2064 offset++;
2065 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_portable_identity_value_length, tvb, offset, 1, ENC_NA0x00000000, &value_length);
2066 overflow_bits_in_last_byte = value_length % 8;
2067 if (overflow_bits_in_last_byte) {
2068 no_of_bytes = value_length / 8 + 1;
2069 bcd_last_byte_odd = true1;
2070 } else {
2071 no_of_bytes = value_length / 8;
2072 bcd_last_byte_odd = false0;
2073 }
2074 offset++;
2075 bit_offset = ( offset * 8 ) + 4;
2076 switch(identity_type) {
2077 case DECT_NWK_S_IE_PORTABLE_IDENTITY_IPUI:
2078 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_portable_identity_put, tvb, offset, 1, ENC_NA0x00000000, &ipui_type);
2079 no_of_bits = value_length - 4;
2080 switch(ipui_type) {
2081 case DECT_NWK_IPUI_TYPE_N:
2082 dect_nwk_add_bits_item(tree, hf_dect_nwk_s_ie_portable_identity_ipei, tvb, bit_offset, no_of_bits, 64, ENC_BIG_ENDIAN0x00000000);
2083 break;
2084 case DECT_NWK_IPUI_TYPE_O:
2085 dect_nwk_add_bits_item(tree, hf_dect_nwk_s_ie_portable_identity_ipui_o_number, tvb, bit_offset, no_of_bits, 64, ENC_BIG_ENDIAN0x00000000);
2086 break;
2087 case DECT_NWK_IPUI_TYPE_P:
2088 proto_tree_add_bits_item(tree, hf_dect_nwk_s_ie_portable_identity_ipui_p_poc, tvb, bit_offset, 16, ENC_BIG_ENDIAN0x00000000);
2089 dect_nwk_add_bits_item(tree, hf_dect_nwk_s_ie_portable_identity_ipui_p_acc, tvb, bit_offset + 16, no_of_bits - 16, 127, ENC_BIG_ENDIAN0x00000000);
2090 break;
2091 case DECT_NWK_IPUI_TYPE_Q:
2092 proto_tree_add_item(tree, hf_dect_nwk_s_ie_portable_identity_ipui_q_bacn, tvb, offset, no_of_bytes,
2093 ENC_BCD_DIGITS_0_90x00000044 | ENC_BIG_ENDIAN0x00000000 | ENC_BCD_SKIP_FIRST0x00020000 | (bcd_last_byte_odd ? ENC_BCD_ODD_NUM_DIG0x00010000 : 0));
2094 break;
2095 case DECT_NWK_IPUI_TYPE_R:
2096 proto_tree_add_item(tree, hf_dect_nwk_s_ie_portable_identity_ipui_r_imsi, tvb, offset, no_of_bytes,
2097 ENC_BCD_DIGITS_0_90x00000044 | ENC_BIG_ENDIAN0x00000000 | ENC_BCD_SKIP_FIRST0x00020000 | (bcd_last_byte_odd ? ENC_BCD_ODD_NUM_DIG0x00010000 : 0));
2098 break;
2099 case DECT_NWK_IPUI_TYPE_S:
2100 proto_tree_add_item(tree, hf_dect_nwk_s_ie_portable_identity_ipui_s_number, tvb, offset, no_of_bytes,
2101 ENC_BCD_DIGITS_0_90x00000044 | ENC_BIG_ENDIAN0x00000000 | ENC_BCD_SKIP_FIRST0x00020000 | (bcd_last_byte_odd ? ENC_BCD_ODD_NUM_DIG0x00010000 : 0));
2102 break;
2103 case DECT_NWK_IPUI_TYPE_T:
2104 proto_tree_add_bits_item(tree, hf_dect_nwk_s_ie_portable_identity_ipui_t_eic, tvb, bit_offset, 16, ENC_BIG_ENDIAN0x00000000);
2105 proto_tree_add_item(tree, hf_dect_nwk_s_ie_portable_identity_ipui_t_number, tvb, offset + 2, no_of_bytes - 2,
2106 ENC_BCD_DIGITS_0_90x00000044 | ENC_BIG_ENDIAN0x00000000 | ENC_BCD_SKIP_FIRST0x00020000 | (bcd_last_byte_odd ? ENC_BCD_ODD_NUM_DIG0x00010000 : 0));
2107 break;
2108 case DECT_NWK_IPUI_TYPE_U:
2109 proto_tree_add_item(tree, hf_dect_nwk_s_ie_portable_identity_ipui_u_cacn, tvb, offset, no_of_bytes,
2110 ENC_BCD_DIGITS_0_90x00000044 | ENC_BIG_ENDIAN0x00000000 | ENC_BCD_SKIP_FIRST0x00020000 | (bcd_last_byte_odd ? ENC_BCD_ODD_NUM_DIG0x00010000 : 0));
2111 break;
2112 }
2113
2114 bit_offset += no_of_bits;
2115 offset += value_length / 8;
2116 if (overflow_bits_in_last_byte) {
2117 no_of_bits = 8 - overflow_bits_in_last_byte;
2118 proto_tree_add_bits_item(tree, hf_dect_nwk_s_ie_portable_identity_padding, tvb, bit_offset, no_of_bits, ENC_NA0x00000000);
2119 offset++;
2120 }
2121 break;
2122 case DECT_NWK_S_IE_PORTABLE_IDENTITY_IPEI:
2123 no_of_bits = value_length - 4;
2124 dect_nwk_add_bits_item(tree, hf_dect_nwk_s_ie_portable_identity_ipei, tvb, bit_offset, no_of_bits, 64, ENC_BIG_ENDIAN0x00000000);
2125 offset += 5;
2126 break;
2127 case DECT_NWK_S_IE_PORTABLE_IDENTITY_TPUI:
2128 no_of_bits = value_length;
2129 proto_tree_add_item(tree, hf_dect_nwk_s_ie_portable_identity_tpui_assignment_type, tvb, offset, 1, ENC_NA0x00000000);
2130 dect_nwk_add_bits_item(tree, hf_dect_nwk_s_ie_portable_identity_tpui_value, tvb, bit_offset, no_of_bits, 32, ENC_BIG_ENDIAN0x00000000);
2131 offset += 3;
2132 break;
2133 }
2134 return offset;
2135}
2136
2137static int dissect_dect_nwk_s_ie_terminal_capability(tvbuff_t *tvb, unsigned offset, uint8_t ie_length, packet_info _U___attribute__((unused)) *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2138{
2139 bool_Bool octet_group_extension;
2140 unsigned octet_identifier, next_element_offset;
2141 uint16_t stored_display_characters = 0;
2142
2143 static int* const slot_type_flags[] = {
2144 &hf_dect_nwk_s_ie_terminal_capability_slot_type_double,
2145 &hf_dect_nwk_s_ie_terminal_capability_slot_type_full,
2146 &hf_dect_nwk_s_ie_terminal_capability_slot_type_long_672,
2147 &hf_dect_nwk_s_ie_terminal_capability_slot_type_long_640,
2148 &hf_dect_nwk_s_ie_terminal_capability_slot_type_half_80,
2149 NULL((void*)0)
2150 };
2151
2152 static int* const profile_indicator_1_flags [] = {
2153 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_cap,
2154 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_gap,
2155 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_dect_gsm,
2156 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_isdn,
2157 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_lrms,
2158 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_dprs_stream,
2159 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_dprs_asymmetric,
2160 NULL((void*)0)
2161 };
2162
2163 static int* const profile_indicator_2_flags [] = {
2164 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dprs_class_2,
2165 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_data_services,
2166 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_isdn,
2167 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dect_umts_bearer,
2168 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dect_umts_sms,
2169 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dect_umts_facsimile,
2170 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_rap,
2171 NULL((void*)0)
2172 };
2173
2174 static int* const profile_indicator_3_flags[] = {
2175 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_dect_gsm,
2176 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_wrs,
2177 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_sms,
2178 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_dmap,
2179 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_cta,
2180 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_ethernet,
2181 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_token_ring,
2182 NULL((void*)0)
2183 };
2184
2185 static int* const profile_indicator_4_flags[] = {
2186 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_ip,
2187 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_ppp,
2188 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_v24,
2189 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_cf,
2190 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_ipq,
2191 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_rap_2,
2192 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_dprs,
2193 NULL((void*)0)
2194 };
2195
2196 static int* const profile_indicator_5_flags[] = {
2197 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_2bz,
2198 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_4bz,
2199 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_8bz,
2200 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_16bz,
2201 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_2a,
2202 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_4a,
2203 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_8a,
2204 NULL((void*)0)
2205 };
2206
2207 static int* const profile_indicator_6_flags[] = {
2208 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_dect_umts,
2209 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_dect_umts_gprs,
2210 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_odap,
2211 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_f_mms,
2212 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_gf,
2213 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_fast_hopping,
2214 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_no_emission,
2215 NULL((void*)0)
2216 };
2217
2218 static int* const profile_indicator_7_flags[] = {
2219 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_mod64,
2220 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_ng_dect_1,
2221 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_ng_dect_3,
2222 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_headset_management,
2223 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_re_keying,
2224 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_associated_melody,
2225 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_ng_dect_5,
2226 NULL((void*)0)
2227 };
2228
2229 static int* const profile_indicator_8_flags[] = {
2230 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_mux_e_u,
2231 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_channel_ipf,
2232 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_channel_sipf,
2233 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_packet_data_category,
2234 NULL((void*)0)
2235 };
2236
2237 static int* const profile_indicator_9_flags[] = {
2238 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_dprs_3,
2239 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_dprs_4,
2240 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_dect_ule,
2241 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_light_data,
2242 NULL((void*)0)
2243 };
2244
2245 static int* const profile_indicator_10_flags[] = {
2246 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_date_time_recovery,
2247 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_extended_list_change,
2248 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_screening,
2249 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_wrs_2,
2250 &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_wrs_ule,
2251 NULL((void*)0)
2252 };
2253
2254 static int* const escape_to_char_sets_1_flags[] = {
2255 &hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_latin_no1,
2256 &hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_latin_no9,
2257 &hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_latin_no5,
2258 &hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_greek,
2259 NULL((void*)0)
2260 };
2261
2262 static int* const blind_slot_6_flags[] = {
2263 &hf_dect_nwk_s_ie_terminal_capability_blind_slot_indication,
2264 &hf_dect_nwk_s_ie_terminal_capability_sp0,
2265 &hf_dect_nwk_s_ie_terminal_capability_sp1,
2266 &hf_dect_nwk_s_ie_terminal_capability_sp2,
2267 &hf_dect_nwk_s_ie_terminal_capability_sp3,
2268 &hf_dect_nwk_s_ie_terminal_capability_sp4,
2269 NULL((void*)0)
2270 };
2271
2272 static int* const blind_slot_6a_flags[] = {
2273 &hf_dect_nwk_s_ie_terminal_capability_sp5,
2274 &hf_dect_nwk_s_ie_terminal_capability_sp6,
2275 &hf_dect_nwk_s_ie_terminal_capability_sp7,
2276 &hf_dect_nwk_s_ie_terminal_capability_sp8,
2277 &hf_dect_nwk_s_ie_terminal_capability_sp9,
2278 &hf_dect_nwk_s_ie_terminal_capability_sp10,
2279 &hf_dect_nwk_s_ie_terminal_capability_sp11,
2280 NULL((void*)0)
2281 };
2282
2283 next_element_offset = offset + ie_length;
2284
2285 octet_identifier = DECT_NWK_S_IE_OCTET_FIRST;
2286 do {
2287 proto_tree_add_item(tree, hf_dect_nwk_s_ie_octet_group_extension, tvb, offset, 1, ENC_NA0x00000000);
2288 switch(octet_identifier) {
2289 case DECT_NWK_S_IE_OCTET_FIRST:
2290 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_tone_capabilities, tvb, offset, 1, ENC_NA0x00000000);
2291 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_display_capabilities, tvb, offset, 1, ENC_NA0x00000000);
2292 /* Octet 3a is intentionally missing according to the standard */
2293 octet_identifier++;
2294 break;
2295 case DECT_NWK_S_IE_OCTET_B:
2296 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_echo_parameter, tvb, offset, 1, ENC_NA0x00000000);
2297 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_n_rej, tvb, offset, 1, ENC_NA0x00000000);
2298 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_a_vol, tvb, offset, 1, ENC_NA0x00000000);
2299 break;
2300 case DECT_NWK_S_IE_OCTET_C:
2301 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_slot_type_capability, ett_dect_nwk_s_ie_element, slot_type_flags, ENC_NA0x00000000);
2302 break;
2303 case DECT_NWK_S_IE_OCTET_D:
2304 stored_display_characters = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_TERMINAL_CAPABILITY_STORED_DISPLAY_CHARACTERS_MASK0x7F ) << 7;
2305 break;
2306 case DECT_NWK_S_IE_OCTET_E:
2307 stored_display_characters = stored_display_characters | ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_TERMINAL_CAPABILITY_STORED_DISPLAY_CHARACTERS_MASK0x7F );
2308 proto_tree_add_uint(tree, hf_dect_nwk_s_ie_terminal_capability_stored_display_characters, tvb, offset-1, 2, stored_display_characters);
2309 break;
2310 case DECT_NWK_S_IE_OCTET_F:
2311 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_lines_in_display, tvb, offset, 1, ENC_NA0x00000000);
2312 break;
2313 case DECT_NWK_S_IE_OCTET_G:
2314 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_chars_per_line, tvb, offset, 1, ENC_NA0x00000000);
2315 break;
2316 case DECT_NWK_S_IE_OCTET_H:
2317 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_scrolling_behaviour, tvb, offset, 1, ENC_NA0x00000000);
2318 break;
2319 }
2320 octet_group_extension = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_MASK0x80 ) >> DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_SHIFT7;
2321 octet_identifier++;
2322 offset++;
2323 } while ( !octet_group_extension );
2324
2325 octet_identifier = DECT_NWK_S_IE_OCTET_FIRST;
2326 do {
2327 proto_tree_add_item(tree, hf_dect_nwk_s_ie_octet_group_extension, tvb, offset, 1, ENC_NA0x00000000);
2328 switch(octet_identifier) {
2329 case DECT_NWK_S_IE_OCTET_FIRST:
2330 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1, ett_dect_nwk_s_ie_element,
2331 profile_indicator_1_flags, ENC_NA0x00000000);
2332 break;
2333 case DECT_NWK_S_IE_OCTET_A:
2334 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2, ett_dect_nwk_s_ie_element,
2335 profile_indicator_2_flags, ENC_NA0x00000000);
2336 break;
2337 case DECT_NWK_S_IE_OCTET_B:
2338 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3, ett_dect_nwk_s_ie_element,
2339 profile_indicator_3_flags, ENC_NA0x00000000);
2340 break;
2341 case DECT_NWK_S_IE_OCTET_C:
2342 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4, ett_dect_nwk_s_ie_element,
2343 profile_indicator_4_flags, ENC_NA0x00000000);
2344 break;
2345 case DECT_NWK_S_IE_OCTET_D:
2346 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5, ett_dect_nwk_s_ie_element,
2347 profile_indicator_5_flags, ENC_NA0x00000000);
2348 break;
2349 case DECT_NWK_S_IE_OCTET_E:
2350 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6, ett_dect_nwk_s_ie_element,
2351 profile_indicator_6_flags, ENC_NA0x00000000);
2352 break;
2353 case DECT_NWK_S_IE_OCTET_F:
2354 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7, ett_dect_nwk_s_ie_element,
2355 profile_indicator_7_flags, ENC_NA0x00000000);
2356 break;
2357 case DECT_NWK_S_IE_OCTET_G:
2358 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8, ett_dect_nwk_s_ie_element,
2359 profile_indicator_8_flags, ENC_NA0x00000000);
2360 break;
2361 case DECT_NWK_S_IE_OCTET_H:
2362 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9, ett_dect_nwk_s_ie_element,
2363 profile_indicator_9_flags, ENC_NA0x00000000);
2364 break;
2365 case DECT_NWK_S_IE_OCTET_I:
2366 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10, ett_dect_nwk_s_ie_element,
2367 profile_indicator_10_flags, ENC_NA0x00000000);
2368 break;
2369 }
2370 octet_group_extension = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_MASK0x80 ) >> DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_SHIFT7;
2371 octet_identifier++;
2372 offset++;
2373 } while ( !octet_group_extension );
2374
2375 octet_identifier = DECT_NWK_S_IE_OCTET_FIRST;
2376 do {
2377 proto_tree_add_item(tree, hf_dect_nwk_s_ie_octet_group_extension, tvb, offset, 1, ENC_NA0x00000000);
2378 switch(octet_identifier) {
2379 case DECT_NWK_S_IE_OCTET_FIRST:
2380 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_dsaa2, tvb, offset, 1, ENC_NA0x00000000);
2381 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_dsc2, tvb, offset, 1, ENC_NA0x00000000);
2382 proto_tree_add_item(tree, hf_dect_nwk_s_ie_terminal_capability_control_codes, tvb, offset, 1, ENC_NA0x00000000);
2383 break;
2384 case DECT_NWK_S_IE_OCTET_A:
2385 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1, ett_dect_nwk_s_ie_element,
2386 escape_to_char_sets_1_flags, ENC_NA0x00000000);
2387 break;
2388 }
2389 octet_group_extension = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_MASK0x80 ) >> DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_SHIFT7;
2390 octet_identifier++;
2391 offset++;
2392 } while ( !octet_group_extension );
2393
2394 /* Octet 6 is not always submitted according to standard */
2395 if (offset != next_element_offset) {
2396 octet_identifier = DECT_NWK_S_IE_OCTET_FIRST;
2397 do {
2398 proto_tree_add_item(tree, hf_dect_nwk_s_ie_octet_group_extension, tvb, offset, 1, ENC_NA0x00000000);
2399 switch(octet_identifier) {
2400 case DECT_NWK_S_IE_OCTET_FIRST:
2401 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_blind_slot_6, ett_dect_nwk_s_ie_element,
2402 blind_slot_6_flags, ENC_NA0x00000000);
2403 break;
2404 case DECT_NWK_S_IE_OCTET_A:
2405 proto_tree_add_bitmask(tree, tvb, offset, hf_dect_nwk_s_ie_terminal_capability_blind_slot_6a, ett_dect_nwk_s_ie_element,
2406 blind_slot_6a_flags, ENC_NA0x00000000);
2407 break;
2408 }
2409 octet_group_extension = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_MASK0x80 ) >> DECT_NWK_S_IE_OCTET_GROUP_EXTENSION_SHIFT7;
2410 octet_identifier++;
2411 offset++;
2412 } while ( !octet_group_extension );
2413 }
2414 return offset;
2415}
2416
2417static int dissect_dect_nwk_s_ie_escape_to_proprietary(tvbuff_t *tvb, unsigned offset, proto_tree *tree, void _U___attribute__((unused)) *data)
2418{
2419 uint8_t discriminator_type;
2420 proto_tree_add_item_ret_uint8(tree, hf_dect_nwk_s_ie_escape_to_proprietary_discriminator_type, tvb, offset, 1, ENC_NA0x00000000, &discriminator_type);
2421 offset++;
2422 if (discriminator_type == DECT_NWK_S_IE_ESCAPE_TO_PROPRIETARY_DISCRIMINATOR_TYPE_EMC) {
2423 proto_tree_add_item(tree, hf_dect_nwk_s_ie_escape_to_proprietary_discriminator, tvb, offset, 2, ENC_BIG_ENDIAN0x00000000);
2424 offset+=2;
2425 }
2426 /* FIXME: Content Handling */
2427 return offset;
2428}
2429
2430static int dissect_dect_nwk_s_ie_model_identifier(tvbuff_t *tvb, unsigned offset, uint8_t ie_length, packet_info _U___attribute__((unused)) *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data) {
2431 if ( ie_length == 3) {
2432 proto_tree_add_item(tree, hf_dect_nwk_s_ie_model_identifier_manic, tvb, offset, 2, ENC_NA0x00000000);
2433 offset += 2;
2434 proto_tree_add_item(tree, hf_dect_nwk_s_ie_model_identifier_modic, tvb, offset, 1, ENC_NA0x00000000);
2435 offset++;
2436 } else if ( ie_length == 20) {
2437 proto_tree_add_item(tree, hf_dect_nwk_s_ie_model_identifier_imeisv, tvb, offset, ie_length, ENC_NA0x00000000);
2438 offset += ie_length;
2439 }
2440
2441 return offset;
2442}
2443
2444static int dissect_dect_nwk_s_ie_codec_list(tvbuff_t *tvb, unsigned offset, uint8_t _U___attribute__((unused)) ie_length, packet_info _U___attribute__((unused)) *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data) {
2445 bool_Bool last_codec;
2446 unsigned octet_identifier;
2447
2448 proto_tree_add_item(tree, hf_dect_nwk_s_ie_codec_list_negotiation_indicator, tvb, offset, 1, ENC_NA0x00000000);
2449 offset++;
2450
2451 last_codec = false0;
2452 octet_identifier = DECT_NWK_S_IE_OCTET_FIRST;
2453 do {
2454 switch(octet_identifier) {
2455 case DECT_NWK_S_IE_OCTET_FIRST:
2456 proto_tree_add_item(tree, hf_dect_nwk_s_ie_codec_list_codec_identifier, tvb, offset, 1, ENC_NA0x00000000);
2457 break;
2458 case DECT_NWK_S_IE_OCTET_A:
2459 proto_tree_add_item(tree, hf_dect_nwk_s_ie_codec_list_mac_and_dlc_service, tvb, offset, 1, ENC_NA0x00000000);
2460 break;
2461 case DECT_NWK_S_IE_OCTET_B:
2462 proto_tree_add_item(tree, hf_dect_nwk_s_ie_codec_list_last_codec, tvb, offset, 1, ENC_NA0x00000000);
2463 proto_tree_add_item(tree, hf_dect_nwk_s_ie_codec_list_c_plane_routing, tvb, offset, 1, ENC_NA0x00000000);
2464 proto_tree_add_item(tree, hf_dect_nwk_s_ie_codec_list_slot_size, tvb, offset, 1, ENC_NA0x00000000);
2465 last_codec = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_CODEC_LIST_LAST_CODEC_MASK0x80 ) >> DECT_NWK_S_IE_CODEC_LIST_LAST_CODEC_SHIFT7;
2466 break;
2467 }
2468 octet_identifier = (octet_identifier + 1) % 3;
2469 offset++;
2470 } while ( !last_codec );
2471
2472 return offset;
2473}
2474
2475static int dissect_dect_nwk_s_ie(tvbuff_t *tvb, unsigned offset, packet_info *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2476{
2477 bool_Bool fixed_length;
2478 uint8_t element_type, element_length, fl_ie_type, fl_ie_double_octet_type;
2479 unsigned ie_end;
2480 proto_tree *field_tree;
2481 proto_tree *field_tree_item;
2482
2483 fixed_length = (tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_FIXED_LENGTH_MASK0x80) >> DECT_NWK_S_IE_FIXED_LENGTH_SHIFT7;
2484 if(fixed_length) {
2485 fl_ie_type = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_FL_TYPE_MASK0x70 ) >> DECT_NWK_S_IE_FL_TYPE_SHIFT4;
2486 fl_ie_double_octet_type = ( tvb_get_uint8(tvb, offset) & DECT_NWK_S_IE_FL_DOUBLE_OCTET_TYPE_MASK0x0F );
2487 if ( fl_ie_type == DECT_NWK_S_IE_FL_DOUBLE_OCTET_ELEMENT ) {
2488 element_length = 2;
2489 field_tree = proto_tree_add_subtree(tree, tvb, offset, element_length, ett_dect_nwk_s_ie_element, &field_tree_item, "Fixed length Element: ");
2490 proto_item_append_text(field_tree_item, "%s", val_to_str(pinfo->pool, fl_ie_double_octet_type, dect_nwk_s_ie_fl_double_octet_type_val, "Unknown: 0x%0x"));
2491 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl, tvb, offset, 1, ENC_NA0x00000000);
2492 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_type, tvb, offset, 1, ENC_NA0x00000000);
2493 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_double_octet_type, tvb, offset, 1, ENC_NA0x00000000);
2494 offset++;
2495 switch (fl_ie_double_octet_type) {
2496 case DECT_NWK_S_IE_FL_DOUBLE_OCTET_BASIC_SERVICE:
2497 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_basic_service_call_class, tvb, offset, 1, ENC_NA0x00000000);
2498 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_basic_service_type, tvb, offset, 1, ENC_NA0x00000000);
2499 break;
2500 case DECT_NWK_S_IE_FL_DOUBLE_OCTET_RELEASE_REASON:
2501 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_release_reason_code, tvb, offset, 1, ENC_NA0x00000000);
2502 break;
2503 case DECT_NWK_S_IE_FL_DOUBLE_OCTET_SIGNAL:
2504 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_signal_value, tvb, offset, 1, ENC_NA0x00000000);
2505 break;
2506 case DECT_NWK_S_IE_FL_DOUBLE_OCTET_TIMER_RESTART:
2507 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_timer_restart_value, tvb, offset, 1, ENC_NA0x00000000);
2508 break;
2509 case DECT_NWK_S_IE_FL_DOUBLE_OCTET_TEST_HOOK_CONTROL:
2510 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_test_hook_control_hook_value, tvb, offset, 1, ENC_NA0x00000000);
2511 break;
2512 case DECT_NWK_S_IE_FL_DOUBLE_OCTET_SINGLE_DISPLAY:
2513 add_dect_nwk_dect_charset_tree_item(field_tree, pinfo, hf_dect_nwk_s_ie_fl_single_display_display_info, tvb, offset, 1);
2514 break;
2515 case DECT_NWK_S_IE_FL_DOUBLE_OCTET_SINGLE_KEYPAD:
2516 add_dect_nwk_dect_charset_tree_item(field_tree, pinfo, hf_dect_nwk_s_ie_fl_single_keypad_keypad_info, tvb, offset, 1);
2517 break;
2518 }
2519 } else {
2520 element_length = 1;
2521 field_tree = proto_tree_add_subtree(tree, tvb, offset, element_length, ett_dect_nwk_s_ie_element, &field_tree_item, "Fixed length Element: ");
2522 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl, tvb, offset, 1, ENC_NA0x00000000);
2523 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_type, tvb, offset, 1, ENC_NA0x00000000);
2524 if ( fl_ie_type == DECT_NWK_S_IE_FL_CONTROL ) {
2525 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_control_type, tvb, offset, 1, ENC_NA0x00000000);
2526 proto_item_append_text(field_tree_item, "%s", val_to_str(pinfo->pool, fl_ie_double_octet_type, dect_nwk_s_ie_fl_control_type_val, "Unknown: 0x%0x"));
2527 } else {
2528 proto_item_append_text(field_tree_item, "%s", val_to_str(pinfo->pool, fl_ie_type, dect_nwk_s_ie_fl_type_val, "Unknown: 0x%0x"));
2529 switch (fl_ie_type) {
2530 case DECT_NWK_S_IE_FL_SHIFT:
2531 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_shift_locking, tvb, offset, 1, ENC_NA0x00000000);
2532 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_shift_new_codeset, tvb, offset, 1, ENC_NA0x00000000);
2533 break;
2534 case DECT_NWK_S_IE_FL_REPEAT_INDICATOR:
2535 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl_repeat_indicator_type, tvb, offset, 1, ENC_NA0x00000000);
2536 break;
2537 }
2538 }
2539 }
2540 offset ++;
2541 } else {
2542 element_type = ( tvb_get_uint8(tvb, offset) & 0x7F);
2543 element_length = tvb_get_uint8(tvb, offset + 1);
2544 field_tree = proto_tree_add_subtree(tree, tvb, offset, element_length + 2, ett_dect_nwk_s_ie_element, &field_tree_item, "Element: ");
2545 proto_item_append_text(field_tree_item, "%s", val_to_str(pinfo->pool, element_type, dect_nwk_s_ie_type_val, "Unknown: 0x%0x"));
2546 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_fl, tvb, offset, 1, ENC_NA0x00000000);
2547 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_type, tvb, offset, 1, ENC_NA0x00000000);
2548 offset++;
2549 proto_tree_add_item(field_tree, hf_dect_nwk_s_ie_length, tvb, offset, 1, ENC_NA0x00000000);
2550 offset++;
2551 ie_end = offset + element_length;
2552 switch (element_type) {
2553 case DECT_NWK_S_IE_AUTH_TYPE:
2554 offset = dissect_dect_nwk_s_ie_auth_type(tvb, offset, field_tree, data);
Value stored to 'offset' is never read
2555 break;
2556 case DECT_NWK_S_IE_CALLING_PARTY_NUMBER:
2557 offset = dissect_dect_nwk_s_ie_calling_party_number(tvb, offset, element_length, field_tree, data);
2558 break;
2559 case DECT_NWK_S_IE_CIPHER_INFO:
2560 offset = dissect_dect_nwk_s_ie_cipher_info(tvb, offset, field_tree, data);
2561 break;
2562 case DECT_NWK_S_IE_DURATION:
2563 offset = dissect_dect_nwk_s_ie_duration(tvb, offset, element_length, pinfo, field_tree, data);
2564 break;
2565 case DECT_NWK_S_IE_FIXED_IDENTITY:
2566 offset = dissect_dect_nwk_s_ie_fixed_identity(tvb, offset, field_tree, data);
2567 break;
2568 case DECT_NWK_S_IE_IWU_TO_IWU:
2569 offset = dissect_dect_nwk_s_ie_iwu_to_iwu(tvb, offset, element_length, pinfo, field_tree, data);
2570 break;
2571 case DECT_NWK_S_IE_LOCATION_AREA:
2572 offset = dissect_dect_nwk_s_ie_location_area(tvb, offset, pinfo, field_tree, data);
2573 break;
2574 case DECT_NWK_S_IE_MULTI_DISPLAY:
2575 offset = dissect_dect_nwk_s_ie_multi_display(tvb, offset, element_length, pinfo, field_tree, data);
2576 break;
2577 case DECT_NWK_S_IE_MULTI_KEYPAD:
2578 offset = dissect_dect_nwk_s_ie_multi_keypad(tvb, offset, element_length, pinfo, field_tree, data);
2579 break;
2580 case DECT_NWK_S_IE_NWK_ASSIGNED_IDENTITY:
2581 offset = dissect_dect_nwk_s_ie_nwk_assigned_identity(tvb, offset, field_tree, data);
2582 break;
2583 case DECT_NWK_S_IE_PORTABLE_IDENTITY:
2584 offset = dissect_dect_nwk_s_ie_portable_identity(tvb, offset, field_tree, data);
2585 break;
2586 case DECT_NWK_S_IE_RAND:
2587 proto_tree_add_item(field_tree,hf_dect_nwk_s_ie_rand_rand_field, tvb, offset, element_length, ENC_NA0x00000000);
2588 offset += element_length;
2589 break;
2590 case DECT_NWK_S_IE_RES:
2591 proto_tree_add_item(field_tree,hf_dect_nwk_s_ie_res_res_field, tvb, offset, element_length, ENC_NA0x00000000);
2592 offset += element_length;
2593 break;
2594 case DECT_NWK_S_IE_RS:
2595 proto_tree_add_item(field_tree,hf_dect_nwk_s_ie_rs_rs_field, tvb, offset, element_length, ENC_NA0x00000000);
2596 offset += element_length;
2597 break;
2598 case DECT_NWK_S_IE_TERMINAL_CAPABILITY:
2599 offset = dissect_dect_nwk_s_ie_terminal_capability(tvb, offset, element_length, pinfo, field_tree, data);
2600 break;
2601 case DECT_NWK_S_IE_ESCAPE_TO_PROPRIETARY:
2602 dissect_dect_nwk_s_ie_escape_to_proprietary(tvb, offset, field_tree, data);
2603 offset += element_length;
2604 break;
2605 case DECT_NWK_S_IE_MODEL_IDENTIFIER:
2606 offset = dissect_dect_nwk_s_ie_model_identifier(tvb, offset, element_length, pinfo, field_tree, data);
2607 break;
2608 case DECT_NWK_S_IE_CODEC_LIST:
2609 offset = dissect_dect_nwk_s_ie_codec_list(tvb, offset, element_length, pinfo, field_tree, data);
2610 break;
2611 default:
2612 break;
2613 }
2614 /* The next element follows this one, however much of it was decoded */
2615 offset = ie_end;
2616 }
2617 return offset;
2618}
2619
2620static int dissect_dect_nwk_lce(tvbuff_t *tvb, uint8_t msg_type, unsigned offset, packet_info *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2621{
2622
2623
2624 proto_tree_add_item(tree, hf_nwk_msg_type_lce, tvb, offset, 1, ENC_NA0x00000000);
2625 col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
2626 val_to_str(pinfo->pool, msg_type, nwk_lce_msgt_vals, "Unknown 0x%02x"));
2627 offset++;
2628
2629 while(tvb_reported_length_remaining(tvb, offset)) {
2630 offset = dissect_dect_nwk_s_ie(tvb, offset, pinfo, tree, data);
2631 }
2632
2633 /* TOOD: dissection of TLVs/IEs */
2634
2635 return offset;
2636}
2637
2638static int dissect_dect_nwk_cc(tvbuff_t *tvb, uint8_t msg_type, unsigned offset, packet_info *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2639{
2640 /* According to Section 7.2 CC also contains CRSS messages */
2641 if ( msg_type == DECT_NWK_SS_CRSS_HOLD ||
2642 msg_type == DECT_NWK_SS_CRSS_HOLD_ACK ||
2643 msg_type == DECT_NWK_SS_CRSS_HOLD_REJ ||
2644 msg_type == DECT_NWK_SS_CRSS_RETRIEVE ||
2645 msg_type == DECT_NWK_SS_CRSS_RETRIEVE_ACK ||
2646 msg_type == DECT_NWK_SS_CRSS_RETRIEVE_REJ ||
2647 msg_type == DECT_NWK_SS_CISS_FACILITY ) {
2648 proto_tree_add_item(tree, hf_dect_nwk_message_type_crss, tvb, offset, 1, ENC_NA0x00000000);
2649 col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
2650 val_to_str(pinfo->pool, msg_type, dect_nwk_crss_message_type_vals, "Unknown 0x%02x"));
2651 } else {
2652 proto_tree_add_item(tree, hf_nwk_msg_type_cc, tvb, offset, 1, ENC_NA0x00000000);
2653 col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
2654 val_to_str(pinfo->pool, msg_type, nwk_cc_msgt_vals, "Unknown 0x%02x"));
2655 }
2656 offset++;
2657
2658 while(tvb_reported_length_remaining(tvb, offset)) {
2659 offset = dissect_dect_nwk_s_ie(tvb, offset, pinfo, tree, data);
2660 }
2661
2662 return offset;
2663}
2664
2665static int dissect_dect_nwk_ciss(tvbuff_t *tvb, uint8_t msg_type, unsigned offset, packet_info *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2666{
2667 proto_tree_add_item(tree, hf_dect_nwk_message_type_ciss, tvb, offset, 1, ENC_NA0x00000000);
2668 col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
2669 val_to_str(pinfo->pool, msg_type, dect_nwk_ciss_message_type_vals, "Unknown 0x%02x"));
2670 offset++;
2671
2672 while(tvb_reported_length_remaining(tvb, offset)) {
2673 offset = dissect_dect_nwk_s_ie(tvb, offset, pinfo, tree, data);
2674 }
2675
2676 return offset;
2677}
2678
2679static int dissect_dect_nwk_coms(tvbuff_t *tvb, uint8_t msg_type, unsigned offset, packet_info *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2680{
2681 proto_tree_add_item(tree, hf_dect_nwk_message_type_coms, tvb, offset, 1, ENC_NA0x00000000);
2682 col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
2683 val_to_str(pinfo->pool, msg_type, dect_nwk_coms_message_type_vals, "Unknown 0x%02x"));
2684 offset++;
2685
2686 while(tvb_reported_length_remaining(tvb, offset)) {
2687 offset = dissect_dect_nwk_s_ie(tvb, offset, pinfo, tree, data);
2688 }
2689
2690 return offset;
2691}
2692
2693
2694static int dissect_dect_nwk_clms(tvbuff_t *tvb, uint8_t msg_type, unsigned offset, packet_info *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2695{
2696 proto_tree_add_item(tree, hf_dect_nwk_message_type_clms, tvb, offset, 1, ENC_NA0x00000000);
2697 col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
2698 val_to_str(pinfo->pool, msg_type, dect_nwk_clms_message_type_vals, "Unknown 0x%02x"));
2699 offset++;
2700
2701 while(tvb_reported_length_remaining(tvb, offset)) {
2702 offset = dissect_dect_nwk_s_ie(tvb, offset, pinfo, tree, data);
2703 }
2704
2705 return offset;
2706}
2707
2708static int dissect_dect_nwk_mm(tvbuff_t *tvb, uint8_t msg_type, unsigned offset, packet_info *pinfo, proto_tree *tree, void _U___attribute__((unused)) *data)
2709{
2710 proto_tree_add_item(tree, hf_nwk_msg_type_mm, tvb, offset, 1, ENC_NA0x00000000);
2711 col_append_fstr(pinfo->cinfo, COL_INFO, "%s ",
2712 val_to_str(pinfo->pool, msg_type, nwk_mm_msgt_vals, "Unknown 0x%02x"));
2713 offset++;
2714
2715 while(tvb_reported_length_remaining(tvb, offset)) {
2716 offset = dissect_dect_nwk_s_ie(tvb, offset, pinfo, tree, data);
2717 }
2718 /* TOOD: dissection of TLVs/IEs */
2719
2720 return offset;
2721}
2722
2723
2724static int dissect_dect_nwk(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data)
2725{
2726 proto_tree *nwk_tree;
2727 proto_item *nwk_ti;
2728 uint8_t pdisc, msg_type;
2729 unsigned len;
2730 unsigned offset = 0;
2731
2732 len = tvb_reported_length(tvb);
2733
2734 col_append_str(pinfo->cinfo, COL_INFO, "(NWK) ");
2735
2736 nwk_ti = proto_tree_add_item(tree, proto_dect_nwk, tvb, 0, len, ENC_NA0x00000000);
2737 nwk_tree = proto_item_add_subtree(nwk_ti, ett_dect_nwk);
2738
2739 proto_tree_add_item(nwk_tree, hf_nwk_ti, tvb, 0, 1, ENC_NA0x00000000);
2740 proto_tree_add_item_ret_uint8(nwk_tree, hf_nwk_pdisc, tvb, 0, 1, ENC_NA0x00000000, &pdisc);
2741 msg_type = tvb_get_uint8(tvb, 1);
2742
2743 switch (pdisc) {
2744 case DECT_NWK_PDISC_LCE:
2745 offset = dissect_dect_nwk_lce(tvb, msg_type, 1, pinfo, nwk_tree, data);
2746 break;
2747 case DECT_NWK_PDISC_CC:
2748 offset = dissect_dect_nwk_cc(tvb, msg_type, 1, pinfo, nwk_tree, data);
2749 break;
2750 case DECT_NWK_PDISC_MM:
2751 offset = dissect_dect_nwk_mm(tvb, msg_type, 1, pinfo, nwk_tree, data);
2752 break;
2753 case DECT_NWK_PDISC_CISS:
2754 offset = dissect_dect_nwk_ciss(tvb, msg_type, 1, pinfo, nwk_tree, data);
2755 break;
2756 case DECT_NWK_PDISC_CLMS:
2757 offset = dissect_dect_nwk_clms(tvb, msg_type, 1, pinfo, nwk_tree, data);
2758 break;
2759 case DECT_NWK_PDISC_COMS:
2760 offset = dissect_dect_nwk_coms(tvb, msg_type, 1, pinfo, nwk_tree, data);
2761 break;
2762 default:
2763 break;
2764 }
2765
2766 /* whatever was not dissected: Use generic data dissector */
2767 if ( offset < tvb_captured_length(tvb) ) {
2768 tvbuff_t *payload = tvb_new_subset_remaining(tvb, offset);
2769 call_data_dissector(payload, pinfo, tree);
2770 }
2771 return tvb_captured_length(tvb);
2772}
2773
2774/*
2775ETSI EN 300 175-6 V2.7.1 Annex C
2776IPEI will be displayed as EEEEE PPPPPPP C
2777where:
2778* EEEEE is the decimal representation of the first 16 bits
2779* PPPPPPP is the decimal representation of the last 20 bits
2780* C is calculated based on the digits by multiplying the digit with its position
2781 (starting with 1 on the leftmost one), and taking the sum of those multiply results
2782 modulo 11. If the result is 10 a '*' is displayed instead.
2783*/
2784static void fmt_dect_nwk_ipei(char *ipei_string, uint64_t ipei) {
2785 uint16_t emc, check_digit;
2786 uint32_t psn;
2787 uint64_t digit_divisor, ipei_digits;
2788
2789 emc = ( ( ipei & 0xFFFF00000 ) >> 20 ) & 0xFFFF;
2790 psn = ipei & 0xFFFFF;
2791
2792 digit_divisor = 100000000000;
2793 ipei_digits = emc * (uint64_t)10000000 + psn;
2794 check_digit = 0;
2795 for(uint8_t i = 1; i <= 12; i++) {
2796 check_digit += (uint16_t)( ( ipei_digits / digit_divisor ) * i );
2797 ipei_digits = ipei_digits % digit_divisor;
2798 digit_divisor /= 10;
2799 }
2800 check_digit = check_digit % 11;
2801
2802 if ( check_digit == 10) {
2803 snprintf(ipei_string, 16, "%05d %07d *", emc, psn);
2804 } else {
2805 snprintf(ipei_string, 16, "%05d %07d %d", emc, psn, check_digit);
2806 }
2807}
2808
2809void proto_register_dect_nwk(void)
2810{
2811 static hf_register_info hf[] =
2812 {
2813 { &hf_nwk_ti,
2814 { "Transaction Identifier", "dect_nwk.ti", FT_UINT8, BASE_HEX,
2815 NULL((void*)0), 0xF0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2816 }
2817 },
2818 { &hf_nwk_pdisc,
2819 { "Protocol Discriminator", "dect_nwk.pdisc", FT_UINT8, BASE_HEX,
2820 VALS(nwk_pdisc_vals)((0 ? (const struct _value_string*)0 : ((nwk_pdisc_vals)))), 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2821 }
2822 },
2823 { &hf_nwk_msg_type_cc,
2824 { "Message Type", "dect_nwk.msg_type", FT_UINT8, BASE_HEX,
2825 VALS(nwk_cc_msgt_vals)((0 ? (const struct _value_string*)0 : ((nwk_cc_msgt_vals)))), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2826 }
2827 },
2828 { &hf_dect_nwk_message_type_ciss,
2829 { "Message Type", "dect_nwk.msg_type", FT_UINT8, BASE_HEX,
2830 VALS(dect_nwk_ciss_message_type_vals)((0 ? (const struct _value_string*)0 : ((dect_nwk_ciss_message_type_vals
))))
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2831 }
2832 },
2833 { &hf_dect_nwk_message_type_crss,
2834 { "Message Type", "dect_nwk.msg_type", FT_UINT8, BASE_HEX,
2835 VALS(dect_nwk_crss_message_type_vals)((0 ? (const struct _value_string*)0 : ((dect_nwk_crss_message_type_vals
))))
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2836 }
2837 },
2838 { &hf_dect_nwk_message_type_coms,
2839 { "Message Type", "dect_nwk.msg_type", FT_UINT8, BASE_HEX,
2840 VALS(dect_nwk_coms_message_type_vals)((0 ? (const struct _value_string*)0 : ((dect_nwk_coms_message_type_vals
))))
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2841 }
2842 },
2843 { &hf_dect_nwk_message_type_clms,
2844 { "Message Type", "dect_nwk.msg_type", FT_UINT8, BASE_HEX,
2845 VALS(dect_nwk_clms_message_type_vals)((0 ? (const struct _value_string*)0 : ((dect_nwk_clms_message_type_vals
))))
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2846 }
2847 },
2848 { &hf_nwk_msg_type_mm,
2849 { "Message Type", "dect_nwk.msg_type", FT_UINT8, BASE_HEX,
2850 VALS(nwk_mm_msgt_vals)((0 ? (const struct _value_string*)0 : ((nwk_mm_msgt_vals)))), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2851 }
2852 },
2853 { &hf_nwk_msg_type_lce,
2854 { "Message Type", "dect_nwk.msg_type", FT_UINT8, BASE_HEX,
2855 VALS(nwk_lce_msgt_vals)((0 ? (const struct _value_string*)0 : ((nwk_lce_msgt_vals)))
)
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2856 }
2857 },
2858
2859
2860 /* S Type common */
2861 { &hf_dect_nwk_s_ie_fl,
2862 { "Fixed Length", "dect_nwk.s.fixed_length", FT_BOOLEAN, 8,
2863 NULL((void*)0), 0x80, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2864 }
2865 },
2866 { &hf_dect_nwk_s_ie_type,
2867 { "Message Type", "dect_nwk.s.ie.type", FT_UINT8, BASE_HEX,
2868 VALS(dect_nwk_s_ie_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_type_val
))))
, 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2869 }
2870 },
2871 { &hf_dect_nwk_s_ie_length,
2872 { "Content Length", "dect_nwk.s.ie.length", FT_UINT8, BASE_DEC,
2873 NULL((void*)0), 0x0, "Length indicator", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2874 }
2875 },
2876 { &hf_dect_nwk_s_ie_octet_group_extension,
2877 { "Extension", "dect_nwk.s.ie.group_extension", FT_BOOLEAN, 8,
2878 TFS(&tfs_last_more)((0 ? (const struct true_false_string*)0 : ((&tfs_last_more
))))
, 0x80, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2879 }
2880 },
2881 /* Fixed length elements */
2882 { &hf_dect_nwk_s_ie_fl_type,
2883 { "Message Type", "dect_nwk.s.ie.fl.type", FT_UINT8, BASE_HEX,
2884 VALS(dect_nwk_s_ie_fl_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_type_val
))))
, 0x70, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2885 }
2886 },
2887 { &hf_dect_nwk_s_ie_fl_control_type,
2888 { "CTRL Type", "dect_nwk.s.ie.fl.control_type", FT_UINT8, BASE_HEX,
2889 VALS(dect_nwk_s_ie_fl_control_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_control_type_val
))))
, 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2890 }
2891 },
2892 { &hf_dect_nwk_s_ie_fl_double_octet_type,
2893 { "Double Octet Type", "dect_nwk.s.ie.fl.double_octet_type", FT_UINT8, BASE_HEX,
2894 VALS(dect_nwk_s_ie_fl_double_octet_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_double_octet_type_val
))))
, 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2895 }
2896 },
2897 /* Shift */
2898 { &hf_dect_nwk_s_ie_fl_shift_locking,
2899 { "Shift Procedure", "dect_nwk.s.ie.fl.shift.locking", FT_BOOLEAN, 8,
2900 TFS(&dect_nwk_s_ie_fl_shift_locking_tfs)((0 ? (const struct true_false_string*)0 : ((&dect_nwk_s_ie_fl_shift_locking_tfs
))))
, 0x08, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2901 }
2902 },
2903 { &hf_dect_nwk_s_ie_fl_shift_new_codeset,
2904 { "New Codeset", "dect_nwk.s.ie.fl.shift.new_codeset", FT_UINT8, BASE_HEX,
2905 VALS(dect_nwk_s_ie_fl_shift_codeset_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_shift_codeset_val
))))
, 0x07, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2906 }
2907 },
2908 /* Repeat indicator */
2909 { &hf_dect_nwk_s_ie_fl_repeat_indicator_type,
2910 { "Indicator Type", "dect_nwk.s.ie.fl.repeat_indicator.type", FT_UINT8, BASE_HEX,
2911 VALS(dect_nwk_s_ie_fl_repeat_indicator_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_repeat_indicator_type_val
))))
, 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2912 }
2913 },
2914 /* Basic service */
2915 { &hf_dect_nwk_s_ie_fl_basic_service_call_class,
2916 { "Call class", "dect_nwk.s.ie.fl.basic_service.call_class", FT_UINT8, BASE_HEX,
2917 VALS(dect_nwk_s_ie_fl_basic_service_call_class_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_basic_service_call_class_val
))))
, 0xF0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2918 }
2919 },
2920 { &hf_dect_nwk_s_ie_fl_basic_service_type,
2921 { "Basic Service", "dect_nwk.s.ie.fl.basic_service", FT_UINT8, BASE_HEX,
2922 VALS(dect_nwk_s_ie_fl_basic_service_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_basic_service_type_val
))))
, 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2923 }
2924 },
2925 /* Single display */
2926 { &hf_dect_nwk_s_ie_fl_single_display_display_info,
2927 { "Display Info", "dect_nwk.s.ie.fl.single_display.display_info", FT_STRING, BASE_NONE,
2928 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2929 }
2930 },
2931 /* Single keypad */
2932 { &hf_dect_nwk_s_ie_fl_single_keypad_keypad_info,
2933 { "Keypad Info", "dect_nwk.s.ie.fl.single_keypad.keypad_info", FT_STRING, BASE_NONE,
2934 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2935 }
2936 },
2937 /* Release reason */
2938 { &hf_dect_nwk_s_ie_fl_release_reason_code,
2939 { "Release Reason Code", "dect_nwk.s.ie.fl.release_reason.code", FT_UINT8, BASE_HEX,
2940 VALS(dect_nwk_s_ie_fl_release_reason_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_release_reason_val
))))
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2941 }
2942 },
2943 /* Signal */
2944 { &hf_dect_nwk_s_ie_fl_signal_value,
2945 { "Signal value", "dect_nwk.s.ie.fl.signal.value", FT_UINT8, BASE_HEX,
2946 VALS(dect_nwk_s_ie_fl_signal_value_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_signal_value_val
))))
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2947 }
2948 },
2949 /* Timer restart */
2950 { &hf_dect_nwk_s_ie_fl_timer_restart_value,
2951 { "Restart value", "dect_nwk.s.ie.fl.timer_restart.restart_value", FT_UINT8, BASE_HEX,
2952 VALS(dect_nwk_s_ie_fl_timer_restart_value_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_timer_restart_value_val
))))
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2953 }
2954 },
2955 /* Test hook control */
2956 { &hf_dect_nwk_s_ie_fl_test_hook_control_hook_value,
2957 { "Hook value", "dect_nwk.s.ie.fl.test_hook_control.hook_value", FT_UINT8, BASE_HEX,
2958 VALS(dect_nwk_s_ie_fl_test_hook_control_hook_value_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fl_test_hook_control_hook_value_val
))))
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2959 }
2960 },
2961 /* Auth type*/
2962 { &hf_dect_nwk_s_ie_auth_type_authentication_algorithm,
2963 { "Authentication algorithm", "dect_nwk.s.ie.auth_type.authentication_algorithm", FT_UINT8, BASE_HEX,
2964 VALS(dect_nwk_s_ie_auth_type_authentication_algorithm_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_auth_type_authentication_algorithm_val
))))
, 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2965 }
2966 },
2967 { &hf_dect_nwk_s_ie_auth_type_proprietary_algorithm,
2968 { "Proprietary algorithm", "dect_nwk.s.ie.auth_type.proprietary_algorithm", FT_UINT8, BASE_HEX,
2969 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2970 }
2971 },
2972 { &hf_dect_nwk_s_ie_auth_type_ak_type,
2973 { "AK Type", "dect_nwk.s.ie.auth_type.ak_type", FT_UINT8, BASE_HEX,
2974 VALS(dect_nwk_s_ie_auth_type_ak_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_auth_type_ak_type_val
))))
, 0xF0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2975 }
2976 },
2977 { &hf_dect_nwk_s_ie_auth_type_ak_number,
2978 { "AK Number", "dect_nwk.s.ie.auth_type.ak_number", FT_UINT8, BASE_HEX,
2979 NULL((void*)0), 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2980 }
2981 },
2982 { &hf_dect_nwk_s_ie_auth_type_inc,
2983 { "INC", "dect_nwk.s.ie.auth_type.inc", FT_BOOLEAN, 8,
2984 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, 0x80, "Increment value of the ZAP field", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2985 }
2986 },
2987 { &hf_dect_nwk_s_ie_auth_type_def,
2988 { "DEF", "dect_nwk.s.ie.auth_type.def", FT_BOOLEAN, 8,
2989 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, 0x40, "Use generated derived cipher key as default cipher key for early encryption", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2990 }
2991 },
2992 { &hf_dect_nwk_s_ie_auth_type_txc,
2993 { "TXC", "dect_nwk.s.ie.auth_type.tx", FT_BOOLEAN, 8,
2994 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, 0x20, "Include derived cipher key in the AUTHENTICATION-REPLY message", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
2995 }
2996 },
2997 { &hf_dect_nwk_s_ie_auth_type_upc,
2998 { "UPC", "dect_nwk.s.ie.auth_type.upc", FT_BOOLEAN, 8,
2999 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, 0x10, "Store derived cipher key", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3000 }
3001 },
3002 { &hf_dect_nwk_s_ie_auth_type_cipher_key_number,
3003 { "Cipher key number", "dect_nwk.s.ie.auth_type.cipher_key_number", FT_UINT8, BASE_HEX,
3004 NULL((void*)0), 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3005 }
3006 },
3007 { &hf_dect_nwk_s_ie_auth_type_cipher_key_number_related,
3008 { "Key related to", "dect_nwk.s.ie.auth_type.key_related_to", FT_BOOLEAN, 8,
3009 TFS(&dect_nwk_s_ie_auth_type_cipher_key_number_related_tfs)((0 ? (const struct true_false_string*)0 : ((&dect_nwk_s_ie_auth_type_cipher_key_number_related_tfs
))))
, 0x08, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3010 }
3011 },
3012 { &hf_dect_nwk_s_ie_auth_type_default_cipher_key_index,
3013 { "Default Cipher Key Index", "dect_nwk.s.ie.auth_type.default_cipher_key_index", FT_UINT16, BASE_HEX,
3014 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3015 }
3016 },
3017 { &hf_dect_nwk_s_ie_auth_type_default_cipher_key_algorithm,
3018 { "Default Cipher Key Algorithm", "dect_nwk.s.ie.auth_type.default_cipher_key_algorithm", FT_UINT8, BASE_HEX,
3019 VALS(dect_nwk_s_ie_auth_type_default_cipher_key_algorithm_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_auth_type_default_cipher_key_algorithm_val
))))
, 0x03, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3020 }
3021 },
3022 /* Calling party number */
3023 { &hf_dect_nwk_s_ie_calling_party_number_type,
3024 { "Type", "dect_nwk.s.ie.calling_party_number.type", FT_UINT8, BASE_HEX,
3025 VALS(dect_nwk_s_ie_calling_party_number_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_calling_party_number_type_val
))))
, 0x70, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3026 }
3027 },
3028 { &hf_dect_nwk_s_ie_calling_party_number_numbering_plan,
3029 { "Numbering plan", "dect_nwk.s.ie.calling_party_number.numbering_plan", FT_UINT8, BASE_HEX,
3030 VALS(dect_nwk_s_ie_calling_party_number_numbering_plan_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_calling_party_number_numbering_plan_val
))))
, 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3031 }
3032 },
3033 { &hf_dect_nwk_s_ie_calling_party_number_presentation,
3034 { "Presentation", "dect_nwk.s.ie.calling_party_number.presentation", FT_UINT8, BASE_HEX,
3035 VALS(dect_nwk_s_ie_calling_party_number_presentation_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_calling_party_number_presentation_val
))))
, 0x60, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3036 }
3037 },
3038 { &hf_dect_nwk_s_ie_calling_party_number_screening,
3039 { "Screening", "dect_nwk.s.ie.calling_party_number.screening", FT_UINT8, BASE_HEX,
3040 VALS(dect_nwk_s_ie_calling_party_number_screening_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_calling_party_number_screening_val
))))
, 0x03, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3041 }
3042 },
3043 { &hf_dect_nwk_s_ie_calling_party_number_address,
3044 { "Address", "dect_nwk.s.ie.calling_party_number.address", FT_STRING, BASE_NONE,
3045 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3046 }
3047 },
3048 /* Cipher info */
3049 { &hf_dect_nwk_s_ie_cipher_info_yn,
3050 { "Y/N", "dect_nwk.s.ie.cipher_info.yn", FT_BOOLEAN, 8, NULL((void*)0), 0x80, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)}
3051 },
3052 { &hf_dect_nwk_s_ie_cipher_info_algorithm,
3053 { "Algorithm", "dect_nwk.s.ie.cipher_info.algorithm", FT_UINT8, BASE_HEX,
3054 VALS(dect_nwk_s_ie_cipher_info_algorithm_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_cipher_info_algorithm_val
))))
, 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3055 }
3056 },
3057 { &hf_dect_nwk_s_ie_cipher_info_proprietary_algorithm,
3058 { "Proprietary algorithm", "dect_nwk.s.ie.cipher_info.proprietary_algorithm", FT_UINT8, BASE_HEX,
3059 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3060 }
3061 },
3062 { &hf_dect_nwk_s_ie_cipher_info_key_type,
3063 { "Key Type", "dect_nwk.s.ie.cipher_info.key_type", FT_UINT8, BASE_HEX,
3064 VALS(dect_nwk_s_ie_cipher_info_key_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_cipher_info_key_type_val
))))
, 0xF0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3065 }
3066 },
3067 { &hf_dect_nwk_s_ie_cipher_info_key_number,
3068 { "Key Number", "dect_nwk.s.ie.cipher_info.key_number", FT_UINT8, BASE_HEX,
3069 NULL((void*)0), 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3070 }
3071 },
3072 /* Duration */
3073 { &hf_dect_nwk_s_ie_duration_lock_limits,
3074 { "Lock Limits", "dect_nwk.s.ie.duration.lock_limits", FT_UINT8, BASE_HEX,
3075 VALS(dect_nwk_s_ie_duration_lock_limits_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_duration_lock_limits_type_val
))))
, 0x70, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3076 }
3077 },
3078 { &hf_dect_nwk_s_ie_duration_time_limits,
3079 { "Time Limits", "dect_nwk.s.ie.duration.time_limits", FT_UINT8, BASE_HEX,
3080 VALS(dect_nwk_s_ie_duration_time_limits_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_duration_time_limits_type_val
))))
, 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3081 }
3082 },
3083 { &hf_dect_nwk_s_ie_duration_time_duration,
3084 { "Time duration", "dect_nwk.s.ie.duration.time_duration", FT_UINT8, BASE_DEC,
3085 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3086 }
3087 },
3088 /* Fixed Identity */
3089 { &hf_dect_nwk_s_ie_fixed_identity_type,
3090 { "Type", "dect_nwk.s.ie.fixed_identity.type", FT_UINT8, BASE_HEX,
3091 VALS(dect_nwk_s_ie_fixed_identity_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_fixed_identity_type_val
))))
, 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3092 }
3093 },
3094 { &hf_dect_nwk_s_ie_fixed_identity_value_length,
3095 { "Value Length", "dect_nwk.s.ie.fixed_identity.value_length", FT_UINT8, BASE_DEC,
3096 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3097 }
3098 },
3099 { &hf_dect_nwk_s_ie_fixed_identity_arc,
3100 { "ARC", "dect_nwk.s.ie.fixed_identity.arc", FT_UINT8, BASE_HEX,
3101 VALS(dect_nwk_arc_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_arc_type_val
))))
, 0x70, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3102 }
3103 },
3104 { &hf_dect_nwk_s_ie_fixed_identity_ard,
3105 { "ARD", "dect_nwk.s.ie.fixed_identity.ard", FT_UINT64, BASE_HEX, NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3106 },
3107 { &hf_dect_nwk_s_ie_fixed_identity_padding,
3108 { "Padding", "dect_nwk.s.ie.fixed_identity.padding", FT_UINT8, BASE_HEX,
3109 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3110 }
3111 },
3112 /* IWU to IWU */
3113 { &hf_dect_nwk_s_ie_iwu_to_iwu_sr,
3114 { "S/R", "dect_nwk.s.ie.iwu_to_iwu.sr", FT_BOOLEAN, 8,
3115 NULL((void*)0), 0x40, "Send/Reject", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3116 }
3117 },
3118 { &hf_dect_nwk_s_ie_iwu_to_iwu_protocol_discriminator,
3119 { "Protocol Discriminator", "dect_nwk.s.ie.iwu_to_iwu.protocol_discriminator", FT_UINT8, BASE_HEX,
3120 VALS(dect_nwk_s_ie_iwu_to_iwu_protocol_discriminator_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_iwu_to_iwu_protocol_discriminator_type_val
))))
, 0x3F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3121 }
3122 },
3123 { &hf_dect_nwk_s_ie_iwu_to_iwu_information,
3124 { "Information", "dect_nwk.s.ie.iwu_to_iwu.information", FT_BYTES, BASE_NONE,
3125 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3126 }
3127 },
3128 { &hf_dect_nwk_s_ie_iwu_to_iwu_discriminator_type,
3129 { "Discriminator Type", "dect_nwk.s.ie.iwu_to_iwu.discriminator_type", FT_UINT8, BASE_HEX,
3130 VALS(dect_nwk_s_ie_iwu_to_iwu_discriminator_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_iwu_to_iwu_discriminator_type_val
))))
, 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3131 }
3132 },
3133 { &hf_dect_nwk_s_ie_iwu_to_iwu_user_specific_contents,
3134 { "User specific contents", "dect_nwk.s.ie.iwu_to_iwu.user_specific_contents", FT_BYTES, BASE_NONE,
3135 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3136 }
3137 },
3138 { &hf_dect_nwk_s_ie_iwu_to_iwu_emc_discriminator,
3139 { "EMC", "dect_nwk.s.ie.iwu_to_iwu.emc_discriminator", FT_UINT16, BASE_HEX,
3140 NULL((void*)0), 0x0, "Discriminator (EMC)", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3141 }
3142 },
3143 { &hf_dect_nwk_s_ie_iwu_to_iwu_proprietary_contents,
3144 { "Proprietary", "dect_nwk.s.ie.iwu_to_iwu.proprietary_contents", FT_BYTES, BASE_NONE,
3145 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3146 }
3147 },
3148 /* Location area */
3149 { &hf_dect_nwk_s_ie_location_area_li_type,
3150 { "LI-Type", "dect_nwk.s.ie.location_area.li_type", FT_UINT8, BASE_HEX,
3151 NULL((void*)0), 0xC0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3152 }
3153 },
3154 { &hf_dect_nwk_s_ie_location_area_li_extended_included,
3155 { "Ext. LI included", "dect_nwk.s.ie.location_area.li_extended_included", FT_BOOLEAN, 8,
3156 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, 0x80, "Extended location information is included", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3157 }
3158 },
3159 { &hf_dect_nwk_s_ie_location_area_la_level_included,
3160 { "LA level included", "dect_nwk.s.ie.location_area.la_level_included", FT_BOOLEAN, 8,
3161 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, 0x40, "Location area level is included (LA level field is valid)", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3162 }
3163 },
3164 { &hf_dect_nwk_s_ie_location_area_la_level,
3165 { "Location area level", "dect_nwk.s.ie.location_area.la_level", FT_UINT8, BASE_DEC,
3166 NULL((void*)0), 0x3F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3167 }
3168 },
3169 { &hf_dect_nwk_s_ie_location_area_eli_type,
3170 { "ELI-Type", "dect_nwk.s.ie.location_area.eli_type", FT_UINT8, BASE_HEX,
3171 VALS(dect_nwk_s_ie_location_area_eli_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_location_area_eli_type_val
))))
, DECT_NWK_S_IE_LOCATION_AREA_ELI_TYPE_MASK0xF0, "Extended Location Information type", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3172 }
3173 },
3174 { &hf_dect_nwk_s_ie_location_area_lac,
3175 { "LAC", "dect_nwk.s.ie.location_area.lac", FT_BYTES, BASE_NONE, NULL((void*)0), 0x0, "Location Area Code", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3176 },
3177 { &hf_dect_nwk_s_ie_location_area_ci,
3178 { "CI", "dect_nwk.s.ie.location_area.ci", FT_BYTES, BASE_NONE, NULL((void*)0), 0x0, "Cell Identity", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3179 },
3180 /* Multi-display */
3181 { &hf_dect_nwk_s_ie_multi_display_information,
3182 { "Display Information", "dect_nwk.s.ie.multi_display.information", FT_STRING, BASE_NONE,
3183 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3184 }
3185 },
3186 /* Multi-keypad */
3187 { &hf_dect_nwk_s_ie_multi_keypad_information,
3188 { "Keypad Information", "dect_nwk.s.ie.multi_keypad.information", FT_STRING, BASE_NONE,
3189 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3190 }
3191 },
3192 /* NWK assigned Identity */
3193 { &hf_dect_nwk_s_ie_nwk_assigned_identity_type,
3194 { "Type", "dect_nwk.s.ie.nwk_assigned_identity.type", FT_UINT8, BASE_HEX,
3195 VALS(dect_nwk_s_ie_nwk_assigned_identity_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_nwk_assigned_identity_type_val
))))
, 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3196 }
3197 },
3198 { &hf_dect_nwk_s_ie_nwk_assigned_identity_value_length,
3199 { "Value Length", "dect_nwk.s.ie.nwk_assigned_identity.value_length", FT_UINT8, BASE_DEC,
3200 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3201 }
3202 },
3203 { &hf_dect_nwk_s_ie_nwk_assigned_identity_value,
3204 { "Value", "dect_nwk.s.ie.nwk_assigned_identity.value", FT_BYTES, BASE_NONE, NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3205 },
3206 { &hf_dect_nwk_s_ie_nwk_assigned_identity_padding,
3207 { "Padding", "dect_nwk.s.ie.nwk_assigned_identity.padding", FT_UINT8, BASE_HEX,
3208 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3209 }
3210 },
3211 /* Portable Identity */
3212 { &hf_dect_nwk_s_ie_portable_identity_type,
3213 { "Type", "dect_nwk.s.ie.portable_identity.type", FT_UINT8, BASE_HEX,
3214 VALS(dect_nwk_s_ie_portable_identity_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_portable_identity_type_val
))))
, 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3215 }
3216 },
3217 { &hf_dect_nwk_s_ie_portable_identity_value_length,
3218 { "Value Length", "dect_nwk.s.ie.portable_identity.value_length", FT_UINT8, BASE_DEC,
3219 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3220 }
3221 },
3222 { &hf_dect_nwk_s_ie_portable_identity_put,
3223 { "PUT", "dect_nwk.s.ie.portable_identity.ipui.put", FT_UINT8, BASE_HEX,
3224 VALS(dect_nwk_ipui_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_ipui_type_val
))))
, 0xF0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3225 }
3226 },
3227 { &hf_dect_nwk_s_ie_portable_identity_ipei,
3228 { "IPEI", "dect_nwk.s.ie.portable_identity.ipei", FT_UINT64, BASE_CUSTOM,
3229 CF_FUNC(&fmt_dect_nwk_ipei)((const void *) (size_t) (&fmt_dect_nwk_ipei)), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3230 },
3231 { &hf_dect_nwk_s_ie_portable_identity_tpui_assignment_type,
3232 { "Assignment Type", "dect_nwk.s.ie.portable_identity.tpui_assignment_type", FT_UINT8, BASE_HEX,
3233 VALS(dect_nwk_s_ie_portable_identity_tpui_assignment_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_portable_identity_tpui_assignment_type_val
))))
, 0xF0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3234 },
3235 { &hf_dect_nwk_s_ie_portable_identity_tpui_value,
3236 { "TPUI value", "dect_nwk.s.ie.portable_identity.tpui_value", FT_UINT32, BASE_HEX,
3237 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3238 },
3239 { &hf_dect_nwk_s_ie_portable_identity_ipui_o_number,
3240 { "Number", "dect_nwk.s.ie.portable_identity.ipui_o.number", FT_UINT64, BASE_HEX, NULL((void*)0), 0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3241 },
3242 { &hf_dect_nwk_s_ie_portable_identity_ipui_p_poc,
3243 { "POC", "dect_nwk.s.ie.portable_identity.ipui_p.poc", FT_UINT16, BASE_HEX,
3244 NULL((void*)0), 0, "Public Operator Code", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3245 },
3246 { &hf_dect_nwk_s_ie_portable_identity_ipui_p_acc,
3247 { "ACC", "dect_nwk.s.ie.portable_identity.ipui_p.acc", FT_BYTES, BASE_NONE,
3248 NULL((void*)0), 0, "ACCount number", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3249 },
3250 { &hf_dect_nwk_s_ie_portable_identity_ipui_q_bacn,
3251 { "BACN", "dect_nwk.s.ie.portable_identity.ipui_q.bacn", FT_STRING, BASE_NONE,
3252 NULL((void*)0), 0, "Bank ACount Number", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3253 },
3254 { &hf_dect_nwk_s_ie_portable_identity_ipui_r_imsi,
3255 { "IMSI", "dect_nwk.s.ie.portable_identity.ipui_r.imsi", FT_STRING, BASE_NONE,
3256 NULL((void*)0), 0, "International Mobile Subscriber Identity", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3257 },
3258 { &hf_dect_nwk_s_ie_portable_identity_ipui_s_number,
3259 { "Number", "dect_nwk.s.ie.portable_identity.ipui_s.number", FT_STRING, BASE_NONE, NULL((void*)0), 0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3260 },
3261 { &hf_dect_nwk_s_ie_portable_identity_ipui_t_eic,
3262 { "EIC", "dect_nwk.s.ie.portable_identity.ipui_t.eic", FT_UINT16, BASE_HEX, NULL((void*)0), 0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3263 },
3264 { &hf_dect_nwk_s_ie_portable_identity_ipui_t_number,
3265 { "Number", "dect_nwk.s.ie.portable_identity.ipui_t.number", FT_STRING, BASE_NONE, NULL((void*)0), 0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3266 },
3267 { &hf_dect_nwk_s_ie_portable_identity_ipui_u_cacn,
3268 { "CACN", "dect_nwk.s.ie.portable_identity.ipui_u.cacn", FT_STRING, BASE_NONE,
3269 NULL((void*)0), 0, "Credit Card ACount Number", HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3270 },
3271 { &hf_dect_nwk_s_ie_portable_identity_padding,
3272 { "Padding", "dect_nwk.s.ie.portable_identity.padding", FT_UINT8, BASE_HEX,
3273 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3274 }
3275 },
3276 /* RAND */
3277 { &hf_dect_nwk_s_ie_rand_rand_field,
3278 { "RAND Field", "dect_nwk.s.ie.rand.rand_field", FT_BYTES, BASE_NONE, NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3279 },
3280 /* RES */
3281 { &hf_dect_nwk_s_ie_res_res_field,
3282 { "RES Field", "dect_nwk.s.ie.res.res_field", FT_BYTES, BASE_NONE, NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3283 },
3284 /* RS */
3285 { &hf_dect_nwk_s_ie_rs_rs_field,
3286 { "RS Field", "dect_nwk.s.ie.rs.rs_field", FT_BYTES, BASE_NONE, NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0) }
3287 },
3288 /* Terminal capability */
3289 { &hf_dect_nwk_s_ie_terminal_capability_tone_capabilities,
3290 { "tone capabilities", "dect_nwk.s.ie.terminal_capability.tone_capabilities", FT_UINT8, BASE_HEX,
3291 VALS(dect_nwk_s_ie_terminal_capability_tone_capabilites_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_tone_capabilites_val
))))
, 0x70, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3292 }
3293 },
3294 { &hf_dect_nwk_s_ie_terminal_capability_display_capabilities,
3295 { "display capabilities", "dect_nwk.s.ie.terminal_capability.display_capabilities", FT_UINT8, BASE_HEX,
3296 VALS(dect_nwk_s_ie_terminal_capability_display_capabilities_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_display_capabilities_val
))))
, 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3297 }
3298 },
3299 { &hf_dect_nwk_s_ie_terminal_capability_echo_parameter,
3300 { "echo parameter", "dect_nwk.s.ie.terminal_capability.echo_parameter", FT_UINT8, BASE_HEX,
3301 VALS(dect_nwk_s_ie_terminal_capability_echo_parameters_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_echo_parameters_val
))))
, 0x70, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3302 }
3303 },
3304 { &hf_dect_nwk_s_ie_terminal_capability_n_rej,
3305 { "N-REJ", "dect_nwk.s.ie.terminal_capability.n_rej", FT_UINT8, BASE_HEX,
3306 VALS(dect_nwk_s_ie_terminal_capability_n_rej_capabilities_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_n_rej_capabilities_val
))))
, 0x0C, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3307 }
3308 },
3309 { &hf_dect_nwk_s_ie_terminal_capability_a_vol,
3310 { "A-VOL", "dect_nwk.s.ie.terminal_capability.a_vol", FT_UINT8, BASE_HEX,
3311 VALS(dect_nwk_s_ie_terminal_capability_a_vol_capabilities_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_a_vol_capabilities_val
))))
, 0x03, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3312 }
3313 },
3314 { &hf_dect_nwk_s_ie_terminal_capability_slot_type_capability,
3315 { "slot type capability", "dect_nwk.s.ie.terminal_capability.slot_type_capability", FT_UINT8, BASE_HEX,
3316 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3317 }
3318 },
3319 { &hf_dect_nwk_s_ie_terminal_capability_slot_type_half_80,
3320 { "Half slot; j = 80", "dect_nwk.s.ie.terminal_capability.slot_type.half_80", FT_BOOLEAN, 8,
3321 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_HALF_80, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3322 }
3323 },
3324 { &hf_dect_nwk_s_ie_terminal_capability_slot_type_long_640,
3325 { "Long slot; j = 640", "dect_nwk.s.ie.terminal_capability.slot_type.long_640", FT_BOOLEAN, 8,
3326 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_LONG_640, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3327 }
3328 },
3329 { &hf_dect_nwk_s_ie_terminal_capability_slot_type_long_672,
3330 { "Long slot; j = 672", "dect_nwk.s.ie.terminal_capability.slot_type.long_672", FT_BOOLEAN, 8,
3331 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_LONG_672, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3332 }
3333 },
3334 { &hf_dect_nwk_s_ie_terminal_capability_slot_type_full,
3335 { "Full slot", "dect_nwk.s.ie.terminal_capability.slot_type.full", FT_BOOLEAN, 8,
3336 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_FULL, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3337 }
3338 },
3339 { &hf_dect_nwk_s_ie_terminal_capability_slot_type_double,
3340 { "Double slot", "dect_nwk.s.ie.terminal_capability.slot_type.double", FT_BOOLEAN, 8,
3341 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SLOT_TYPE_DOUBLE, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3342 }
3343 },
3344 { &hf_dect_nwk_s_ie_terminal_capability_stored_display_characters,
3345 { "Stored display characters", "dect_nwk.s.ie.terminal_capability.stored_display_characters", FT_UINT16, BASE_DEC,
3346 NULL((void*)0), 0x3FFF, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3347 }
3348 },
3349 { &hf_dect_nwk_s_ie_terminal_capability_lines_in_display,
3350 { "Lines in display", "dect_nwk.s.ie.terminal_capability.lines_in_display", FT_UINT8, BASE_DEC,
3351 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3352 }
3353 },
3354 { &hf_dect_nwk_s_ie_terminal_capability_chars_per_line,
3355 { "Characters/line", "dect_nwk.s.ie.terminal_capability.chars_per_line", FT_UINT8, BASE_DEC,
3356 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3357 }
3358 },
3359 { &hf_dect_nwk_s_ie_terminal_capability_scrolling_behaviour,
3360 { "Scrolling behaviour", "dect_nwk.s.ie.terminal_capability.scrolling_behaviour", FT_UINT8, BASE_HEX,
3361 VALS(dect_nwk_s_ie_terminal_capability_scrolling_behaviour_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_scrolling_behaviour_type_val
))))
, 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3362 }
3363 },
3364 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1,
3365 { "Profile indicator 1", "dect_nwk.s.ie.terminal_capability.profile_indicator_1", FT_UINT8, BASE_HEX,
3366 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3367 }
3368 },
3369 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_cap,
3370 { "CAP", "dect_nwk.s.ie.terminal_capability.profile_indicator_1.cap", FT_BOOLEAN, 8,
3371 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_CAP, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3372 }
3373 },
3374 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_gap,
3375 { "GAP", "dect_nwk.s.ie.terminal_capability.profile_indicator_1.gap", FT_BOOLEAN, 8,
3376 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_GAP, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3377 }
3378 },
3379 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_dect_gsm,
3380 { "DECT/GSM interworking profile", "dect_nwk.s.ie.terminal_capability.profile_indicator_1.dect_gsm", FT_BOOLEAN, 8,
3381 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_DECT_GSM, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3382 }
3383 },
3384 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_isdn,
3385 { "ISDN End-system", "dect_nwk.s.ie.terminal_capability.profile_indicator_1.isdn", FT_BOOLEAN, 8,
3386 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_ISDN, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3387 }
3388 },
3389 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_lrms,
3390 { "LRMS", "dect_nwk.s.ie.terminal_capability.profile_indicator_1.lrms", FT_BOOLEAN, 8,
3391 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_LRMS, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3392 }
3393 },
3394 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_dprs_stream,
3395 { "DPRS Stream", "dect_nwk.s.ie.terminal_capability.profile_indicator_1.dprs_stream", FT_BOOLEAN, 8,
3396 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_DPRS_STREAM, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3397 }
3398 },
3399 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_1_dprs_asymmetric,
3400 { "DPRS asymmetric bearers", "dect_nwk.s.ie.terminal_capability.profile_indicator_1.dprs_asymmetric", FT_BOOLEAN, 8,
3401 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_1_DPRS_ASYMMETRIC, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3402 }
3403 },
3404 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2,
3405 { "Profile indicator 2", "dect_nwk.s.ie.terminal_capability.profile_indicator_2", FT_UINT8, BASE_HEX,
3406 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3407 }
3408 },
3409 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dprs_class_2,
3410 { "DPRS Class 2 management and B-Field procedures", "dect_nwk.s.ie.terminal_capability.profile_indicator_2.dprs_class_2", FT_BOOLEAN, 8,
3411 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DPRS_CLASS_2, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3412 }
3413 },
3414 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_data_services,
3415 { "Data Services Profile D, Class 2", "dect_nwk.s.ie.terminal_capability.profile_indicator_2.data_services", FT_BOOLEAN, 8,
3416 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DATA_SERVICES, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3417 }
3418 },
3419 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_isdn,
3420 { "ISDN Intermediate Access Profile", "dect_nwk.s.ie.terminal_capability.profile_indicator_2.isdn", FT_BOOLEAN, 8,
3421 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_ISDN, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3422 }
3423 },
3424 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dect_umts_bearer,
3425 { "DECT/UMTS-GSM interworking - UMTS-GSM Bearer service", "dect_nwk.s.ie.terminal_capability.profile_indicator_2.dect_umts_bearer", FT_BOOLEAN, 8,
3426 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DECT_UMTS_BEARER, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3427 }
3428 },
3429 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dect_umts_sms,
3430 { "DECT/UMTS-GSM interworking - UMTS-GSM SMS service", "dect_nwk.s.ie.terminal_capability.profile_indicator_2.dect_umts_sms", FT_BOOLEAN, 8,
3431 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DECT_UMTS_SMS, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3432 }
3433 },
3434 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_dect_umts_facsimile,
3435 { "DECT/UMTS-GSM interworking - UMTS-GSM Facsimile", "dect_nwk.s.ie.terminal_capability.profile_indicator_2.dect_umts_facsimile", FT_BOOLEAN, 8,
3436 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_DECT_UMTS_FACSIMILE, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3437 }
3438 },
3439 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_2_rap,
3440 { "RAP 1 Profile", "dect_nwk.s.ie.terminal_capability.profile_indicator_2.rap", FT_BOOLEAN, 8,
3441 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_2_RAP, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3442 }
3443 },
3444 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3,
3445 { "Profile indicator 3", "dect_nwk.s.ie.terminal_capability.profile_indicator_3", FT_UINT8, BASE_HEX,
3446 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3447 }
3448 },
3449 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_dect_gsm,
3450 { "DECT/GSM dual mode terminal", "dect_nwk.s.ie.terminal_capability.profile_indicator_3.dect_gsm", FT_BOOLEAN, 8,
3451 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_DECT_GSM, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3452 }
3453 },
3454 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_wrs,
3455 { "\"V1\" WRS", "dect_nwk.s.ie.terminal_capability.profile_indicator_3.wrs", FT_BOOLEAN, 8,
3456 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_WRS, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3457 }
3458 },
3459 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_sms,
3460 { "SMS over LRMS", "dect_nwk.s.ie.terminal_capability.profile_indicator_3.sms", FT_BOOLEAN, 8,
3461 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_SMS, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3462 }
3463 },
3464 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_dmap,
3465 { "DMAP", "dect_nwk.s.ie.terminal_capability.profile_indicator_3.dmap", FT_BOOLEAN, 8,
3466 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_DMAP, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3467 }
3468 },
3469 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_cta,
3470 { "Multiport CTA", "dect_nwk.s.ie.terminal_capability.profile_indicator_3.cta", FT_BOOLEAN, 8,
3471 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_CTA, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3472 }
3473 },
3474 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_ethernet,
3475 { "Ethernet", "dect_nwk.s.ie.terminal_capability.profile_indicator_3.ethernet", FT_BOOLEAN, 8,
3476 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_ETHERNET, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3477 }
3478 },
3479 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_3_token_ring,
3480 { "Token Ring", "dect_nwk.s.ie.terminal_capability.profile_indicator_3.token_ring", FT_BOOLEAN, 8,
3481 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_3_TOKEN_RING, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3482 }
3483 },
3484 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4,
3485 { "Profile indicator 4", "dect_nwk.s.ie.terminal_capability.profile_indicator_4", FT_UINT8, BASE_HEX,
3486 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3487 }
3488 },
3489 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_ip,
3490 { "IP", "dect_nwk.s.ie.terminal_capability.profile_indicator_4.ip", FT_BOOLEAN, 8,
3491 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_IP, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3492 }
3493 },
3494 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_ppp,
3495 { "PPP", "dect_nwk.s.ie.terminal_capability.profile_indicator_4.ppp", FT_BOOLEAN, 8,
3496 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_PPP, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3497 }
3498 },
3499 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_v24,
3500 { "V.24", "dect_nwk.s.ie.terminal_capability.profile_indicator_4.v24", FT_BOOLEAN, 8,
3501 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_V24, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3502 }
3503 },
3504 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_cf,
3505 { "C F", "dect_nwk.s.ie.terminal_capability.profile_indicator_4.cf", FT_BOOLEAN, 8,
3506 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_CF, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3507 }
3508 },
3509 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_ipq,
3510 { "I PQ", "dect_nwk.s.ie.terminal_capability.profile_indicator_4.ipq", FT_BOOLEAN, 8,
3511 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_IPQ, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3512 }
3513 },
3514 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_rap_2,
3515 { "RAP 2 Profile", "dect_nwk.s.ie.terminal_capability.profile_indicator_4.rap_2", FT_BOOLEAN, 8,
3516 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_RAP_2, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3517 }
3518 },
3519 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_4_dprs,
3520 { "Generic Media Encapsulation transport (DPRS)", "dect_nwk.s.ie.terminal_capability.profile_indicator_4.dprs", FT_BOOLEAN, 8,
3521 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_4_DPRS, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3522 }
3523 },
3524 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5,
3525 { "Profile indicator 5", "dect_nwk.s.ie.terminal_capability.profile_indicator_5", FT_UINT8, BASE_HEX,
3526 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3527 }
3528 },
3529 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_2bz,
3530 { "2-level modulation scheme (B+Z field)", "dect_nwk.s.ie.terminal_capability.profile_indicator_5.mod_2bz", FT_BOOLEAN, 8,
3531 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_2BZ, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3532 }
3533 },
3534 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_4bz,
3535 { "4-level modulation scheme (B+Z field)", "dect_nwk.s.ie.terminal_capability.profile_indicator_5.mod_4bz", FT_BOOLEAN, 8,
3536 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_4BZ, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3537 }
3538 },
3539 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_8bz,
3540 { "8-level modulation scheme (B+Z field)", "dect_nwk.s.ie.terminal_capability.profile_indicator_5.mod_8bz", FT_BOOLEAN, 8,
3541 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_8BZ, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3542 }
3543 },
3544 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_16bz,
3545 { "16-level modulation scheme (B+Z field)", "dect_nwk.s.ie.terminal_capability.profile_indicator_5.mod_16bz", FT_BOOLEAN, 8,
3546 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_16BZ, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3547 }
3548 },
3549 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_2a,
3550 { "2-level modulation scheme (A field)", "dect_nwk.s.ie.terminal_capability.profile_indicator_5.mod_2a", FT_BOOLEAN, 8,
3551 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_2A, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3552 }
3553 },
3554 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_4a,
3555 { "4-level modulation scheme (A field)", "dect_nwk.s.ie.terminal_capability.profile_indicator_5.mod_4a", FT_BOOLEAN, 8,
3556 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_4A, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3557 }
3558 },
3559 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_5_mod_8a,
3560 { "8-level modulation scheme (A field)", "dect_nwk.s.ie.terminal_capability.profile_indicator_5.mod_8a", FT_BOOLEAN, 8,
3561 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_5_MOD_8A, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3562 }
3563 },
3564 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6,
3565 { "Profile indicator 6", "dect_nwk.s.ie.terminal_capability.profile_indicator_6", FT_UINT8, BASE_HEX,
3566 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3567 }
3568 },
3569 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_dect_umts,
3570 { "DECT/UMTS interworking profile", "dect_nwk.s.ie.terminal_capability.profile_indicator_6.dect_umts", FT_BOOLEAN, 8,
3571 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_DECT_UMTS, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3572 }
3573 },
3574 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_dect_umts_gprs,
3575 { "DECT/UMTS interworking - GPRS services", "dect_nwk.s.ie.terminal_capability.profile_indicator_6.dect_umts_gprs", FT_BOOLEAN, 8,
3576 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_DECT_UMTS_GPRS, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3577 }
3578 },
3579 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_odap,
3580 { "Basic ODAP", "dect_nwk.s.ie.terminal_capability.profile_indicator_6.odap", FT_BOOLEAN, 8,
3581 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_ODAP, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3582 }
3583 },
3584 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_f_mms,
3585 { "F-MMS Interworking profile", "dect_nwk.s.ie.terminal_capability.profile_indicator_6.f_mms", FT_BOOLEAN, 8,
3586 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_F_MMS, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3587 }
3588 },
3589 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_gf,
3590 { "Channel GF", "dect_nwk.s.ie.terminal_capability.profile_indicator_6.gf", FT_BOOLEAN, 8,
3591 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_GF, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3592 }
3593 },
3594 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_fast_hopping,
3595 { "PT with fast hopping radio", "dect_nwk.s.ie.terminal_capability.profile_indicator_6.fast_hopping", FT_BOOLEAN, 8,
3596 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_FAST_HOPPING, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3597 }
3598 },
3599 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_6_no_emission,
3600 { "Capability to support \"no emission\" or U-NEMo mode", "dect_nwk.s.ie.terminal_capability.profile_indicator_6.no_emission", FT_BOOLEAN, 8,
3601 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_6_NO_EMISSION, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3602 }
3603 },
3604 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7,
3605 { "Profile indicator 7", "dect_nwk.s.ie.terminal_capability.profile_indicator_7", FT_UINT8, BASE_HEX,
3606 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3607 }
3608 },
3609 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_mod64,
3610 { "64-level modulation scheme (B+Z field)", "dect_nwk.s.ie.terminal_capability.profile_indicator_7.mod64", FT_BOOLEAN, 8,
3611 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_MOD64, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3612 }
3613 },
3614 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_ng_dect_1,
3615 { "NG-DECT Part 1: Wideband voice", "dect_nwk.s.ie.terminal_capability.profile_indicator_7.ng_dect_1", FT_BOOLEAN, 8,
3616 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_NG_DECT_1, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3617 }
3618 },
3619 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_ng_dect_3,
3620 { "NG-DECT Part 3", "dect_nwk.s.ie.terminal_capability.profile_indicator_7.ng_dect_3", FT_BOOLEAN, 8,
3621 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_NG_DECT_3, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3622 }
3623 },
3624 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_headset_management,
3625 { "Headset management", "dect_nwk.s.ie.terminal_capability.profile_indicator_7.headset_management", FT_BOOLEAN, 8,
3626 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_HEADSET_MANAGEMENT, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3627 }
3628 },
3629 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_re_keying,
3630 { "Re-keying and default cipher key early encryption mechanism", "dect_nwk.s.ie.terminal_capability.profile_indicator_7.re_keying", FT_BOOLEAN, 8,
3631 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_RE_KEYING, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3632 }
3633 },
3634 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_associated_melody,
3635 { "associated melody per contact", "dect_nwk.s.ie.terminal_capability.profile_indicator_7.associated_melody", FT_BOOLEAN, 8,
3636 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_ASSOCIATED_MELODY, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3637 }
3638 },
3639 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_7_ng_dect_5,
3640 { "NG-DECT Part 5", "dect_nwk.s.ie.terminal_capability.profile_indicator_7.ng_dect_5", FT_BOOLEAN, 8,
3641 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_7_NG_DECT_5, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3642 }
3643 },
3644 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8,
3645 { "Profile indicator 8", "dect_nwk.s.ie.terminal_capability.profile_indicator_8", FT_UINT8, BASE_HEX,
3646 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3647 }
3648 },
3649 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_mux_e_u,
3650 { "E+U-type mux and channel I PF basic procedures", "dect_nwk.s.ie.terminal_capability.profile_indicator_8.mux_e_u", FT_BOOLEAN, 8,
3651 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_MUX_E_U, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3652 }
3653 },
3654 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_channel_ipf,
3655 { "Channel I PF advanced procedures", "dect_nwk.s.ie.terminal_capability.profile_indicator_8.channel_ipf", FT_BOOLEAN, 8,
3656 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_CHANNEL_IPF, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3657 }
3658 },
3659 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_channel_sipf,
3660 { "Channel SI PF", "dect_nwk.s.ie.terminal_capability.profile_indicator_8.channel_sipf", FT_BOOLEAN, 8,
3661 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_CHANNEL_SIPF, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3662 }
3663 },
3664 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_8_packet_data_category,
3665 { "DPRS/NG-DECT Packet Data Category", "dect_nwk.s.ie.terminal_capability.profile_indicator_8.packet_data_category", FT_UINT8, BASE_HEX,
3666 VALS(dect_nwk_s_ie_terminal_capability_profile_indicator_8_packet_data_categories_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_profile_indicator_8_packet_data_categories_val
))))
,
3667 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_8_PACKET_DATA_CATEGORY, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3668 }
3669 },
3670 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9,
3671 { "Profile indicator 9", "dect_nwk.s.ie.terminal_capability.profile_indicator_9", FT_UINT8, BASE_HEX,
3672 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3673 }
3674 },
3675 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_dprs_3,
3676 { "DPRS Class 3 management and A-field procedures", "dect_nwk.s.ie.terminal_capability.profile_indicator_9.dprs_3", FT_BOOLEAN, 8,
3677 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_9_DPRS_3, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3678 }
3679 },
3680 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_dprs_4,
3681 { "DPRS Class 4 management and A-field procedures", "dect_nwk.s.ie.terminal_capability.profile_indicator_9.dprs_4", FT_BOOLEAN, 8,
3682 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_9_DPRS_4, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3683 }
3684 },
3685 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_dect_ule,
3686 { "DECT ULE", "dect_nwk.s.ie.terminal_capability.profile_indicator_9.dect_ule", FT_UINT8, BASE_HEX,
3687 VALS(dect_nwk_s_ie_terminal_capability_profile_indicator_9_dect_ule_versions_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_profile_indicator_9_dect_ule_versions_val
))))
,
3688 DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_9_DECT_ULE, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3689 }
3690 },
3691 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_9_light_data,
3692 { "Light data services", "dect_nwk.s.ie.terminal_capability.profile_indicator_9.light_data", FT_BOOLEAN, 8,
3693 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_9_LIGHT_DATA, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3694 }
3695 },
3696 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10,
3697 { "Profile indicator 10", "dect_nwk.s.ie.terminal_capability.profile_indicator_10", FT_UINT8, BASE_HEX,
3698 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3699 }
3700 },
3701 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_date_time_recovery,
3702 { "Date and Time recovery", "dect_nwk.s.ie.terminal_capability.profile_indicator_10.date_time_recovery", FT_BOOLEAN, 8,
3703 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_DATE_TIME_RECOVERY, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3704 }
3705 },
3706 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_extended_list_change,
3707 { "Extended list change notification", "dect_nwk.s.ie.terminal_capability.profile_indicator_10.extended_list_change", FT_BOOLEAN, 8,
3708 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_EXTENDED_LIST_CHANGE, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3709 }
3710 },
3711 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_screening,
3712 { "Screening", "dect_nwk.s.ie.terminal_capability.profile_indicator_10.screening", FT_BOOLEAN, 8,
3713 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_SCREENING, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3714 }
3715 },
3716 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_wrs_2,
3717 { "\"V2\" WRS", "dect_nwk.s.ie.terminal_capability.profile_indicator_10.wrs_2", FT_BOOLEAN, 8,
3718 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_WRS_2, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3719 }
3720 },
3721 { &hf_dect_nwk_s_ie_terminal_capability_profile_indicator_10_wrs_ule,
3722 { "WRS for ULE", "dect_nwk.s.ie.terminal_capability.profile_indicator_10.wrs_ule", FT_BOOLEAN, 8,
3723 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_PROFILE_INDICATOR_10_WRS_ULE, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3724 }
3725 },
3726 { &hf_dect_nwk_s_ie_terminal_capability_dsaa2,
3727 { "DSAA2 supported", "dect_nwk.s.ie.terminal_capability.dsaa2", FT_BOOLEAN, 8,
3728 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, 0x40, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3729 }
3730 },
3731 { &hf_dect_nwk_s_ie_terminal_capability_dsc2,
3732 { "DSC2 supported", "dect_nwk.s.ie.terminal_capability.dsc2", FT_BOOLEAN, 8,
3733 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, 0x20, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3734 }
3735 },
3736 { &hf_dect_nwk_s_ie_terminal_capability_control_codes,
3737 { "Control Codes", "dect_nwk.s.ie.terminal_capability.control_codes", FT_UINT8, BASE_HEX,
3738 VALS(dect_nwk_s_ie_terminal_capability_control_codes_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_control_codes_val
))))
, 0x07, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3739 }
3740 },
3741 { &hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1,
3742 { "escape to 8 bit character sets_1", "dect_nwk.s.ie.terminal_capability.escape_to_char_sets_1", FT_UINT8, BASE_HEX,
3743 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3744 }
3745 },
3746 { &hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_latin_no1,
3747 { "ISO-8859-1", "dect_nwk.s.ie.terminal_capability.escape_to_char_sets_1.latin_no1", FT_BOOLEAN, 8,
3748 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_ESCAPE_TO_CHAR_SETS_1_LATIN_NO1, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3749 }
3750 },
3751 { &hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_latin_no9,
3752 { "ISO-8859-15", "dect_nwk.s.ie.terminal_capability.escape_to_char_sets_1.latin_no9", FT_BOOLEAN, 8,
3753 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_ESCAPE_TO_CHAR_SETS_1_LATIN_NO9, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3754 }
3755 },
3756 { &hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_latin_no5,
3757 { "ISO-8859-9", "dect_nwk.s.ie.terminal_capability.escape_to_char_sets_1.latin_no5", FT_BOOLEAN, 8,
3758 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_ESCAPE_TO_CHAR_SETS_1_LATIN_NO5, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3759 }
3760 },
3761 { &hf_dect_nwk_s_ie_terminal_capability_escape_to_char_sets_1_greek,
3762 { "ISO-8859-7", "dect_nwk.s.ie.terminal_capability.escape_to_char_sets_1.greek", FT_BOOLEAN, 8,
3763 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_ESCAPE_TO_CHAR_SETS_1_GREEK, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3764 }
3765 },
3766 { &hf_dect_nwk_s_ie_terminal_capability_blind_slot_6,
3767 { "Blind Slot Octet 6", "dect_nwk.s.ie.terminal_capability.blind_slot_6", FT_UINT8, BASE_HEX,
3768 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3769 }
3770 },
3771 { &hf_dect_nwk_s_ie_terminal_capability_blind_slot_indication,
3772 { "Blind slot indication", "dect_nwk.s.ie.terminal_capability.blind_slot_indication", FT_UINT8, BASE_HEX,
3773 VALS(dect_nwk_s_ie_terminal_capability_blind_slot_indication_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_terminal_capability_blind_slot_indication_val
))))
, 0x60, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3774 }
3775 },
3776 { &hf_dect_nwk_s_ie_terminal_capability_sp0,
3777 { "SP0", "dect_nwk.s.ie.terminal_capability.sp0", FT_BOOLEAN, 8,
3778 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3779 }
3780 },
3781 { &hf_dect_nwk_s_ie_terminal_capability_sp1,
3782 { "SP1", "dect_nwk.s.ie.terminal_capability.sp1", FT_BOOLEAN, 8,
3783 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP1, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3784 }
3785 },
3786 { &hf_dect_nwk_s_ie_terminal_capability_sp2,
3787 { "SP2", "dect_nwk.s.ie.terminal_capability.sp2", FT_BOOLEAN, 8,
3788 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP2, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3789 }
3790 },
3791 { &hf_dect_nwk_s_ie_terminal_capability_sp3,
3792 { "SP3", "dect_nwk.s.ie.terminal_capability.sp3", FT_BOOLEAN, 8,
3793 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP3, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3794 }
3795 },
3796 { &hf_dect_nwk_s_ie_terminal_capability_sp4,
3797 { "SP4", "dect_nwk.s.ie.terminal_capability.sp4", FT_BOOLEAN, 8,
3798 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP4, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3799 }
3800 },
3801 { &hf_dect_nwk_s_ie_terminal_capability_blind_slot_6a,
3802 { "Blind Slot Octet 6a", "dect_nwk.s.ie.terminal_capability.blind_slot_6a", FT_UINT8, BASE_HEX,
3803 NULL((void*)0), 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3804 }
3805 },
3806 { &hf_dect_nwk_s_ie_terminal_capability_sp5,
3807 { "SP5", "dect_nwk.s.ie.terminal_capability.sp5", FT_BOOLEAN, 8,
3808 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP5, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3809 }
3810 },
3811 { &hf_dect_nwk_s_ie_terminal_capability_sp6,
3812 { "SP6", "dect_nwk.s.ie.terminal_capability.sp6", FT_BOOLEAN, 8,
3813 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP6, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3814 }
3815 },
3816 { &hf_dect_nwk_s_ie_terminal_capability_sp7,
3817 { "SP7", "dect_nwk.s.ie.terminal_capability.sp7", FT_BOOLEAN, 8,
3818 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP7, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3819 }
3820 },
3821 { &hf_dect_nwk_s_ie_terminal_capability_sp8,
3822 { "SP8", "dect_nwk.s.ie.terminal_capability.sp8", FT_BOOLEAN, 8,
3823 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP8, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3824 }
3825 },
3826 { &hf_dect_nwk_s_ie_terminal_capability_sp9,
3827 { "SP9", "dect_nwk.s.ie.terminal_capability.sp9", FT_BOOLEAN, 8,
3828 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP9, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3829 }
3830 },
3831 { &hf_dect_nwk_s_ie_terminal_capability_sp10,
3832 { "SP10", "dect_nwk.s.ie.terminal_capability.sp10", FT_BOOLEAN, 8,
3833 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP10, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3834 }
3835 },
3836 { &hf_dect_nwk_s_ie_terminal_capability_sp11,
3837 { "SP11", "dect_nwk.s.ie.terminal_capability.sp11", FT_BOOLEAN, 8,
3838 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, DECT_NWK_S_IE_TERMINAL_CAPABILITY_SP11, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3839 }
3840 },
3841 /* Escape to proprietary */
3842 { &hf_dect_nwk_s_ie_escape_to_proprietary_discriminator_type,
3843 { "Discriminator type", "dect_nwk.s.ie.escape_to_proprietary.discriminator_type", FT_UINT8, BASE_HEX,
3844 VALS(dect_nwk_s_ie_escape_to_proprietary_discriminator_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_escape_to_proprietary_discriminator_type_val
))))
, 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3845 }
3846 },
3847 { &hf_dect_nwk_s_ie_escape_to_proprietary_discriminator,
3848 { "Discriminator", "dect_nwk.s.ie.escape_to_proprietary.discriminator", FT_UINT16, BASE_HEX,
3849 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3850 }
3851 },
3852 /* Model identifier */
3853 { &hf_dect_nwk_s_ie_model_identifier_manic,
3854 { "MANIC", "dect_nwk.s.ie.model_identifier.manic", FT_BYTES, BASE_NONE,
3855 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3856 }
3857 },
3858 { &hf_dect_nwk_s_ie_model_identifier_modic,
3859 { "MODIC", "dect_nwk.s.ie.model_identifier.modic", FT_UINT8, BASE_DEC,
3860 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3861 }
3862 },
3863 { &hf_dect_nwk_s_ie_model_identifier_imeisv,
3864 { "EIMEISV", "dect_nwk.s.ie.model_identifier.imeisv", FT_BYTES, BASE_NONE,
3865 NULL((void*)0), 0x0, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3866 }
3867 },
3868 /* Codec list */
3869 { &hf_dect_nwk_s_ie_codec_list_negotiation_indicator,
3870 { "Negotiation indicator", "dect_nwk.s.ie.codec_list.negotiation_indicator", FT_UINT8, BASE_HEX,
3871 VALS(dect_nwk_s_ie_codec_list_negotiation_indicator_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_codec_list_negotiation_indicator_type_val
))))
, 0x70, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3872 }
3873 },
3874 { &hf_dect_nwk_s_ie_codec_list_codec_identifier,
3875 { "Codec identifier", "dect_nwk.s.ie.codec_list.codec_identifier", FT_UINT8, BASE_HEX,
3876 VALS(dect_nwk_s_ie_codec_list_codec_identifier_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_codec_list_codec_identifier_type_val
))))
, 0x7F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3877 }
3878 },
3879 { &hf_dect_nwk_s_ie_codec_list_mac_and_dlc_service,
3880 { "MAC and DLC service", "dect_nwk.s.ie.codec_list.mac_and_dlc_service", FT_UINT8, BASE_HEX,
3881 VALS(dect_nwk_s_ie_codec_list_mac_and_dlc_service_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_codec_list_mac_and_dlc_service_type_val
))))
, 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3882 }
3883 },
3884 { &hf_dect_nwk_s_ie_codec_list_last_codec,
3885 { "Last codec", "dect_nwk.s.ie.codec_list.last_codec", FT_BOOLEAN, 8,
3886 TFS(&tfs_yes_no)((0 ? (const struct true_false_string*)0 : ((&tfs_yes_no)
)))
, 0x80, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3887 }
3888 },
3889 { &hf_dect_nwk_s_ie_codec_list_c_plane_routing,
3890 { "C-plane routing", "dect_nwk.s.ie.codec_list.c_plane_routing", FT_UINT8, BASE_HEX,
3891 VALS(dect_nwk_s_ie_codec_list_c_plane_routing_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_codec_list_c_plane_routing_type_val
))))
, 0x70, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3892 }
3893 },
3894 { &hf_dect_nwk_s_ie_codec_list_slot_size,
3895 { "Slot size", "dect_nwk.s.ie.codec_list.slot_size", FT_UINT8, BASE_HEX,
3896 VALS(dect_nwk_s_ie_codec_list_slot_size_type_val)((0 ? (const struct _value_string*)0 : ((dect_nwk_s_ie_codec_list_slot_size_type_val
))))
, 0x0F, NULL((void*)0), HFILL-1, 0, HF_REF_TYPE_NONE, -1, ((void*)0)
3897 }
3898 },
3899 };
3900
3901 static int *ett[] = {
3902 &ett_dect_nwk,
3903 &ett_dect_nwk_s_ie_element,
3904 &ett_dect_nwk_s_ie_location_area_li_type
3905 };
3906
3907 /* Register protocol */
3908 proto_dect_nwk = proto_register_protocol("DECT NWK", "DECT-NWK", "dect_nwk");
3909
3910 proto_register_subtree_array(ett, array_length(ett)(sizeof (ett) / sizeof (ett)[0]));
3911 proto_register_field_array(proto_dect_nwk, hf, array_length(hf)(sizeof (hf) / sizeof (hf)[0]));
3912
3913 dect_nwk_handle = register_dissector("dect_nwk", dissect_dect_nwk, proto_dect_nwk);
3914}
3915
3916void proto_reg_handoff_dect_nwk(void)
3917{
3918 dissector_add_uint("dect_dlc.sapi", 0, dect_nwk_handle);
3919 dissector_add_uint("dect_dlc.sapi", 3, dect_nwk_handle);
3920}
3921
3922/*
3923 * Editor modelines - http://www.wireshark.org/tools/modelines.html
3924 *
3925 * Local variables:
3926 * c-basic-offset: 8
3927 * tab-width: 8
3928 * indent-tabs-mode: t
3929 * End:
3930 *
3931 * vi: set shiftwidth=8 tabstop=8 noexpandtab:
3932 * :indentSize=8:tabSize=8:noTabs=false:
3933 */