2 * Routines for C15 Call History Protocol dissection
3 * Copyright 2015, Christopher Sheldahl for GENBAND <christopher.sheldahl@genband.com>
5 * Wireshark - Network traffic analyzer
6 * By Gerald Combs <gerald@wireshark.org>
7 * Copyright 1998 Gerald Combs
9 * SPDX-License-Identifier: GPL-2.0-or-later
14 #include <epan/packet.h>
15 #include <epan/etypes.h>
16 #include <epan/strutil.h>
17 #include <epan/wmem_scopes.h>
20 void proto_register_c15ch_hbeat(void);
21 void proto_register_c15ch(void);
22 void proto_reg_handoff_c15ch_hbeat(void);
23 void proto_reg_handoff_c15ch(void);
25 /* main C15 subtypes : int variable containing one of these values is passed along to second level dissector */
26 #define C15_CP_STATE_CH 1
27 #define C15_CP_EVENT 2
29 #define C15_NITN_XLATE 4
33 #define C15_NTWK_CONN 8
35 #define C15_PATH_FIND 10
36 #define C15_PATH_IDLE 11
37 #define C15_DEST_DIGITS 12
38 #define C15_TWC_RSWCH 13
39 #define C15_SRCE_DEST 14
41 #define C15_INC_GWE 16
42 #define C15_OUT_GWE 17
43 #define C15_OUT_GWE_BC 18
47 #define C15_ECHO_CANCEL 22
49 #define C15_ENCAP_ISUP 24
53 #define C15_GENERIC_MSG_1 28
54 #define C15_GENERIC_MSG_2 29
55 #define C15_GENERIC_MSG_3 30
56 #define C15_GENERIC_MSG_4 31
57 #define C15_GENERIC_MSG_5 32
58 #define C15_CORRELATE_MSG 33
59 #define C15_SIP_REG_SUBS_REPORT 34
60 #define C15_SYS_ALARM 35
61 #define C15_TTY_MSG 36
63 #define HEADER_SZ 36 /* length of complete c15ch header in bytes */
65 static const char * C15_LABEL
= "C15";
66 /* Heartbeat Protocol : distinct from normal c15 type */
67 static int proto_c15ch_hbeat
;
70 static int ett_c15ch_hbeat
;
73 static int hf_c15ch_hbeat_clli
;
74 static int hf_c15ch_hbeat_primary
;
75 static int hf_c15ch_hbeat_secondary
;
76 static int hf_c15ch_hbeat_interface
;
78 /* C15 base Protocol */
79 static int proto_c15ch
;
82 static dissector_table_t c15ch_dissector_table
;
85 static int hf_c15ch_version
;
86 static int hf_c15ch_msgtype
;
87 static int hf_c15ch_size
;
88 static int hf_c15ch_call_ref
;
90 static int hf_c15ch_srce_ni
;
91 static int hf_c15ch_srce_tn
;
92 static int hf_c15ch_dest_ni
;
93 static int hf_c15ch_dest_tn
;
95 static int hf_c15ch_srce_ni_tn
;
96 static int hf_c15ch_dest_ni_tn
;
97 static int hf_c15ch_realtime
;
100 static int ett_c15ch
;
101 static int ett_src_ni_tn
;
102 static int ett_dest_ni_tn
;
104 /* for msg_type field ...*/
105 static const value_string c15_msg_types
[] = {
106 { C15_CP_STATE_CH
, "CP_STATE_CH" },
107 { C15_CP_EVENT
, "CP_EVENT" },
108 { C15_ISUP
, "ISUP" },
109 { C15_NITN_XLATE
, "NITN_XLATE" },
110 { C15_SCCP
, "SCCP" },
111 { C15_CP_ORIG
, "CP_ORIG" },
112 { C15_CONN
, "CONN" },
113 { C15_NTWK_CONN
, "NTWK_CONN" },
114 { C15_MK_BRK
, "MK_BRK" },
115 { C15_PATH_FIND
, "PATH_FIND" },
116 { C15_PATH_IDLE
, "PATH_IDLE" },
117 { C15_DEST_DIGITS
, "DEST_DIGITS" },
118 { C15_TWC_RSWCH
, "TWC_RSWCH" },
119 { C15_SRCE_DEST
, "SRCE_DEST" },
120 { C15_ROUTE
, "ROUTE" },
121 { C15_INC_GWE
, "INC_GWE" },
122 { C15_OUT_GWE
, "OUT_GWE" },
123 { C15_OUT_GWE_BC
, "OUT_GWE_BC" },
124 { C15_Q931
, "Q931" },
127 { C15_ECHO_CANCEL
, "ECHO_CANCEL" },
128 { C15_TONE
, "TONE" },
129 { C15_ENCAP_ISUP
, "ENCAP_ISUP" },
130 { C15_TCAP
, "TCAP" },
131 { C15_CLLI
, "CLLI" },
132 { C15_INFO
, "C15_INFO" },
133 { C15_GENERIC_MSG_1
, "C15_GENERIC_MSG_1" },
134 { C15_GENERIC_MSG_2
, "C15_GENERIC_MSG_2" },
135 { C15_GENERIC_MSG_3
, "C15_GENERIC_MSG_3" },
136 { C15_GENERIC_MSG_4
, "C15_GENERIC_MSG_4" },
137 { C15_GENERIC_MSG_5
, "C15_GENERIC_MSG_5" },
138 { C15_CORRELATE_MSG
, "C15_CORRELATE_MSG" },
139 { C15_SIP_REG_SUBS_REPORT
, "C15_SIP_REG_SUBS_REPORT" },
140 { C15_SYS_ALARM
, "C15_SYSTEM_ALARM" },
141 { C15_TTY_MSG
, "C15_TTY_MESSAGE" },
144 static value_string_ext c15_msg_types_ext
= VALUE_STRING_EXT_INIT(c15_msg_types
);
147 static int ett_c15ch_second_level
;
148 static int ett_c15ch_second_level_sub1
;
149 static int ett_c15ch_second_level_sub2
;
150 static int ett_c15ch_second_level_sub3
;
151 static int ett_c15ch_second_level_sub4
;
152 static int proto_c15ch_second_level
;
154 static dissector_handle_t c15ch_hbeat_handle
;
155 static dissector_handle_t c15ch_handle
;
157 static dissector_handle_t general_sccp_handle
;
158 static dissector_handle_t general_isup_handle
;
159 static dissector_handle_t general_q931_handle
;
163 static int hf_c15ch_ama
;
164 static int hf_c15ch_ama_call_code
;
165 static int hf_c15ch_ama_orig_digits
;
166 static int hf_c15ch_ama_num_dialed_digits
;
167 static int hf_c15ch_ama_br_prefix
;
168 static int hf_c15ch_ama_dialed_digits
;
169 static int hf_c15ch_ama_start_hour
;
170 static int hf_c15ch_ama_start_minute
;
171 static int hf_c15ch_ama_start_second
;
172 static int hf_c15ch_ama_start_tenth_second
;
173 static int hf_c15ch_ama_start_day
;
174 static int hf_c15ch_ama_start_month
;
175 static int hf_c15ch_ama_start_year
;
176 static int hf_c15ch_ama_answered
;
177 static int hf_c15ch_ama_elapsed_time
; /*elapsed time in millisec*/
178 static int hf_c15ch_ama_call_type
;
181 /* br_prefix labels */
182 static const value_string ama_br_prefix_types
[] = {
194 /* call_type labels */
195 static const value_string ama_call_types
[] = {
218 { 22, "MISC" }, /* used for USCCF */
248 static value_string_ext ama_call_types_ext
= VALUE_STRING_EXT_INIT(ama_call_types
);
251 static int hf_c15ch_c15_info
;
252 static int hf_c15ch_c15_info_code
;
253 static int hf_c15ch_c15_info_level
;
254 static int hf_c15ch_c15_info_text
;
257 /* labels for level */
258 static const value_string c15ch_c15_info_level_types
[] = {
269 static int hf_c15ch_clli
;
270 static int hf_c15ch_clli_clli_string
;
271 static int hf_c15ch_clli_active_core
;
272 static int hf_c15ch_clli_inactive_core
;
273 static int hf_c15ch_clli_interface_string
;
274 static int hf_c15ch_clli_seconds
;
275 static int hf_c15ch_clli_microseconds
;
281 static int hf_c15ch_conn
;
282 static int hf_c15ch_conn_connfrom
;
283 static int hf_c15ch_conn_conntype
;
284 static int hf_c15ch_conn_perphtype
;
285 static int hf_c15ch_conn_intra
;
286 static int hf_c15ch_conn_srceni
;
287 static int hf_c15ch_conn_srcenitn
;
288 static int hf_c15ch_conn_srcetn
;
289 static int hf_c15ch_conn_destni
;
290 static int hf_c15ch_conn_destnitn
;
291 static int hf_c15ch_conn_desttn
;
292 static int hf_c15ch_conn_interlinknum
;
293 static int hf_c15ch_conn_fromport
;
294 static int hf_c15ch_conn_fromslot
;
295 static int hf_c15ch_conn_toport
;
296 static int hf_c15ch_conn_toslot
;
297 static int hf_c15ch_conn_hubcallid
;
299 /* value_string arrays to label fields */
300 /* for connfrom field ...*/
301 static const value_string c15_conn_from_types
[] = {
302 { 1, "LOCAL_OTHER" },
304 { 3, "PATH_LOCAL_IDLE" },
305 { 4, "PATH_SRCE_DEST" },
309 /* call proc state */
313 static int hf_c15ch_cp_state_ch
;
314 static int hf_c15ch_cp_state_ch_oldpm
;
315 static int hf_c15ch_cp_state_ch_newpm
;
316 static int hf_c15ch_cp_state_ch_subpm
;
317 static int hf_c15ch_cp_state_ch_trkpm
;
318 static int hf_c15ch_cp_state_ch_slepm
;
319 static int hf_c15ch_cp_state_ch_flags
;
320 static int hf_c15ch_cp_state_ch_oldrtetype
;
321 static int hf_c15ch_cp_state_ch_oldrteidx
;
322 static int hf_c15ch_cp_state_ch_newrtetype
;
323 static int hf_c15ch_cp_state_ch_newrteidx
;
325 /* value_string arrays to label fields */
326 static const value_string c15_cp_state_pm_types
[] = {
406 static value_string_ext c15_cp_state_pm_types_ext
= VALUE_STRING_EXT_INIT(c15_cp_state_pm_types
);
410 static int hf_c15ch_dest_digits
;
411 static int hf_c15ch_dest_digits_digits
;
417 static int hf_c15ch_echo_cancel
;
418 static int hf_c15ch_echo_cancel_ni
;
419 static int hf_c15ch_echo_cancel_tn
;
420 static int hf_c15ch_echo_cancel_ni_tn
;
421 static int hf_c15ch_echo_cancel_old_l2_mode
;
422 static int hf_c15ch_echo_cancel_old_channel_mode
;
423 static int hf_c15ch_echo_cancel_old_ecan_mode
;
424 static int hf_c15ch_echo_cancel_new_l2_mode
;
425 static int hf_c15ch_echo_cancel_new_channel_mode
;
426 static int hf_c15ch_echo_cancel_new_ecan_mode
;
427 static int hf_c15ch_echo_cancel_tone_id
;
428 static int hf_c15ch_echo_cancel_pm
;
429 static int hf_c15ch_echo_cancel_pc
;
430 static int hf_c15ch_echo_cancel_loop
;
431 static int hf_c15ch_echo_cancel_slot
;
432 static int hf_c15ch_echo_cancel_location
;
436 /* value_string arrays to label fields */
439 C15_EC_L2_MODE_VOICE
,
441 C15_EC_L2_MODE_VBD_ECANOFF
444 static const value_string c15_echo_cancel_l2_mode_types
[] = {
445 {C15_EC_L2_MODE_VOICE
, "L2_MODE_VOICE"},
446 {C15_EC_L2_MODE_VBD
, "L2_MODE_VBD"},
447 {C15_EC_L2_MODE_VBD_ECANOFF
, "L2_MODE_VBD_ECANOFF"},
451 enum C15_EC_CHANNEL_MODE
453 C15_EC_VOICE_CHANNEL_MODE
,
454 C15_EC_VBD_CHANNEL_MODE
,
455 C15_EC_CHANNEL_MODE_INVALID
459 static const value_string c15_echo_cancel_channel_mode_types
[] = {
460 {C15_EC_VOICE_CHANNEL_MODE
, "VOICE"},
461 {C15_EC_VBD_CHANNEL_MODE
, "VBD"},
465 enum C15_EC_ECAN_MODE
467 C15_EC_OFF_ECAN_MODE
,
469 C15_EC_ECAN_MODE_INVALID
472 static const value_string c15_echo_cancel_ecan_mode_types
[] = {
473 {C15_EC_OFF_ECAN_MODE
, "OFF"},
474 {C15_EC_ON_ECAN_MODE
, "ON"},
478 /* encapsulated isup */
481 static int hf_c15ch_encap_isup
;
482 static int hf_c15ch_encap_isup_direction
;
483 static int hf_c15ch_encap_isup_isup_msg_length
;
486 /* isup ( not encapsulated )*/
489 static int hf_c15ch_isup
;
490 static int hf_c15ch_isup_direction
;
491 static int hf_c15ch_isup_msgtype
;
492 static int hf_c15ch_isup_cic
;
493 static int hf_c15ch_isup_opcmember
;
494 static int hf_c15ch_isup_opccluster
;
495 static int hf_c15ch_isup_opcnetwork
;
496 static int hf_c15ch_isup_dpcmember
;
497 static int hf_c15ch_isup_dpccluster
;
498 static int hf_c15ch_isup_dpcnetwork
;
499 static int hf_c15ch_isup_level3index
;
500 static int hf_c15ch_isup_ni
;
501 static int hf_c15ch_isup_tn
;
502 static int hf_c15ch_isup_ni_tn
;
503 static int hf_c15ch_isup_c15hdr
;
504 static int hf_c15ch_isup_layer2hdr
;
505 static int hf_c15ch_isup_layer3hdr
;
506 static int hf_c15ch_isup_iptime
;
509 /* value_string arrays to label fields */
510 /* labels for msgtype : non-contiguous integers*/
511 static const value_string c15_isup_types
[] = {
512 {1, "Initial Address"},
514 {6, "Address Complete"},
519 {16, "Release Complete"},
520 {17, "Continuity Recheck Request"},
524 {21, "Blocking Ack"},
525 {22, "Unblocking Ack"},
527 {24, "Circuit Group Blocking"},
528 {25, "Circuit Group Unblocking"},
529 {26, "Circuit Group Blocking Ack"},
530 {27, "Circuit Group Unblocking Ack"},
531 {36, "Loop Back Ack"},
532 {41, "Group Reset Ack"},
533 {42, "Circuit Query"},
534 {43, "Circuit Query Response"},
535 {44, "Call Progress"},
536 {46, "Unidentified Circuit ID Code"},
539 {233, "Circuit Reservation Ack"},
540 {234, "Circuit Reservation"},
541 {235, "Circuit Validation Response"},
542 {236, "Circuit Validation Test"},
546 static value_string_ext c15_isup_types_ext
= VALUE_STRING_EXT_INIT(c15_isup_types
);
547 static const value_string c15_isup_direction_types
[] = {
557 static int hf_c15ch_mkbrk
;
558 static int hf_c15ch_mkbrk_makebreak
;
559 static int hf_c15ch_mkbrk_nshlf
;
560 static int hf_c15ch_mkbrk_stm
;
561 static int hf_c15ch_mkbrk_caddr
;
562 static int hf_c15ch_mkbrk_cdata
;
568 static int hf_c15ch_nitnxlate
;
569 static int hf_c15ch_nitnxlate_ni
;
570 static int hf_c15ch_nitnxlate_tn
;
571 static int hf_c15ch_nitnxlate_ni_tn
;
572 static int hf_c15ch_nitnxlate_equiptype
;
573 static int hf_c15ch_nitnxlate_concat_string
;
574 static int hf_c15ch_nitnxlate_sitestring
;
575 static int hf_c15ch_nitnxlate_subsitestring
;
576 static int hf_c15ch_nitnxlate_equipname
;
577 static int hf_c15ch_nitnxlate_gw_type
;
578 static int hf_c15ch_nitnxlate_parm_1
;
579 static int hf_c15ch_nitnxlate_parm_2
;
580 static int hf_c15ch_nitnxlate_parm_3
;
581 static int hf_c15ch_nitnxlate_parm_4
;
582 static int hf_c15ch_nitnxlate_key
;
583 static int hf_c15ch_nitnxlate_user_tid
;
584 static int hf_c15ch_nitnxlate_host
;
585 static int hf_c15ch_nitnxlate_sip_call_id_64
;
586 static int hf_c15ch_nitnxlate_tg_num
;
587 static int hf_c15ch_nitnxlate_mgcp_line_id
;
588 static int hf_c15ch_nitnxlate_gateway
;
589 static int hf_c15ch_nitnxlate_line
;
590 static int hf_c15ch_nitnxlate_bay
;
591 static int hf_c15ch_nitnxlate_shelf
;
592 static int hf_c15ch_nitnxlate_lsg
;
593 static int hf_c15ch_nitnxlate_idt_rdt
;
594 static int hf_c15ch_nitnxlate_pm
;
595 static int hf_c15ch_nitnxlate_channel
;
596 static int hf_c15ch_nitnxlate_ptrk
;
597 static int hf_c15ch_nitnxlate_pc_sts1
;
598 static int hf_c15ch_nitnxlate_port_vt15
;
601 static const value_string ett_c15ch_nitnxlate_gwe_types
[] = {
621 /* labels for equip (location) */
622 /* non-contiguous integers */
623 static const value_string ett_c15ch_nitnxlate_equip_types
[] = {
630 { 82, "RSLM_DRAWER" },
632 { 115, "RSCS_DTRK" },
633 { 119, "DS1_CHANNEL" },
646 static value_string_ext ett_c15ch_nitnxlate_equip_types_ext
= VALUE_STRING_EXT_INIT(ett_c15ch_nitnxlate_equip_types
);
650 static int hf_c15ch_ntwk_conn
;
651 static int hf_c15ch_ntwk_conn_pathtype
;
652 static int hf_c15ch_ntwk_conn_conntype
;
653 static int hf_c15ch_ntwk_conn_fromoptimized
;
654 static int hf_c15ch_ntwk_conn_fromsite
;
655 static int hf_c15ch_ntwk_conn_frompm
;
656 static int hf_c15ch_ntwk_conn_frompc
;
657 static int hf_c15ch_ntwk_conn_fromloop
;
658 static int hf_c15ch_ntwk_conn_fromslot
;
659 static int hf_c15ch_ntwk_conn_fromlocation
;
660 static int hf_c15ch_ntwk_conn_fromcnx
;
661 static int hf_c15ch_ntwk_conn_fromntwkni
;
662 static int hf_c15ch_ntwk_conn_fromntwktn
;
663 static int hf_c15ch_ntwk_conn_fromntwknitn
;
664 static int hf_c15ch_ntwk_conn_mbshold
;
665 static int hf_c15ch_ntwk_conn_tooptimized
;
666 static int hf_c15ch_ntwk_conn_tosite
;
667 static int hf_c15ch_ntwk_conn_topm
;
668 static int hf_c15ch_ntwk_conn_topc
;
669 static int hf_c15ch_ntwk_conn_toloop
;
670 static int hf_c15ch_ntwk_conn_toslot
;
671 static int hf_c15ch_ntwk_conn_tolocation
;
672 static int hf_c15ch_ntwk_conn_tocnx
;
675 static const value_string ett_c15ch_ntwk_conn_path_types
[] = {
690 static const value_string ett_c15ch_ntwk_conn_conn_types
[] = {
692 { 1, "CONN_PRT_SRCE" },
693 { 2, "CONN_PRT_DEST" },
694 { 3, "CONN_PRT_SRDS" },
696 { 5, "DISC_PRT_SRCE" },
697 { 6, "DISC_PRT_DEST" },
698 { 7, "DISC_PRT_SRDS" },
705 static int hf_c15ch_orig
;
706 static int hf_c15ch_orig_tnblocktype
;
707 static int hf_c15ch_orig_ni
;
708 static int hf_c15ch_orig_tn
;
709 static int hf_c15ch_orig_ni_tn
;
711 static int hf_c15ch_orig_dndigits
;
713 static int hf_c15ch_orig_nidscrn
;
714 static int hf_c15ch_orig_nidaddrtype
;
715 static int hf_c15ch_orig_nidnmbrplan
;
716 static int hf_c15ch_orig_nidprivind
;
717 static int hf_c15ch_orig_upnsaved
;
719 static int hf_c15ch_orig_upndigits
;
721 static int hf_c15ch_orig_upnscrn
;
722 static int hf_c15ch_orig_upnaddrtype
;
723 static int hf_c15ch_orig_upnnmbrplan
;
724 static int hf_c15ch_orig_upnprivind
;
725 static int hf_c15ch_orig_rnpsaved
;
727 static int hf_c15ch_orig_rnpdigits
;
729 static int hf_c15ch_orig_rnpscrn
;
730 static int hf_c15ch_orig_rnpaddrtype
;
731 static int hf_c15ch_orig_rnpnmbrplan
;
732 static int hf_c15ch_orig_rnpprivind
;
733 static int hf_c15ch_orig_iptime
;
736 /* labels for blocktype */
737 static const value_string c15ch_orig_block_types
[] = {
742 {4, "SHLF_BLOCK_DCM"},
759 {21, "CARD_TONE_TEST"},
761 {23, "CARD_EMTRK_2W"},
764 {26, "CARD_AUX_TONE"},
767 {29, "TAPE_PCB_REG"},
768 {30, "Q_INFO_BLOCK"},
769 {31, "CARD_OTG_LPTRK"},
770 {32, "CARD_MISC_LPTRK"},
775 {37, "CARD_EMT_PAD_SW"},
781 {43, "CARD_2PL_ZDB"},
782 {44, "CARD_MISC_ZDB"},
783 {45, "CARD_PPCL_ZDB"},
784 {46, "CARD_PE_PROC"},
785 {47, "CARD_SRL_ZDB"},
787 {49, "TWC_LINK_ORIG"},
788 {50, "TWC_LINK_ADDED"},
789 {51, "CWT_LINK_ORIG"},
790 {52, "CWT_LINK_WTNG"},
791 {53, "CARD_SPL_ZDB"},
795 {57, "CARD_ESB_ZDB"},
796 {58, "CARD_RCT_SPL"},
797 {59, "CARD_RCT_UVSL"},
798 {60, "CARD_RCT_FSR"},
799 {61, "CARD_RCT_SIMP"},
800 {62, "CARD_RCT_COIN"},
802 {64, "CARD_RMB_SHU"},
805 {67, "CARD_8PL_ZDB"},
806 {68, "TWC_LINK_HOLD"},
807 {69, "CWT_LINK_HOLD"},
808 {70, "XFER_LINK_ORIG"},
809 {71, "XFER_LINK_ADDED"},
810 {72, "CHD_LINK_HOLD"},
811 {73, "CHD_LINK_ACT"},
821 {83, "CARD_LCM_KEY"},
822 {84, "CARD_LCM_ESB"},
823 {85, "CARD_DRA_TRK"},
824 {86, "IOID_IOBLOCK"},
827 {89, "CARD_DLC_BRD"},
828 {90, "DLC_PORT_REG"},
830 {92, "AMA_RECORD_BUF"},
831 {93, "SSO_BULK_BUF"},
832 {94, "DLC_PORT_DBLK"},
833 {95, "CARD_LCM_PWR"},
835 {97, "CARD_SLC_SPL"},
836 {98, "CARD_SLC_SIMP"},
837 {99, "CARD_SLC_COIN"},
838 {100, "CARD_SLC_KEY"},
839 {101, "CARD_SLC_PBX"},
840 {102, "SLC_SHLF_BLOCK"},
842 {104, "DS1_LINK_BLOCK"},
843 {105, "SRLK_IFACE_DBLK"},
844 {106, "CARD_RLCM_LCT"},
848 {110, "CARD_RSLM_RMP"},
850 {112, "CARD_RMP_ITTK"},
851 {113, "SFTR_BUFFER"},
852 {114, "LFTR_BUFFER"},
853 {115, "LAN_LCI_BLOCK"},
854 {116, "LAN_LSHF_BLOCK"},
855 {117, "LAN_LSC_BLOCK"},
856 {118, "LEVEL3_BLOCK"},
857 {119, "LVL3_MTCE_REG"},
858 {120, "CCS_SNLS_BLOCK"},
859 {121, "CCS_SNL_BLOCK"},
860 {122, "CCS_SNRS_BLOCK"},
861 {123, "CCS_SNR_BLOCK"},
862 {124, "CCS_MTCE_REG"},
863 {125, "CARD_RMM_DTR"},
864 {126, "SMDI_PCB_REG"},
865 {127, "XLFTR_BUFFER"},
866 {128, "CARD_RCU_POTS"},
867 {129, "CARD_RCU_MF"},
868 {130, "CARD_RCU_COIN"},
869 {131, "CARD_RCU_FXB"},
870 {132, "CARD_RCU_MP"},
871 {133, "CARD_RCU_EPOT"},
872 {134, "CARD_RCU_KEY"},
873 {135, "CARD_RCU_EMF"},
874 {136, "CARD_RCU_FX_KEY"},
876 {138, "CARD_RCU_ESB"},
879 {141, "CARD_LCML_C" },
880 {142, "MBS_REG_BLK"},
883 {145, "CARD_PBX_CELL"},
885 {147, "RSC_D30L_BLOCK"},
886 {148, "RSC_DS1_REM_BLK"},
887 {149, "RSC_DS1_TRK_BLK"},
888 {150, "CARD_RSCS_DTRK" },
889 {151, "CARD_6X71_DATL"},
890 {152, "LOOP_DS30_LBK"},
891 {153, "LOOP_MLI_LBK"},
893 {155, "ISDN_REG_BLK"},
897 {159, "ISDN_PARDLD_BLK"},
898 {160, "ISDN_BD_CH_BLK"},
901 {163, "RDT_ISDN_CARD"},
902 {164, "RDT_P_PHONE"},
904 {166, "ESMA_DS1L_BLOCK"},
905 {167, "TRANSACT_REG"},
906 {168, "CARD_IDTL_SPL"},
907 {169, "CARD_IDTL_SIMP"},
908 {170, "CARD_IDTL_COIN"},
909 {171, "CARD_IDTL_KEY"},
910 {172, "CARD_IDTL_PBX"},
911 {173, "TAFFI_DATA_BLK"},
913 {175, "ISG_DCH_BLOCK"},
914 {176, "ISG_BCH_BLOCK"},
920 {182, "CARD_HUB_UMP"},
921 {183, "CARD_UMP_ITTK"},
922 {184, "CARD_UMP_TEST"},
923 {185, "CARD_PRI_MTCE"},
924 {186, "CARD_PRI_CHAN"},
925 {187, "CARD_EX17_A"},
927 {189, "CARD_LMU_TEST"},
928 {190, "HUB_DS1L_BLOCK"},
930 {192, "SIMRING_BLOCK"},
931 {193, "CARD_VIRTUAL_LINE"},
932 {194, "CARD_H248_SPL"},
933 {195, "CARD_H248_COIN"},
934 {196, "CARD_H248_PBX"},
939 {201, "CARD_SIP_SPL"},
941 {203, "PTRK_IFACE_BLK"},
943 {205, "CARD_H248_DTRK"},
944 {206, "DS1_LOOP_BLK"},
947 {209, "RDT_DS1L_BLOCK"},
948 {210, "CARD_MGCP_SPL"},
949 {211, "CARD_NCS_SPL"},
951 {213, "CARD_SIP_PBX"},
953 {215, "CCFN_LINK_BLK"},
958 static value_string_ext c15ch_orig_block_types_ext
= VALUE_STRING_EXT_INIT(c15ch_orig_block_types
);
962 static int hf_c15ch_outgwebc
;
963 static int hf_c15ch_outgwebc_pbc_conn_ni
;
964 static int hf_c15ch_outgwebc_pbc_conn_tn
;
965 static int hf_c15ch_outgwebc_pbc_conn_ni_tn
;
966 static int hf_c15ch_outgwebc_pbc_conn_num
;
967 static int hf_c15ch_outgwebc_pbc_conn_type
;
968 static int hf_c15ch_outgwebc_bc_msg_type
;
969 static int hf_c15ch_outgwebc_op_bc_sdp_ip
;
970 static int hf_c15ch_outgwebc_op_bc_sdp_port
;
971 static int hf_c15ch_outgwebc_pbc_mdrp_mode
;
972 static int hf_c15ch_outgwebc_pbc_tst_flags
;
977 static int hf_c15ch_pathfind
;
978 static int hf_c15ch_pathfind_vds30
;
980 static int hf_c15ch_pathfind_fromgweni
;
981 static int hf_c15ch_pathfind_fromgwetn
;
982 static int hf_c15ch_pathfind_fromgwenitn
;
983 static int hf_c15ch_pathfind_fromoptimized
;
984 static int hf_c15ch_pathfind_fromsite
;
985 static int hf_c15ch_pathfind_frompm
;
986 static int hf_c15ch_pathfind_frompc
;
987 static int hf_c15ch_pathfind_fromloop
;
988 static int hf_c15ch_pathfind_fromslot
;
989 static int hf_c15ch_pathfind_fromcnx
;
990 static int hf_c15ch_pathfind_fromni
;
991 static int hf_c15ch_pathfind_fromtn
;
992 static int hf_c15ch_pathfind_fromnitn
;
993 static int hf_c15ch_pathfind_togweni
;
994 static int hf_c15ch_pathfind_togwetn
;
995 static int hf_c15ch_pathfind_togwenitn
;
996 static int hf_c15ch_pathfind_tooptimized
;
997 static int hf_c15ch_pathfind_tosite
;
998 static int hf_c15ch_pathfind_topm
;
999 static int hf_c15ch_pathfind_topc
;
1000 static int hf_c15ch_pathfind_toloop
;
1001 static int hf_c15ch_pathfind_toslot
;
1002 static int hf_c15ch_pathfind_tocnx
;
1003 static int hf_c15ch_pathfind_toni
;
1004 static int hf_c15ch_pathfind_totn
;
1005 static int hf_c15ch_pathfind_tonitn
;
1007 /* value_string arrays to label fields */
1008 /* for vds30 field ...*/
1009 static const value_string c15ch_pathfind_vds30_types
[] = {
1012 { 2, "NEWSLOT_1_ADD_0" },
1013 { 3, "NEWSLOT_1_ADD_1" },
1021 static int hf_c15ch_pathidle
;
1022 static int hf_c15ch_pathidle_vds30
;
1023 static int hf_c15ch_pathidle_idlecode
;
1024 static int hf_c15ch_pathidle_pathtype
;
1026 static int hf_c15ch_pathidle_fromgweni
;
1027 static int hf_c15ch_pathidle_fromgwenitn
;
1028 static int hf_c15ch_pathidle_fromgwetn
;
1029 static int hf_c15ch_pathidle_fromsite
;
1030 static int hf_c15ch_pathidle_frompm
;
1031 static int hf_c15ch_pathidle_frompc
;
1032 static int hf_c15ch_pathidle_fromloop
;
1033 static int hf_c15ch_pathidle_fromslot
;
1034 static int hf_c15ch_pathidle_fromcnx
;
1035 static int hf_c15ch_pathidle_fromni
;
1036 static int hf_c15ch_pathidle_fromnitn
;
1037 static int hf_c15ch_pathidle_fromtn
;
1039 static int hf_c15ch_pathidle_togweni
;
1040 static int hf_c15ch_pathidle_togwenitn
;
1041 static int hf_c15ch_pathidle_togwetn
;
1042 static int hf_c15ch_pathidle_tosite
;
1043 static int hf_c15ch_pathidle_topm
;
1044 static int hf_c15ch_pathidle_topc
;
1045 static int hf_c15ch_pathidle_toloop
;
1046 static int hf_c15ch_pathidle_toslot
;
1047 static int hf_c15ch_pathidle_tocnx
;
1048 static int hf_c15ch_pathidle_toni
;
1049 static int hf_c15ch_pathidle_tonitn
;
1050 static int hf_c15ch_pathidle_totn
;
1053 /* for vds30 field */
1054 static const value_string c15ch_pathidle_vds30_types
[] = {
1057 { 2, "NEWSLOT_1_ADD_0" },
1058 { 3, "NEWSLOT_1_ADD_1" },
1063 /* for pathtype field */
1064 static const value_string c15ch_pathidle_path_types
[] = {
1071 { 6, "1WAY_CMBND" },
1073 { 8, "1WAY_2_UTR" },
1079 /* for idlecode field */
1080 static const value_string c15ch_pathidle_idle_types
[] = {
1091 static int hf_c15ch_q931
;
1092 static int hf_c15ch_q931_direction
;
1093 static int hf_c15ch_q931_ni
;
1094 static int hf_c15ch_q931_tn
;
1095 static int hf_c15ch_q931_ni_tn
;
1096 static int hf_c15ch_q931_msglength
;
1099 /* value_string arrays to label fields */
1100 /* for direction field */
1101 static const value_string c15ch_q931_direction_types
[] = {
1107 /* quality of service (qos) */
1110 static int hf_c15ch_qos
;
1111 static int hf_c15ch_qos_ni
;
1112 static int hf_c15ch_qos_tn
;
1113 static int hf_c15ch_qos_ni_tn
;
1114 static int hf_c15ch_qos_rtcp_call_id
;
1115 static int hf_c15ch_qos_register_type
;
1116 static int hf_c15ch_qos_tg_num
;
1117 static int hf_c15ch_qos_trk_type
;
1118 static int hf_c15ch_qos_status
;
1119 static int hf_c15ch_qos_codec
;
1120 static int hf_c15ch_qos_given_ip
;
1121 static int hf_c15ch_qos_real_ip
;
1122 static int hf_c15ch_qos_local_ip
;
1123 static int hf_c15ch_qos_tx_pkts
;
1124 static int hf_c15ch_qos_lost_pkts
;
1125 static int hf_c15ch_qos_lost_pct
;
1126 static int hf_c15ch_qos_jitter
;
1127 static int hf_c15ch_qos_rtt
;
1128 static int hf_c15ch_qos_avg_rtt
;
1129 static int hf_c15ch_qos_duration
;
1130 static int hf_c15ch_qos_mos
;
1131 static int hf_c15ch_qos_ep_type
;
1132 static int hf_c15ch_qos_dn_or_tg
;
1133 static int hf_c15ch_qos_pm
;
1134 static int hf_c15ch_qos_pc
;
1135 static int hf_c15ch_qos_hour
;
1136 static int hf_c15ch_qos_min
;
1137 static int hf_c15ch_qos_sec
;
1138 static int hf_c15ch_qos_tenth_sec
;
1139 static int hf_c15ch_qos_year
;
1140 static int hf_c15ch_qos_month
;
1141 static int hf_c15ch_qos_day
;
1142 static int hf_c15ch_qos_day_of_week
;
1145 /* value_string arrays to label fields */
1146 static const value_string ett_c15ch_qos_status_types
[] = {
1147 { 1, "NO : No RTCP received from End" },
1148 { 2, "LO : Listener Only" },
1149 { 4, "CV : Conversation" },
1150 { 8, "NAT : NAT Connection" },
1151 { 16, "RTU : RTCP terminated by RTU" },
1152 { 32, "EPERR : Endpoint providing erroneous data" },
1153 { 64, "INACT : Inactive" },
1160 static int hf_c15ch_route
;
1161 static int hf_c15ch_route_number
;
1162 static int hf_c15ch_route_type
;
1163 static int hf_c15ch_route_subpm
;
1164 static int hf_c15ch_route_trkpm
;
1165 static int hf_c15ch_route_strtaindo
;
1166 static int hf_c15ch_route_cr_rte_adv
;
1167 static int hf_c15ch_route_cause
;
1171 /* for strtaindo field */
1172 static const value_string c15_route_strt_ain_do_types
[] = {
1180 static const value_string c15_route_types
[] = {
1193 { 12, "TEST_LINE" },
1209 static value_string_ext c15_route_types_ext
= VALUE_STRING_EXT_INIT(c15_route_types
);
1212 static int hf_c15ch_sccp
;
1213 static int hf_c15ch_sccp_direction
;
1214 static int hf_c15ch_sccp_msgtype
;
1215 static int hf_c15ch_sccp_hopcount
;
1216 static int hf_c15ch_sccp_transactionnum
;
1217 static int hf_c15ch_sccp_opcmember
;
1218 static int hf_c15ch_sccp_opccluster
;
1219 static int hf_c15ch_sccp_opcnetwork
;
1220 static int hf_c15ch_sccp_dpcmember
;
1221 static int hf_c15ch_sccp_dpccluster
;
1222 static int hf_c15ch_sccp_dpcnetwork
;
1223 static int hf_c15ch_sccp_ni
;
1224 static int hf_c15ch_sccp_ni_tn
;
1225 static int hf_c15ch_sccp_tn
;
1226 static int hf_c15ch_sccp_sls
;
1227 static int hf_c15ch_sccp_iptime
;
1228 static int hf_c15ch_sccp_level3index
;
1231 static const value_string c15ch_sccp_direction_types
[] = {
1237 static const value_string c15ch_sccp_msg_types
[] = {
1248 static int hf_c15ch_srcedest
;
1249 static int hf_c15ch_srcedest_conntype
;
1250 static int hf_c15ch_srcedest_pathtype
;
1251 static int hf_c15ch_srcedest_pathdirect
;
1255 /* for conntype field */
1256 static const value_string c15_srcedest_conn_types
[] = {
1258 { 1, "CONN_PRT_SRCE" },
1259 { 2, "CONN_PRT_DEST" },
1260 { 3, "CONN_PRT_SRDS" },
1262 { 5, "DISC_PRT_SRCE" },
1263 { 6, "DISC_PRT_DEST" },
1264 { 7, "DISC_PRT_SRDS" },
1269 /* for pathtype field */
1270 static const value_string c15_srcedest_path_types
[] = {
1277 { 6, "1WAY_CMBND" },
1279 { 8, "1WAY_2_UTR" },
1287 static int hf_c15ch_tcap
;
1288 static int hf_c15ch_tcap_direction
;
1289 static int hf_c15ch_tcap_action
;
1290 static int hf_c15ch_tcap_package_type
;
1291 static int hf_c15ch_tcap_ssn
;
1292 static int hf_c15ch_tcap_local_ssn
;
1293 static int hf_c15ch_tcap_result_err_code
;
1294 static int hf_c15ch_tcap_return_reason
;
1295 static int hf_c15ch_tcap_feat_id
;
1296 static int hf_c15ch_tcap_feat_req
;
1297 static int hf_c15ch_tcap_cl_comp_result
;
1298 static int hf_c15ch_tcap_release_bit
;
1299 static int hf_c15ch_tcap_term_cl_request
;
1300 static int hf_c15ch_tcap_opc_index
;
1301 static int hf_c15ch_tcap_dpc_mem
;
1302 static int hf_c15ch_tcap_dpc_clus
;
1303 static int hf_c15ch_tcap_dpc_net
;
1304 static int hf_c15ch_tcap_cp_id
;
1307 static const value_string c15ch_tcap_action_types
[] = {
1309 { 1, "Output Msg" },
1310 { 2, "Abort Query" },
1313 { 5, "Msg Ret on Err" },
1317 static const value_string c15ch_tcap_package_types
[] = {
1319 { 1, "Unidirectional" },
1320 { 2, "Query W Perm" },
1321 { 3, "Query WO Perm" },
1323 { 5, "Conv W Perm" },
1324 { 6, "Conv WO Perm" },
1325 { 16, "Abort Package" },
1329 static const value_string c15ch_tcap_rel_bit_types
[] = {
1330 { 0, "Hold Buffer" },
1331 { 1, "Release Buffer" },
1335 static const value_string c15ch_tcap_ret_reason_types
[] = {
1338 { 2, "Subsys Cong" },
1339 { 3, "Subsys Fail" },
1340 { 4, "Unequip User" },
1342 { 6, "Ntwrk Cong" },
1346 static const value_string c15ch_tcap_err_code_types
[] = {
1347 { 0, "Class Succ" },
1348 { 1, "Cl Ret Err" },
1349 { 2, "T5 Timeout" },
1351 { 4, "No Resource" },
1354 { 7, "Abort Rcvd" },
1356 { 9, "Application" },
1357 { 10, "T1 Timeout" },
1358 { 11, "Return Err" },
1360 { 13, "MWI T1 TO" },
1364 static const value_string c15ch_tcap_feat_req_types
[] = {
1366 { 1, "Init Query" },
1367 { 2, "Send Notify" },
1372 { 7, "Report Err" },
1374 { 9, "Update Data" },
1376 { 11, "Term Notif" },
1378 { 13, "Query Request" },
1382 static const value_string c15ch_tcap_feat_id_types
[] = {
1386 { 3, "Ar 2Act 1st" },
1387 { 4, "Ar 2Act 2nd" },
1393 { 10, "SC RNG CFWD" },
1401 static const value_string c15ch_tcap_direction_types
[] = {
1409 static const value_string c15ch_tcap_local_ssn_types
[] = {
1410 { 0, "NO_SUBSYSTEM" },
1412 { 2, "CLAS_SUBSYS" },
1413 { 3, "CNAM_SUBSYS" },
1414 { 4, "LDMG_SUBSYS" },
1416 { 6, "E800_SUBSYS1" },
1417 { 7, "E800_SUBSYS2" },
1418 { 8, "E800_SUBSYS3" },
1419 { 9, "E800_SUBSYS4" },
1420 { 10, "E800_SUBSYS5" },
1421 { 11, "E800_SUBSYS6" },
1422 { 12, "E800_SUBSYS7" },
1423 { 13, "E800_SUBSYS8" },
1424 { 14, "E800_SUBSYS9" },
1425 { 15, "E800_SUBSYS10" },
1426 { 16, "E800_SUBSYS11" },
1427 { 17, "E800_SUBSYS12" },
1428 { 18, "E800_SUBSYS13" },
1429 { 19, "E800_SUBSYS14" },
1430 { 20, "E800_SUBSYS15" },
1431 { 21, "E800_SUBSYS16" },
1432 { 22, "E800_SUBSYS17" },
1433 { 23, "AIN_SUBSYS" },
1434 { 24, "MDSI_SUBSYS" },
1441 static int hf_c15ch_twc_rswch
;
1442 static int hf_c15ch_twc_rswch_pm
;
1443 static int hf_c15ch_twc_rswch_subpm
;
1444 static int hf_c15ch_twc_rswch_trkpm
;
1445 static int hf_c15ch_twc_rswch_devid
;
1446 static int hf_c15ch_twc_rswch_event
;
1447 static int hf_c15ch_twc_rswch_parm
;
1448 static int hf_c15ch_twc_rswch_iptime
;
1455 static int hf_c15ch_cp_event
;
1456 static int hf_c15ch_cp_event_pm
;
1457 static int hf_c15ch_cp_event_subpm
;
1458 static int hf_c15ch_cp_event_trkpm
;
1459 static int hf_c15ch_cp_event_dig_ckt_test_trkpm
;
1460 static int hf_c15ch_cp_event_devid
;
1461 static int hf_c15ch_cp_event_event
;
1462 static int hf_c15ch_cp_event_parm
;
1463 static int hf_c15ch_cp_event_iptime
;
1464 static int hf_c15ch_cp_event_subpm_orig
;
1465 static int hf_c15ch_cp_event_subpm_disc_time
;
1466 static int hf_c15ch_cp_event_subpm_revert
;
1467 static int hf_c15ch_cp_event_subpm_orig_dt
;
1468 static int hf_c15ch_cp_event_subpm_orig_ws
;
1469 static int hf_c15ch_cp_event_subpm_orig_dd
;
1470 static int hf_c15ch_cp_event_subpm_orig_id
;
1471 static int hf_c15ch_cp_event_subpm_no_test
;
1472 static int hf_c15ch_cp_event_subpm_dialing
;
1473 static int hf_c15ch_cp_event_subpm_rebuilt
;
1474 static int hf_c15ch_cp_event_subpm_acfw_reac
;
1475 static int hf_c15ch_cp_event_subpm_process_route
;
1476 static int hf_c15ch_cp_event_subpm_rte_line
;
1477 static int hf_c15ch_cp_event_subpm_mtce
;
1478 static int hf_c15ch_cp_event_subpm_aux_tone
;
1479 static int hf_c15ch_cp_event_subpm_noller
;
1480 static int hf_c15ch_cp_event_subpm_ittk
;
1481 static int hf_c15ch_cp_event_subpm_alm_send
;
1482 static int hf_c15ch_cp_event_subpm_ani_spill
;
1483 static int hf_c15ch_cp_event_subpm_trunk_term
;
1484 static int hf_c15ch_cp_event_subpm_line_term
;
1485 static int hf_c15ch_cp_event_subpm_non_cp
;
1486 static int hf_c15ch_cp_event_subpm_3wc
;
1487 static int hf_c15ch_cp_event_subpm_held_3wc
;
1488 static int hf_c15ch_cp_event_subpm_cwt
;
1489 static int hf_c15ch_cp_event_subpm_held_cwt
;
1490 static int hf_c15ch_cp_event_subpm_update_sc
;
1491 static int hf_c15ch_cp_event_subpm_orig_spdt
;
1492 static int hf_c15ch_cp_event_subpm_acfw_retm
;
1493 static int hf_c15ch_cp_event_subpm_cfw_busy
;
1494 static int hf_c15ch_cp_event_subpm_cfw
;
1495 static int hf_c15ch_cp_event_subpm_cfw_deact
;
1496 static int hf_c15ch_cp_event_subpm_rcfw
;
1497 static int hf_c15ch_cp_event_subpm_rotl_tp
;
1498 static int hf_c15ch_cp_event_subpm_chdt
;
1499 static int hf_c15ch_cp_event_subpm_chd
;
1500 static int hf_c15ch_cp_event_subpm_cheld
;
1501 static int hf_c15ch_cp_event_subpm_3wch
;
1502 static int hf_c15ch_cp_event_subpm_3wcw
;
1503 static int hf_c15ch_cp_event_subpm_cslt
;
1504 static int hf_c15ch_cp_event_subpm_dig_ckt_test
;
1506 static int hf_c15ch_cp_event_dig_ckt_test_subpm_sp
;
1507 static int hf_c15ch_cp_event_dig_ckt_test_subpm_mp
;
1508 static int hf_c15ch_cp_event_dig_ckt_test_subpm_coin
;
1509 static int hf_c15ch_cp_event_dig_ckt_test_subpm_isdn
;
1510 static int hf_c15ch_cp_event_dig_ckt_test_subpm_trc
;
1511 static int hf_c15ch_cp_event_dig_ckt_test_subpm_disc
;
1513 static int hf_c15ch_cp_event_subpm_nail
;
1514 static int hf_c15ch_cp_event_subpm_dcbi
;
1515 static int hf_c15ch_cp_event_subpm_rag_confirm
;
1516 static int hf_c15ch_cp_event_subpm_rag_process
;
1517 static int hf_c15ch_cp_event_subpm_e800
;
1518 static int hf_c15ch_cp_event_subpm_cfra
;
1519 static int hf_c15ch_cp_event_subpm_mwi_deac
;
1520 static int hf_c15ch_cp_event_subpm_acar_cp
;
1521 static int hf_c15ch_cp_event_subpm_acar_rering
;
1522 static int hf_c15ch_cp_event_subpm_acar_ann
;
1523 static int hf_c15ch_cp_event_subpm_sle
;
1524 static int hf_c15ch_cp_event_subpm_perform_cot
;
1525 static int hf_c15ch_cp_event_subpm_clid
;
1526 static int hf_c15ch_cp_event_subpm_xpm
;
1527 static int hf_c15ch_cp_event_subpm_mwil
;
1528 static int hf_c15ch_cp_event_subpm_ldbs
;
1529 static int hf_c15ch_cp_event_subpm_acr
;
1530 static int hf_c15ch_cp_event_subpm_call_park
;
1531 static int hf_c15ch_cp_event_subpm_camp_on_recall
;
1532 static int hf_c15ch_cp_event_subpm_cff
;
1533 static int hf_c15ch_cp_event_subpm_ibert
;
1534 static int hf_c15ch_cp_event_subpm_ain
;
1535 static int hf_c15ch_cp_event_subpm_ain_sit
;
1536 static int hf_c15ch_cp_event_subpm_ain_rtg
;
1537 static int hf_c15ch_cp_event_subpm_nail_bcon
;
1538 static int hf_c15ch_cp_event_subpm_nail_dcon
;
1539 static int hf_c15ch_cp_event_subpm_qtrn_trvr
;
1540 static int hf_c15ch_cp_event_subpm_ekts
;
1541 static int hf_c15ch_cp_event_subpm_alt
;
1542 static int hf_c15ch_cp_event_subpm_calea
;
1543 static int hf_c15ch_cp_event_subpm_sim_ring
;
1544 static int hf_c15ch_cp_event_subpm_lta
;
1545 static int hf_c15ch_cp_event_subpm_hgq
;
1546 static int hf_c15ch_cp_event_subpm_idle
;
1547 static int hf_c15ch_cp_event_subpm_sig
;
1548 static int hf_c15ch_cp_event_subpm_sig_dest
;
1549 static int hf_c15ch_cp_event_subpm_agl_splrg
;
1552 /*static const uint32_t MIN_PM_VAL = 0; */
1553 static const uint32_t MAX_PM_VAL
= 77;
1554 static int * subpm_table
[] = {
1555 /* one entry for each PM type */
1556 &hf_c15ch_cp_event_subpm_orig
, /* MIN_PM_VAL */
1557 &hf_c15ch_cp_event_subpm_disc_time
,
1558 &hf_c15ch_cp_event_subpm_revert
,
1559 &hf_c15ch_cp_event_subpm_orig_dt
,
1560 &hf_c15ch_cp_event_subpm_orig_ws
,
1561 &hf_c15ch_cp_event_subpm_orig_dd
,
1562 &hf_c15ch_cp_event_subpm_orig_id
,
1563 &hf_c15ch_cp_event_subpm_no_test
,
1564 &hf_c15ch_cp_event_subpm_dialing
,
1565 &hf_c15ch_cp_event_subpm_rebuilt
,
1566 &hf_c15ch_cp_event_subpm_acfw_reac
,
1567 &hf_c15ch_cp_event_subpm_process_route
,
1568 &hf_c15ch_cp_event_subpm_rte_line
,
1569 &hf_c15ch_cp_event_subpm_mtce
,
1570 &hf_c15ch_cp_event_subpm_aux_tone
,
1571 &hf_c15ch_cp_event_subpm_noller
,
1572 &hf_c15ch_cp_event_subpm_ittk
,
1573 &hf_c15ch_cp_event_subpm_alm_send
,
1574 &hf_c15ch_cp_event_subpm_ani_spill
,
1575 &hf_c15ch_cp_event_subpm_trunk_term
,
1576 &hf_c15ch_cp_event_subpm_line_term
,
1577 &hf_c15ch_cp_event_subpm_non_cp
,
1578 &hf_c15ch_cp_event_subpm_3wc
,
1579 &hf_c15ch_cp_event_subpm_held_3wc
,
1580 &hf_c15ch_cp_event_subpm_cwt
,
1581 &hf_c15ch_cp_event_subpm_held_cwt
,
1582 &hf_c15ch_cp_event_subpm_update_sc
,
1583 &hf_c15ch_cp_event_subpm_orig_spdt
,
1584 &hf_c15ch_cp_event_subpm_acfw_retm
,
1585 &hf_c15ch_cp_event_subpm_cfw_busy
,
1586 &hf_c15ch_cp_event_subpm_cfw
,
1587 &hf_c15ch_cp_event_subpm_cfw_deact
,
1588 &hf_c15ch_cp_event_subpm_rcfw
,
1589 &hf_c15ch_cp_event_subpm_rotl_tp
,
1590 &hf_c15ch_cp_event_subpm_chdt
,
1591 &hf_c15ch_cp_event_subpm_chd
,
1592 &hf_c15ch_cp_event_subpm_cheld
,
1593 &hf_c15ch_cp_event_subpm_3wch
,
1594 &hf_c15ch_cp_event_subpm_3wcw
,
1595 &hf_c15ch_cp_event_subpm_cslt
,
1596 &hf_c15ch_cp_event_subpm_dig_ckt_test
, /* default variable for dig ckt pm*/
1597 &hf_c15ch_cp_event_subpm_nail
,
1598 &hf_c15ch_cp_event_subpm_dcbi
,
1599 &hf_c15ch_cp_event_subpm_rag_confirm
,
1600 &hf_c15ch_cp_event_subpm_rag_process
,
1601 &hf_c15ch_cp_event_subpm_e800
,
1602 &hf_c15ch_cp_event_subpm_cfra
,
1603 &hf_c15ch_cp_event_subpm_mwi_deac
,
1604 &hf_c15ch_cp_event_subpm_acar_cp
,
1605 &hf_c15ch_cp_event_subpm_acar_rering
,
1606 &hf_c15ch_cp_event_subpm_acar_ann
,
1607 &hf_c15ch_cp_event_subpm_sle
,
1608 &hf_c15ch_cp_event_subpm_perform_cot
,
1609 &hf_c15ch_cp_event_subpm_clid
,
1610 &hf_c15ch_cp_event_subpm_xpm
,
1611 &hf_c15ch_cp_event_subpm_mwil
,
1612 &hf_c15ch_cp_event_subpm_ldbs
,
1613 &hf_c15ch_cp_event_subpm_acr
,
1614 &hf_c15ch_cp_event_subpm_call_park
,
1615 &hf_c15ch_cp_event_subpm_camp_on_recall
,
1616 &hf_c15ch_cp_event_subpm_cff
,
1617 &hf_c15ch_cp_event_subpm_ibert
,
1618 &hf_c15ch_cp_event_subpm_ain
,
1619 &hf_c15ch_cp_event_subpm_ain_sit
,
1620 &hf_c15ch_cp_event_subpm_ain_rtg
,
1621 &hf_c15ch_cp_event_subpm_nail_bcon
,
1622 &hf_c15ch_cp_event_subpm_nail_dcon
,
1623 &hf_c15ch_cp_event_subpm_qtrn_trvr
,
1624 &hf_c15ch_cp_event_subpm_ekts
,
1625 &hf_c15ch_cp_event_subpm_alt
,
1626 &hf_c15ch_cp_event_subpm_calea
,
1627 &hf_c15ch_cp_event_subpm_sim_ring
,
1628 &hf_c15ch_cp_event_subpm_lta
,
1629 &hf_c15ch_cp_event_subpm_hgq
,
1630 &hf_c15ch_cp_event_subpm_idle
,
1631 &hf_c15ch_cp_event_subpm_sig
,
1632 &hf_c15ch_cp_event_subpm_sig_dest
,
1633 &hf_c15ch_cp_event_subpm_agl_splrg
1636 static const uint32_t DIG_CKT_TEST_PM_VALUE
= 40;
1638 /* special table to look up subpm for pm_val = DIG_CKT_TEST__PM_VALUE */
1639 /* this table is indexed by trunk pm numbers */
1640 /*static const uint32_t MIN_DIG_CKT_TEST_TRKPM_VAL = 0; */
1641 static const uint32_t MAX_DIG_CKT_TEST_TRKPM_VAL
= 5;
1642 static int * dig_ckt_test_subpm_table
[] = {
1643 /* one entry for each TRKPM value in the expected range */
1644 &hf_c15ch_cp_event_dig_ckt_test_subpm_sp
, /* MIN_DIG_CKT_TEST_TRKPM_VAL */
1645 &hf_c15ch_cp_event_dig_ckt_test_subpm_mp
,
1646 &hf_c15ch_cp_event_dig_ckt_test_subpm_coin
,
1647 &hf_c15ch_cp_event_dig_ckt_test_subpm_isdn
,
1648 &hf_c15ch_cp_event_dig_ckt_test_subpm_trc
,
1649 &hf_c15ch_cp_event_dig_ckt_test_subpm_disc
/* MAX_DIG_CKT_TEST_TRKPM_VAL */
1652 static const value_string dig_ckt_test_subpm_sp_types
[] = {
1653 /* a value_string_ext for this has not been defined because it is a member of array dig_ckt_test_subpm_name_tables
1654 and the other members of that array all have less than 20 items */
1655 {0, "CRD_MSNG_TEST"},
1658 {3, "WAIT_CTU_SCA"},
1659 {4, "WAIT_ACM_CON"},
1661 {6, "SEND_ECHO_TONE"},
1662 {7, "ECHO_TONE_RESP"},
1663 {8, "SEND_ECHO_MEAS"},
1664 {9, "ECHO_MEAS_RESP"},
1665 {10, "SEND_STOP_ECHO_TONE"},
1666 {11, "STOP_ECHO_TONE_RESP"},
1669 {14, "POTS_OR_COIN"},
1670 {15, "RMOV_ASORB_P"},
1672 {17, "SEND_LOSS_TONE"},
1673 {18, "LOSS_TONE_RESP"},
1674 {19, "SEND_LOSS_MEAS"},
1675 {20, "LOSS_MEAS_RESP"},
1676 {21, "SEND_QUIET_TONE"},
1677 {22, "QUIET_TONE_RESP"},
1678 {23, "SEND_IDLE_MEAS"},
1679 {24, "IDLE_MEAS_RESP"},
1684 static const value_string dig_ckt_test_subpm_mp_types
[] = {
1704 static const value_string dig_ckt_test_subpm_coin_types
[] = {
1710 {5, "RFL_NTPI_TRM"},
1714 {9, "RFL_NTPI_RMV"},
1716 {11, "POS_C_TONE2"},
1717 {12, "POS_C_MEAS2"},
1721 {16, "RDT_C_RV_BT"},
1726 static const value_string dig_ckt_test_subpm_isdn_types
[] = {
1727 {0, "CRD_MSNG_TEST"},
1729 {2, "LC_RSTR_TEST"},
1731 {4, "NT1_RSTR_TST"},
1732 {5, "NT1_STAT_TEST"},
1739 static const value_string dig_ckt_test_subpm_trc_types
[] = {
1743 static const value_string dig_ckt_test_subpm_disc_types
[] = {
1747 static const value_string
* dig_ckt_test_subpm_name_tables
[] = {
1748 /* one entry for each TRKPM value in the expected range */
1749 dig_ckt_test_subpm_sp_types
,
1750 dig_ckt_test_subpm_mp_types
,
1751 dig_ckt_test_subpm_coin_types
,
1752 dig_ckt_test_subpm_isdn_types
,
1753 dig_ckt_test_subpm_trc_types
,
1754 dig_ckt_test_subpm_disc_types
1757 /* valid indexes run from MIN_DIG_CKT_TEST__TRKPM_VAL to MAX_DIG_CKT_TEST__TRKPM_VAL */
1758 static const value_string trkpm_dig_ckt_test_types
[] = {
1763 {4, "WAIT_TRC_RESP"},
1764 {5, "WAIT_DISC_CONN"},
1768 /* various subpm tables */
1769 static const value_string subpm_orig_types
[] = {
1772 {2, "P409_GRD_SRT"},
1777 {7, "WAIT_ICOT_RSRC"},
1779 {9, "WAIT_COT_MSG"},
1780 {10, "WT_COT_RCHK"},
1781 {11, "WT_MADN_TONE"},
1783 {13, "MADN_NOTONE"},
1784 {14, "FX_DIAL_DLAY"},
1785 {15, "WAIT_BD_RPY"},
1786 {16, "DELAY_IDTL_LKOT"},
1787 {17, "WT_H248_CTX1D"},
1788 {18, "WAIT_MSDN_PCA"},
1789 {19, "WT_H248_CTXAV"},
1794 static const value_string subpm_disc_time_types
[] = {
1800 {5, "WAIT_FX0_DSC"},
1804 static const value_string subpm_revert_types
[] = {
1820 static const value_string subpm_orig_dt_types
[] = {
1824 {3, "FX_DIAL_DLAY"},
1829 static const value_string subpm_orig_ws_types
[] = {
1832 {2, "FX_DIAL_DLAY"},
1836 static const value_string subpm_orig_dd_types
[] = {
1838 {1, "WAIT_HIT_DELAY"},
1839 {2, "WAIT_FOR_RCVR"},
1843 static const value_string subpm_orig_id_types
[] = {
1845 {1, "WAIT_FOR_RCVR"},
1849 static const value_string subpm_no_test_types
[] = {
1853 static const value_string subpm_dialing_types
[] = {
1855 {1, "DP_DGT_FIRST"},
1859 {5, "COLL_GIC_DIG"},
1860 {6, "CPW_PROG_1ST"},
1861 {7, "CPW_PROG_NXT"},
1862 {8, "COLL_SC_INDX"},
1863 {9, "CONFIRM_TONE"},
1864 {10, "WAIT_CONFIRM"},
1865 {11, "FX_SND_DLNG"},
1866 {12, "AUD_PROG_1ST"},
1867 {13, "AUD_PROG_NXT"},
1868 {14, "ISDN_FA_DLNG"},
1869 {15, "ISDN_CFW_NXT"},
1870 {16, "CLD_SCFW_FA"},
1871 {17, "WAIT_CNFR_PCA"},
1875 static const value_string subpm_rebuilt_types
[] = {
1878 {2, "REBILT_TIMIN"},
1883 static const value_string subpm_acfw_reac_types
[] = {
1886 {2, "PROVIDE_SPDT"},
1887 {3, "COLLECT_DIGS"},
1888 {4, "WAIT_ACT_CFM"},
1889 {5, "PROV_ACT_CFM"},
1893 static const value_string subpm_process_route_types
[] = {
1897 static const value_string subpm_rte_line_types
[] = {
1898 /* a value_string_ext has not been defined for this because it is a member of the array subpm_name_tables.
1899 This is the longest member of that array. There are also two members with 30-40 items. */
1909 {9, "RINGING_LINE"},
1911 {11, "ANSWER_TIME"},
1912 {12, "WAIT_TIMING"},
1913 {13, "WAIT_INC_COT"},
1914 {14, "WAIT_LCM_CLI"},
1915 {15, "WAIT_CNAM_RS"},
1916 {16, "WAIT_ACR_RES"},
1920 {20, "LTRK_SELECT"},
1921 {21, "FXS_DIAL_OPL"},
1922 {22, "LTRK_OPL_DLY"},
1923 {23, "LTRK_OPLSING"},
1924 {24, "LTRK_WT_ANS"},
1925 {25, "ISDN_RT_BRK"},
1926 {26, "ISDN_PRESENT"},
1927 {27, "ISDN_PROCDG"},
1928 {28, "ISDN_ALERTING"},
1929 {29, "PROGRESS_CLR"},
1930 {30, "WAIT_SCP_RSP"},
1932 {32, "EKTS_OFFERED"},
1933 {33, "TELE_WAIT_TCAP"},
1934 {34, "TELE_WAIT_COT_OR_TCAP"},
1935 {35, "TELE_TCAP_WAIT_COT"},
1936 {36, "TELE_WAIT_RCVR"},
1937 {37, "TELE_WAIT_ON_WINK"},
1938 {38, "TELE_WAIT_ON_COT"},
1939 {39, "TELE_VRDA_TRUNKS_BUSY"},
1940 {40, "TELE_OUTPULSE_BUSY"},
1941 {41, "TELE_WAIT_START"},
1942 {42, "TELE_COLLECT_DIG"},
1943 {43, "SRNG_NO_PDN"},
1945 {45, "MADN_H248_WAIT_CNXID"},
1946 {46, "MADN_ANS_WAIT_PCA"},
1947 {47, "TELE_WAIT_RCVR_PCA"},
1952 static const value_string subpm_mtce_types
[] = {
1958 static const value_string subpm_aux_tone_types
[] = {
1961 {2, "WAIT_FOR_TONE"},
1966 static const value_string subpm_noller_types
[] = {
1969 {2, "WAIT_MF_RCVR1"},
1973 {6, "WAIT_MF_RCVR2"},
1980 static const value_string subpm_ittk_types
[] = {
1982 {1, "WAIT_STRT_DLNG"},
1983 {2, "WAIT_FOR_RCVR"},
1984 {3, "TR_REV_DELAY"},
1988 {7, "WAIT_END_DLNG"},
1989 {8, "NRML_SUPRVSN"},
1990 {9, "BUSY_MONITOR"},
1996 {15, "IN_TEST__ID"},
1998 {17, "INTERCEPT_ID"},
2000 {19, "CK_TRUE_DISC"},
2001 {20, "WAIT_BI_SET"},
2002 {21, "WAIT_BYPASS_CONN"},
2003 {22, "WAIT_BI_CLR"},
2004 {23, "SLC_OUT_TEST"},
2005 {24, "WAIT_BURSTS"},
2007 {26, "FIRST_TONE_ON"},
2008 {27, "FIRST_TONE_OFF"},
2009 {28, "SECOND_TONE_ON"},
2010 {29, "SECOND_TONE_OFF"},
2011 {30, "THIRD_TONE_ON"},
2012 {31, "WAIT_SLEEVE"},
2014 {33, "WAIT_IDT/IDT_TO_MMB"},
2016 {35, "WAIT_IDT_BPS"},
2021 static const value_string subpm_alm_send_types
[] = {
2025 static const value_string subpm_ani_spill_types
[] = {
2027 {1, "WAIT_MF_RCVR"},
2030 {4, "COLLECT_CLG_DIG"},
2031 {5, "WT_ONI_ANIF_ST"},
2037 static const value_string subpm_trunk_term_types
[] = {
2041 {3, "COIN_COLLECT"},
2044 {6, "WT_DEST_RCVR"},
2045 {7, "WT_SRCE_RCVR"},
2048 {10, "HWL_INTR_RBK"},
2049 {11, "WT_HW_IT_RBK"},
2051 {13, "OS_FROM_DEST"},
2052 {14, "OS_FROM_SRCE"},
2053 {15, "TIME_CHG_CTL"},
2054 {16, "WAIT_CC_COL"},
2055 {17, "WAIT_CC_RET"},
2057 {19, "WAIT_CC_MFST"},
2058 {20, "WAIT_CC_ENBL"},
2059 {21, "WAIT_CC_DSBL"},
2064 {26, "WT_TLNK_HSHK"},
2065 {27, "WT_TLNK_SYNC"},
2066 {28, "WAIT_OUTPULSE_END"},
2067 {29, "WAIT_ALDP_TONE"},
2068 {30, "WAIT_OUTPULSE_DELAY"},
2069 {31, "WAIT_OSNC_CC"},
2070 {32, "WT_REPL_PCAV_TRK"},
2074 static const value_string subpm_line_term_types
[] = {
2076 {1, "NORM_TALKING"},
2078 {3, "COIN_COLLECT"},
2082 {7, "HWL_INTR_RRG"},
2083 {8, "WT_HW_IT_RRG"},
2085 {10, "SOURCE_TONE"},
2086 {11, "OVFL_RERING"},
2087 {12, "WAIT_BI_TONE"},
2090 {15, "TIME_CHG_CTL"},
2092 {17, "WT_TLNK_DLY"},
2093 {18, "WT_TLNK_HSHK"},
2094 {19, "WT_TLNK_SYNC"},
2095 {20, "WAIT_ALDP_TONE"},
2096 {21, "WT_PCAV_DCBI"},
2097 {22, "WT_REPL_PCAV"},
2101 static const value_string subpm_non_cp_types
[] = {
2102 {0, "CR_SUB_PM_ZERO"},
2103 {1, "ONHK_TEST_PED"},
2104 {2, "ONHK_TEST_RES"},
2105 {3, "PEPR_MTCE_STATE"},
2106 {4, "GEN_TIMING_REG"},
2107 {5, "CPT_CONNECTION"},
2108 {6, "OFHK_TEST_PED"},
2109 {7, "OFHK_TEST_RES"},
2110 {8, "CR_TIMING_TEST"},
2111 {9, "CR_SUB_PM_INVLD"},
2115 static const value_string subpm_twc_types
[] = {
2126 {10, "RESW_TRNSFER"},
2127 {11, "CSLT_XYGONE"},
2128 {12, "CSLT_XZGONE"},
2129 {13, "TALKY_XYGONE"},
2130 {14, "TALKY_XZGONE"},
2131 {15, "X_CLASS_ONLY"},
2132 {16, "RESW_XYGONE"},
2136 static const value_string subpm_held_3wc_types
[] = {
2137 {0, "CR_SUB_PM_ZERO"},
2138 {1, "ONHK_TEST_PED"},
2139 {2, "ONHK_TEST_RES"},
2140 {3, "PEPR_MTCE_STATE"},
2144 static const value_string subpm_cwt_types
[] = {
2148 static const value_string subpm_held_cwt_types
[] = {
2152 static const value_string subpm_update_sc_types
[] = {
2160 {7, "WAIT_SPDT_PCA"},
2161 {8, "WAIT_CNFM_PCA"},
2162 {9, "WT_H248_CTXID"},
2166 static const value_string subpm_acfw_retm_types
[] = {
2172 static const value_string subpm_cfw_busy_types
[] = {
2178 static const value_string subpm_cfw_types
[] = {
2186 static const value_string subpm_cfw_deact_types
[] = {
2189 {2, "PROV_DE_CPM"}, /* note that values are not continuous */
2190 {8, "WAIT_CNFR_PCA"},
2194 static const value_string subpm_rcfw_types
[] = {
2201 static const value_string subpm_rotl_tp_types
[] = {
2206 {4, "COL_TRK_INFO"},
2208 {6, "END_OUTPULSE"},
2215 {13, "COL_ID_DIGIT"},
2216 {14, "WAIT_SIGNAL"},
2217 {15, "WAIT_ST_SIG"},
2218 {16, "WAIT_ANI_SIG"},
2219 {17, "END_ANI_SPILL"},
2220 {18, "ROTLTP_ONHK"},
2221 {19, "COL_TG_INFO"},
2222 {20, "WAIT_TO_SEND"},
2223 {21, "WAIT_CONN_APR"},
2227 static const value_string subpm_chdt_types
[] = {
2238 static const value_string subpm_chd_types
[] = {
2248 static const value_string subpm_cheld_types
[] = {
2254 static const value_string subpm_dig_ckt_test_types
[] = {
2258 static const value_string subpm_nail_types
[] = {
2262 static const value_string subpm_dcbi_types
[] = {
2265 {2, "DCBI_RESW_XY"},
2266 {3, "DCBI_RESW_YZ"},
2270 static const value_string subpm_rag_confirm_types
[] = {
2277 static const value_string subpm_rag_process_types
[] = {
2286 {8, "WT_H248_CTXID"},
2290 static const value_string subpm_e800_types
[] = {
2297 {6, "WT_FGD_CLDKP"},
2301 {10, "DLY_2ND_STG"},
2306 static const value_string subpm_cfra_types
[] = {
2320 {13, "PIN_COLLECT"},
2322 {15, "ACT_DACT_COL"},
2324 {17, "FWD_TO_COLL"},
2325 {18, "WT_DACT_CNFR"},
2326 {19, "WT_ACT_CNFR"},
2331 static const value_string subpm_mwi_deac_types
[] = {
2332 {0, "SETUP_CONFRM"},
2338 static const value_string subpm_acar_cp_types
[] = {
2341 {2, "ACAR_CALL_PMS"},
2345 static const value_string subpm_acar_rering_types
[] = {
2350 {4, "WAIT_FINAL_Q"},
2351 {5, "WT_H248_CTXID"},
2355 static const value_string subpm_acar_ann_types
[] = {
2359 {3, "DRA_MSG_BUSY"},
2360 {4, "DRA_MSG_WAIT"},
2362 {6, "DRA_MSG_DIAL"},
2364 {8, "WT_TCAP_RESP"},
2365 {9, "GET_CONF_DIG"},
2366 {10, "WAIT_RCVR_PCA"},
2370 static const value_string subpm_sle_types
[] = {
2381 {10, "REPEAT_ANNC"},
2383 {12, "CA_FA_CNFRM"},
2384 {13, "INVALID_CMD"},
2388 static const value_string subpm_perform_cot_types
[] = {
2392 {3, "DRA_MSG_BUSY"},
2393 {4, "DRA_MSG_WAIT"},
2395 {6, "DRA_MSG_DIAL"},
2399 {10, "WAIT_RCVR_PCA"},
2403 static const value_string subpm_clid_types
[] = {
2410 {6, "WAIT_CONFIRM"},
2411 {7, "WAIT_SRCE_DS"},
2412 {8, "WAIT_CNFR_PCA"},
2416 static const value_string subpm_xpm_types
[] = {
2420 static const value_string subpm_mwil_types
[] = {
2432 static const value_string subpm_ldbs_types
[] = {
2440 static const value_string subpm_acr_types
[] = {
2447 {6, "WAIT_CONFIRM"},
2448 {7, "WAIT_SRCE_DS"},
2452 static const value_string subpm_call_park_types
[] = {
2454 {1, "COLL_1ST_DIG"},
2455 {2, "COLL_NTH_DIG"},
2457 {4, "TONE_CONN_XY"},
2459 {6, "YPARK_WT_RBK"},
2460 {7, "YPARK_XRERNG"},
2461 {8, "X_WT_CONFIRM"},
2464 {11, "ISDN_RERING"},
2465 {12, "WT_PCAV_CXID"},
2469 static const value_string subpm_camp_on_recall_types
[] = {
2473 static const value_string subpm_cff_types
[] = {
2476 {2, "PROVIDE_CNFRM"},
2477 {3, "WAIT_CNFR_PCA"},
2481 static const value_string subpm_ibert_types
[] = {
2487 {5, "RSET_CNT_ACK"},
2488 {6, "FND_PT_2_TST"},
2490 {8, "WT_STAT_RSLT"},
2494 {12, "WT_TCM_SYNC"},
2498 static const value_string subpm_ain_types
[] = {
2505 {6, "DRA_MSG_BUSY"},
2506 {7, "DRA_MSG_WAIT"},
2507 {8, "DRA_MSG_PLAY"},
2508 {9, "DRA_COL_DIGS"},
2509 {10, "WAIT_RCVR_PCA"},
2513 static const value_string subpm_ain_sit_types
[] = {
2515 {1, "DLY_B4_1ST_WINK"},
2516 {2, "WAIT_FOR_RCVR"},
2517 {3, "WAIT_FOR_1ST_KP"},
2519 {5, "WAIT_FOR_ANI"},
2520 {6, "WAIT_FOR_CLD_KP"},
2521 {7, "WAIT_FOR_CLD"},
2522 {8, "DLY_B4_2ND_WINK"},
2526 static const value_string subpm_ain_rtg_types
[] = {
2528 {1, "REAL_TIME_BR"},
2532 static const value_string subpm_nail_bcon_types
[] = {
2533 {0, "START_NAIL_CONN"},
2534 {1, "WAIT_SCM_RESP"},
2535 {2, "FINISH_NAIL_CONN"},
2539 static const value_string subpm_nail_dcon_types
[] = {
2540 {0, "START_NAIL_CONN"},
2541 {1, "WAIT_SCM_RESP"},
2542 {2, "FINISH_NAIL_CONN"},
2546 static const value_string subpm_qtrn_trvr_types
[] = {
2550 static const value_string subpm_ekts_types
[] = {
2568 static const value_string subpm_alt_types
[] = {
2575 static const value_string subpm_calea_types
[] = {
2579 static const value_string subpm_sim_ring_types
[] = {
2581 {1, "GO_XLATE_NPMDN"},
2582 {2, "GO_DISC_NPMDN"},
2586 static const value_string subpm_lta_types
[] = {
2588 {1, "WAIT_CONN_SLACC"},
2589 {2, "WAIT_MTA_CONN"},
2590 {3, "SEND_LOOPARND_RMV"},
2591 {4, "WAIT_MTA_LOOPARND_RMV"},
2593 {6, "TL1_MSG_RSP_DLY"},
2594 {7, "CHG_DIR_RSP_DLY"},
2595 {8, "WAIT_MTA_DISC_RSP"},
2596 {9, "WAIT_MTA_REPSTAT_RPLY"},
2597 {10, "WAIT_BYPASS"},
2600 {13, "WAIT_IDT_BPS"},
2602 /* 15 is undefined */
2603 {16, "TL1_RESP_DELY"},
2604 {17, "WAIT_CU_TEST_FINISH"},
2605 {18, "WAIT_MTA_THEN_BREAK_CONN"},
2606 {19, "IDT_VIRT_WAIT_MMB"},
2607 {20, "IDT_VIRT_TRC_CONNECT"},
2608 {21, "IDT_VIRT_TRC_RSP_WAIT"},
2609 {22, "IDT_VIRT_TRC_DISC_WAIT"},
2613 static const value_string subpm_hgq_types
[] = {
2617 static const value_string subpm_idle_types
[] = {
2621 static const value_string subpm_sig_types
[] = {
2625 {3, "WT_CNAM_RESP"},
2626 {4, "WT_DSIG_CONN"},
2627 {5, "WT_XMIT_TONE"},
2629 {7, "WT_DSIG_DISC"},
2635 static const value_string subpm_sig_dest_types
[] = {
2639 {3, "WT_DEST_CONN"},
2640 {4, "WT_DST_INTERCOM"},
2645 static const value_string subpm_agl_splrg_types
[] = {
2648 {2, "WT_H248_CTXID"},
2652 static const value_string
* subpm_name_tables
[] = {
2654 subpm_disc_time_types
,
2656 subpm_orig_dt_types
,
2657 subpm_orig_ws_types
,
2658 subpm_orig_dd_types
,
2659 subpm_orig_id_types
,
2660 subpm_no_test_types
,
2661 subpm_dialing_types
,
2662 subpm_rebuilt_types
,
2663 subpm_acfw_reac_types
,
2664 subpm_process_route_types
,
2665 subpm_rte_line_types
,
2667 subpm_aux_tone_types
,
2670 subpm_alm_send_types
,
2671 subpm_ani_spill_types
,
2672 subpm_trunk_term_types
,
2673 subpm_line_term_types
,
2675 subpm_twc_types
, /*index 22 : this is the same as at index 37 and index 38 */
2676 subpm_held_3wc_types
, /*index 23 : this is the same as at index 39 */
2678 subpm_held_cwt_types
,
2679 subpm_update_sc_types
,
2680 subpm_orig_dt_types
, /* index 27 : this is the same as at index 3 */
2681 subpm_acfw_retm_types
,
2682 subpm_cfw_busy_types
,
2683 subpm_cfw_types
, /* index 30 */
2684 subpm_cfw_deact_types
,
2686 subpm_rotl_tp_types
,
2690 subpm_twc_types
, /*index 37 : this is the same as at index 22 and index 38 */
2691 subpm_twc_types
, /*index 38 : this is the same as at index 22 and index 37 */
2692 subpm_held_3wc_types
, /*index 39 : this is the same as at index 23 */
2693 subpm_dig_ckt_test_types
, /* default for dig_ckt */
2696 subpm_rag_confirm_types
,
2697 subpm_rag_process_types
,
2700 subpm_mwi_deac_types
,
2701 subpm_acar_cp_types
,
2702 subpm_acar_rering_types
,
2703 subpm_acar_ann_types
, /* index 50 */
2705 subpm_perform_cot_types
,
2711 subpm_call_park_types
,
2712 subpm_camp_on_recall_types
,
2713 subpm_cff_types
, /* index 60 */
2716 subpm_ain_sit_types
,
2717 subpm_ain_rtg_types
,
2718 subpm_nail_bcon_types
,
2719 subpm_nail_dcon_types
,
2720 subpm_qtrn_trvr_types
,
2723 subpm_calea_types
, /* index 70 */
2724 subpm_sim_ring_types
,
2729 subpm_sig_dest_types
,
2730 subpm_agl_splrg_types
2733 /* for pm field ...*/
2734 static const value_string c15_pm_types
[] = {
2815 static value_string_ext c15_pm_types_ext
= VALUE_STRING_EXT_INIT(c15_pm_types
);
2817 static const value_string c15_dev_types
[] = {
2851 static value_string_ext c15_dev_types_ext
= VALUE_STRING_EXT_INIT(c15_dev_types
);
2852 static const value_string c15_event_types
[] = {
2969 static value_string_ext c15_event_types_ext
= VALUE_STRING_EXT_INIT(c15_event_types
);
2971 #define C15_INC_GWE_NONE 0
2972 #define C15_INC_GWE_REPLY 1
2973 #define C15_INC_GWE_BC_PGI 2
2974 #define C15_INC_GWE_MGCP_DLCX 3
2975 #define C15_INC_GWE_H248_DIGIT 4
2976 #define C15_INC_GWE_VOIP_COT 5
2977 #define C15_INC_GWE_NOTIFY 6
2978 #define C15_INC_GWE_ADMN_UPDT_REC 7
2979 #define C15_INC_GWE_CL_SETUP 8
2980 #define C15_INC_GWE_PTRK_SETUP 9
2981 #define C15_INC_GWE_CL_PROG 10
2982 #define C15_INC_GWE_CL_ANS 11
2983 #define C15_INC_GWE_CL_REL 12
2984 #define C15_INC_GWE_NTWK_MOD 13
2985 #define C15_INC_GWE_RV_AVAIL 14
2986 #define C15_INC_GWE_CL_REDIR 15
2987 #define C15_INC_GWE_CL_REFER 16
2988 #define C15_INC_GWE_CHG_HDL 17
2989 #define C15_INC_GWE_SUBS_CHG_HDL 18
2990 #define C15_INC_GWE_INFO 19
2991 #define C15_INC_GWE_INV_REPL 20
2992 #define C15_INC_GWE_ADMN_DN 21
2993 #define C15_INC_GWE_SUA_REPLY 22
2994 #define C15_INC_GWE_SUA_HNDL 23
2995 #define C15_INC_GWE_SUA_TGH_STAT 24
2998 /* Dissector Table */
2999 static dissector_table_t c15ch_inc_gwe_dissector_table
;
3002 static int hf_c15ch_inc_gwe
;
3003 static int hf_c15ch_inc_gwe_ni
;
3004 static int hf_c15ch_inc_gwe_tn
;
3005 static int hf_c15ch_inc_gwe_ni_tn
;
3006 static int hf_c15ch_inc_gwe_taskid
;
3007 static int hf_c15ch_inc_gwe_fiatid_invalid
;
3008 static int hf_c15ch_inc_gwe_fiatid_bc
;
3009 static int hf_c15ch_inc_gwe_fiatid_mtce
;
3010 static int hf_c15ch_inc_gwe_fiatid_om
;
3011 static int hf_c15ch_inc_gwe_fiatid_h248
;
3012 static int hf_c15ch_inc_gwe_fiatid_sua
;
3013 static int hf_c15ch_inc_gwe_fiatid_mgcp
;
3014 static int hf_c15ch_inc_gwe_fiatid_sip_notify
;
3015 static int hf_c15ch_inc_gwe_fiatid_admn
;
3016 static int hf_c15ch_inc_gwe_datatype
;
3022 static int * fiatid_table
[] = {
3023 /* one entry for each Task type */
3024 &hf_c15ch_inc_gwe_fiatid_invalid
,
3025 &hf_c15ch_inc_gwe_fiatid_bc
,
3026 &hf_c15ch_inc_gwe_fiatid_mtce
,
3027 &hf_c15ch_inc_gwe_fiatid_om
,
3028 &hf_c15ch_inc_gwe_fiatid_h248
,
3029 &hf_c15ch_inc_gwe_fiatid_sua
,
3030 &hf_c15ch_inc_gwe_fiatid_mgcp
,
3031 &hf_c15ch_inc_gwe_fiatid_sip_notify
,
3032 &hf_c15ch_inc_gwe_fiatid_admn
3035 /*static const uint8_t FIRST_TASK_TYPE_INDEX = 0;*/
3036 static const uint8_t LAST_TASK_TYPE_INDEX
= 8;
3039 static const value_string c15inc_gwe_task_types
[] = {
3040 { 0, "GWE_TK_INVALID" },
3042 { 2, "GWE_TK_MTCE" },
3044 { 4, "GWE_TK_H248" },
3045 { 5, "GWE_TK_SUA" },
3046 { 6, "GWE_TK_MGCP" },
3047 { 7, "GWE_TK_SIP_NOTIFY" },
3048 { 8, "GWE_TK_ADMN" },
3053 static const uint8_t INVALID_TASK_TYPE_VAL
;
3056 static const value_string c15inc_gwe_bc_fiat_types
[] = {
3057 { 0, "GW_FT_INVALID" },
3058 { 1, "GWE_FT_REPLY" },
3059 { 2, "GWE_FT_BC_PGI" },
3060 { 3, "GWE_FT_MGCP_DLCX" },
3064 static const value_string c15inc_gwe_mtce_fiat_types
[] = {
3065 { 0, "GW_FT_INVALID" },
3066 { 1, "GWE_FT_REPLY" },
3067 { 2, "GWE_FT_GRACEFUL" },
3068 { 3, "GWE_FT_FORCED" },
3069 { 4, "GWE_FT_RESTART" },
3070 { 5, "GWE_FT_DISCNCT" },
3071 { 6, "GWE_FT_HANDOFF" },
3072 { 7, "GWE_FT_FAILOVER" },
3073 { 8, "GWE_FT_LN_DLCX" },
3074 { 9, "GWE_FT_LN_GRCFL" },
3075 { 10, "GWE_FT_LN_FRCD" },
3076 { 11, "GWE_FT_LN_RSTRT" },
3077 { 12, "GWE_FT_DS1_GRCFL" },
3078 { 13, "GWE_FT_DS1_FRCD" },
3079 { 14, "GWE_FT_DS1_RSTRT" },
3080 { 15, "GWE_FT_TRK_GRCFL" },
3081 { 16, "GWE_FT_TRK_FRCD" },
3082 { 17, "GWE_FT_TRK_RSTRT" },
3083 { 18, "GWE_FT_ALLDS1_GRCL" },
3084 { 19, "GWE_FT_ALLDS1_FRCD" },
3085 { 20, "GWE_FT_ALLDS1_GRCFL" },
3086 { 21, "GWE_FT_LN_DISCNCT" },
3090 static const value_string c15inc_gwe_om_fiat_types
[] = {
3091 { 0, "GW_FT_INVALID" },
3092 { 1, "GWE_FT_REPLY" },
3096 static const value_string c15inc_gwe_h248_fiat_types
[] = {
3097 { 0, "GW_FT_INVALID" },
3098 { 1, "GWE_FT_REPLY" },
3099 { 2, "GWE_FT_OFHK" },
3100 { 3, "GWE_FT_ONHK" },
3101 { 4, "GWE_FT_DIGIT" },
3102 { 5, "GWE_FT_FLASH" },
3103 { 6, "GWE_FT_COT" },
3104 { 7, "GWE_FT_FAX_NTFY" },
3105 { 8, "GWE_FT_MDM_NTFY" },
3109 static const value_string c15inc_gwe_mgcp_fiat_types
[] = {
3110 { 0, "GW_FT_INVALID" },
3111 { 1, "GWE_FT_REPLY" },
3112 { 2, "GWE_FT_OFHK" },
3113 { 3, "GWE_FT_ONHK" },
3114 { 4, "GWE_FT_DIGIT" },
3115 { 5, "GWE_FT_FLASH" },
3116 { 6, "GWE_FT_COT" },
3117 { 7, "GWE_FT_FAX_NTFY" },
3118 { 8, "GWE_FT_MDM_NTFY" },
3122 static const value_string c15inc_gwe_sua_fiat_types
[] = {
3123 { 0, "GW_FT_INVALID" },
3124 { 1, "GWE_FT_REPLY" },
3125 { 2, "GWE_FT_OFHK" },
3126 { 3, "GWE_FT_ONHK" },
3127 { 4, "GWE_FT_CL_SETUP" },
3128 { 5, "GWE_FT_CL_PROG" },
3129 { 6, "GWE_FT_CL_ANS" },
3130 { 7, "GWE_FT_CL_REL" },
3131 { 8, "GWE_FT_NTWK_MOD" },
3132 { 9, "GWE_FT_RV_AVAIL" },
3133 { 10, "GWE_FT_CL_REDIR" },
3134 { 11, "GWE_FT_CL_REFER" },
3135 { 12, "GWE_FT_PTRK_CL_SETUP" },
3136 { 13, "GWE_FT_CHG_HDL" },
3137 { 14, "GWE_FT_SUBS_CHG_HDL" },
3138 { 15, "GWE_FT_INFO" },
3139 { 16, "GWE_FT_INV_REPL" },
3140 { 17, "GWE_FT_TGH_STAT" },
3144 static const value_string c15inc_gwe_sip_notify_fiat_types
[] = {
3145 { 0, "GWE_FT_MWI_NOTIFY" },
3146 { 1, "GWE_FT_REMINDER_NOTIFY" },
3147 { 2, "GWE_FT_REFER_NOTIFY" },
3151 static const value_string c15inc_gwe_admn_fiat_types
[] = {
3152 { 0, "GWE_FT_INVALID" },
3153 { 1, "GWE_FT_ADMN_SUBS" },
3154 { 2, "GWE_FT_ADMN_UNSUBS" },
3155 { 3, "GWE_FT_ADMN_UPDT_REC_ADDR" },
3156 { 4, "GWE_FT_ADMN_UA_RESP" },
3160 static const value_string
* fiat_name_tables
[] = {
3161 /* correspond to members of c15inc_gwe_task_types */
3162 NULL
, /* corresponds to c15inc_gwe_task_types[0] i.e. GWE_TK_INVALID */
3163 c15inc_gwe_bc_fiat_types
,
3164 c15inc_gwe_mtce_fiat_types
,
3165 c15inc_gwe_om_fiat_types
,
3166 c15inc_gwe_h248_fiat_types
,
3167 c15inc_gwe_sua_fiat_types
,
3168 c15inc_gwe_mgcp_fiat_types
,
3169 c15inc_gwe_sip_notify_fiat_types
,
3170 c15inc_gwe_admn_fiat_types
3172 static const uint8_t FIRST_FIAT_NAME_TABLE_INDEX
= 1; /* First valid index. */
3173 static const uint8_t LAST_FIAT_NAME_TABLE_INDEX
= 8;
3175 static const value_string c15inc_gwe_types
[] = {
3176 { C15_INC_GWE_NONE
, "IN_DATA_NONE" },
3177 { C15_INC_GWE_REPLY
, "REPLY" },
3178 { C15_INC_GWE_BC_PGI
, "BC_PGI" },
3179 { C15_INC_GWE_MGCP_DLCX
, "MGCP_DLCX" },
3180 { C15_INC_GWE_H248_DIGIT
, "H248_DIGIT" },
3181 { C15_INC_GWE_VOIP_COT
, "VOIP_COT" },
3182 { C15_INC_GWE_NOTIFY
, "NOTIFY" },
3183 { C15_INC_GWE_ADMN_UPDT_REC
, "ADMN_UPDT_REC" },
3184 { C15_INC_GWE_CL_SETUP
, "CL_SETUP" },
3185 { C15_INC_GWE_PTRK_SETUP
, "PTRK_SETUP" },
3186 { C15_INC_GWE_CL_PROG
, "CL_PROG" },
3187 { C15_INC_GWE_CL_ANS
, "CL_ANS" },
3188 { C15_INC_GWE_CL_REL
, "CL_REL" },
3189 { C15_INC_GWE_NTWK_MOD
, "NTWK_MOD" },
3190 { C15_INC_GWE_RV_AVAIL
, "RV_AVAIL" },
3191 { C15_INC_GWE_CL_REDIR
, "CL_REDIR" },
3192 { C15_INC_GWE_CL_REFER
, "CL_REFER" },
3193 { C15_INC_GWE_CHG_HDL
, "CHG_HDL" },
3194 { C15_INC_GWE_SUBS_CHG_HDL
, "SUBS_CHG_HDL" },
3195 { C15_INC_GWE_INFO
, "INFO" },
3196 { C15_INC_GWE_INV_REPL
, "INV_REPL" },
3197 { C15_INC_GWE_ADMN_DN
, "ADMN_DN" },
3198 { C15_INC_GWE_SUA_REPLY
, "INC_SUA_REPLY" },
3199 { C15_INC_GWE_SUA_HNDL
, "INC_SUA_HANDL" },
3200 { C15_INC_GWE_SUA_TGH_STAT
, "INC_SUA_TGH_STAT" },
3203 static value_string_ext c15inc_gwe_types_ext
= VALUE_STRING_EXT_INIT(c15inc_gwe_types
);
3205 /* Protocol for all third-level Inc GWE dissection */
3206 static int proto_c15ch_third_level_inc_gwe
;
3208 static int ett_c15ch_third_level_inc_gwe
;
3209 static int ett_c15ch_third_level_inc_gwe_sub1
;
3213 static int hf_c15ch_inc_gwe_admn_dn
;
3214 static int hf_c15ch_inc_gwe_admn_dn_ip_gwe_sua_hndl
;
3215 static int hf_c15ch_inc_gwe_admn_dn_ip_gwe_digits
;
3219 static int hf_c15ch_inc_gwe_admn_updt
;
3220 static int hf_c15ch_inc_gwe_admn_updt_ip_gwe_med_ni
;
3221 static int hf_c15ch_inc_gwe_admn_updt_ip_gwe_med_tn
;
3222 static int hf_c15ch_inc_gwe_admn_updt_ip_gwe_med_ni_tn
;
3223 static int hf_c15ch_inc_gwe_admn_updt_ip_ns_iface
;
3224 static int hf_c15ch_inc_gwe_admn_updt_ip_ns_terminal
;
3225 static int hf_c15ch_inc_gwe_admn_updt_ip_gwe_new_rec_addr
;
3228 static int hf_c15ch_inc_gwe_bc_pgi
;
3229 static int hf_c15ch_inc_gwe_bc_pgi_pbc_conn_num
;
3230 static int hf_c15ch_inc_gwe_bc_pgi_pbc_conn_type
;
3231 static int hf_c15ch_inc_gwe_bc_pgi_pbc_msg_type
;
3232 static int hf_c15ch_inc_gwe_bc_pgi_bc_mode
;
3233 static int hf_c15ch_inc_gwe_bc_pgi_bc_pgi_sdp
;
3234 static int hf_c15ch_inc_gwe_bc_pgi_bc_pgi_m_port
;
3235 static int hf_c15ch_inc_gwe_bc_pgi_pbc_tst_flags
;
3238 static const value_string c15_inc_gwe_bc_pgi_pbc_conn_types
[] = {
3239 { 1, "TDM Internetworking" },
3240 { 2, "Media Portal" },
3241 { 3, "Conference" },
3242 { 4, "Optimized Conn" },
3248 static int ett_c15ch_inc_gwe_bc_pgi
;
3252 static int hf_c15ch_inc_gwe_chg_hndl
;
3253 static int hf_c15ch_inc_gwe_chg_hndl_ip_gwe_sua_hndl
;
3254 static int hf_c15ch_inc_gwe_chg_hndl_ip_gwe_new_hndl
;
3258 static int hf_c15ch_inc_gwe_cl_ans
;
3259 static int hf_c15ch_inc_gwe_cl_ans_ip_gwe_sua_hndl
;
3260 static int hf_c15ch_inc_gwe_cl_ans_ip_gwe_conn_num
;
3261 static int hf_c15ch_inc_gwe_cl_ans_ip_cl_ans_lsdp
;
3262 static int hf_c15ch_inc_gwe_cl_ans_ip_cl_ans_m_port
;
3263 static int hf_c15ch_inc_gwe_cl_ans_encap_isup
;
3266 static int hf_c15ch_inc_gwe_cl_prog
;
3267 static int hf_c15ch_inc_gwe_cl_prog_ip_gwe_sua_hndl
;
3268 static int hf_c15ch_inc_gwe_cl_prog_ip_gwe_conn_num
;
3269 static int hf_c15ch_inc_gwe_cl_prog_ip_cl_prog_lsdp
;
3270 static int hf_c15ch_inc_gwe_cl_prog_ip_cl_prog_m_port
;
3271 static int hf_c15ch_inc_gwe_cl_prog_ip_gwe_stat_code
;
3272 static int hf_c15ch_inc_gwe_cl_prog_encap_isup
;
3275 static int hf_c15ch_inc_gwe_cl_redir
;
3276 static int hf_c15ch_inc_gwe_cl_redir_ip_gwe_sua_hndl
;
3277 static int hf_c15ch_inc_gwe_cl_redir_ip_gwe_conn_num
;
3278 static int hf_c15ch_inc_gwe_cl_redir_ip_gwe_redir_digits
;
3282 static int hf_c15ch_inc_gwe_cl_refer
;
3283 static int hf_c15ch_inc_gwe_cl_refer_ip_gwe_sua_hndl
;
3284 static int hf_c15ch_inc_gwe_cl_refer_ip_gwe_conn_num
;
3285 static int hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_digits
;
3286 static int hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_ni
;
3287 static int hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_tn
;
3288 static int hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_ni_tn
;
3292 static int hf_c15ch_inc_gwe_cl_rel
;
3293 static int hf_c15ch_inc_gwe_cl_rel_ip_gwe_sua_hndl
;
3294 static int hf_c15ch_inc_gwe_cl_rel_ip_gwe_conn_num
;
3295 static int hf_c15ch_inc_gwe_cl_rel_ip_gwe_stat_code
;
3296 static int hf_c15ch_inc_gwe_cl_rel_encap_isup
;
3301 static int hf_c15ch_inc_gwe_cl_setup
;
3302 static int hf_c15ch_inc_gwe_cl_setup_ip_gwe_sua_hndl
;
3303 static int hf_c15ch_inc_gwe_cl_setup_ip_gwe_cled_digits
;
3304 static int hf_c15ch_inc_gwe_cl_setup_ip_cl_setup_lsdp
;
3305 static int hf_c15ch_inc_gwe_cl_setup_ip_cl_setup_m_port
;
3309 static int hf_c15ch_inc_gwe_h248_digit
;
3310 static int hf_c15ch_inc_gwe_h248_digit_ip_gwe_digit
;
3311 static int hf_c15ch_inc_gwe_h248_digit_ip_gwe_digit_method
;
3315 static int hf_c15ch_inc_gwe_info
;
3316 static int hf_c15ch_inc_gwe_info_ip_gwe_sua_hndl
;
3317 static int hf_c15ch_inc_gwe_info_ip_gwe_info_type
;
3318 static int hf_c15ch_inc_gwe_info_ip_gwe_info_digit
;
3319 static int hf_c15ch_inc_gwe_info_encap_isup_msg_type
;
3321 /* value_string arrays to label fields */
3322 /* These two encapsulated isup message types are the only valid ones for this field. */
3323 static const value_string c15ch_inc_gwe_info_encap_isup_msg_types
[] = {
3324 { 13, "Suspend Message" },
3325 { 14, "Resume Message" },
3330 static int hf_c15ch_inc_gwe_inv_repl
;
3331 static int hf_c15ch_inc_gwe_inv_repl_ip_gwe_sua_hndl
;
3332 static int hf_c15ch_inc_gwe_inv_repl_ip_gwe_conn_num
;
3333 static int hf_c15ch_inc_gwe_inv_repl_ip_inv_repl_rsdp_ip
;
3334 static int hf_c15ch_inc_gwe_inv_repl_ip_inv_repl_rsdp_port
;
3337 static int hf_c15ch_inc_gwe_mgcp_dlcx
;
3338 static int hf_c15ch_inc_gwe_mgcp_dlcx_err_code
;
3341 static int hf_c15ch_inc_gwe_notify
;
3342 static int hf_c15ch_inc_gwe_notify_ip_gwe_mwi_stat
;
3343 static int hf_c15ch_inc_gwe_notify_ip_gwe_digits
;
3346 static int hf_c15ch_inc_gwe_ntwk_mod
;
3347 static int hf_c15ch_inc_gwe_ntwk_mod_ip_gwe_sua_hndl
;
3348 static int hf_c15ch_inc_gwe_ntwk_mod_ip_gwe_conn_num
;
3349 static int hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_lsdp
;
3350 static int hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_l_m_port
;
3351 static int hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_rsdp
;
3352 static int hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_r_m_port
;
3353 static int hf_c15ch_inc_gwe_ntwk_mod_ip_gwe_stat_code
;
3357 static int hf_c15ch_inc_gwe_ptrk_setup
;
3358 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_sua_hndl
;
3359 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_cled_digits
;
3360 static int hf_c15ch_inc_gwe_ptrk_setup_ip_cl_setup_lsdp
;
3361 static int hf_c15ch_inc_gwe_ptrk_setup_ip_cl_setup_m_port
;
3362 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clid_pri
;
3363 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clng_digits
;
3364 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clng_ton
;
3365 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clng_np
;
3366 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_alert_info
;
3367 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_redir_digits
;
3368 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_redir_ton
;
3369 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_redir_np
;
3370 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_ocn_digits
;
3371 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_chrg_digits
;
3372 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_chrg_noa
;
3373 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_chrg_npi
;
3374 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_npdi
;
3375 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_rn_digits
;
3376 static int hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_cic_digits
;
3377 static int hf_c15ch_inc_gwe_ptrk_setup_encap_isup
;
3380 static int hf_c15ch_inc_gwe_reply
;
3381 static int hf_c15ch_inc_gwe_reply_ip_gwe_msg_type
;
3382 static int hf_c15ch_inc_gwe_reply_ip_gwe_stat_code
;
3383 static int hf_c15ch_inc_gwe_reply_ip_gwe_conn_num
;
3384 static int hf_c15ch_inc_gwe_reply_nw_mdcn_lsdp_ip
;
3385 static int hf_c15ch_inc_gwe_reply_nw_mdcn_lsdp_port
;
3386 static int hf_c15ch_inc_gwe_reply_nw_mdcn_rsdp_ip
;
3387 static int hf_c15ch_inc_gwe_reply_nw_mdcn_rsdp_port
;
3390 static int hf_c15ch_inc_gwe_rv_avail
;
3391 static int hf_c15ch_inc_gwe_rv_avail_ip_gwe_sua_hndl
;
3392 static int hf_c15ch_inc_gwe_rv_avail_ip_gwe_conn_num
;
3393 static int hf_c15ch_inc_gwe_rv_avail_ip_gwe_info_len
;
3396 static int hf_c15ch_inc_gwe_sua_hndl
;
3397 static int hf_c15ch_inc_gwe_sua_hndl_ip_gwe_sua_hndl
;
3400 static int hf_c15ch_inc_gwe_sua_reply
;
3401 static int hf_c15ch_inc_gwe_sua_reply_ip_gwe_sua_hndl
;
3402 static int hf_c15ch_inc_gwe_sua_reply_ip_gwe_msg_type
;
3403 static int hf_c15ch_inc_gwe_sua_reply_ip_gwe_stat_code
;
3404 static int hf_c15ch_inc_gwe_sua_reply_ip_gwe_conn_num
;
3405 static int hf_c15ch_inc_gwe_sua_reply_nw_mdcn_lsdp_ip
;
3406 static int hf_c15ch_inc_gwe_sua_reply_nw_mdcn_lsdp_port
;
3407 static int hf_c15ch_inc_gwe_sua_reply_nw_mdcn_rsdp_ip
;
3408 static int hf_c15ch_inc_gwe_sua_reply_nw_mdcn_rsdp_port
;
3411 static int hf_c15ch_inc_gwe_subs_chg_hndl
;
3412 static int hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_sua_hndl
;
3413 static int hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_new_hndl
;
3414 static int hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_med_ni
;
3415 static int hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_med_tn
;
3416 static int hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_med_ni_tn
;
3419 static int hf_c15ch_inc_gwe_tgh_stat
;
3420 static int hf_c15ch_inc_gwe_tgh_stat_ip_gwe_sua_hndl
;
3421 static int hf_c15ch_inc_gwe_tgh_stat_ip_gwe_tgh_state
;
3423 /* value_string arrays to label fields */
3425 static const value_string tgh_state_types
[] = {
3426 { 0, "In-Service" },
3428 { 2, "Out-of-Service" },
3433 static int hf_c15ch_inc_gwe_voip_cot
;
3434 static int hf_c15ch_inc_gwe_voip_cot_ip_gwe_pass_code
;
3437 static const true_false_string c15_inc_gwe_voip_cot_ip_gwe_pass_code_types
= {
3438 "Success", /*string for 1*/
3439 "Failure" /*string for 0*/
3444 static int ett_c15ch_inc_gwe_voip_cot
;
3449 #define C15_OUT_GWE_NONE 0
3450 #define C15_OUT_GWE_DIGIT_SCAN 1
3451 #define C15_OUT_GWE_CONN_NUM 2
3452 #define C15_OUT_GWE_MK_CONN 3
3453 #define C15_OUT_GWE_MD_CONN 4
3454 #define C15_OUT_GWE_CALL_ANS 5
3455 #define C15_OUT_GWE_CALL_SETUP 6
3456 #define C15_OUT_GWE_CALL_PROG 7
3457 #define C15_OUT_GWE_CALL_NOTIFY 8
3458 #define C15_OUT_GWE_CALL_REL 9
3459 #define C15_OUT_GWE_UPDT_NI_TN 10
3460 #define C15_OUT_GWE_PCM_DATA 11
3461 #define C15_OUT_GWE_BLF_DATA 12
3462 #define C15_OUT_GWE_COT 13
3463 #define C15_OUT_GWE_RING_LINE 14
3464 #define C15_OUT_GWE_AUDIT_CONN 15
3465 #define C15_OUT_GWE_SAC_SUB_VALID 16
3466 #define C15_OUT_GWE_SAC_NOTIFY 17
3467 #define C15_OUT_GWE_SAC_LIST_ENTRY 18
3468 #define C15_OUT_GWE_RV_SUBS_DATA 19
3469 #define C15_OUT_GWE_UPDT_REC_ADDR 20
3470 #define C15_OUT_GWE_DEL_SUBS_UA 21
3471 #define C15_OUT_GWE_LINE_SPRVSN 22
3472 #define C15_OUT_GWE_SIP_INFO 23
3473 #define C15_OUT_GWE_SIP_REFER 24
3475 static int ett_c15ch_third_level_out_gwe
;
3476 static int ett_c15ch_third_level_out_gwe_sub1
;
3477 static int ett_c15ch_third_level_out_gwe_sub2
;
3479 static int proto_c15ch_third_level_out_gwe
;
3481 /* Dissector Table */
3482 static dissector_table_t c15ch_out_gwe_dissector_table
;
3485 static int hf_c15ch_out_gwe
;
3486 static int hf_c15ch_out_gwe_ni
;
3487 static int hf_c15ch_out_gwe_tn
;
3488 static int hf_c15ch_out_gwe_ni_tn
;
3489 static int hf_c15ch_out_gwe_op_gwe_msg_type
;
3490 static int hf_c15ch_out_gwe_op_gwe_protocol
;
3491 static int hf_c15ch_out_gwe_op_sua_hndl
;
3492 static int hf_c15ch_out_gwe_gwe_data_type
;
3496 static int ett_c15ch_out_gwe
;
3497 static int ett_c15ch_out_gwe_sub_ni_tn
;
3500 /* value labels for fields*/
3501 static const value_string c15_out_gwe_data_types
[] = {
3502 { C15_OUT_GWE_NONE
, "OUT_DATA_NONE" },
3503 { C15_OUT_GWE_DIGIT_SCAN
, "DIGIT_SCAN" },
3504 { C15_OUT_GWE_CONN_NUM
, "CONN_NUM" },
3505 { C15_OUT_GWE_MK_CONN
, "MK_CONN" },
3506 { C15_OUT_GWE_MD_CONN
, "MD_CONN" },
3507 { C15_OUT_GWE_CALL_ANS
, "CALL_ANS" },
3508 { C15_OUT_GWE_CALL_SETUP
, "CALL_SETUP" },
3509 { C15_OUT_GWE_CALL_PROG
, "CALL_PROG" },
3510 { C15_OUT_GWE_CALL_NOTIFY
, "CALL_NOTIFY" },
3511 { C15_OUT_GWE_CALL_REL
, "CALL_REL" },
3512 { C15_OUT_GWE_UPDT_NI_TN
, "UPDT_NI_TN" },
3513 { C15_OUT_GWE_PCM_DATA
, "PCM_DATA" },
3514 { C15_OUT_GWE_BLF_DATA
, "BLF_DATA" },
3515 { C15_OUT_GWE_COT
, "GWE_OUT_COT" },
3516 { C15_OUT_GWE_RING_LINE
, "RING_LINE" },
3517 { C15_OUT_GWE_AUDIT_CONN
, "AUDIT_CONN" },
3518 { C15_OUT_GWE_SAC_SUB_VALID
, "SAC_SUB_VALID" },
3519 { C15_OUT_GWE_SAC_NOTIFY
, "SAC_NOTIFY" },
3520 { C15_OUT_GWE_SAC_LIST_ENTRY
, "SAC_LIST_ENTRY" },
3521 { C15_OUT_GWE_RV_SUBS_DATA
, "RV_SUBS_DATA" },
3522 { C15_OUT_GWE_UPDT_REC_ADDR
, "UPDT_REC_ADDR" },
3523 { C15_OUT_GWE_DEL_SUBS_UA
, "DEL_SUBS_UA" },
3524 { C15_OUT_GWE_LINE_SPRVSN
, "LINE_SPRVSN" },
3525 { C15_OUT_GWE_SIP_INFO
, "SIP_INFO" },
3526 { C15_OUT_GWE_SIP_REFER
, "SIP_REFER" },
3529 static value_string_ext c15_out_gwe_data_types_ext
= VALUE_STRING_EXT_INIT(c15_out_gwe_data_types
);
3531 static const value_string c15_out_gwe_protocol_types
[] = {
3539 static const value_string c15_out_gwe_msg_types
[] = {
3540 { 0, "GWE_MSG_INVALID" },
3541 { 1, "GWE_DIGIT_SCAN" },
3542 { 2, "GWE_RING_LINE" },
3543 { 3, "GWE_LINE_SPRVSN" },
3544 { 4, "GWE_APPLY_TONE" },
3545 { 5, "GWE_REMOVE_TONE" },
3546 { 6, "GWE_PHYS_MK_CONN" },
3547 { 7, "GWE_PHYS_BK_CONN" },
3548 { 8, "GWE_PHYS_MV_CONN" },
3549 { 9, "GWE_PHYS_MD_CONN" },
3550 { 10, "GWE_NTWK_MK_CONN" },
3551 { 11, "GWE_NTWK_BK_CONN" },
3552 { 12, "GWE_NTWK_MD_CONN" },
3553 { 13, "GWE_NODE_SVC_CHG" },
3554 { 14, "GWE_LINE_SVC_CHG" },
3555 { 15, "GWE_SEND_RESP" },
3556 { 16, "GWE_AUDIT_LINE" },
3557 { 17, "GWE_MSG_PASSTHRU" },
3558 { 18, "GWE_CALL_ANS" },
3559 { 19, "GWE_CALL_SETUP" },
3560 { 20, "GWE_CALL_PROG" },
3561 { 21, "GWE_CALL_REL" },
3562 { 22, "GWE_GET_RV_INFO" },
3563 { 23, "GWE_PUT_RV_INFO" },
3564 { 24, "GWE_CALL_NOTIFY" },
3565 { 25, "GWE_UPDT_NI_TN" },
3566 { 26, "GWE_UA_INFO_XFER" },
3567 { 27, "GWE_PUT_PCM_DATA" },
3568 { 28, "GWE_REBUILD_OK" },
3569 { 29, "GWE_TRK_SVC_CHG" },
3570 { 30, "GWE_STRT_COT" },
3571 { 31, "GWE_STOP_COT" },
3572 { 32, "GWE_RECV_COT" },
3573 { 33, "GWE_SUBTRACT_ALL" },
3574 { 34, "GWE_AUDIT_TRK" },
3575 { 35, "GWE_AUDIT_GW" },
3576 { 36, "GWE_AUDIT_ROOT" },
3577 { 37, "GWE_WC_LINE_OFHK" },
3578 { 38, "GWE_AUD_ROOT_CXTS" },
3579 { 39, "GWE_SUB_ALL_CXT" },
3580 { 40, "GWE_SAC_SUB_VALID" },
3581 { 41, "GWE_SAC_NOTIFY" },
3582 { 42, "GWE_DEL_NONE" },
3583 { 43, "GWE_AUDIT_CONN" },
3584 { 44, "GWE_UPDATE_CALLINGID" },
3585 { 45, "GWE_PUT_BLF_DATA" },
3586 { 46, "GWE_PUT_RV_SUBS_DATA" },
3587 { 47, "GWE_GET_RV_SUBS_DATA" },
3588 { 48, "GWE_STORE_RV_SUBS_DATA" },
3589 { 49, "GWE_DEL_RV_SUBS_DATA" },
3590 { 50, "GWE_UPDT_REC_ADDR" },
3591 { 51, "GWE_MGCP_DLCX" },
3592 { 52, "GWE_DEL_SUBS_UA" },
3593 { 53, "GWE_SUBS_UA_QUE" },
3594 { 54, "GWE_SIP_INFO" },
3595 { 55, "GWE_SIP_REFER" },
3596 { 56, "GWE_UPDT_SDP" },
3599 static value_string_ext c15_out_gwe_msg_types_ext
= VALUE_STRING_EXT_INIT(c15_out_gwe_msg_types
);
3602 static int hf_c15ch_out_gwe_audit_conn
;
3603 static int hf_c15ch_out_gwe_audit_conn_ni
;
3604 static int hf_c15ch_out_gwe_audit_conn_tn
;
3605 static int hf_c15ch_out_gwe_audit_conn_ni_tn
;
3606 static int hf_c15ch_out_gwe_audit_conn_context
;
3609 static int hf_c15ch_out_gwe_blf_data
;
3610 static int hf_c15ch_out_gwe_blf_data_rb_ua_handle
;
3611 static int hf_c15ch_out_gwe_blf_data_rb_type
;
3612 static int hf_c15ch_out_gwe_blf_data_med_ni
;
3613 static int hf_c15ch_out_gwe_blf_data_med_tn
;
3614 static int hf_c15ch_out_gwe_blf_data_med_ni_tn
;
3615 static int hf_c15ch_out_gwe_blf_data_rb_ni
;
3616 static int hf_c15ch_out_gwe_blf_data_rb_tn
;
3617 static int hf_c15ch_out_gwe_blf_data_rb_ni_tn
;
3621 static int hf_c15ch_out_gwe_call_ans
;
3622 static int hf_c15ch_out_gwe_call_ans_conn_num
;
3623 static int hf_c15ch_out_gwe_call_ans_op_cl_ans_rsdp_ip
;
3624 static int hf_c15ch_out_gwe_call_ans_op_cl_ans_rsdp_port
;
3625 static int hf_c15ch_out_gwe_call_ans_encap_isup
;
3628 static int hf_c15ch_out_gwe_call_notify
;
3629 static int hf_c15ch_out_gwe_call_notify_op_gwe_mwi
;
3630 static int hf_c15ch_out_gwe_call_notify_status_code
;
3634 static int hf_c15ch_out_gwe_call_prog
;
3635 static int hf_c15ch_out_gwe_call_prog_conn_num
;
3636 static int hf_c15ch_out_gwe_call_prog_op_gwe_stat_code
;
3637 static int hf_c15ch_out_gwe_call_prog_encap_isup
;
3640 static int hf_c15ch_out_gwe_call_rel
;
3641 static int hf_c15ch_out_gwe_call_rel_status_code
;
3642 static int hf_c15ch_out_gwe_call_rel_encap_isup
;
3645 static int hf_c15ch_out_gwe_call_setup
;
3646 static int hf_c15ch_out_gwe_call_setup_conn_num
;
3647 static int hf_c15ch_out_gwe_call_setup_op_cl_ans_rsdp_ip
;
3648 static int hf_c15ch_out_gwe_call_setup_op_cl_ans_rsdp_port
;
3650 static int hf_c15ch_out_gwe_call_setup_op_gwe_redir_digits
;
3652 static int hf_c15ch_out_gwe_call_setup_op_gwe_rdir_ton
;
3653 static int hf_c15ch_out_gwe_call_setup_op_gwe_rdir_np
;
3655 static int hf_c15ch_out_gwe_call_setup_op_gwe_ocn_digits
;
3657 static int hf_c15ch_out_gwe_call_setup_op_gwe_chrg_digits
;
3659 static int hf_c15ch_out_gwe_call_setup_op_gwe_chrg_noa
;
3660 static int hf_c15ch_out_gwe_call_setup_op_gwe_chrg_npi
;
3662 static int hf_c15ch_out_gwe_call_setup_encap_isup
;
3666 static int hf_c15ch_out_gwe_conn_num
;
3667 static int hf_c15ch_out_gwe_conn_num_out_gwe_conn_num
;
3671 static int hf_c15ch_out_gwe_del_subs_ua
;
3672 static int hf_c15ch_out_gwe_del_subs_ua_op_sip_ua_hndl
;
3676 static int hf_c15ch_out_gwe_digit_scan
;
3677 static int hf_c15ch_out_gwe_digit_scan_voip_dgmp_override
;
3678 static int hf_c15ch_out_gwe_digit_scan_actv_dgmp
;
3679 static int hf_c15ch_out_gwe_digit_scan_op_gwe_digit_scan_tone
;
3680 static int hf_c15ch_out_gwe_digit_scan_op_gwe_tone_type
;
3681 static int hf_c15ch_out_gwe_digit_scan_op_gwe_tone_to
;
3682 static int hf_c15ch_out_gwe_digit_scan_op_gwe_digit_flash
;
3685 static int hf_c15ch_out_gwe_line_sprvsn
;
3686 static int hf_c15ch_out_gwe_line_sprvsn_op_gwe_ofhk_event
;
3687 static int hf_c15ch_out_gwe_line_sprvsn_op_gwe_onhk_event
;
3688 static int hf_c15ch_out_gwe_line_sprvsn_op_gwe_flhk_event
;
3692 static int hf_c15ch_out_gwe_md_conn
;
3693 static int hf_c15ch_out_gwe_md_conn_conn_num
;
3694 static int hf_c15ch_out_gwe_md_conn_status_code
;
3695 static int hf_c15ch_out_gwe_md_conn_op_gwe_mode
;
3698 static int hf_c15ch_out_gwe_mk_conn
;
3699 static int hf_c15ch_out_gwe_mk_conn_conn_num
;
3700 static int hf_c15ch_out_gwe_mk_conn_op_mk_conn_rsdp_ip
;
3701 static int hf_c15ch_out_gwe_mk_conn_op_mk_conn_rsdp_port
;
3704 static int hf_c15ch_out_gwe_out_cot
;
3705 static int hf_c15ch_out_gwe_out_cot_ni
;
3706 static int hf_c15ch_out_gwe_out_cot_tn
;
3707 static int hf_c15ch_out_gwe_out_cot_ni_tn
;
3711 static int hf_c15ch_out_gwe_pcm_data
;
3712 static int hf_c15ch_out_gwe_pcm_data_rb_ua_handle_near
;
3713 static int hf_c15ch_out_gwe_pcm_data_rb_ua_handle_far
;
3716 static int hf_c15ch_out_gwe_ring_line
;
3717 static int hf_c15ch_out_gwe_ring_line_op_gwe_display
;
3718 static int hf_c15ch_out_gwe_ring_line_op_gwe_display_chars
;
3722 static int hf_c15ch_out_gwe_rv_subs_data
;
3723 static int hf_c15ch_out_gwe_rv_subs_data_rb_fe_ni
;
3724 static int hf_c15ch_out_gwe_rv_subs_data_rb_fe_tn
;
3725 static int hf_c15ch_out_gwe_rv_subs_data_rb_fe_ni_tn
;
3729 static int hf_c15ch_out_gwe_sac_list_entry
;
3730 static int hf_c15ch_out_gwe_sac_list_entry_op_gwe_med_uri
;
3734 static int hf_c15ch_out_gwe_sac_notify
;
3735 static int hf_c15ch_out_gwe_sac_notify_op_gwe_blf_state
;
3736 static int hf_c15ch_out_gwe_sac_notify_op_gwe_subs_state
;
3740 static int hf_c15ch_out_gwe_sac_sub_valid
;
3741 static int hf_c15ch_out_gwe_sac_sub_valid_op_gwe_subs_valid
;
3742 static int hf_c15ch_out_gwe_sac_sub_valid_op_gwe_num_list_items
;
3746 static int hf_c15ch_out_gwe_sip_info
;
3747 static int hf_c15ch_out_gwe_sip_info_op_gwe_sip_info
;
3748 static int hf_c15ch_out_gwe_sip_info_op_gwe_sip_info_type
;
3751 static int hf_c15ch_out_gwe_sip_refer
;
3752 static int hf_c15ch_out_gwe_sip_refer_op_gwe_refer_ua_hndl
;
3755 static int hf_c15ch_out_gwe_update_ni_tn
;
3756 static int hf_c15ch_out_gwe_update_ni_tn_ni
;
3757 static int hf_c15ch_out_gwe_update_ni_tn_tn
;
3758 static int hf_c15ch_out_gwe_update_ni_tn_ni_tn
;
3762 static int hf_c15ch_out_gwe_update_rec_addr
;
3763 static int hf_c15ch_out_gwe_update_rec_addr_op_new_rec_addr
;
3767 #define C15_TONE_TONE_CONTROL 1
3768 #define C15_TONE_GIVE_TONE 2
3769 #define C15_TONE_OPLS 3
3770 #define C15_TONE_COT 4
3771 #define C15_TONE_CPM 5
3772 #define C15_TONE_RCVR 6
3773 #define C15_TONE_MADN_RING 7
3774 #define C15_TONE_TIMEOUT 8
3776 static const value_string tone_types
[] = {
3781 { 4, "Howler/Rcvr Off Hook" },
3786 { 9, "Short Howl/Short Rcvr Off Hook" },
3790 { 13, "Short Busy" },
3791 { 14, "Short Ovflw" },
3792 { 15, "Short Dial" },
3793 { 16, "Test 5 Sec" },
3794 { 17, "Test 9 Sec" },
3796 { 19, "Quiet 1 Sec" },
3797 { 20, "Short Rgbk" },
3798 { 21, "Code2 Rgbk" },
3799 { 22, "Spec Dial" },
3800 { 23, "Confirmation" },
3801 { 24, "Call Waiting" },
3802 { 25, "1 Blip (Dial Speed Test)" },
3803 { 26, "2 Blips (Dial Speed Test)" },
3804 { 27, "3 Blips (Dial Speed Test)" },
3805 { 28, "ESB Ovflw" },
3809 { 32, "Short Rgbk" },
3817 { 40, "NIC Dime A" },
3818 { 41, "QRT Doll A" },
3819 { 42, "NIC Dime B" },
3820 { 43, "QRT Doll B" },
3821 { 44, "DRCWT CAS" },
3824 { 47, "P-Phone Norm Ring" },
3825 { 48, "P-Phone Distinct Ring" },
3833 { 56, "P-Phone Cont Ring (First Dnld Tone)" },
3834 { 57, "P-Phone DTMF Dig 1" },
3835 { 58, "P-Phone DTMF Dig 2" },
3836 { 59, "P-Phone DTMF Dig 3" },
3837 { 60, "P-Phone DTMF Dig 4" },
3838 { 61, "P-Phone DTMF Dig 5" },
3839 { 62, "P-Phone DTMF Dig 6" },
3840 { 63, "P-Phone DTMF Dig 7" },
3841 { 64, "P-Phone DTMF Dig 8" },
3842 { 65, "P-Phone DTMF Dig 9" },
3843 { 66, "P-Phone DTMF *" },
3844 { 67, "P-Phone DTMF Dig 0" },
3845 { 68, "P-Phone DTMF #" },
3847 { 70, "Cust (CTN1)" },
3848 { 71, "Cust (CTN2)" },
3849 { 72, "Cust (CTN3)" },
3850 { 73, "Cust (CTN4)" },
3851 { 74, "Cust (CTN5)" },
3854 static value_string_ext tone_types_ext
= VALUE_STRING_EXT_INIT(tone_types
);
3857 /* Dissector Table */
3858 static dissector_table_t c15ch_tone_dissector_table
;
3861 static int hf_c15ch_tone
;
3862 static int hf_c15ch_tone_msg_type
;
3865 static int ett_c15ch_third_level_tone
; /* for third level dissection */
3866 static int ett_c15ch_third_level_tone_sub1
;
3869 static int proto_c15ch_third_level_tone
;
3871 static int hf_c15ch_tone_cot_control
;
3872 static int hf_c15ch_tone_cot_control_device_id
;
3873 static int hf_c15ch_tone_cot_control_cot_task
;
3874 static int hf_c15ch_tone_cot_control_dest_h248
;
3875 static int hf_c15ch_tone_cot_control_srce_h248
;
3876 static int hf_c15ch_tone_cot_control_svc_channel
;
3878 /* value labels for fields*/
3879 static const value_string c15_tone_msg_types
[] = {
3880 { C15_TONE_TONE_CONTROL
, "TONE_CONTROL" },
3881 { C15_TONE_GIVE_TONE
, "GIVE_TONE" },
3882 { C15_TONE_OPLS
, "OPLS" },
3883 { C15_TONE_COT
, "COT" },
3884 { C15_TONE_CPM
, "CPM" },
3885 { C15_TONE_RCVR
, "RCVR" },
3886 { C15_TONE_MADN_RING
, "MADN_RING" },
3887 { C15_TONE_TIMEOUT
, "TIMEOUT" },
3892 static int hf_c15ch_tone_cpm
;
3893 static int hf_c15ch_tone_cpm_loop_type
;
3894 static int hf_c15ch_tone_cpm_device_id
;
3895 static int hf_c15ch_tone_cpm_tone_type
;
3900 static int ett_c15ch_tone_cpm
;
3903 /* labels for loop type */
3904 static const value_string loop_types
[] = {
3924 /* labels for device type */
3925 static const value_string device_types
[] = {
3933 { 7, "CLNG_NUM_BUF" },
3936 { 10, "PEPR_SRCE" },
3937 { 11, "PEPR_DEST" },
3938 { 12, "BILLING_REG_1" },
3939 { 13, "BILLING_REG_2" },
3940 { 14, "BILLING_REG_3" },
3941 { 15, "BILLING_REG_4" },
3942 { 16, "BILLING_REG_5" },
3943 { 17, "BILLING_REG_6" },
3944 { 18, "ACFW_DIG_BUFF" },
3947 { 21, "DEV_MAIN_REG" },
3948 { 22, "TSMS_BUFFER" },
3950 { 24, "SFTR_BUFF" },
3951 { 25, "END_TO_END_DIG" },
3953 { 27, "TONE_DEST2" },
3954 { 28, "AIN_REGISTER" },
3955 { 29, "AIN_STR_BUFFER" },
3959 static value_string_ext device_types_ext
= VALUE_STRING_EXT_INIT(device_types
);
3963 static int hf_c15ch_tone_give_tone
;
3964 static int hf_c15ch_tone_give_tone_tone_id
;
3965 static int hf_c15ch_tone_give_tone_tone_type
;
3968 static int hf_c15ch_tone_madn_ring
;
3969 static int hf_c15ch_tone_madn_ring_device_id
;
3970 static int hf_c15ch_tone_madn_ring_tone_type
;
3973 static int hf_c15ch_tone_opls
;
3974 static int hf_c15ch_tone_opls_svce_from_ni
;
3975 static int hf_c15ch_tone_opls_svce_to_ni
;
3976 static int hf_c15ch_tone_opls_svce_to_ni_tn
;
3977 static int hf_c15ch_tone_opls_svce_to_tn
;
3978 static int hf_c15ch_tone_opls_digits
;
3982 static int hf_c15ch_tone_rcvr
;
3983 static int hf_c15ch_tone_rcvr_rcvr_id
;
3984 static int hf_c15ch_tone_rcvr_conn_to_ni
;
3985 static int hf_c15ch_tone_rcvr_conn_to_ni_tn
;
3986 static int hf_c15ch_tone_rcvr_conn_to_tn
;
3990 static int hf_c15ch_tone_timeout
;
3991 static int hf_c15ch_tone_timeout_device_id
;
3992 static int hf_c15ch_tone_timeout_service_pm
;
3993 static int hf_c15ch_tone_timeout_service_ni
;
3994 static int hf_c15ch_tone_timeout_service_ni_tn
;
3995 static int hf_c15ch_tone_timeout_service_tn
;
3996 static int hf_c15ch_tone_timeout_gw_provided
;
3997 static int hf_c15ch_tone_timeout_gw_service_tone_type_or_from_ni
;
4001 static int hf_c15ch_tone_tone_control
;
4002 static int hf_c15ch_tone_tone_control_device_id
;
4003 static int hf_c15ch_tone_tone_control_tone_type
;
4005 /* New fields for Generic Messages, Correlated Messages,
4006 REG SUBS Report, System Alarm, and TTY Messages */
4008 static int hf_c15ch_c15_generic_msg_1
;
4009 static int hf_c15ch_c15_generic_msg_2
;
4010 static int hf_c15ch_c15_generic_msg_3
;
4011 static int hf_c15ch_c15_generic_msg_4
;
4012 static int hf_c15ch_c15_generic_msg_5
;
4013 static int hf_c15ch_c15_correlate_msg
;
4014 static int hf_c15ch_c15_generic_msg_parm_1
;
4015 static int hf_c15ch_c15_generic_msg_parm_2
;
4016 static int hf_c15ch_c15_generic_msg_parm_3
;
4017 static int hf_c15ch_c15_generic_msg_parm_4
;
4018 static int hf_c15ch_c15_generic_msg_parm_5
;
4019 static int hf_c15ch_c15_generic_msg_data_len
;
4020 static int hf_c15ch_c15_generic_msg_cr_ptr_val
;
4021 static int hf_c15ch_c15_generic_msg_dr_ptr_val
;
4022 static int hf_c15ch_c15_generic_msg_spr_int_1
;
4023 static int hf_c15ch_c15_generic_msg_spr_int_2
;
4024 static int hf_c15ch_c15_generic_msg_spr_uptr_1
;
4025 static int hf_c15ch_c15_generic_msg_spr_uptr_2
;
4026 static int hf_c15ch_c15_generic_msg_spr_pptr_1
;
4027 static int hf_c15ch_c15_generic_msg_spr_pptr_2
;
4028 static int hf_c15ch_c15_generic_msg_gen_msg_field_1
;
4029 static int hf_c15ch_c15_generic_msg_gen_msg_field_2
;
4030 static int hf_c15ch_c15_generic_msg_gen_msg_field_3
;
4031 static int hf_c15ch_c15_generic_msg_gen_msg_field_4
;
4032 static int hf_c15ch_c15_generic_msg_gen_msg_field_5
;
4033 static int hf_c15ch_c15_generic_msg_gen_msg_string
;
4034 static int hf_c15ch_c15_generic_msg_gen_data_large
;
4035 static int hf_c15ch_c15_usage_id
;
4036 static int hf_c15ch_c15_opt_parm_2
;
4037 static int hf_c15ch_c15_opt_parm_3
;
4038 static int hf_c15ch_c15_opt_parm_4
;
4039 static int hf_c15ch_c15_opt_parm_5
;
4040 static int hf_c15ch_c15_opt_parm_6_ptr
;
4041 static int hf_c15ch_c15_opt_parm_7_ptr
;
4042 static int hf_c15ch_c15_opt_parm_8_ptr
;
4043 static int hf_c15ch_c15_opt_parm_9_ptr
;
4044 static int hf_c15ch_c15_opt_string_parm_8
;
4045 static int hf_c15ch_c15_opt_string_parm_9
;
4046 static int hf_c15ch_c15_sip_reg_subs_report
;
4047 static int hf_c15ch_c15_sys_alarm
;
4048 static int hf_c15ch_c15_omm_tag_code
;
4049 static int hf_c15ch_c15_alarm_class
;
4050 static int hf_c15ch_c15_alarm_status
;
4051 static int hf_c15ch_c15_site_name
;
4052 static int hf_c15ch_c15_system
;
4053 static int hf_c15ch_c15_tty_msg
;
4054 static int hf_c15ch_c15_tty_int_parm_1
;
4055 static int hf_c15ch_c15_tty_int_parm_2
;
4056 static int hf_c15ch_c15_tty_int_parm_3
;
4057 static int hf_c15ch_c15_tty_int_parm_4
;
4058 static int hf_c15ch_c15_omm_msg_tag
;
4059 static int hf_c15ch_c15_text_location
;
4060 static int hf_c15ch_c15_tty_text_parm_1
;
4061 static int hf_c15ch_c15_tty_text_parm_2
;
4062 static int hf_c15ch_c15_tty_text_parm_3
;
4063 static int hf_c15ch_c15_sip_report_type
;
4064 static int hf_c15ch_c15_rate
;
4065 static int hf_c15ch_c15_hour
;
4066 static int hf_c15ch_c15_peak_min
;
4067 static int hf_c15ch_c15_peak_sec
;
4068 static int hf_c15ch_c15_auth_good
;
4069 static int hf_c15ch_c15_auth_fail
;
4070 static int hf_c15ch_c15_ovd084
;
4071 static int hf_c15ch_c15_ovd086
;
4072 static int hf_c15ch_c15_ovd088
;
4073 static int hf_c15ch_c15_sip104
;
4074 static int hf_c15ch_c15_reg_spare_1
;
4075 static int hf_c15ch_c15_reg_spare_2
;
4076 static int hf_c15ch_c15_reg_spare_3
;
4077 static int hf_c15ch_c15_status_200_cnt
;
4078 static int hf_c15ch_c15_status_202_cnt
;
4079 static int hf_c15ch_c15_status_405_cnt
;
4080 static int hf_c15ch_c15_subs_spare_1
;
4081 static int hf_c15ch_c15_subs_spare_2
;
4082 static int hf_c15ch_c15_subs_spare_3
;
4083 static int hf_c15ch_c15_subs_spare_4
;
4084 static int hf_c15ch_c15_subs_spare_5
;
4085 static int hf_c15ch_c15_subs_spare_6
;
4087 /* util functions */
4088 /* static void add_digits_string(int hf, tvbuff_t *tvb, proto_tree *tree,
4089 unsigned first_offset, unsigned num_digits, unsigned max_num_digits,
4090 unsigned offset_from_digits_to_consume )
4091 Function: Add a string of telephony digits, read from a tvbuff_t as a field to a
4093 The number of digits in the string is typically given in a number before the
4094 start of the digits.
4096 hf is the field number of the proto_tree corresponding to storage for the digits.
4097 tvb is the tvbuff_t containing the data to be added.
4098 tree is the proto_tree to be modified.
4099 first_offset is the offset from the beginning of the tvbuff_t where the telephony digits
4100 actually begin. If (first_offset >= tvb_length(tvb)) then the function does nothing.
4101 num_digits is the number of digits that were actually stored in the relevant part of tvb
4102 This value was probably determined by reading the field in the tvb just before where the
4103 string of digits begins. This will be used to actually allocate storage for the string.
4104 max_num_digits is the maximum number of digits that the protocol indicates the
4105 string of digits could be.
4107 max_num_digits is used in a call to proto_tree_add_string().
4109 offset_from_digits_to_consume: This number is subtracted from first_offset to give the location
4110 where the num_digits field was read e.g.
4111 offset_from_digits_to_consume == 1 if length is given in one byte just before digits
4112 offset_from_digits_to_consume == 4 if length is given in four bytes just before digits
4113 offset_from_digits_to_consume == 0 if no bytes before the digits are to be consumed
4114 Note that the offset_from_digits_to_consume method is used in order to properly indicate where
4115 the data came from that was used to determine the digits field.
4116 If (offset_from_digits_to_consume > first_offset), then the offset parameter is
4117 ignored and the display will indicate that the data used began at first_offset (equivalent
4118 to offset_from_digits_to_consume of 0).
4120 static void add_digits_string(int hf
, tvbuff_t
*tvb
, proto_tree
*tree
,
4121 unsigned first_offset
, unsigned num_digits
, unsigned max_num_digits
, unsigned offset_from_digits_to_consume
)
4123 char * ch_buff
= NULL
;
4124 unsigned curr_offset
;
4125 unsigned buff_index
;
4126 unsigned curr_digit
;
4127 const char ZERO_C
= '0';
4128 if (max_num_digits
< num_digits
)
4133 if (first_offset
< offset_from_digits_to_consume
)
4135 offset_from_digits_to_consume
= 0;
4137 ch_buff
= (char *) wmem_alloc(wmem_packet_scope(), num_digits
+ 1); /*include space for terminating null*/
4138 for ( curr_offset
= first_offset
, buff_index
= 0; buff_index
< num_digits
; curr_offset
++, buff_index
++ )
4140 curr_digit
= tvb_get_uint8(tvb
, curr_offset
);
4142 if ( curr_digit
< 10 )
4144 /* decimal digit case */
4145 ch_buff
[ buff_index
] = ZERO_C
+ curr_digit
;
4149 switch( curr_digit
)
4152 ch_buff
[ buff_index
] = 'A';
4155 ch_buff
[ buff_index
] = '*';
4158 ch_buff
[ buff_index
] = '#';
4161 ch_buff
[ buff_index
] = 'D';
4163 default: /* includes 13 and 14 */
4164 ch_buff
[ buff_index
] = '?';
4168 ch_buff
[ num_digits
] = '\0';
4169 /* we are consuming all data from (first_offset - offset_from_start_to_consume) to (first_offset + max_num_digits) */
4171 proto_tree_add_string(tree
, hf
,
4172 tvb
, first_offset
- offset_from_digits_to_consume
, max_num_digits
+ 1, ch_buff
);
4176 /* static void add_digits_string_info_col( tvbuff_t *tvb, unsigned first_offset,
4177 unsigned num_digits, packet_info *pinfo );
4178 Function: Append a string of telephony digits, read from a tvbuff_t, to the
4179 string displayed in COL_INFO, for pinfo.
4181 tvb: tvbuff_t containing the digit data.
4182 first_offset: The offset from the beginning of the tvb where the digits begin.
4184 num_digits : number of digits to be read from tvb and put into the INFO column.
4188 pinfo : the packet_info structure containing the INFO column to be modified.
4190 static void add_digits_string_info_col(tvbuff_t
*tvb
,
4191 unsigned first_offset
, unsigned num_digits
,
4194 /* first_offset is where the list of digits actually begins in the packet */
4195 /* num_digits is the actual number of digits in the string */
4198 const char ZERO_C
= '0';
4200 tvb_ensure_bytes_exist(tvb
, first_offset
, num_digits
);
4201 ch_buff
= (char *) wmem_alloc(pinfo
->pool
, num_digits
+ 1); /*include space for terminating null*/
4202 for ( i
= 0; i
< num_digits
; i
++ )
4204 unsigned curr_digit
= tvb_get_uint8(tvb
, i
+ first_offset
);
4206 if ( curr_digit
< 10 )
4208 /* decimal digit case */
4209 ch_buff
[ i
] = ZERO_C
+ curr_digit
;
4213 switch( curr_digit
)
4227 default: /* includes 13 and 14 */
4232 ch_buff
[ num_digits
] = '\0';
4233 col_append_str(pinfo
->cinfo
, COL_INFO
, ch_buff
);
4236 /* static void add_string_field( proto_tree * p_tree, tvbuff_t * tvb,
4237 unsigned str_start, unsigned max_str_len,
4240 Function: add an ascii string, read from a tvbuff_t, as a field to a given proto_tree
4243 p_tree is the proto_tree to be added to
4245 tvb is the tvbuff_t containing the data to be placed into a string field of p_tree
4247 str_start is the position in tvb where the string data begins.
4252 hf_num is the field number for p_tree which is used for the string
4254 static void add_string_field( proto_tree
* p_tree
, tvbuff_t
* tvb
,
4255 unsigned str_start
, unsigned max_str_len
,
4258 char *field_stringz
;
4261 if (max_str_len
== 0)
4267 field_stringz
= (char * )tvb_get_stringz_enc(wmem_packet_scope(), tvb
, str_start
, &len
, ENC_ASCII
);
4270 proto_tree_add_string(p_tree
, hf_num
,
4271 tvb
, str_start
, max_str_len
, " ");
4275 if ( len
> (int)max_str_len
)
4277 ws_utf8_truncate(field_stringz
, max_str_len
- 1);
4279 proto_tree_add_string(p_tree
, hf_num
,
4280 tvb
, str_start
, max_str_len
, field_stringz
);
4284 /* dissect functions */
4285 /* heartbeat is its own distinct dissector with a distinct ethertype */
4286 static int dissect_c15ch_hbeat(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4288 proto_item
* ti
= NULL
;
4289 proto_tree
* c15ch_hbeat_tree
= NULL
;
4290 col_clear(pinfo
->cinfo
, COL_INFO
);
4292 col_set_str(pinfo
->cinfo
, COL_PROTOCOL
, "C15CH_HBEAT");
4296 ti
= proto_tree_add_item(tree
, proto_c15ch_hbeat
, tvb
, 0, 62, ENC_NA
);
4297 c15ch_hbeat_tree
= proto_item_add_subtree(ti
, ett_c15ch_hbeat
);
4298 add_string_field( c15ch_hbeat_tree
, tvb
, 10, 25, hf_c15ch_hbeat_clli
);
4299 proto_tree_add_item(c15ch_hbeat_tree
, hf_c15ch_hbeat_primary
, tvb
, 35, 1, ENC_BIG_ENDIAN
);
4300 proto_tree_add_item(c15ch_hbeat_tree
, hf_c15ch_hbeat_secondary
, tvb
, 36, 1, ENC_BIG_ENDIAN
);
4301 add_string_field( c15ch_hbeat_tree
, tvb
, 37, 25, hf_c15ch_hbeat_interface
);
4304 /* Return the amount of data this dissector was able to dissect */
4305 return tvb_reported_length(tvb
);
4308 /* base dissector : first one called for all non-heartbeat packets */
4309 /* These packets share a common ethertype */
4310 static int dissect_c15ch(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4312 proto_item
* ti
= NULL
;
4313 proto_tree
* c15ch_tree
= NULL
;
4314 proto_tree
* src_ni_tn_tree
= NULL
;
4315 proto_tree
* dest_ni_tn_tree
= NULL
;
4316 uint32_t msg_type
= 0;
4317 uint32_t packet_length
= 0;
4318 uint32_t payload_length
= 0;
4321 tvbuff_t
* next_tvb
;
4322 col_clear(pinfo
->cinfo
, COL_INFO
);
4324 msg_type
= tvb_get_ntohl(tvb
, 4);
4325 packet_length
= tvb_get_ntohl(tvb
, 8);
4326 if (packet_length
< HEADER_SZ
)
4330 payload_length
= packet_length
- HEADER_SZ
;
4332 col_set_str(pinfo
->cinfo
, COL_PROTOCOL
, C15_LABEL
);
4334 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: %s",
4335 val_to_str_ext(msg_type
, &c15_msg_types_ext
, "Unknown Type: %d") );
4337 if (tree
) /* we are being asked for details... */
4339 ti
= proto_tree_add_item(tree
, proto_c15ch
, tvb
, 0, 36, ENC_NA
);
4340 proto_item_append_text(ti
, ", Type: %s",
4341 val_to_str_ext(msg_type
, &c15_msg_types_ext
, "Unknown Type: %d"));
4342 c15ch_tree
= proto_item_add_subtree(ti
, ett_c15ch
);
4343 proto_tree_add_item(c15ch_tree
, hf_c15ch_version
, tvb
, 0, 4, ENC_BIG_ENDIAN
);
4344 proto_tree_add_item(c15ch_tree
, hf_c15ch_msgtype
, tvb
, 4, 4, ENC_BIG_ENDIAN
);
4345 proto_tree_add_item(c15ch_tree
, hf_c15ch_size
, tvb
, 8, 4, ENC_BIG_ENDIAN
);
4346 proto_tree_add_item(c15ch_tree
, hf_c15ch_call_ref
, tvb
, 12, 4, ENC_BIG_ENDIAN
);
4348 ti
= proto_tree_add_item(c15ch_tree
, hf_c15ch_srce_ni_tn
, tvb
, 16, 8, ENC_BIG_ENDIAN
);
4349 src_ni_tn_tree
= proto_item_add_subtree (ti
, ett_src_ni_tn
);
4351 proto_tree_add_item(src_ni_tn_tree
, hf_c15ch_srce_ni
, tvb
, 16, 4, ENC_BIG_ENDIAN
);
4352 proto_tree_add_item(src_ni_tn_tree
, hf_c15ch_srce_tn
, tvb
, 20, 4, ENC_BIG_ENDIAN
);
4355 ti
= proto_tree_add_item(c15ch_tree
, hf_c15ch_dest_ni_tn
, tvb
, 24, 8, ENC_BIG_ENDIAN
);
4357 dest_ni_tn_tree
= proto_item_add_subtree (ti
, ett_dest_ni_tn
);
4359 proto_tree_add_item(dest_ni_tn_tree
, hf_c15ch_dest_ni
, tvb
, 24, 4, ENC_BIG_ENDIAN
);
4360 proto_tree_add_item(dest_ni_tn_tree
, hf_c15ch_dest_tn
, tvb
, 28, 4, ENC_BIG_ENDIAN
);
4362 proto_tree_add_item(c15ch_tree
, hf_c15ch_realtime
, tvb
, 32, 4, ENC_BIG_ENDIAN
);
4365 next_tvb
= tvb_new_subset_length(tvb
, HEADER_SZ
, payload_length
);
4366 /* call dissector to dissect the rest of the packet, based on msg_type */
4367 retv
= HEADER_SZ
+ dissector_try_uint(c15ch_dissector_table
, msg_type
, next_tvb
, pinfo
, tree
);
4372 static int dissect_c15ch_ama(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4374 proto_item
* ti
= NULL
;
4375 proto_tree
* c15ch_ama_tree
= NULL
;
4377 uint8_t call_type_val
= 0;
4378 uint8_t dialed_num_digits
;
4380 call_type_val
= tvb_get_uint8(tvb
, 40);
4381 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Call Type: %s",
4382 val_to_str_ext(call_type_val
, &ama_call_types_ext
, "Unknown %d"));
4385 ti
= proto_tree_add_item(tree
, hf_c15ch_ama
, tvb
, 0, 41, ENC_NA
);
4386 c15ch_ama_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4387 dialed_num_digits
= tvb_get_uint8(tvb
, 11);
4388 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_call_code
,
4389 tvb
, 0, 1, ENC_BIG_ENDIAN
);
4390 add_digits_string(hf_c15ch_ama_orig_digits
, tvb
, c15ch_ama_tree
,
4392 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_num_dialed_digits
,
4393 tvb
, 11, 1, ENC_BIG_ENDIAN
);
4394 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_br_prefix
,
4395 tvb
, 12, 1, ENC_BIG_ENDIAN
);
4396 add_digits_string(hf_c15ch_ama_dialed_digits
, tvb
, c15ch_ama_tree
,
4397 13, dialed_num_digits
, 15, 0);
4398 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_start_hour
,
4399 tvb
, 28, 1, ENC_BIG_ENDIAN
);
4400 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_start_minute
,
4401 tvb
, 29, 1, ENC_BIG_ENDIAN
);
4402 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_start_second
,
4403 tvb
, 30, 1, ENC_BIG_ENDIAN
);
4404 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_start_tenth_second
,
4405 tvb
, 31, 1, ENC_BIG_ENDIAN
);
4406 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_start_day
,
4407 tvb
, 32, 1, ENC_BIG_ENDIAN
);
4408 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_start_month
,
4409 tvb
, 33, 1, ENC_BIG_ENDIAN
);
4410 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_start_year
,
4411 tvb
, 34, 1, ENC_BIG_ENDIAN
);
4412 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_answered
,
4413 tvb
, 35, 1, ENC_BIG_ENDIAN
);
4414 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_elapsed_time
,
4415 tvb
, 36, 4, ENC_BIG_ENDIAN
);
4416 proto_tree_add_item(c15ch_ama_tree
, hf_c15ch_ama_call_type
,
4417 tvb
, 40, 1, ENC_BIG_ENDIAN
);
4420 return tvb_reported_length(tvb
);
4423 static int dissect_c15ch_c15_info(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
4425 proto_item
* ti
= NULL
;
4426 proto_tree
* c15ch_c15_info_tree
= NULL
;
4430 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_info
, tvb
, 0, 266, ENC_NA
);
4431 c15ch_c15_info_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
4432 proto_tree_add_item( c15ch_c15_info_tree
, hf_c15ch_c15_info_level
, tvb
, 0, 1, ENC_BIG_ENDIAN
);
4433 add_string_field( c15ch_c15_info_tree
, tvb
, 1, 9, hf_c15ch_c15_info_code
);
4434 add_string_field( c15ch_c15_info_tree
, tvb
, 10, 256, hf_c15ch_c15_info_text
);
4437 return tvb_reported_length(tvb
);
4440 static int dissect_c15ch_clli(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4442 proto_item
* ti
= NULL
;
4443 proto_tree
* c15ch_clli_tree
= NULL
;
4446 unsigned char * clli_string
;
4447 clli_string
= tvb_get_stringz_enc(pinfo
->pool
, tvb
, 0, &clli_siz
, ENC_ASCII
);
4448 if ( (clli_siz
> 1) && (clli_siz
<= 25 ) )
4450 col_clear(pinfo
->cinfo
, COL_INFO
);
4451 col_append_fstr(pinfo
->cinfo
, COL_INFO
, "Type: CLLI, %s", clli_string
);
4455 ti
= proto_tree_add_item(tree
, hf_c15ch_clli
, tvb
, 0, 60, ENC_NA
);
4456 c15ch_clli_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4457 add_string_field( c15ch_clli_tree
, tvb
, 0, 25, hf_c15ch_clli_clli_string
);
4458 proto_tree_add_item(c15ch_clli_tree
, hf_c15ch_clli_active_core
, tvb
, 25, 1, ENC_BIG_ENDIAN
);
4459 proto_tree_add_item(c15ch_clli_tree
, hf_c15ch_clli_inactive_core
, tvb
, 26, 1, ENC_BIG_ENDIAN
);
4460 add_string_field( c15ch_clli_tree
, tvb
, 27, 25, hf_c15ch_clli_interface_string
);
4461 proto_tree_add_item(c15ch_clli_tree
, hf_c15ch_clli_seconds
, tvb
, 52, 4, ENC_BIG_ENDIAN
);
4462 proto_tree_add_item(c15ch_clli_tree
, hf_c15ch_clli_microseconds
, tvb
, 56, 4, ENC_BIG_ENDIAN
);
4464 return tvb_reported_length(tvb
);
4468 static int dissect_c15ch_conn(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
4470 proto_item
* ti
= NULL
;
4471 proto_tree
* c15ch_conn_tree
= NULL
;
4472 proto_tree
* srce_ni_tn_tree
= NULL
;
4473 proto_tree
* dest_ni_tn_tree
= NULL
;
4477 ti
= proto_tree_add_item(tree
, hf_c15ch_conn
, tvb
, 0, 53, ENC_NA
);
4478 c15ch_conn_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4479 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_connfrom
,
4480 tvb
, 0, 4, ENC_BIG_ENDIAN
);
4481 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_conntype
,
4482 tvb
, 4, 4, ENC_BIG_ENDIAN
);
4483 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_perphtype
,
4484 tvb
, 8, 4, ENC_BIG_ENDIAN
);
4485 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_intra
,
4486 tvb
, 12, 1, ENC_BIG_ENDIAN
);
4487 ti
= proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_srcenitn
,
4488 tvb
, 13, 8, ENC_BIG_ENDIAN
);
4489 srce_ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level_sub1
);
4490 proto_tree_add_item(srce_ni_tn_tree
, hf_c15ch_conn_srceni
,
4491 tvb
, 13, 4, ENC_BIG_ENDIAN
);
4492 proto_tree_add_item(srce_ni_tn_tree
, hf_c15ch_conn_srcetn
,
4493 tvb
, 17, 4, ENC_BIG_ENDIAN
);
4495 ti
= proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_destnitn
,
4496 tvb
, 21, 8, ENC_BIG_ENDIAN
);
4497 dest_ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level_sub2
);
4498 proto_tree_add_item(dest_ni_tn_tree
, hf_c15ch_conn_destni
,
4499 tvb
, 21, 4, ENC_BIG_ENDIAN
);
4500 proto_tree_add_item(dest_ni_tn_tree
, hf_c15ch_conn_desttn
,
4501 tvb
, 25, 4, ENC_BIG_ENDIAN
);
4502 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_interlinknum
,
4503 tvb
, 29, 4, ENC_BIG_ENDIAN
);
4504 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_fromport
,
4505 tvb
, 33, 4, ENC_BIG_ENDIAN
);
4506 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_fromslot
,
4507 tvb
, 37, 4, ENC_BIG_ENDIAN
);
4508 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_toport
,
4509 tvb
, 41, 4, ENC_BIG_ENDIAN
);
4510 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_toslot
,
4511 tvb
, 45, 4, ENC_BIG_ENDIAN
);
4512 proto_tree_add_item(c15ch_conn_tree
, hf_c15ch_conn_hubcallid
,
4513 tvb
, 49, 4, ENC_BIG_ENDIAN
);
4515 return tvb_reported_length(tvb
);
4519 static int dissect_c15ch_cp_state_ch(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4522 proto_item
* ti
= NULL
;
4523 proto_tree
* c15ch_cp_state_ch_tree
= NULL
;
4525 uint32_t oldpm_value
= 0;
4526 uint32_t newpm_value
= 0;
4527 col_clear(pinfo
->cinfo
, COL_INFO
);
4528 oldpm_value
= tvb_get_ntohl(tvb
, 0);
4529 newpm_value
= tvb_get_ntohl(tvb
, 4);
4531 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: CP_STATE_CH, %s --> ",
4532 val_to_str_ext_const(oldpm_value
, &c15_cp_state_pm_types_ext
, "Unknown") );
4534 col_append_str(pinfo
->cinfo
, COL_INFO
,
4535 val_to_str_ext_const(newpm_value
, &c15_cp_state_pm_types_ext
, "Unknown") );
4539 ti
= proto_tree_add_item(tree
, hf_c15ch_cp_state_ch
, tvb
, 0, 40, ENC_NA
);
4540 proto_item_append_text(ti
, ", Old PM Type: %s",
4541 val_to_str_ext_const(oldpm_value
, &c15_cp_state_pm_types_ext
, "Unknown"));
4542 proto_item_append_text(ti
, ", New PM Type: %s",
4543 val_to_str_ext_const(newpm_value
, &c15_cp_state_pm_types_ext
, "Unknown"));
4545 c15ch_cp_state_ch_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4546 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_oldpm
,
4547 tvb
, 0, 4, ENC_BIG_ENDIAN
);
4548 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_newpm
,
4549 tvb
, 4, 4, ENC_BIG_ENDIAN
);
4550 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_subpm
,
4551 tvb
, 8, 4, ENC_BIG_ENDIAN
);
4552 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_trkpm
,
4553 tvb
, 12, 4, ENC_BIG_ENDIAN
);
4554 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_slepm
,
4555 tvb
, 16, 4, ENC_BIG_ENDIAN
);
4556 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_flags
,
4557 tvb
, 20, 4, ENC_BIG_ENDIAN
);
4558 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_oldrtetype
,
4559 tvb
, 24, 4, ENC_BIG_ENDIAN
);
4560 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_oldrteidx
,
4561 tvb
, 28, 4, ENC_BIG_ENDIAN
);
4562 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_newrtetype
,
4563 tvb
, 32, 4, ENC_BIG_ENDIAN
);
4564 proto_tree_add_item(c15ch_cp_state_ch_tree
, hf_c15ch_cp_state_ch_newrteidx
,
4565 tvb
, 36, 4, ENC_BIG_ENDIAN
);
4567 return tvb_reported_length(tvb
);
4571 static int dissect_c15ch_dest_digits(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4573 proto_item
* ti
= NULL
;
4574 proto_tree
* c15ch_dest_digits_tree
= NULL
;
4576 uint32_t num_digits
;
4577 num_digits
= tvb_get_ntohl(tvb
, 0);
4578 col_append_str(pinfo
->cinfo
, COL_INFO
, ", ");
4579 add_digits_string_info_col( tvb
, 4, num_digits
, pinfo
);
4582 ti
= proto_tree_add_item(tree
, hf_c15ch_dest_digits
, tvb
, 0, 36, ENC_NA
);
4583 c15ch_dest_digits_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4584 add_digits_string(hf_c15ch_dest_digits_digits
, tvb
, c15ch_dest_digits_tree
, 4, num_digits
, 32, 4);
4586 return tvb_reported_length(tvb
);
4590 static int dissect_c15ch_echo_cancel(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4592 proto_item
* ti
= NULL
;
4593 proto_tree
* c15ch_echo_cancel_tree
= NULL
;
4594 proto_tree
* sub_ni_tn_tree
= NULL
;
4595 proto_tree
* loc_tree
= NULL
;
4596 proto_tree
* old_tree
= NULL
;
4597 proto_tree
* new_tree
= NULL
;
4599 uint8_t valid_tone_id
= 0;
4600 uint8_t old_l2_mode_val
, new_l2_mode_val
;
4601 enum C15_EC_CHANNEL_MODE old_channel_mode
, new_channel_mode
;
4602 enum C15_EC_ECAN_MODE old_ecan_mode
, new_ecan_mode
;
4603 uint32_t pm_val
, pc_val
, loop_val
, slot_val
;
4605 char * loc_string
= NULL
;
4608 old_l2_mode_val
= tvb_get_uint8(tvb
, 8);
4609 new_l2_mode_val
= tvb_get_uint8(tvb
, 9);
4611 switch( old_l2_mode_val
)
4613 case C15_EC_L2_MODE_VOICE
:
4615 old_channel_mode
= C15_EC_VOICE_CHANNEL_MODE
;
4616 old_ecan_mode
= C15_EC_ON_ECAN_MODE
;
4619 case C15_EC_L2_MODE_VBD
:
4621 old_channel_mode
= C15_EC_VBD_CHANNEL_MODE
;
4622 old_ecan_mode
= C15_EC_ON_ECAN_MODE
;
4625 case C15_EC_L2_MODE_VBD_ECANOFF
:
4627 old_channel_mode
= C15_EC_VBD_CHANNEL_MODE
;
4628 old_ecan_mode
= C15_EC_OFF_ECAN_MODE
;
4633 old_channel_mode
= C15_EC_CHANNEL_MODE_INVALID
;
4634 old_ecan_mode
= C15_EC_ECAN_MODE_INVALID
;
4639 switch( new_l2_mode_val
)
4641 case C15_EC_L2_MODE_VOICE
:
4643 new_channel_mode
= C15_EC_VOICE_CHANNEL_MODE
;
4644 new_ecan_mode
= C15_EC_ON_ECAN_MODE
;
4647 case C15_EC_L2_MODE_VBD
:
4649 new_channel_mode
= C15_EC_VBD_CHANNEL_MODE
;
4650 new_ecan_mode
= C15_EC_ON_ECAN_MODE
;
4653 case C15_EC_L2_MODE_VBD_ECANOFF
:
4655 new_channel_mode
= C15_EC_VBD_CHANNEL_MODE
;
4656 new_ecan_mode
= C15_EC_OFF_ECAN_MODE
;
4661 new_channel_mode
= C15_EC_CHANNEL_MODE_INVALID
;
4662 new_ecan_mode
= C15_EC_ECAN_MODE_INVALID
;
4669 ti
= proto_tree_add_item(tree
, hf_c15ch_echo_cancel
, tvb
, 0, 31, ENC_NA
);
4670 c15ch_echo_cancel_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4671 ti
= proto_tree_add_item(c15ch_echo_cancel_tree
, hf_c15ch_echo_cancel_ni_tn
,
4672 tvb
, 0, 8, ENC_BIG_ENDIAN
);
4673 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
4674 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_echo_cancel_ni
,
4675 tvb
, 0, 4, ENC_BIG_ENDIAN
);
4676 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_echo_cancel_tn
,
4677 tvb
, 4, 4, ENC_BIG_ENDIAN
);
4678 valid_tone_id
= tvb_get_uint8( tvb
, 10 );
4679 if ( valid_tone_id
)
4681 proto_tree_add_item(c15ch_echo_cancel_tree
, hf_c15ch_echo_cancel_tone_id
, tvb
, 11, 4, ENC_BIG_ENDIAN
);
4683 ti
= proto_tree_add_item(c15ch_echo_cancel_tree
, hf_c15ch_echo_cancel_old_l2_mode
,
4684 tvb
, 8, 1, ENC_BIG_ENDIAN
);
4685 old_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub2
);
4686 proto_tree_add_uint(old_tree
, hf_c15ch_echo_cancel_old_channel_mode
, tvb
, 8, 1, (uint32_t)old_channel_mode
);
4687 proto_tree_add_uint(old_tree
, hf_c15ch_echo_cancel_old_ecan_mode
, tvb
, 8, 1, (uint32_t)old_ecan_mode
);
4689 ti
= proto_tree_add_item(c15ch_echo_cancel_tree
, hf_c15ch_echo_cancel_new_l2_mode
,
4690 tvb
, 9, 1, ENC_BIG_ENDIAN
);
4691 new_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub3
);
4692 proto_tree_add_uint(new_tree
, hf_c15ch_echo_cancel_new_channel_mode
,
4693 tvb
, 9, 1, (uint32_t)new_channel_mode
);
4694 proto_tree_add_uint(new_tree
, hf_c15ch_echo_cancel_new_ecan_mode
,
4695 tvb
, 9, 1, (uint32_t)new_ecan_mode
);
4697 /* location : pm, pc, loop, slot */
4698 pm_val
= tvb_get_ntohl( tvb
, 15 );
4699 pc_val
= tvb_get_ntohl( tvb
, 19 );
4700 loop_val
= tvb_get_ntohl( tvb
, 23 );
4701 slot_val
= tvb_get_ntohl( tvb
, 27 );
4702 loc_string
= wmem_strdup_printf(pinfo
->pool
, "%d %d %d %d", pm_val
, pc_val
, loop_val
, slot_val
);
4703 ti
= proto_tree_add_string(c15ch_echo_cancel_tree
, hf_c15ch_echo_cancel_location
, tvb
, 15, (27 + 4 - 15) + 1, loc_string
);
4704 loc_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub4
);
4706 proto_tree_add_item(loc_tree
, hf_c15ch_echo_cancel_pm
, tvb
, 15, 4, ENC_BIG_ENDIAN
);
4707 proto_tree_add_item(loc_tree
, hf_c15ch_echo_cancel_pc
, tvb
, 19, 4, ENC_BIG_ENDIAN
);
4708 proto_tree_add_item(loc_tree
, hf_c15ch_echo_cancel_loop
, tvb
, 23, 4, ENC_BIG_ENDIAN
);
4709 proto_tree_add_item(loc_tree
, hf_c15ch_echo_cancel_slot
, tvb
, 27, 4, ENC_BIG_ENDIAN
);
4712 return tvb_reported_length(tvb
);
4715 static int dissect_c15ch_encap_isup(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4717 proto_item
* ti
= NULL
;
4718 proto_tree
* c15ch_encap_isup_tree
= NULL
;
4719 tvbuff_t
* next_tvb
;
4724 ti
= proto_tree_add_item(tree
, hf_c15ch_encap_isup
, tvb
, 0, 273, ENC_NA
);
4725 c15ch_encap_isup_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4726 proto_tree_add_item(c15ch_encap_isup_tree
, hf_c15ch_encap_isup_direction
,
4727 tvb
, 0, 1, ENC_BIG_ENDIAN
);
4728 proto_tree_add_item(c15ch_encap_isup_tree
, hf_c15ch_encap_isup_isup_msg_length
,
4729 tvb
, 1, 4, ENC_BIG_ENDIAN
);
4731 /*length of ISUP portion == expected length == 268 */
4732 next_tvb
= tvb_new_subset_length(tvb
, 5, 268);
4733 call_dissector(general_isup_handle
, next_tvb
, pinfo
, tree
);
4736 col_set_str(pinfo
->cinfo
, COL_PROTOCOL
, C15_LABEL
);
4737 col_set_str(pinfo
->cinfo
, COL_INFO
, "Type: ISUP");
4739 return tvb_reported_length(tvb
);
4743 static int dissect_c15ch_isup(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4745 proto_item
* ti
= NULL
;
4746 proto_tree
* c15ch_isup_tree
= NULL
;
4747 proto_tree
* c15ch_sub_hdr_tree
= NULL
;
4748 proto_tree
* sub_ni_tn_tree
= NULL
;
4749 uint8_t msgtype_value
= 0;
4750 tvbuff_t
* next_tvb
;
4752 msgtype_value
= tvb_get_uint8(tvb
, 1);
4754 col_clear(pinfo
->cinfo
, COL_INFO
);
4755 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Msg Type: %s",
4756 val_to_str_ext_const(msgtype_value
, &c15_isup_types_ext
, "Unknown"));
4761 ti
= proto_tree_add_item(tree
, hf_c15ch_isup
, tvb
, 0, 324, ENC_NA
);
4762 proto_item_append_text(ti
, ", Msg Type: %s",
4763 val_to_str_ext_const(msgtype_value
, &c15_isup_types_ext
, "Unknown"));
4764 c15ch_isup_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4765 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_direction
,
4766 tvb
, 0, 1, ENC_BIG_ENDIAN
);
4767 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_msgtype
,
4768 tvb
, 1, 1, ENC_BIG_ENDIAN
);
4769 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_cic
,
4770 tvb
, 2, 4, ENC_BIG_ENDIAN
);
4771 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_opcmember
,
4772 tvb
, 6, 1, ENC_BIG_ENDIAN
);
4773 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_opccluster
,
4774 tvb
, 7, 1, ENC_BIG_ENDIAN
);
4775 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_opcnetwork
,
4776 tvb
, 8, 1, ENC_BIG_ENDIAN
);
4777 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_dpcmember
,
4778 tvb
, 9, 1, ENC_BIG_ENDIAN
);
4779 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_dpccluster
,
4780 tvb
, 10, 1, ENC_BIG_ENDIAN
);
4781 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_dpcnetwork
,
4782 tvb
, 11, 1, ENC_BIG_ENDIAN
);
4783 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_level3index
,
4784 tvb
, 12, 1, ENC_BIG_ENDIAN
);
4785 ti
= proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_ni_tn
,
4786 tvb
, 13, 8, ENC_BIG_ENDIAN
);
4787 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
4788 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_isup_ni
,
4789 tvb
, 13, 4, ENC_BIG_ENDIAN
);
4790 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_isup_tn
,
4791 tvb
, 17, 4, ENC_BIG_ENDIAN
);
4793 proto_tree_add_item(c15ch_isup_tree
, hf_c15ch_isup_iptime
,
4794 tvb
, 320, 4, ENC_BIG_ENDIAN
);
4796 c15ch_sub_hdr_tree
= proto_tree_add_subtree(c15ch_isup_tree
,
4797 tvb
, 21, 28, ett_c15ch_second_level_sub2
, NULL
, "Raw Header Data");
4798 proto_tree_add_item(c15ch_sub_hdr_tree
, hf_c15ch_isup_c15hdr
,
4799 tvb
, 21, 18, ENC_NA
);
4800 proto_tree_add_item(c15ch_sub_hdr_tree
, hf_c15ch_isup_layer2hdr
,
4801 tvb
, 39, 2, ENC_NA
);
4802 proto_tree_add_item(c15ch_sub_hdr_tree
, hf_c15ch_isup_layer3hdr
,
4803 tvb
, 41, 8, ENC_NA
);
4805 /*length of ISUP portion == expected length == 271 */
4806 next_tvb
= tvb_new_subset_length(tvb
, 49, 271);
4807 call_dissector(general_isup_handle
, next_tvb
, pinfo
, tree
);
4810 col_set_str(pinfo
->cinfo
, COL_PROTOCOL
, C15_LABEL
);
4811 col_clear(pinfo
->cinfo
, COL_INFO
);
4812 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: ISUP, Msg Type: %s",
4813 val_to_str_ext_const(msgtype_value
, &c15_isup_types_ext
, "Unknown Type") );
4815 return tvb_reported_length(tvb
);
4818 static int dissect_c15ch_mkbrk(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
4820 proto_item
* ti
= NULL
;
4821 proto_tree
* c15ch_mkbrk_tree
= NULL
;
4825 ti
= proto_tree_add_item(tree
, hf_c15ch_mkbrk
, tvb
, 0, 11, ENC_NA
);
4826 c15ch_mkbrk_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4827 proto_tree_add_item(c15ch_mkbrk_tree
, hf_c15ch_mkbrk_makebreak
,
4828 tvb
, 0, 1, ENC_BIG_ENDIAN
);
4829 proto_tree_add_item(c15ch_mkbrk_tree
, hf_c15ch_mkbrk_nshlf
,
4830 tvb
, 1, 1, ENC_BIG_ENDIAN
);
4831 proto_tree_add_item(c15ch_mkbrk_tree
, hf_c15ch_mkbrk_stm
,
4832 tvb
, 2, 1, ENC_BIG_ENDIAN
);
4833 proto_tree_add_item(c15ch_mkbrk_tree
, hf_c15ch_mkbrk_caddr
,
4834 tvb
, 3, 4, ENC_BIG_ENDIAN
);
4835 proto_tree_add_item(c15ch_mkbrk_tree
, hf_c15ch_mkbrk_cdata
,
4836 tvb
, 7, 4, ENC_BIG_ENDIAN
);
4838 return tvb_reported_length(tvb
);
4842 static int dissect_c15ch_nitnxlate(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
4845 proto_item
* ti
= NULL
;
4846 proto_tree
* c15ch_nitnxlate_tree
= NULL
;
4847 proto_tree
* sub_ni_tn_tree
= NULL
;
4848 proto_tree
* concat_tree
= NULL
;
4849 unsigned char * site_string
;
4850 unsigned char * subsite_string
;
4851 char * equipname_string
;
4852 wmem_strbuf_t
* desc_string
= wmem_strbuf_create(pinfo
->pool
);
4854 int site_str_len
, subsite_str_len
, equipname_str_len
;
4855 uint32_t gwtype_val
;
4856 uint32_t frame_val
, shelf_val
, lsg_val
, unit_val
;
4862 site_string
= tvb_get_stringz_enc(pinfo
->pool
, tvb
, str_start
, &site_str_len
, ENC_ASCII
);
4866 subsite_string
= tvb_get_stringz_enc(pinfo
->pool
, tvb
, str_start
, &subsite_str_len
, ENC_ASCII
);
4870 equipname_string
= (char * )tvb_get_stringz_enc(pinfo
->pool
, tvb
, str_start
, &equipname_str_len
, ENC_ASCII
);
4872 frame_val
= tvb_get_ntohl( tvb
, 31 );
4873 shelf_val
= tvb_get_ntohl( tvb
, 35 );
4874 lsg_val
= tvb_get_ntohl( tvb
, 39 );
4875 unit_val
= tvb_get_ntohl( tvb
, 43 );
4876 key_val
= tvb_get_ntohl( tvb
, 47 );
4877 /* desc_string contains for site, subsite, equip, any of which may be null */
4878 /* don't want to print "NULL" or similar in the output string on any platform */
4879 if (site_str_len
> 0)
4880 wmem_strbuf_append_printf(desc_string
, "%s ", site_string
);
4881 if (subsite_str_len
> 0)
4882 wmem_strbuf_append_printf(desc_string
, "%s ", subsite_string
);
4883 if (equipname_str_len
> 0)
4884 wmem_strbuf_append_printf(desc_string
, "%s ", equipname_string
);
4888 wmem_strbuf_append_printf(desc_string
, "%d %d %d %d %d",
4889 frame_val
, shelf_val
, lsg_val
, unit_val
, key_val
);
4893 if ( (g_strcmp0( "VLIN", equipname_string
) == 0) ||
4894 (g_strcmp0( "PTRK", equipname_string
) == 0) )
4896 wmem_strbuf_append_printf(desc_string
, "%d", frame_val
);
4898 else if ( (g_strcmp0( "GWE", equipname_string
) == 0) ||
4899 (g_strcmp0( "IDE", equipname_string
) == 0) )
4901 wmem_strbuf_append_printf(desc_string
, "%d %d", frame_val
, shelf_val
);
4905 wmem_strbuf_append_printf(desc_string
, "%d %d %d %d", frame_val
, shelf_val
, lsg_val
, unit_val
);
4908 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", %s", desc_string
->str
);
4911 ti
= proto_tree_add_item(tree
, hf_c15ch_nitnxlate
, tvb
, 0, 190, ENC_NA
);
4912 c15ch_nitnxlate_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
4914 ti
= proto_tree_add_item(c15ch_nitnxlate_tree
, hf_c15ch_nitnxlate_ni_tn
, tvb
, 0, 8, ENC_BIG_ENDIAN
);
4915 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
4916 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_nitnxlate_ni
,
4917 tvb
, 0, 4, ENC_BIG_ENDIAN
);
4918 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_nitnxlate_tn
,
4919 tvb
, 4, 4, ENC_BIG_ENDIAN
);
4921 proto_tree_add_item(c15ch_nitnxlate_tree
, hf_c15ch_nitnxlate_equiptype
,
4922 tvb
, 8, 4, ENC_BIG_ENDIAN
);
4925 ti
= proto_tree_add_string(c15ch_nitnxlate_tree
, hf_c15ch_nitnxlate_concat_string
, tvb
, 12, 40 /*length*/,
4927 concat_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub2
);
4928 if ( site_str_len
> 1 )
4931 add_string_field( concat_tree
, tvb
, str_start
, 5, hf_c15ch_nitnxlate_sitestring
);
4933 if ( subsite_str_len
> 1 )
4936 add_string_field( concat_tree
, tvb
, str_start
, 5, hf_c15ch_nitnxlate_subsitestring
);
4938 if ( equipname_str_len
> 1 )
4941 add_string_field( concat_tree
, tvb
, str_start
, 5, hf_c15ch_nitnxlate_equipname
);
4943 if ( g_strcmp0( "GWE", equipname_string
) == 0 )
4945 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_gateway
,
4946 tvb
, 31, 4, ENC_BIG_ENDIAN
);
4948 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_line
,
4949 tvb
, 35, 4, ENC_BIG_ENDIAN
);
4952 if ( g_strcmp0( "IDE", equipname_string
) == 0 )
4954 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_idt_rdt
,
4955 tvb
, 31, 4, ENC_BIG_ENDIAN
);
4957 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_line
,
4958 tvb
, 35, 4, ENC_BIG_ENDIAN
);
4961 if ( g_strcmp0( "VLIN", equipname_string
) == 0 )
4963 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_line
,
4964 tvb
, 31, 4, ENC_BIG_ENDIAN
);
4967 if ( g_strcmp0( "PTRK", equipname_string
) == 0 )
4969 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_ptrk
,
4970 tvb
, 31, 4, ENC_BIG_ENDIAN
);
4973 if ( (g_strcmp0( "LCE", equipname_string
) == 0) ||
4974 (g_strcmp0( "RSE", equipname_string
) == 0) ||
4975 (g_strcmp0( "RSC", equipname_string
) == 0) ||
4976 (g_strcmp0( "HUBE", equipname_string
) == 0) )
4978 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_bay
,
4979 tvb
, 31, 4, ENC_BIG_ENDIAN
);
4980 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_shelf
,
4981 tvb
, 35, 4, ENC_BIG_ENDIAN
);
4982 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_lsg
,
4983 tvb
, 39, 4, ENC_BIG_ENDIAN
);
4984 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_line
,
4985 tvb
, 43, 4, ENC_BIG_ENDIAN
);
4988 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_key
,
4989 tvb
, 47, 4, ENC_BIG_ENDIAN
);
4993 if (equipname_str_len
<= 1)
4995 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_pm
,
4996 tvb
, 31, 4, ENC_BIG_ENDIAN
);
4997 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_pc_sts1
,
4998 tvb
, 35, 4, ENC_BIG_ENDIAN
); /* either pc or sts1 */
4999 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_port_vt15
,
5000 tvb
, 39, 4, ENC_BIG_ENDIAN
); /* either port or vt15 */
5001 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_channel
,
5002 tvb
, 43, 4, ENC_BIG_ENDIAN
);
5004 else /* default case : label generically as parms */
5006 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_parm_1
,
5007 tvb
, 31, 4, ENC_BIG_ENDIAN
);
5009 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_parm_2
,
5010 tvb
, 35, 4, ENC_BIG_ENDIAN
);
5012 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_parm_3
,
5013 tvb
, 39, 4, ENC_BIG_ENDIAN
);
5014 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_parm_4
,
5015 tvb
, 43, 4, ENC_BIG_ENDIAN
);
5018 proto_tree_add_item(concat_tree
, hf_c15ch_nitnxlate_key
,
5019 tvb
, 47, 4, ENC_BIG_ENDIAN
);
5023 proto_tree_add_item(c15ch_nitnxlate_tree
, hf_c15ch_nitnxlate_gw_type
,
5024 tvb
, 27, 4, ENC_BIG_ENDIAN
);
5026 if ( g_strcmp0( "GWE", equipname_string
) == 0 )
5029 add_string_field( c15ch_nitnxlate_tree
, tvb
, str_start
, 65, hf_c15ch_nitnxlate_user_tid
);
5033 gwtype_val
= tvb_get_ntohl( tvb
, 27 );
5034 if (( gwtype_val
== 3 ) ||
5035 ( gwtype_val
== 5 ) )
5037 add_string_field(c15ch_nitnxlate_tree
, tvb
, str_start
, 65, hf_c15ch_nitnxlate_host
);
5038 /* moving MGCP_Line_ID here into this block as it is only valid for MGCP / NCS lines */
5039 add_string_field(c15ch_nitnxlate_tree
, tvb
, 185, 5, hf_c15ch_nitnxlate_mgcp_line_id
);
5042 /* SIP Call-ID-64 */
5043 if (( gwtype_val
== 2 ) || /* Output SIP Call-ID up to 64 characters if SIP_LN or */
5044 ( gwtype_val
== 14 ) || /* SIP_LTG */
5045 ( gwtype_val
== 15 ) ) /* SIP_TG */
5047 add_string_field(c15ch_nitnxlate_tree
, tvb
, str_start
, 65, hf_c15ch_nitnxlate_sip_call_id_64
);
5048 /* Also placing this parameter as "host" for call correlation with external tools */
5049 add_string_field(c15ch_nitnxlate_tree
, tvb
, str_start
, 65, hf_c15ch_nitnxlate_host
);
5052 /* target group number */
5053 tgnum_val
= tvb_get_ntohl( tvb
, 181 );
5056 proto_tree_add_item(c15ch_nitnxlate_tree
, hf_c15ch_nitnxlate_tg_num
,
5057 tvb
, 181, 4, ENC_BIG_ENDIAN
);
5061 // add_string_field( c15ch_nitnxlate_tree, tvb, 185, 5, hf_c15ch_nitnxlate_mgcp_line_id);
5064 return tvb_reported_length(tvb
);
5068 static int dissect_c15ch_ntwk_conn(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
5070 proto_item
* ti
= NULL
;
5071 proto_tree
* c15ch_ntwk_conn_tree
= NULL
;
5072 proto_tree
* sub_ni_tn_tree
= NULL
;
5073 proto_tree
* old_loc_tree
= NULL
;
5074 proto_tree
* new_loc_tree
= NULL
;
5076 uint8_t from_pm_val
, from_pc_val
, from_loop_val
, from_slot_val
;
5077 char * from_loc_string
= NULL
;
5079 uint8_t to_pm_val
, to_pc_val
, to_loop_val
, to_slot_val
;
5080 char * to_loc_string
= NULL
;
5082 uint8_t path_type_val
= 0;
5083 uint8_t conn_type_val
= 0;
5084 path_type_val
= tvb_get_uint8(tvb
, 0);
5085 conn_type_val
= tvb_get_uint8(tvb
, 1);
5086 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Path Type: %s",
5087 val_to_str(path_type_val
, ett_c15ch_ntwk_conn_path_types
, "Unknown %d") );
5088 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Conn Type: %s",
5089 val_to_str(conn_type_val
, ett_c15ch_ntwk_conn_conn_types
, "Unknown %d") );
5094 ti
= proto_tree_add_item(tree
, hf_c15ch_ntwk_conn
, tvb
, 0, 39, ENC_NA
);
5095 c15ch_ntwk_conn_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5098 proto_tree_add_item(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_pathtype
,
5099 tvb
, 0, 1, ENC_BIG_ENDIAN
);
5100 proto_tree_add_item(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_conntype
,
5101 tvb
, 1, 1, ENC_BIG_ENDIAN
);
5102 proto_tree_add_item(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_fromoptimized
,
5103 tvb
, 2, 1, ENC_BIG_ENDIAN
);
5108 add_string_field( c15ch_ntwk_conn_tree
, tvb
, str_start
, max_str_len
, hf_c15ch_ntwk_conn_fromsite
);
5110 /* old location and pm, pc, slot, loop*/
5111 from_pm_val
= tvb_get_uint8( tvb
, 8 );
5112 from_pc_val
= tvb_get_uint8( tvb
, 9 );
5113 from_loop_val
= tvb_get_uint8( tvb
, 10 );
5114 from_slot_val
= tvb_get_uint8( tvb
, 11 );
5115 from_loc_string
= wmem_strdup_printf(pinfo
->pool
, "%d %d %d %d", from_pm_val
, from_pc_val
, from_loop_val
, from_slot_val
);
5116 ti
= proto_tree_add_string(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_fromlocation
, tvb
, 8, (11 - 8) + 1,
5118 old_loc_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
5119 proto_tree_add_item(old_loc_tree
, hf_c15ch_ntwk_conn_frompm
,
5120 tvb
, 8, 1, ENC_BIG_ENDIAN
);
5121 proto_tree_add_item(old_loc_tree
, hf_c15ch_ntwk_conn_frompc
,
5122 tvb
, 9, 1, ENC_BIG_ENDIAN
);
5123 proto_tree_add_item(old_loc_tree
, hf_c15ch_ntwk_conn_fromloop
,
5124 tvb
, 10, 1, ENC_BIG_ENDIAN
);
5125 proto_tree_add_item(old_loc_tree
, hf_c15ch_ntwk_conn_fromslot
,
5126 tvb
, 11, 1, ENC_BIG_ENDIAN
);
5129 proto_tree_add_item(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_fromcnx
,
5130 tvb
, 12, 4, ENC_BIG_ENDIAN
);
5132 ti
= proto_tree_add_item(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_fromntwknitn
,
5133 tvb
, 16, 8, ENC_BIG_ENDIAN
);
5134 sub_ni_tn_tree
= proto_item_add_subtree (ti
,ett_c15ch_second_level_sub2
);
5135 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_ntwk_conn_fromntwkni
,
5136 tvb
, 16, 4, ENC_BIG_ENDIAN
);
5137 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_ntwk_conn_fromntwktn
,
5138 tvb
, 20, 4, ENC_BIG_ENDIAN
);
5141 proto_tree_add_item(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_mbshold
,
5142 tvb
, 24, 1, ENC_BIG_ENDIAN
);
5143 proto_tree_add_item(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_tooptimized
,
5144 tvb
, 25, 1, ENC_BIG_ENDIAN
);
5148 add_string_field( c15ch_ntwk_conn_tree
, tvb
, str_start
, max_str_len
, hf_c15ch_ntwk_conn_tosite
);
5150 /* new location and pm, pc, slot, loop*/
5151 to_pm_val
= tvb_get_uint8( tvb
, 31 );
5152 to_pc_val
= tvb_get_uint8( tvb
, 32 );
5153 to_loop_val
= tvb_get_uint8( tvb
, 33 );
5154 to_slot_val
= tvb_get_uint8( tvb
, 34 );
5155 to_loc_string
= wmem_strdup_printf(pinfo
->pool
, "%d %d %d %d", to_pm_val
, to_pc_val
, to_loop_val
, to_slot_val
);
5156 ti
= proto_tree_add_string(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_tolocation
, tvb
, 31, (34 - 31) + 1,
5158 new_loc_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub3
);
5159 proto_tree_add_item(new_loc_tree
, hf_c15ch_ntwk_conn_topm
,
5160 tvb
, 31, 1, ENC_BIG_ENDIAN
);
5161 proto_tree_add_item(new_loc_tree
, hf_c15ch_ntwk_conn_topc
,
5162 tvb
, 32, 1, ENC_BIG_ENDIAN
);
5163 proto_tree_add_item(new_loc_tree
, hf_c15ch_ntwk_conn_toloop
,
5164 tvb
, 33, 1, ENC_BIG_ENDIAN
);
5165 proto_tree_add_item(new_loc_tree
, hf_c15ch_ntwk_conn_toslot
,
5166 tvb
, 34, 1, ENC_BIG_ENDIAN
);
5167 proto_tree_add_item(c15ch_ntwk_conn_tree
, hf_c15ch_ntwk_conn_tocnx
,
5168 tvb
, 35, 4, ENC_BIG_ENDIAN
);
5170 return tvb_reported_length(tvb
);
5174 static int dissect_c15ch_orig(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
5176 proto_item
* ti
= NULL
;
5177 proto_tree
* c15ch_orig_tree
= NULL
;
5178 proto_tree
* sub_ni_tn_tree
= NULL
;
5180 uint8_t num_dn_digits
;
5181 uint8_t num_upn_digits
;
5182 uint8_t num_rnp_digits
;
5184 num_dn_digits
= tvb_get_uint8(tvb
, 12);
5186 col_append_str(pinfo
->cinfo
, COL_INFO
, ", DN: ");
5187 add_digits_string_info_col( tvb
, 13, num_dn_digits
, pinfo
);
5191 ti
= proto_tree_add_item(tree
, hf_c15ch_orig
, tvb
, 0, 73, ENC_NA
);
5192 c15ch_orig_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5193 num_upn_digits
= tvb_get_uint8(tvb
, 28);
5194 num_rnp_digits
= tvb_get_uint8(tvb
, 49);
5195 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_tnblocktype
,
5196 tvb
, 0, 4, ENC_BIG_ENDIAN
);
5198 ti
= proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_ni_tn
, tvb
, 4, 8, ENC_BIG_ENDIAN
);
5200 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
5201 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_orig_ni
,
5202 tvb
, 4, 4, ENC_BIG_ENDIAN
);
5203 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_orig_tn
,
5204 tvb
, 8, 4, ENC_BIG_ENDIAN
);
5206 add_digits_string(hf_c15ch_orig_dndigits
,tvb
,c15ch_orig_tree
, 13, num_dn_digits
, 10, 1);
5208 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_nidscrn
,
5209 tvb
, 23, 1, ENC_BIG_ENDIAN
);
5210 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_nidaddrtype
,
5211 tvb
, 24, 1, ENC_BIG_ENDIAN
);
5212 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_nidnmbrplan
,
5213 tvb
, 25, 1, ENC_BIG_ENDIAN
);
5214 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_nidprivind
,
5215 tvb
, 26, 1, ENC_BIG_ENDIAN
);
5216 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_upnsaved
,
5217 tvb
, 27, 1, ENC_BIG_ENDIAN
);
5219 add_digits_string(hf_c15ch_orig_upndigits
,tvb
,c15ch_orig_tree
, 29, num_upn_digits
, 15, 1);
5221 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_upnscrn
,
5222 tvb
, 44, 1, ENC_BIG_ENDIAN
);
5223 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_upnaddrtype
,
5224 tvb
, 45, 1, ENC_BIG_ENDIAN
);
5225 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_upnnmbrplan
,
5226 tvb
, 46, 1, ENC_BIG_ENDIAN
);
5227 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_upnprivind
,
5228 tvb
, 47, 1, ENC_BIG_ENDIAN
);
5229 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_rnpsaved
,
5230 tvb
, 48, 1, ENC_BIG_ENDIAN
);
5232 add_digits_string(hf_c15ch_orig_rnpdigits
,tvb
,c15ch_orig_tree
, 50, num_rnp_digits
, 15, 1);
5234 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_rnpscrn
,
5235 tvb
, 65, 1, ENC_BIG_ENDIAN
);
5236 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_rnpaddrtype
,
5237 tvb
, 66, 1, ENC_BIG_ENDIAN
);
5238 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_rnpnmbrplan
,
5239 tvb
, 67, 1, ENC_BIG_ENDIAN
);
5240 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_rnpprivind
,
5241 tvb
, 68, 1, ENC_BIG_ENDIAN
);
5242 proto_tree_add_item(c15ch_orig_tree
, hf_c15ch_orig_iptime
,
5243 tvb
, 69, 4, ENC_BIG_ENDIAN
);
5246 return tvb_reported_length(tvb
);
5250 static int dissect_c15ch_outgwebc(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
5252 proto_item
* ti
= NULL
;
5253 proto_tree
* c15ch_outgwebc_tree
= NULL
;
5254 proto_tree
* sub_ni_tn_tree
= NULL
;
5259 ti
= proto_tree_add_item(tree
, hf_c15ch_outgwebc
, tvb
, 0, 27, ENC_NA
);
5260 c15ch_outgwebc_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5262 ti
= proto_tree_add_item(c15ch_outgwebc_tree
, hf_c15ch_outgwebc_pbc_conn_ni_tn
,
5263 tvb
, 0, 8, ENC_BIG_ENDIAN
);
5264 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
5266 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_outgwebc_pbc_conn_ni
,
5267 tvb
, 0, 4, ENC_BIG_ENDIAN
);
5268 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_outgwebc_pbc_conn_tn
,
5269 tvb
, 4, 4, ENC_BIG_ENDIAN
);
5271 proto_tree_add_item(c15ch_outgwebc_tree
, hf_c15ch_outgwebc_pbc_conn_num
,
5272 tvb
, 8, 4, ENC_BIG_ENDIAN
);
5273 proto_tree_add_item(c15ch_outgwebc_tree
, hf_c15ch_outgwebc_pbc_conn_type
,
5274 tvb
, 12, 1, ENC_BIG_ENDIAN
);
5275 proto_tree_add_item(c15ch_outgwebc_tree
, hf_c15ch_outgwebc_bc_msg_type
,
5276 tvb
, 13, 1, ENC_BIG_ENDIAN
);
5277 proto_tree_add_item(c15ch_outgwebc_tree
, hf_c15ch_outgwebc_op_bc_sdp_ip
,
5278 tvb
, 14, 4, ENC_LITTLE_ENDIAN
);
5279 proto_tree_add_item(c15ch_outgwebc_tree
, hf_c15ch_outgwebc_op_bc_sdp_port
,
5280 tvb
, 18, 4, ENC_BIG_ENDIAN
);
5281 proto_tree_add_item(c15ch_outgwebc_tree
, hf_c15ch_outgwebc_pbc_mdrp_mode
,
5282 tvb
, 22, 1, ENC_BIG_ENDIAN
);
5283 proto_tree_add_item(c15ch_outgwebc_tree
, hf_c15ch_outgwebc_pbc_tst_flags
,
5284 tvb
, 23, 4, ENC_BIG_ENDIAN
);
5286 return tvb_reported_length(tvb
);
5290 static int dissect_c15ch_pathfind(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
5292 proto_item
* ti
= NULL
;
5293 proto_tree
* c15ch_pathfind_tree
= NULL
;
5294 proto_tree
* fromgwe_ni_tn_tree
= NULL
;
5295 proto_tree
* from_ni_tn_tree
= NULL
;
5296 proto_tree
* togwe_ni_tn_tree
= NULL
;
5297 proto_tree
* to_ni_tn_tree
= NULL
;
5303 ti
= proto_tree_add_item(tree
, hf_c15ch_pathfind
, tvb
, 0, 73, ENC_NA
);
5304 c15ch_pathfind_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5305 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_vds30
,
5306 tvb
, 0, 1, ENC_BIG_ENDIAN
);
5308 ti
= proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_fromgwenitn
, tvb
, 1, 8, ENC_BIG_ENDIAN
);
5309 fromgwe_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
5310 proto_tree_add_item(fromgwe_ni_tn_tree
, hf_c15ch_pathfind_fromgweni
,
5311 tvb
, 1, 4, ENC_BIG_ENDIAN
);
5312 proto_tree_add_item(fromgwe_ni_tn_tree
, hf_c15ch_pathfind_fromgwetn
,
5313 tvb
, 5, 4, ENC_BIG_ENDIAN
);
5315 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_fromoptimized
,
5316 tvb
, 9, 1, ENC_BIG_ENDIAN
);
5320 add_string_field( c15ch_pathfind_tree
, tvb
, str_start
, max_str_len
, hf_c15ch_pathfind_fromsite
);
5322 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_frompm
,
5323 tvb
, 15, 1, ENC_BIG_ENDIAN
);
5324 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_frompc
,
5325 tvb
, 16, 1, ENC_BIG_ENDIAN
);
5326 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_fromloop
,
5327 tvb
, 17, 4, ENC_BIG_ENDIAN
);
5328 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_fromslot
,
5329 tvb
, 21, 4, ENC_BIG_ENDIAN
);
5330 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_fromcnx
,
5331 tvb
, 25, 4, ENC_BIG_ENDIAN
);
5333 ti
= proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_fromnitn
,
5334 tvb
, 29, 8, ENC_BIG_ENDIAN
);
5335 from_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub2
);
5336 proto_tree_add_item(from_ni_tn_tree
, hf_c15ch_pathfind_fromni
,
5337 tvb
, 29, 4, ENC_BIG_ENDIAN
);
5338 proto_tree_add_item(from_ni_tn_tree
, hf_c15ch_pathfind_fromtn
,
5339 tvb
, 33, 4, ENC_BIG_ENDIAN
);
5341 ti
= proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_togwenitn
,
5342 tvb
, 37, 8, ENC_BIG_ENDIAN
);
5343 togwe_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub3
);
5344 proto_tree_add_item(togwe_ni_tn_tree
, hf_c15ch_pathfind_togweni
,
5345 tvb
, 37, 4, ENC_BIG_ENDIAN
);
5346 proto_tree_add_item(togwe_ni_tn_tree
, hf_c15ch_pathfind_togwetn
,
5347 tvb
, 41, 4, ENC_BIG_ENDIAN
);
5349 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_tooptimized
,
5350 tvb
, 45, 1, ENC_BIG_ENDIAN
);
5354 add_string_field( c15ch_pathfind_tree
, tvb
, str_start
, max_str_len
, hf_c15ch_pathfind_tosite
);
5356 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_topm
,
5357 tvb
, 51, 1, ENC_BIG_ENDIAN
);
5358 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_topc
,
5359 tvb
, 52, 1, ENC_BIG_ENDIAN
);
5360 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_toloop
,
5361 tvb
, 53, 4, ENC_BIG_ENDIAN
);
5362 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_toslot
,
5363 tvb
, 57, 4, ENC_BIG_ENDIAN
);
5364 proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_tocnx
,
5365 tvb
, 61, 4, ENC_BIG_ENDIAN
);
5367 ti
= proto_tree_add_item(c15ch_pathfind_tree
, hf_c15ch_pathfind_tonitn
,
5368 tvb
, 65, 8, ENC_BIG_ENDIAN
);
5369 to_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub4
);
5370 proto_tree_add_item(to_ni_tn_tree
, hf_c15ch_pathfind_toni
,
5371 tvb
, 65, 4, ENC_BIG_ENDIAN
);
5372 proto_tree_add_item(to_ni_tn_tree
, hf_c15ch_pathfind_totn
,
5373 tvb
, 69, 4, ENC_BIG_ENDIAN
);
5375 return tvb_reported_length(tvb
);
5379 static int dissect_c15ch_pathidle(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
5381 proto_item
* ti
= NULL
;
5382 proto_tree
* c15ch_pathidle_tree
= NULL
;
5383 proto_tree
* fromgwe_ni_tn_tree
= NULL
;
5384 proto_tree
* from_ni_tn_tree
= NULL
;
5385 proto_tree
* togwe_ni_tn_tree
= NULL
;
5386 proto_tree
* to_ni_tn_tree
= NULL
;
5392 ti
= proto_tree_add_item(tree
, hf_c15ch_pathidle
, tvb
, 0, 73, ENC_NA
);
5393 c15ch_pathidle_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5394 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_vds30
,
5395 tvb
, 0, 1, ENC_BIG_ENDIAN
);
5396 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_idlecode
,
5397 tvb
, 1, 1, ENC_BIG_ENDIAN
);
5398 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_pathtype
,
5399 tvb
, 2, 1, ENC_BIG_ENDIAN
);
5401 ti
= proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_fromgwenitn
,
5402 tvb
, 3, 8, ENC_BIG_ENDIAN
);
5403 fromgwe_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
5404 proto_tree_add_item(fromgwe_ni_tn_tree
, hf_c15ch_pathidle_fromgweni
,
5405 tvb
, 3, 4, ENC_BIG_ENDIAN
);
5406 proto_tree_add_item(fromgwe_ni_tn_tree
, hf_c15ch_pathidle_fromgwetn
,
5407 tvb
, 7, 4, ENC_BIG_ENDIAN
);
5411 add_string_field( c15ch_pathidle_tree
, tvb
, str_start
, max_str_len
, hf_c15ch_pathidle_fromsite
);
5413 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_frompm
,
5414 tvb
, 16, 1, ENC_BIG_ENDIAN
);
5415 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_frompc
,
5416 tvb
, 17, 1, ENC_BIG_ENDIAN
);
5417 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_fromloop
,
5418 tvb
, 18, 4, ENC_BIG_ENDIAN
);
5419 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_fromslot
,
5420 tvb
, 22, 4, ENC_BIG_ENDIAN
);
5421 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_fromcnx
,
5422 tvb
, 26, 4, ENC_BIG_ENDIAN
);
5424 ti
= proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_fromnitn
,
5425 tvb
, 30, 8, ENC_BIG_ENDIAN
);
5426 from_ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level_sub2
);
5427 proto_tree_add_item(from_ni_tn_tree
, hf_c15ch_pathidle_fromni
,
5428 tvb
, 30, 4, ENC_BIG_ENDIAN
);
5429 proto_tree_add_item(from_ni_tn_tree
, hf_c15ch_pathidle_fromtn
,
5430 tvb
, 34, 4, ENC_BIG_ENDIAN
);
5432 ti
= proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_togwenitn
,
5433 tvb
, 38, 8, ENC_BIG_ENDIAN
);
5434 togwe_ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level_sub3
);
5435 proto_tree_add_item(togwe_ni_tn_tree
, hf_c15ch_pathidle_togweni
,
5436 tvb
, 38, 4, ENC_BIG_ENDIAN
);
5437 proto_tree_add_item(togwe_ni_tn_tree
, hf_c15ch_pathidle_togwetn
,
5438 tvb
, 42, 4, ENC_BIG_ENDIAN
);
5442 add_string_field( c15ch_pathidle_tree
, tvb
, str_start
, max_str_len
, hf_c15ch_pathidle_tosite
);
5444 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_topm
,
5445 tvb
, 51, 1, ENC_BIG_ENDIAN
);
5446 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_topc
,
5447 tvb
, 52, 1, ENC_BIG_ENDIAN
);
5448 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_toloop
,
5449 tvb
, 53, 4, ENC_BIG_ENDIAN
);
5450 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_toslot
,
5451 tvb
, 57, 4, ENC_BIG_ENDIAN
);
5452 proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_tocnx
,
5453 tvb
, 61, 4, ENC_BIG_ENDIAN
);
5455 ti
= proto_tree_add_item(c15ch_pathidle_tree
, hf_c15ch_pathidle_tonitn
, tvb
, 65, 8, ENC_BIG_ENDIAN
);
5456 to_ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level_sub4
);
5457 proto_tree_add_item(to_ni_tn_tree
, hf_c15ch_pathidle_toni
,
5458 tvb
, 65, 4, ENC_BIG_ENDIAN
);
5459 proto_tree_add_item(to_ni_tn_tree
, hf_c15ch_pathidle_totn
,
5460 tvb
, 69, 4, ENC_BIG_ENDIAN
);
5462 return tvb_reported_length(tvb
);
5466 static int dissect_c15ch_q931(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
5468 proto_item
* ti
= NULL
;
5469 proto_tree
* c15ch_q931_tree
= NULL
;
5470 proto_tree
* sub_ni_tn_tree
= NULL
;
5471 uint32_t q931_msg_len
;
5473 tvbuff_t
* next_tvb
;
5474 uint8_t bytes_to_skip
;
5476 direction
= tvb_get_uint8(tvb
, 0);
5480 bytes_to_skip
= 0; /* signifies invalid direction: q931 dissector will not be called */
5485 /* direction == 0 */
5490 /* direction == 1 */
5498 ti
= proto_tree_add_item(tree
, hf_c15ch_q931
, tvb
, 0, 13, ENC_NA
);
5499 c15ch_q931_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5500 proto_tree_add_item(c15ch_q931_tree
, hf_c15ch_q931_direction
,
5501 tvb
, 0, 1, ENC_BIG_ENDIAN
);
5503 q931_msg_len
= tvb_get_ntohl(tvb
, 9);
5505 ti
= proto_tree_add_item(c15ch_q931_tree
, hf_c15ch_q931_ni_tn
,
5506 tvb
, 1, 8, ENC_BIG_ENDIAN
);
5507 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
5508 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_q931_ni
,
5509 tvb
, 1, 4, ENC_BIG_ENDIAN
);
5510 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_q931_tn
,
5511 tvb
, 5, 4, ENC_BIG_ENDIAN
);
5513 proto_tree_add_item(c15ch_q931_tree
, hf_c15ch_q931_msglength
,
5514 tvb
, 9, 4, ENC_BIG_ENDIAN
);
5515 if (q931_msg_len
&& bytes_to_skip
)
5517 next_tvb
= tvb_new_subset_length(tvb
, 13 + bytes_to_skip
, q931_msg_len
- bytes_to_skip
);
5518 call_dissector(general_q931_handle
, next_tvb
, pinfo
, tree
);
5522 col_set_str(pinfo
->cinfo
, COL_PROTOCOL
, C15_LABEL
);
5523 col_clear(pinfo
->cinfo
, COL_INFO
);
5524 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: Q931, Direction: %s",
5525 val_to_str(direction
, c15ch_q931_direction_types
, "Unknown Direction Subtype: %d") );
5527 return tvb_reported_length(tvb
);
5531 static int dissect_c15ch_qos(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
5533 proto_item
* ti
= NULL
;
5534 proto_tree
* c15ch_qos_tree
= NULL
;
5535 proto_tree
* sub_ni_tn_tree
= NULL
;
5537 uint32_t year_val
= (uint32_t)0;
5538 float mos
= (float)0.0;
5540 mos
= tvb_get_ntohl(tvb
, 72) / (float) (100.0);
5541 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", MOS: %.2f", mos
);
5544 ti
= proto_tree_add_item(tree
, hf_c15ch_qos
, tvb
, 0, 100, ENC_NA
);
5545 c15ch_qos_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5547 ti
= proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_ni_tn
, tvb
, 0, 8, ENC_BIG_ENDIAN
);
5549 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
5550 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_qos_ni
,
5551 tvb
, 0, 4, ENC_BIG_ENDIAN
);
5552 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_qos_tn
,
5553 tvb
, 4, 4, ENC_BIG_ENDIAN
);
5555 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_rtcp_call_id
,
5556 tvb
, 8, 4, ENC_BIG_ENDIAN
);
5557 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_register_type
,
5558 tvb
, 12, 4, ENC_BIG_ENDIAN
);
5559 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_tg_num
,
5560 tvb
, 16, 4, ENC_BIG_ENDIAN
);
5561 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_trk_type
,
5562 tvb
, 20, 4, ENC_BIG_ENDIAN
);
5563 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_status
,
5564 tvb
, 24, 4, ENC_BIG_ENDIAN
);
5565 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_codec
,
5566 tvb
, 28, 4, ENC_BIG_ENDIAN
);
5567 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_given_ip
,
5568 tvb
, 32, 4, ENC_BIG_ENDIAN
);
5569 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_real_ip
,
5570 tvb
, 36, 4, ENC_BIG_ENDIAN
);
5571 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_local_ip
,
5572 tvb
, 40, 4, ENC_BIG_ENDIAN
);
5573 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_tx_pkts
,
5574 tvb
, 44, 4, ENC_BIG_ENDIAN
);
5575 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_lost_pkts
,
5576 tvb
, 48, 4, ENC_BIG_ENDIAN
);
5577 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_lost_pct
,
5578 tvb
, 52, 4, ENC_BIG_ENDIAN
);
5579 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_jitter
,
5580 tvb
, 56, 4, ENC_BIG_ENDIAN
);
5581 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_rtt
,
5582 tvb
, 60, 4, ENC_BIG_ENDIAN
);
5583 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_avg_rtt
,
5584 tvb
, 64, 4, ENC_BIG_ENDIAN
);
5585 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_duration
,
5586 tvb
, 68, 4, ENC_BIG_ENDIAN
);
5587 proto_tree_add_float(c15ch_qos_tree
, hf_c15ch_qos_mos
,
5589 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_ep_type
,
5590 tvb
, 76, 1, ENC_BIG_ENDIAN
);
5591 add_string_field( c15ch_qos_tree
, tvb
, 77, 13, hf_c15ch_qos_dn_or_tg
);
5592 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_pm
,
5593 tvb
, 90, 1, ENC_BIG_ENDIAN
);
5594 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_pc
,
5595 tvb
, 91, 1, ENC_BIG_ENDIAN
);
5596 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_hour
,
5597 tvb
, 92, 1, ENC_BIG_ENDIAN
);
5598 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_min
,
5599 tvb
, 93, 1, ENC_BIG_ENDIAN
);
5600 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_sec
,
5601 tvb
, 94, 1, ENC_BIG_ENDIAN
);
5602 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_tenth_sec
,
5603 tvb
, 95, 1, ENC_BIG_ENDIAN
);
5604 year_val
= 2000 + ( (uint32_t) tvb_get_uint8( tvb
, 96 ) ) ;
5605 proto_tree_add_uint(c15ch_qos_tree
, hf_c15ch_qos_year
, tvb
, 96, 1, year_val
);
5606 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_month
,
5607 tvb
, 97, 1, ENC_BIG_ENDIAN
);
5608 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_day
,
5609 tvb
, 98, 1, ENC_BIG_ENDIAN
);
5610 proto_tree_add_item(c15ch_qos_tree
, hf_c15ch_qos_day_of_week
,
5611 tvb
, 99, 1, ENC_BIG_ENDIAN
);
5614 return tvb_reported_length(tvb
);
5618 static int dissect_c15ch_route(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
5620 proto_item
* ti
= NULL
;
5621 proto_tree
* c15ch_route_tree
= NULL
;
5623 uint32_t route_num_val
= 0;
5625 route_num_val
= tvb_get_ntohl(tvb
, 0);
5626 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Route Number: %d", route_num_val
);
5629 ti
= proto_tree_add_item(tree
,hf_c15ch_route
, tvb
, 0, 17, ENC_NA
);
5630 c15ch_route_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5631 proto_tree_add_item(c15ch_route_tree
, hf_c15ch_route_number
,
5632 tvb
, 0, 4, ENC_BIG_ENDIAN
);
5633 proto_tree_add_item(c15ch_route_tree
, hf_c15ch_route_type
,
5634 tvb
, 4, 4, ENC_BIG_ENDIAN
);
5635 proto_tree_add_item(c15ch_route_tree
, hf_c15ch_route_subpm
,
5636 tvb
, 8, 4, ENC_BIG_ENDIAN
);
5637 proto_tree_add_item(c15ch_route_tree
, hf_c15ch_route_trkpm
,
5638 tvb
, 12, 4, ENC_BIG_ENDIAN
);
5639 proto_tree_add_item(c15ch_route_tree
, hf_c15ch_route_strtaindo
,
5640 tvb
, 16, 1, ENC_BIG_ENDIAN
);
5641 if ( tvb_reported_length(tvb
) >= 25 )
5643 proto_tree_add_item(c15ch_route_tree
, hf_c15ch_route_cr_rte_adv
,
5644 tvb
, 17, 4, ENC_BIG_ENDIAN
);
5645 proto_tree_add_item(c15ch_route_tree
, hf_c15ch_route_cause
,
5646 tvb
, 21, 4, ENC_BIG_ENDIAN
);
5649 return tvb_reported_length(tvb
);
5653 static int dissect_c15ch_sccp(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
5656 proto_item
* ti
= NULL
;
5657 proto_tree
* c15ch_sccp_tree
= NULL
;
5658 proto_tree
* sub_ni_tn_tree
= NULL
;
5660 tvbuff_t
* next_tvb
;
5662 direction
= tvb_get_uint8(tvb
, 0);
5666 ti
= proto_tree_add_item(tree
, hf_c15ch_sccp
, tvb
, 0, 302, ENC_NA
);
5667 c15ch_sccp_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5668 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_direction
,
5669 tvb
, 0, 1, ENC_BIG_ENDIAN
);
5670 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_msgtype
,
5671 tvb
, 1, 1, ENC_BIG_ENDIAN
);
5672 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_hopcount
,
5673 tvb
, 2, 1, ENC_BIG_ENDIAN
);
5674 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_transactionnum
,
5675 tvb
, 3, 4, ENC_BIG_ENDIAN
);
5676 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_opcmember
,
5677 tvb
, 7, 1, ENC_BIG_ENDIAN
);
5678 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_opccluster
,
5679 tvb
, 8, 1, ENC_BIG_ENDIAN
);
5680 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_opcnetwork
,
5681 tvb
, 9, 1, ENC_BIG_ENDIAN
);
5682 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_dpcmember
,
5683 tvb
, 10, 1, ENC_BIG_ENDIAN
);
5684 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_dpccluster
,
5685 tvb
, 11, 1, ENC_BIG_ENDIAN
);
5686 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_dpcnetwork
,
5687 tvb
, 12, 1, ENC_BIG_ENDIAN
);
5688 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_level3index
,
5689 tvb
, 13, 1, ENC_BIG_ENDIAN
);
5691 ti
= proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_ni_tn
, tvb
, 14, 8, ENC_BIG_ENDIAN
);
5692 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
5693 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_sccp_ni
,
5694 tvb
, 14, 4, ENC_BIG_ENDIAN
);
5695 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_sccp_tn
,
5696 tvb
, 18, 4, ENC_BIG_ENDIAN
);
5698 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_sls
,
5699 tvb
, 22, 1, ENC_BIG_ENDIAN
);
5700 proto_tree_add_item(c15ch_sccp_tree
, hf_c15ch_sccp_iptime
,
5701 tvb
, 298, 4, ENC_BIG_ENDIAN
);
5703 /* skip bytes to get to SCCP message type */
5704 next_tvb
= tvb_new_subset_length(tvb
, 23 + 2, 275 - 2);
5706 /* sccp dissector call */
5707 call_dissector(general_sccp_handle
, next_tvb
, pinfo
, tree
);
5709 col_set_str(pinfo
->cinfo
, COL_PROTOCOL
, C15_LABEL
);
5710 col_clear(pinfo
->cinfo
, COL_INFO
);
5711 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: SCCP, Direction: %s",
5712 val_to_str(direction
, c15ch_sccp_direction_types
, "Unknown Direction Subtype: %d") );
5713 return tvb_reported_length(tvb
);
5716 static int dissect_c15ch_srcedest(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
5718 proto_item
* ti
= NULL
;
5719 proto_tree
* c15ch_srcedest_tree
= NULL
;
5723 ti
= proto_tree_add_item(tree
, hf_c15ch_srcedest
, tvb
, 0, 3, ENC_NA
);
5724 c15ch_srcedest_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5725 proto_tree_add_item(c15ch_srcedest_tree
, hf_c15ch_srcedest_conntype
,
5726 tvb
, 0, 1, ENC_BIG_ENDIAN
);
5727 proto_tree_add_item(c15ch_srcedest_tree
, hf_c15ch_srcedest_pathtype
,
5728 tvb
, 1, 1, ENC_BIG_ENDIAN
);
5729 proto_tree_add_item(c15ch_srcedest_tree
, hf_c15ch_srcedest_pathdirect
,
5730 tvb
, 2, 1, ENC_BIG_ENDIAN
);
5732 return tvb_reported_length(tvb
);
5736 static int dissect_c15ch_tcap(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
5738 proto_item
* ti
= NULL
;
5739 proto_tree
* c15ch_tcap_tree
= NULL
;
5741 uint8_t local_ssn_val
= 0;
5743 local_ssn_val
= tvb_get_uint8(tvb
, 4);
5744 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Local SSN: %s",
5745 val_to_str(local_ssn_val
, c15ch_tcap_local_ssn_types
, "Unknown %d"));
5748 ti
= proto_tree_add_item(tree
, hf_c15ch_tcap
, tvb
, 0, 20, ENC_NA
);
5749 c15ch_tcap_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5750 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_direction
,
5751 tvb
, 0, 1, ENC_BIG_ENDIAN
);
5752 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_action
,
5753 tvb
, 1, 1, ENC_BIG_ENDIAN
);
5754 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_package_type
,
5755 tvb
, 2, 1, ENC_BIG_ENDIAN
);
5756 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_ssn
,
5757 tvb
, 3, 1, ENC_BIG_ENDIAN
);
5758 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_local_ssn
,
5759 tvb
, 4, 1, ENC_BIG_ENDIAN
);
5760 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_result_err_code
,
5761 tvb
, 5, 1, ENC_BIG_ENDIAN
);
5762 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_return_reason
,
5763 tvb
, 6, 1, ENC_BIG_ENDIAN
);
5764 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_feat_id
,
5765 tvb
, 7, 1, ENC_BIG_ENDIAN
);
5766 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_feat_req
,
5767 tvb
, 8, 1, ENC_BIG_ENDIAN
);
5768 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_cl_comp_result
,
5769 tvb
, 9, 1, ENC_BIG_ENDIAN
);
5770 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_release_bit
,
5771 tvb
, 10, 1, ENC_BIG_ENDIAN
);
5772 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_term_cl_request
,
5773 tvb
, 11, 1, ENC_BIG_ENDIAN
);
5774 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_opc_index
,
5775 tvb
, 12, 1, ENC_BIG_ENDIAN
);
5776 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_dpc_mem
,
5777 tvb
, 13, 1, ENC_BIG_ENDIAN
);
5778 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_dpc_clus
,
5779 tvb
, 14, 1, ENC_BIG_ENDIAN
);
5780 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_dpc_net
,
5781 tvb
, 15, 1, ENC_BIG_ENDIAN
);
5782 proto_tree_add_item(c15ch_tcap_tree
, hf_c15ch_tcap_cp_id
,
5783 tvb
, 16, 4, ENC_BIG_ENDIAN
);
5785 return tvb_reported_length(tvb
);
5789 static int dissect_c15ch_twc_rswch(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
5791 proto_item
* ti
= NULL
;
5792 proto_tree
* c15ch_twc_rswch_tree
= NULL
;
5796 ti
= proto_tree_add_item(tree
, hf_c15ch_twc_rswch
, tvb
, 0, 28, ENC_NA
);
5797 c15ch_twc_rswch_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5798 proto_tree_add_item(c15ch_twc_rswch_tree
, hf_c15ch_twc_rswch_pm
,
5799 tvb
, 0, 4, ENC_BIG_ENDIAN
);
5800 proto_tree_add_item(c15ch_twc_rswch_tree
, hf_c15ch_twc_rswch_subpm
,
5801 tvb
, 4, 4, ENC_BIG_ENDIAN
);
5802 proto_tree_add_item(c15ch_twc_rswch_tree
, hf_c15ch_twc_rswch_trkpm
,
5803 tvb
, 8, 4, ENC_BIG_ENDIAN
);
5804 proto_tree_add_item(c15ch_twc_rswch_tree
, hf_c15ch_twc_rswch_devid
,
5805 tvb
, 12, 4, ENC_BIG_ENDIAN
);
5806 proto_tree_add_item(c15ch_twc_rswch_tree
, hf_c15ch_twc_rswch_event
,
5807 tvb
, 16, 4, ENC_BIG_ENDIAN
);
5808 proto_tree_add_item(c15ch_twc_rswch_tree
, hf_c15ch_twc_rswch_parm
,
5809 tvb
, 20, 4, ENC_BIG_ENDIAN
);
5810 proto_tree_add_item(c15ch_twc_rswch_tree
, hf_c15ch_twc_rswch_iptime
,
5811 tvb
, 24, 4, ENC_BIG_ENDIAN
);
5813 return tvb_reported_length(tvb
);
5816 static int dissect_c15ch_cp_event(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
5818 proto_item
* ti
= NULL
;
5819 proto_tree
* c15ch_cp_event_tree
= NULL
;
5821 uint32_t pm_value
= 0;
5822 uint32_t event_value
= 0;
5823 uint32_t parm_value
= 0;
5824 uint32_t subpm_value
= 0;
5825 uint32_t trkpm_value
= 0;
5826 if (tvb_reported_length(tvb
) < 28)
5830 pm_value
= tvb_get_ntohl(tvb
, 0);
5831 subpm_value
= tvb_get_ntohl(tvb
, 4);
5832 trkpm_value
= tvb_get_ntohl(tvb
, 8);
5833 event_value
= tvb_get_ntohl(tvb
, 16);
5834 parm_value
= tvb_get_ntohl(tvb
, 20);
5835 col_clear(pinfo
->cinfo
, COL_INFO
);
5837 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: CP_EVENT, PM Type: %s",
5838 val_to_str_ext(pm_value
, &c15_pm_types_ext
, "Unknown %d") );
5840 if ( ( pm_value
<= MAX_PM_VAL
) && ( pm_value
!= DIG_CKT_TEST_PM_VALUE
) )
5842 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Sub PM: %s",
5843 val_to_str(subpm_value
, subpm_name_tables
[ pm_value
], "%d"));
5847 if ( pm_value
== DIG_CKT_TEST_PM_VALUE
)
5849 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Trk PM: %s",
5850 val_to_str(trkpm_value
, trkpm_dig_ckt_test_types
, "%d"));
5851 if ( trkpm_value
> MAX_DIG_CKT_TEST_TRKPM_VAL
)
5853 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Sub PM: %d", subpm_value
);
5857 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Sub PM: %s",
5858 val_to_str(subpm_value
, dig_ckt_test_subpm_name_tables
[ trkpm_value
], "%d"));
5861 else /* (pm_value < MIN_PM_VAL) || (pm_value > MAX_PM_VAL) */
5863 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Sub PM: %d", subpm_value
);
5867 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Event Type: %s, Parm: %d",
5868 val_to_str_ext(event_value
, &c15_event_types_ext
, "Unknown %d"), parm_value
);
5873 ti
= proto_tree_add_item(tree
, hf_c15ch_cp_event
, tvb
, 0, 28, ENC_NA
);
5875 proto_item_append_text(ti
, ", PM Type: %s",
5876 val_to_str_ext_const(pm_value
, &c15_pm_types_ext
, "Unknown"));
5877 proto_item_append_text(ti
, ", Event Type: %s",
5878 val_to_str_ext_const(event_value
, &c15_event_types_ext
, "Unknown"));
5879 c15ch_cp_event_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
5881 proto_tree_add_item(c15ch_cp_event_tree
, hf_c15ch_cp_event_pm
,
5882 tvb
, 0, 4, ENC_BIG_ENDIAN
);
5883 if ( pm_value
> MAX_PM_VAL
)
5886 proto_tree_add_item(c15ch_cp_event_tree
, hf_c15ch_cp_event_subpm
,
5887 tvb
, 4, 4, ENC_BIG_ENDIAN
);
5891 /* pm_value is within expected range */
5892 if ( pm_value
!= DIG_CKT_TEST_PM_VALUE
)
5894 /*a normal pm type */
5895 proto_tree_add_item(c15ch_cp_event_tree
, *(subpm_table
[ pm_value
] ),
5896 tvb
, 4, 4, ENC_BIG_ENDIAN
);
5900 /* special case for labeling subpm values of dig_ckt pm type */
5901 if ( trkpm_value
> MAX_DIG_CKT_TEST_TRKPM_VAL
)
5903 /* this is a dig_ckt pm type, but the trkpm value is out of range */
5904 /* use the default dig_ckt subpm field from the subpm_table */
5905 proto_tree_add_item(c15ch_cp_event_tree
, *(subpm_table
[ pm_value
] ),
5906 tvb
, 4, 4, ENC_BIG_ENDIAN
);
5910 /* dig_ckt pm type, with the trkpm value in the expected range */
5911 proto_tree_add_item(c15ch_cp_event_tree
, *(dig_ckt_test_subpm_table
[ trkpm_value
] ),
5912 tvb
, 4, 4, ENC_BIG_ENDIAN
);
5917 if (pm_value
!= DIG_CKT_TEST_PM_VALUE
)
5919 proto_tree_add_item(c15ch_cp_event_tree
, hf_c15ch_cp_event_trkpm
,
5920 tvb
, 8, 4, ENC_BIG_ENDIAN
);
5924 proto_tree_add_item(c15ch_cp_event_tree
, hf_c15ch_cp_event_dig_ckt_test_trkpm
,
5925 tvb
, 8, 4, ENC_BIG_ENDIAN
);
5927 proto_tree_add_item(c15ch_cp_event_tree
, hf_c15ch_cp_event_devid
,
5928 tvb
, 12, 4, ENC_BIG_ENDIAN
);
5929 proto_tree_add_item(c15ch_cp_event_tree
, hf_c15ch_cp_event_event
,
5930 tvb
, 16, 4, ENC_BIG_ENDIAN
);
5931 proto_tree_add_item(c15ch_cp_event_tree
, hf_c15ch_cp_event_parm
,
5932 tvb
, 20, 4, ENC_BIG_ENDIAN
);
5933 proto_tree_add_item(c15ch_cp_event_tree
, hf_c15ch_cp_event_iptime
,
5934 tvb
, 24, 4, ENC_BIG_ENDIAN
);
5937 return tvb_reported_length(tvb
);
5940 /* second level dissection code : called after header is dissected */
5941 static int dissect_c15ch_inc_gwe(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
5943 proto_item
* ti
= NULL
;
5944 proto_tree
* c15ch_inc_gwe_tree
= NULL
;
5945 proto_tree
* sub_ni_tn_tree
= NULL
;
5951 tvbuff_t
* next_tvb
;
5952 bool task_in_range
= true;
5953 bool fiat_index_in_range
= true;
5955 task_num
= tvb_get_uint8(tvb
, 8);
5956 fiat_num
= tvb_get_uint8(tvb
, 9);
5957 type_num
= tvb_get_uint8(tvb
, 10);
5959 if ( task_num
> LAST_TASK_TYPE_INDEX
)
5960 { /* this happens for unknown task types */
5961 task_in_range
= false;
5962 fiat_index_in_range
= false; /* don't guess what the correct fiat table should be for unknown task */
5965 if ( task_in_range
)
5967 if ( ( task_num
< FIRST_FIAT_NAME_TABLE_INDEX
) || (task_num
> LAST_FIAT_NAME_TABLE_INDEX
) )
5969 fiat_index_in_range
= false; /* this happens for INVALID_TASK_TYPE_VAL */
5973 col_clear(pinfo
->cinfo
, COL_INFO
);
5976 if (fiat_index_in_range
)
5978 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: INC_GWE, Task: %s, Fiat: %s",
5979 val_to_str( task_num
, c15inc_gwe_task_types
, "Unknown Task Type: %d" ),
5980 val_to_str( fiat_num
, fiat_name_tables
[ task_num
], "Unknown Fiat Type: %d") );
5982 else /* either (task_num == INVALID_TASK_TYPE_VAL) or we have an unknown task */
5984 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: INC_GWE, Task: %s",
5985 val_to_str( task_num
, c15inc_gwe_task_types
, "Unknown Task Type: %d" ));
5990 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe
, tvb
, 0, 11, ENC_NA
);
5991 /* note that defined INVALID_TASK_TYPE will be labeled as such, but task types that are out
5992 of range will be labeled as an Unknown Task Type */
5993 proto_item_append_text(ti
, ", Task: %s",
5994 val_to_str( task_num
, c15inc_gwe_task_types
, "Unknown Task Type: %d" ) );
5997 if ( fiat_index_in_range
) /* we can find a fiat name table: not defined Invalid task type and not unknown task */
5999 proto_item_append_text( ti
, ", Fiat: %s",
6000 val_to_str( fiat_num
, fiat_name_tables
[ task_num
], "Unknown Fiat Type: %d" ) );
6002 c15ch_inc_gwe_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
6004 ti
= proto_tree_add_item(c15ch_inc_gwe_tree
, hf_c15ch_inc_gwe_ni_tn
,
6005 tvb
, 0, 8, ENC_BIG_ENDIAN
);
6006 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
6008 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_inc_gwe_ni
,
6009 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6010 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_inc_gwe_tn
,
6011 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6013 proto_tree_add_item(c15ch_inc_gwe_tree
, hf_c15ch_inc_gwe_taskid
,
6014 tvb
, 8, 1, ENC_BIG_ENDIAN
);
6015 if (task_in_range
) /* can be of any defined task type including INVALID */
6017 proto_tree_add_item(c15ch_inc_gwe_tree
, *(fiatid_table
[ task_num
] ),
6018 tvb
, 9, 1, ENC_BIG_ENDIAN
);
6020 proto_tree_add_item(c15ch_inc_gwe_tree
, hf_c15ch_inc_gwe_datatype
,
6021 tvb
, 10, 1, ENC_BIG_ENDIAN
);
6023 next_tvb
= tvb_new_subset_remaining(tvb
, 11);
6024 /*third level dissection*/
6025 retv
= 11 + dissector_try_uint(c15ch_inc_gwe_dissector_table
, type_num
, next_tvb
, pinfo
, tree
);
6029 /* Third level dissection code : called after basic inc gwe header info is dissected */
6031 static int dissect_c15ch_inc_gwe_admn_dn(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6033 proto_item
* ti
= NULL
;
6034 proto_tree
* c15ch_inc_gwe_admn_dn_tree
= NULL
;
6040 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_admn_dn
, tvb
, 0, 37, ENC_NA
);
6041 c15ch_inc_gwe_admn_dn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6042 num_digits
= tvb_get_uint8(tvb
, 4);
6043 proto_tree_add_item(c15ch_inc_gwe_admn_dn_tree
, hf_c15ch_inc_gwe_admn_dn_ip_gwe_sua_hndl
,
6044 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6045 add_digits_string(hf_c15ch_inc_gwe_admn_dn_ip_gwe_digits
, tvb
, c15ch_inc_gwe_admn_dn_tree
,
6046 5, num_digits
, 32, 1);
6048 return tvb_reported_length(tvb
);
6052 static int dissect_c15ch_inc_gwe_admn_updt(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6054 proto_item
* ti
= NULL
;
6055 proto_tree
* c15ch_inc_gwe_admn_updt_tree
= NULL
;
6056 proto_tree
* sub_ni_tn_tree
= NULL
;
6060 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_admn_updt
, tvb
, 0, 20, ENC_NA
);
6061 c15ch_inc_gwe_admn_updt_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6063 ti
= proto_tree_add_item(c15ch_inc_gwe_admn_updt_tree
, hf_c15ch_inc_gwe_admn_updt_ip_gwe_med_ni_tn
,
6064 tvb
, 0, 8, ENC_BIG_ENDIAN
);
6065 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_third_level_inc_gwe_sub1
);
6066 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_inc_gwe_admn_updt_ip_gwe_med_ni
,
6067 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6068 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_inc_gwe_admn_updt_ip_gwe_med_tn
,
6069 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6070 proto_tree_add_item(c15ch_inc_gwe_admn_updt_tree
, hf_c15ch_inc_gwe_admn_updt_ip_ns_iface
,
6071 tvb
, 8, 4, ENC_BIG_ENDIAN
);
6072 proto_tree_add_item(c15ch_inc_gwe_admn_updt_tree
, hf_c15ch_inc_gwe_admn_updt_ip_ns_terminal
,
6073 tvb
, 12, 4, ENC_BIG_ENDIAN
);
6074 proto_tree_add_item(c15ch_inc_gwe_admn_updt_tree
, hf_c15ch_inc_gwe_admn_updt_ip_gwe_new_rec_addr
,
6075 tvb
, 16, 4, ENC_BIG_ENDIAN
);
6077 return tvb_reported_length(tvb
);
6081 static int dissect_c15ch_inc_gwe_bc_pgi(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6083 proto_item
* ti
= NULL
;
6084 proto_tree
* c15ch_inc_gwe_bc_pgi_tree
= NULL
;
6088 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_bc_pgi
, tvb
, 0, 19, ENC_NA
);
6089 c15ch_inc_gwe_bc_pgi_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6090 proto_tree_add_item(c15ch_inc_gwe_bc_pgi_tree
, hf_c15ch_inc_gwe_bc_pgi_pbc_conn_num
,
6091 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6092 proto_tree_add_item(c15ch_inc_gwe_bc_pgi_tree
, hf_c15ch_inc_gwe_bc_pgi_pbc_conn_type
,
6093 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6094 proto_tree_add_item(c15ch_inc_gwe_bc_pgi_tree
, hf_c15ch_inc_gwe_bc_pgi_pbc_msg_type
,
6095 tvb
, 5, 1, ENC_BIG_ENDIAN
);
6096 proto_tree_add_item(c15ch_inc_gwe_bc_pgi_tree
, hf_c15ch_inc_gwe_bc_pgi_bc_mode
,
6097 tvb
, 6, 1, ENC_BIG_ENDIAN
);
6098 proto_tree_add_item(c15ch_inc_gwe_bc_pgi_tree
, hf_c15ch_inc_gwe_bc_pgi_bc_pgi_sdp
,
6099 tvb
, 7, 4, ENC_LITTLE_ENDIAN
);
6100 proto_tree_add_item(c15ch_inc_gwe_bc_pgi_tree
, hf_c15ch_inc_gwe_bc_pgi_bc_pgi_m_port
,
6101 tvb
, 11, 4, ENC_BIG_ENDIAN
);
6102 proto_tree_add_item(c15ch_inc_gwe_bc_pgi_tree
, hf_c15ch_inc_gwe_bc_pgi_pbc_tst_flags
,
6103 tvb
, 15, 4, ENC_BIG_ENDIAN
);
6105 return tvb_reported_length(tvb
);
6108 static int dissect_c15ch_inc_gwe_chg_hndl(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6110 proto_item
* ti
= NULL
;
6111 proto_tree
* c15ch_inc_gwe_chg_hndl_tree
= NULL
;
6115 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_chg_hndl
, tvb
, 0, 8, ENC_NA
);
6116 c15ch_inc_gwe_chg_hndl_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6117 proto_tree_add_item(c15ch_inc_gwe_chg_hndl_tree
, hf_c15ch_inc_gwe_chg_hndl_ip_gwe_sua_hndl
,
6118 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6119 proto_tree_add_item(c15ch_inc_gwe_chg_hndl_tree
, hf_c15ch_inc_gwe_chg_hndl_ip_gwe_new_hndl
,
6120 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6122 return tvb_reported_length(tvb
);
6126 static int dissect_c15ch_inc_gwe_cl_ans(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6128 proto_item
* ti
= NULL
;
6129 proto_tree
* c15ch_inc_gwe_cl_ans_tree
= NULL
;
6133 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_cl_ans
, tvb
, 0, 14, ENC_NA
);
6134 c15ch_inc_gwe_cl_ans_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6135 proto_tree_add_item(c15ch_inc_gwe_cl_ans_tree
, hf_c15ch_inc_gwe_cl_ans_ip_gwe_sua_hndl
,
6136 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6137 proto_tree_add_item(c15ch_inc_gwe_cl_ans_tree
, hf_c15ch_inc_gwe_cl_ans_ip_gwe_conn_num
,
6138 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6139 proto_tree_add_item(c15ch_inc_gwe_cl_ans_tree
, hf_c15ch_inc_gwe_cl_ans_ip_cl_ans_lsdp
,
6140 tvb
, 5, 4, ENC_LITTLE_ENDIAN
);
6141 proto_tree_add_item(c15ch_inc_gwe_cl_ans_tree
, hf_c15ch_inc_gwe_cl_ans_ip_cl_ans_m_port
,
6142 tvb
, 9, 4, ENC_BIG_ENDIAN
);
6143 proto_tree_add_item(c15ch_inc_gwe_cl_ans_tree
, hf_c15ch_inc_gwe_cl_ans_encap_isup
,
6144 tvb
, 13, 1, ENC_BIG_ENDIAN
);
6146 return tvb_reported_length(tvb
);
6150 static int dissect_c15ch_inc_gwe_cl_prog(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6152 proto_item
* ti
= NULL
;
6153 proto_tree
* c15ch_inc_gwe_cl_prog_tree
= NULL
;
6157 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_cl_prog
, tvb
, 0, 15, ENC_NA
);
6158 c15ch_inc_gwe_cl_prog_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6159 proto_tree_add_item(c15ch_inc_gwe_cl_prog_tree
, hf_c15ch_inc_gwe_cl_prog_ip_gwe_sua_hndl
,
6160 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6161 proto_tree_add_item(c15ch_inc_gwe_cl_prog_tree
, hf_c15ch_inc_gwe_cl_prog_ip_gwe_conn_num
,
6162 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6163 proto_tree_add_item(c15ch_inc_gwe_cl_prog_tree
, hf_c15ch_inc_gwe_cl_prog_ip_cl_prog_lsdp
,
6164 tvb
, 5, 4, ENC_LITTLE_ENDIAN
);
6165 proto_tree_add_item(c15ch_inc_gwe_cl_prog_tree
, hf_c15ch_inc_gwe_cl_prog_ip_cl_prog_m_port
,
6166 tvb
, 9, 4, ENC_BIG_ENDIAN
);
6167 proto_tree_add_item(c15ch_inc_gwe_cl_prog_tree
, hf_c15ch_inc_gwe_cl_prog_ip_gwe_stat_code
,
6168 tvb
, 13, 1, ENC_BIG_ENDIAN
);
6169 proto_tree_add_item(c15ch_inc_gwe_cl_prog_tree
, hf_c15ch_inc_gwe_cl_prog_encap_isup
,
6170 tvb
, 14, 1, ENC_BIG_ENDIAN
);
6172 return tvb_reported_length(tvb
);
6176 static int dissect_c15ch_inc_gwe_cl_redir(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6178 proto_item
* ti
= NULL
;
6179 proto_tree
* c15ch_inc_gwe_cl_redir_tree
= NULL
;
6182 uint8_t redir_num_digits
;
6186 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_cl_redir
, tvb
, 0, 24, ENC_NA
);
6187 c15ch_inc_gwe_cl_redir_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6188 redir_num_digits
= tvb_get_uint8(tvb
, 8);
6189 proto_tree_add_item(c15ch_inc_gwe_cl_redir_tree
, hf_c15ch_inc_gwe_cl_redir_ip_gwe_sua_hndl
,
6190 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6191 proto_tree_add_item(c15ch_inc_gwe_cl_redir_tree
, hf_c15ch_inc_gwe_cl_redir_ip_gwe_conn_num
,
6192 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6193 add_digits_string(hf_c15ch_inc_gwe_cl_redir_ip_gwe_redir_digits
, tvb
,c15ch_inc_gwe_cl_redir_tree
,
6194 9, redir_num_digits
, 15, 1);
6196 return tvb_reported_length(tvb
);
6199 static int dissect_c15ch_inc_gwe_cl_refer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6201 proto_item
* ti
= NULL
;
6202 proto_tree
* c15ch_inc_gwe_cl_refer_tree
= NULL
;
6203 proto_tree
* sub_ni_tn_tree
= NULL
;
6205 uint8_t trgt_num_digits
;
6209 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_cl_refer
, tvb
, 0, 49, ENC_NA
);
6210 c15ch_inc_gwe_cl_refer_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6211 trgt_num_digits
= tvb_get_uint8(tvb
, 8);
6212 proto_tree_add_item(c15ch_inc_gwe_cl_refer_tree
, hf_c15ch_inc_gwe_cl_refer_ip_gwe_sua_hndl
,
6213 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6214 proto_tree_add_item(c15ch_inc_gwe_cl_refer_tree
, hf_c15ch_inc_gwe_cl_refer_ip_gwe_conn_num
,
6215 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6216 add_digits_string(hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_digits
, tvb
, c15ch_inc_gwe_cl_refer_tree
,
6217 9, trgt_num_digits
, 32, 1);
6218 ti
= proto_tree_add_item(c15ch_inc_gwe_cl_refer_tree
, hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_ni_tn
,
6219 tvb
, 41, 8, ENC_BIG_ENDIAN
);
6220 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_third_level_inc_gwe_sub1
);
6221 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_ni
,
6222 tvb
, 41, 4, ENC_BIG_ENDIAN
);
6223 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_tn
,
6224 tvb
, 45, 4, ENC_BIG_ENDIAN
);
6226 return tvb_reported_length(tvb
);
6229 static int dissect_c15ch_inc_gwe_cl_rel(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6231 proto_item
* ti
= NULL
;
6232 proto_tree
* c15ch_inc_gwe_cl_rel_tree
= NULL
;
6236 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_cl_rel
, tvb
, 0, 7, ENC_NA
);
6237 c15ch_inc_gwe_cl_rel_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6238 proto_tree_add_item(c15ch_inc_gwe_cl_rel_tree
, hf_c15ch_inc_gwe_cl_rel_ip_gwe_sua_hndl
,
6239 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6240 proto_tree_add_item(c15ch_inc_gwe_cl_rel_tree
, hf_c15ch_inc_gwe_cl_rel_ip_gwe_conn_num
,
6241 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6242 proto_tree_add_item(c15ch_inc_gwe_cl_rel_tree
, hf_c15ch_inc_gwe_cl_rel_ip_gwe_stat_code
,
6243 tvb
, 5, 1, ENC_BIG_ENDIAN
);
6244 proto_tree_add_item(c15ch_inc_gwe_cl_rel_tree
, hf_c15ch_inc_gwe_cl_rel_encap_isup
,
6245 tvb
, 6, 1, ENC_BIG_ENDIAN
);
6247 return tvb_reported_length(tvb
);
6251 static int dissect_c15ch_inc_gwe_cl_setup(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6253 proto_item
* ti
= NULL
;
6254 proto_tree
* c15ch_inc_gwe_cl_setup_tree
= NULL
;
6259 num_digits
= tvb_get_uint8(tvb
, 4);
6263 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_cl_setup
, tvb
, 0, 45, ENC_NA
);
6264 c15ch_inc_gwe_cl_setup_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6265 proto_tree_add_item(c15ch_inc_gwe_cl_setup_tree
, hf_c15ch_inc_gwe_cl_setup_ip_gwe_sua_hndl
,
6266 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6267 add_digits_string(hf_c15ch_inc_gwe_cl_setup_ip_gwe_cled_digits
,tvb
,c15ch_inc_gwe_cl_setup_tree
,
6268 5, num_digits
, 32, 1);
6269 proto_tree_add_item(c15ch_inc_gwe_cl_setup_tree
, hf_c15ch_inc_gwe_cl_setup_ip_cl_setup_lsdp
,
6270 tvb
, 37, 4, ENC_LITTLE_ENDIAN
);
6271 proto_tree_add_item(c15ch_inc_gwe_cl_setup_tree
, hf_c15ch_inc_gwe_cl_setup_ip_cl_setup_m_port
,
6272 tvb
, 41, 4, ENC_BIG_ENDIAN
);
6274 return tvb_reported_length(tvb
);
6277 static int dissect_c15ch_inc_gwe_h248_digit(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6279 proto_item
* ti
= NULL
;
6280 proto_tree
* c15ch_inc_gwe_h248_digit_tree
= NULL
;
6284 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_h248_digit
, tvb
, 0, 2, ENC_NA
);
6285 c15ch_inc_gwe_h248_digit_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6286 proto_tree_add_item(c15ch_inc_gwe_h248_digit_tree
, hf_c15ch_inc_gwe_h248_digit_ip_gwe_digit
,
6287 tvb
, 0, 1, ENC_BIG_ENDIAN
);
6288 proto_tree_add_item(c15ch_inc_gwe_h248_digit_tree
, hf_c15ch_inc_gwe_h248_digit_ip_gwe_digit_method
,
6289 tvb
, 1, 1, ENC_BIG_ENDIAN
);
6291 return tvb_reported_length(tvb
);
6294 static int dissect_c15ch_inc_gwe_info(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6296 proto_item
* ti
= NULL
;
6297 proto_tree
* c15ch_inc_gwe_info_tree
= NULL
;
6301 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_info
, tvb
, 0, 10, ENC_NA
);
6302 c15ch_inc_gwe_info_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6303 proto_tree_add_item(c15ch_inc_gwe_info_tree
, hf_c15ch_inc_gwe_info_ip_gwe_sua_hndl
,
6304 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6305 proto_tree_add_item(c15ch_inc_gwe_info_tree
, hf_c15ch_inc_gwe_info_ip_gwe_info_type
,
6306 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6307 proto_tree_add_item(c15ch_inc_gwe_info_tree
, hf_c15ch_inc_gwe_info_ip_gwe_info_digit
,
6308 tvb
, 5, 4, ENC_BIG_ENDIAN
);
6309 proto_tree_add_item(c15ch_inc_gwe_info_tree
, hf_c15ch_inc_gwe_info_encap_isup_msg_type
,
6310 tvb
, 9, 1, ENC_BIG_ENDIAN
);
6312 return tvb_reported_length(tvb
);
6315 static int dissect_c15ch_inc_gwe_inv_repl(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6317 proto_item
* ti
= NULL
;
6318 proto_tree
* c15ch_inc_gwe_inv_repl_tree
= NULL
;
6322 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_inv_repl
, tvb
, 0, 16, ENC_NA
);
6323 c15ch_inc_gwe_inv_repl_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6324 proto_tree_add_item(c15ch_inc_gwe_inv_repl_tree
, hf_c15ch_inc_gwe_inv_repl_ip_gwe_sua_hndl
,
6325 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6326 proto_tree_add_item(c15ch_inc_gwe_inv_repl_tree
, hf_c15ch_inc_gwe_inv_repl_ip_gwe_conn_num
,
6327 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6328 proto_tree_add_item(c15ch_inc_gwe_inv_repl_tree
, hf_c15ch_inc_gwe_inv_repl_ip_inv_repl_rsdp_ip
,
6329 tvb
, 8, 4, ENC_LITTLE_ENDIAN
);
6330 proto_tree_add_item(c15ch_inc_gwe_inv_repl_tree
, hf_c15ch_inc_gwe_inv_repl_ip_inv_repl_rsdp_port
,
6331 tvb
, 12, 4, ENC_BIG_ENDIAN
);
6333 return tvb_reported_length(tvb
);
6337 static int dissect_c15ch_inc_gwe_mgcp_dlcx(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6339 proto_item
* ti
= NULL
;
6340 proto_tree
* c15ch_inc_gwe_mgcp_dlcx_tree
= NULL
;
6344 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_mgcp_dlcx
, tvb
, 0, 4, ENC_NA
);
6345 c15ch_inc_gwe_mgcp_dlcx_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6346 proto_tree_add_item(c15ch_inc_gwe_mgcp_dlcx_tree
, hf_c15ch_inc_gwe_mgcp_dlcx_err_code
,
6347 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6349 return tvb_reported_length(tvb
);
6352 static int dissect_c15ch_inc_gwe_notify(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6354 proto_item
* ti
= NULL
;
6355 proto_tree
* c15ch_inc_gwe_notify_tree
= NULL
;
6360 num_digits
= tvb_get_uint8(tvb
, 4);
6364 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_notify
, tvb
, 0, 37, ENC_NA
);
6365 c15ch_inc_gwe_notify_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6366 proto_tree_add_item(c15ch_inc_gwe_notify_tree
, hf_c15ch_inc_gwe_notify_ip_gwe_mwi_stat
,
6367 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6368 add_digits_string(hf_c15ch_inc_gwe_notify_ip_gwe_digits
,tvb
,c15ch_inc_gwe_notify_tree
,
6369 5, num_digits
, 32, 1);
6371 return tvb_reported_length(tvb
);
6375 static int dissect_c15ch_inc_gwe_ntwk_mod(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6377 proto_item
* ti
= NULL
;
6378 proto_tree
* c15ch_inc_gwe_ntwk_mod_tree
= NULL
;
6382 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_ntwk_mod
, tvb
, 0, 22, ENC_NA
);
6383 c15ch_inc_gwe_ntwk_mod_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6384 proto_tree_add_item(c15ch_inc_gwe_ntwk_mod_tree
, hf_c15ch_inc_gwe_ntwk_mod_ip_gwe_sua_hndl
,
6385 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6386 proto_tree_add_item(c15ch_inc_gwe_ntwk_mod_tree
, hf_c15ch_inc_gwe_ntwk_mod_ip_gwe_conn_num
,
6387 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6388 proto_tree_add_item(c15ch_inc_gwe_ntwk_mod_tree
, hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_lsdp
,
6389 tvb
, 5, 4, ENC_LITTLE_ENDIAN
);
6390 proto_tree_add_item(c15ch_inc_gwe_ntwk_mod_tree
, hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_l_m_port
,
6391 tvb
, 9, 4, ENC_BIG_ENDIAN
);
6392 proto_tree_add_item(c15ch_inc_gwe_ntwk_mod_tree
, hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_rsdp
,
6393 tvb
, 13, 4, ENC_LITTLE_ENDIAN
);
6394 proto_tree_add_item(c15ch_inc_gwe_ntwk_mod_tree
, hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_r_m_port
,
6395 tvb
, 17, 4, ENC_BIG_ENDIAN
);
6396 proto_tree_add_item(c15ch_inc_gwe_ntwk_mod_tree
, hf_c15ch_inc_gwe_ntwk_mod_ip_gwe_stat_code
,
6397 tvb
, 21, 1, ENC_BIG_ENDIAN
);
6400 return tvb_reported_length(tvb
);
6403 static int dissect_c15ch_inc_gwe_ptrk_setup(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6405 proto_item
* ti
= NULL
;
6406 proto_tree
* c15ch_inc_gwe_ptrk_setup_tree
= NULL
;
6409 uint8_t cled_num_digits
, clng_num_digits
, redir_num_digits
, ocn_num_digits
, chrg_num_digits
,
6410 rn_num_digits
, cic_num_digits
;
6414 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_ptrk_setup
, tvb
, 0, 172, ENC_NA
);
6415 c15ch_inc_gwe_ptrk_setup_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6417 cled_num_digits
= tvb_get_uint8(tvb
, 4);
6420 clng_num_digits
= tvb_get_uint8(tvb
, 46);
6423 redir_num_digits
= tvb_get_uint8(tvb
, 85);
6426 ocn_num_digits
= tvb_get_uint8(tvb
, 103);
6429 chrg_num_digits
= tvb_get_uint8(tvb
, 119);
6432 rn_num_digits
= tvb_get_uint8(tvb
, 133);
6435 cic_num_digits
= tvb_get_uint8(tvb
, 166);
6437 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_sua_hndl
,
6438 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6439 add_digits_string(hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_cled_digits
,tvb
,c15ch_inc_gwe_ptrk_setup_tree
,
6440 5,cled_num_digits
, 32, 1);
6441 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_cl_setup_lsdp
,
6442 tvb
, 37, 4, ENC_LITTLE_ENDIAN
);
6443 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_cl_setup_m_port
,
6444 tvb
, 41, 4, ENC_BIG_ENDIAN
);
6445 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clid_pri
,
6446 tvb
, 45, 1, ENC_BIG_ENDIAN
);
6447 add_digits_string(hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clng_digits
,tvb
,c15ch_inc_gwe_ptrk_setup_tree
,
6448 47,clng_num_digits
, 32, 1);
6449 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clng_ton
,
6450 tvb
, 79, 1, ENC_BIG_ENDIAN
);
6451 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clng_np
,
6452 tvb
, 80, 1, ENC_BIG_ENDIAN
);
6454 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_alert_info
,
6455 tvb
, 81, 4, ENC_BIG_ENDIAN
);
6457 add_digits_string(hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_redir_digits
,tvb
,c15ch_inc_gwe_ptrk_setup_tree
,
6458 86,redir_num_digits
, 15, 1);
6459 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_redir_ton
,
6460 tvb
, 101, 1, ENC_BIG_ENDIAN
);
6461 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_redir_np
,
6462 tvb
, 102, 1, ENC_BIG_ENDIAN
);
6464 add_digits_string(hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_ocn_digits
,tvb
,c15ch_inc_gwe_ptrk_setup_tree
,
6465 104,ocn_num_digits
, 15, 1);
6467 add_digits_string(hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_chrg_digits
,tvb
,c15ch_inc_gwe_ptrk_setup_tree
,
6468 120,chrg_num_digits
, 10, 1);
6469 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_chrg_noa
,
6470 tvb
, 130, 1, ENC_BIG_ENDIAN
);
6471 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_chrg_npi
,
6472 tvb
, 131, 1, ENC_BIG_ENDIAN
);
6474 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_npdi
,
6475 tvb
, 132, 1, ENC_BIG_ENDIAN
);
6477 add_digits_string(hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_rn_digits
,tvb
,c15ch_inc_gwe_ptrk_setup_tree
,
6478 134,rn_num_digits
, 32, 1);
6480 add_digits_string(hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_cic_digits
,tvb
,c15ch_inc_gwe_ptrk_setup_tree
,
6481 167,cic_num_digits
, 4, 1);
6483 proto_tree_add_item(c15ch_inc_gwe_ptrk_setup_tree
, hf_c15ch_inc_gwe_ptrk_setup_encap_isup
,
6484 tvb
, 171, 1, ENC_BIG_ENDIAN
);
6486 return tvb_reported_length(tvb
);
6490 static int dissect_c15ch_inc_gwe_reply(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6492 proto_item
* ti
= NULL
;
6493 proto_tree
* c15ch_inc_gwe_reply_tree
= NULL
;
6497 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_reply
, tvb
, 0, 28, ENC_NA
);
6498 c15ch_inc_gwe_reply_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6499 proto_tree_add_item(c15ch_inc_gwe_reply_tree
, hf_c15ch_inc_gwe_reply_ip_gwe_msg_type
,
6500 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6501 proto_tree_add_item(c15ch_inc_gwe_reply_tree
, hf_c15ch_inc_gwe_reply_ip_gwe_stat_code
,
6502 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6503 proto_tree_add_item(c15ch_inc_gwe_reply_tree
, hf_c15ch_inc_gwe_reply_ip_gwe_conn_num
,
6504 tvb
, 8, 4, ENC_BIG_ENDIAN
);
6505 proto_tree_add_item(c15ch_inc_gwe_reply_tree
, hf_c15ch_inc_gwe_reply_nw_mdcn_lsdp_ip
,
6506 tvb
, 12, 4, ENC_LITTLE_ENDIAN
);
6507 proto_tree_add_item(c15ch_inc_gwe_reply_tree
, hf_c15ch_inc_gwe_reply_nw_mdcn_lsdp_port
,
6508 tvb
, 16, 4, ENC_BIG_ENDIAN
);
6509 proto_tree_add_item(c15ch_inc_gwe_reply_tree
, hf_c15ch_inc_gwe_reply_nw_mdcn_rsdp_ip
,
6510 tvb
, 20, 4, ENC_LITTLE_ENDIAN
);
6511 proto_tree_add_item(c15ch_inc_gwe_reply_tree
, hf_c15ch_inc_gwe_reply_nw_mdcn_rsdp_port
,
6512 tvb
, 24, 4, ENC_BIG_ENDIAN
);
6515 return tvb_reported_length(tvb
);
6518 static int dissect_c15ch_inc_gwe_rv_avail(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6520 proto_item
* ti
= NULL
;
6521 proto_tree
* c15ch_inc_gwe_rv_avail_tree
= NULL
;
6525 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_rv_avail
, tvb
, 0, 12, ENC_NA
);
6526 c15ch_inc_gwe_rv_avail_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6527 proto_tree_add_item(c15ch_inc_gwe_rv_avail_tree
, hf_c15ch_inc_gwe_rv_avail_ip_gwe_sua_hndl
,
6528 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6529 proto_tree_add_item(c15ch_inc_gwe_rv_avail_tree
, hf_c15ch_inc_gwe_rv_avail_ip_gwe_conn_num
,
6530 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6531 proto_tree_add_item(c15ch_inc_gwe_rv_avail_tree
, hf_c15ch_inc_gwe_rv_avail_ip_gwe_info_len
,
6532 tvb
, 8, 4, ENC_BIG_ENDIAN
);
6535 return tvb_reported_length(tvb
);
6538 static int dissect_c15ch_inc_gwe_sua_reply(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6540 proto_item
* ti
= NULL
;
6541 proto_tree
* c15ch_inc_gwe_sua_reply_tree
= NULL
;
6545 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_sua_reply
, tvb
, 0, 32, ENC_NA
);
6546 c15ch_inc_gwe_sua_reply_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6547 proto_tree_add_item(c15ch_inc_gwe_sua_reply_tree
, hf_c15ch_inc_gwe_sua_reply_ip_gwe_sua_hndl
,
6548 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6549 proto_tree_add_item(c15ch_inc_gwe_sua_reply_tree
, hf_c15ch_inc_gwe_sua_reply_ip_gwe_msg_type
,
6550 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6551 proto_tree_add_item(c15ch_inc_gwe_sua_reply_tree
, hf_c15ch_inc_gwe_sua_reply_ip_gwe_stat_code
,
6552 tvb
, 8, 4, ENC_BIG_ENDIAN
);
6553 proto_tree_add_item(c15ch_inc_gwe_sua_reply_tree
, hf_c15ch_inc_gwe_sua_reply_ip_gwe_conn_num
,
6554 tvb
, 12, 4, ENC_BIG_ENDIAN
);
6555 proto_tree_add_item(c15ch_inc_gwe_sua_reply_tree
, hf_c15ch_inc_gwe_sua_reply_nw_mdcn_lsdp_ip
,
6556 tvb
, 16, 4, ENC_LITTLE_ENDIAN
);
6557 proto_tree_add_item(c15ch_inc_gwe_sua_reply_tree
, hf_c15ch_inc_gwe_sua_reply_nw_mdcn_lsdp_port
,
6558 tvb
, 20, 4, ENC_BIG_ENDIAN
);
6559 proto_tree_add_item(c15ch_inc_gwe_sua_reply_tree
, hf_c15ch_inc_gwe_sua_reply_nw_mdcn_rsdp_ip
,
6560 tvb
, 24, 4, ENC_LITTLE_ENDIAN
);
6561 proto_tree_add_item(c15ch_inc_gwe_sua_reply_tree
, hf_c15ch_inc_gwe_sua_reply_nw_mdcn_rsdp_port
,
6562 tvb
, 28, 4, ENC_BIG_ENDIAN
);
6565 return tvb_reported_length(tvb
);
6569 static int dissect_c15ch_inc_gwe_subs_chg_hndl(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6571 proto_item
* ti
= NULL
;
6572 proto_tree
* c15ch_inc_gwe_subs_chg_hndl_tree
= NULL
;
6573 proto_tree
* sub_ni_tn_tree
= NULL
;
6577 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_subs_chg_hndl
, tvb
, 0, 16, ENC_NA
);
6578 c15ch_inc_gwe_subs_chg_hndl_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6579 proto_tree_add_item(c15ch_inc_gwe_subs_chg_hndl_tree
, hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_sua_hndl
,
6580 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6581 proto_tree_add_item(c15ch_inc_gwe_subs_chg_hndl_tree
, hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_new_hndl
,
6582 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6584 ti
= proto_tree_add_item(c15ch_inc_gwe_subs_chg_hndl_tree
, hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_med_ni_tn
,
6585 tvb
, 8, 16, ENC_BIG_ENDIAN
);
6586 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_third_level_inc_gwe_sub1
);
6587 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_med_ni
,
6588 tvb
, 8, 4, ENC_BIG_ENDIAN
);
6589 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_med_tn
,
6590 tvb
, 12, 4, ENC_BIG_ENDIAN
);
6592 return tvb_reported_length(tvb
);
6595 static int dissect_c15ch_inc_gwe_sua_hndl(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6597 proto_item
* ti
= NULL
;
6598 proto_tree
* c15ch_inc_gwe_sua_hndl_tree
= NULL
;
6602 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_sua_hndl
, tvb
, 0, 4, ENC_NA
);
6603 c15ch_inc_gwe_sua_hndl_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6604 proto_tree_add_item(c15ch_inc_gwe_sua_hndl_tree
, hf_c15ch_inc_gwe_sua_hndl_ip_gwe_sua_hndl
,
6605 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6607 return tvb_reported_length(tvb
);
6611 static int dissect_c15ch_inc_gwe_tgh_stat(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6613 proto_item
* ti
= NULL
;
6614 proto_tree
* c15ch_inc_gwe_tgh_stat_tree
= NULL
;
6618 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_tgh_stat
, tvb
, 0, 5, ENC_NA
);
6619 c15ch_inc_gwe_tgh_stat_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6620 proto_tree_add_item(c15ch_inc_gwe_tgh_stat_tree
, hf_c15ch_inc_gwe_tgh_stat_ip_gwe_sua_hndl
,
6621 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6622 proto_tree_add_item(c15ch_inc_gwe_tgh_stat_tree
, hf_c15ch_inc_gwe_tgh_stat_ip_gwe_tgh_state
,
6623 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6625 return tvb_reported_length(tvb
);
6628 static int dissect_c15ch_inc_gwe_voip_cot(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6630 proto_item
* ti
= NULL
;
6631 proto_tree
* c15ch_inc_gwe_voip_cot_tree
= NULL
;
6635 ti
= proto_tree_add_item(tree
, hf_c15ch_inc_gwe_voip_cot
, tvb
, 0, 1, ENC_NA
);
6636 c15ch_inc_gwe_voip_cot_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_inc_gwe
);
6637 proto_tree_add_item(c15ch_inc_gwe_voip_cot_tree
, hf_c15ch_inc_gwe_voip_cot_ip_gwe_pass_code
,
6638 tvb
, 0, 1, ENC_BIG_ENDIAN
);
6640 return tvb_reported_length(tvb
);
6644 /* second level dissection */
6645 static int dissect_c15ch_out_gwe(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
6647 proto_item
* ti
= NULL
;
6648 proto_tree
* c15ch_out_gwe_tree
= NULL
;
6649 proto_tree
* sub_ni_tn_tree
= NULL
;
6653 tvbuff_t
* next_tvb
;
6655 msg_type
= tvb_get_uint8(tvb
, 8);
6656 data_type
= tvb_get_uint8(tvb
, 14);
6657 col_clear(pinfo
->cinfo
, COL_INFO
);
6658 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: OUT_GWE, Msg Subtype: %s",
6659 val_to_str_ext(msg_type
, &c15_out_gwe_msg_types_ext
, "Unknown Msg Subtype: %d") );
6662 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe
, tvb
, 0, 15, ENC_NA
);
6663 proto_item_append_text(ti
, ", Msg Subtype: %s",
6664 val_to_str_ext(msg_type
, &c15_out_gwe_msg_types_ext
, "Unknown Msg Subtype: %d"));
6665 c15ch_out_gwe_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
6667 ti
= proto_tree_add_item(c15ch_out_gwe_tree
, hf_c15ch_out_gwe_ni_tn
,
6668 tvb
, 0, 8, ENC_BIG_ENDIAN
);
6670 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_second_level_sub1
);
6671 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_ni
,
6672 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6673 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_tn
,
6674 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6677 proto_tree_add_item(c15ch_out_gwe_tree
, hf_c15ch_out_gwe_op_gwe_msg_type
,
6678 tvb
, 8, 1, ENC_BIG_ENDIAN
);
6679 proto_tree_add_item(c15ch_out_gwe_tree
, hf_c15ch_out_gwe_op_gwe_protocol
,
6680 tvb
, 9, 1, ENC_BIG_ENDIAN
);
6681 proto_tree_add_item(c15ch_out_gwe_tree
, hf_c15ch_out_gwe_op_sua_hndl
,
6682 tvb
, 10, 4, ENC_BIG_ENDIAN
);
6683 proto_tree_add_item(c15ch_out_gwe_tree
, hf_c15ch_out_gwe_gwe_data_type
,
6684 tvb
, 14, 1, ENC_BIG_ENDIAN
);
6686 next_tvb
= tvb_new_subset_remaining(tvb
, 15);
6688 dissector_try_uint(c15ch_out_gwe_dissector_table
, data_type
, next_tvb
, pinfo
, tree
);
6689 return tvb_reported_length(tvb
);
6693 /* third level dissection */
6694 static int dissect_c15ch_out_gwe_audit_conn(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6696 proto_item
* ti
= NULL
;
6697 proto_tree
* c15ch_out_gwe_audit_conn_tree
= NULL
;
6698 proto_tree
* sub_ni_tn_tree
= NULL
;
6702 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_audit_conn
, tvb
, 0, 12, ENC_NA
);
6703 c15ch_out_gwe_audit_conn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6704 ti
= proto_tree_add_item(c15ch_out_gwe_audit_conn_tree
, hf_c15ch_out_gwe_audit_conn_ni_tn
,
6705 tvb
, 0, 8, ENC_BIG_ENDIAN
);
6706 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_third_level_out_gwe
);
6708 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_audit_conn_ni
,
6709 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6710 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_audit_conn_tn
,
6711 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6712 proto_tree_add_item(c15ch_out_gwe_audit_conn_tree
, hf_c15ch_out_gwe_audit_conn_context
,
6713 tvb
, 8, 4, ENC_BIG_ENDIAN
);
6716 return tvb_reported_length(tvb
);
6720 static int dissect_c15ch_out_gwe_blf_data(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6722 proto_item
* ti
= NULL
;
6723 proto_tree
* c15ch_out_gwe_blf_data_tree
= NULL
;
6724 proto_tree
* sub_med_ni_tn_tree
= NULL
;
6725 proto_tree
* sub_rb_ni_tn_tree
= NULL
;
6729 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_blf_data
, tvb
, 0, 21, ENC_NA
);
6730 c15ch_out_gwe_blf_data_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6731 proto_tree_add_item(c15ch_out_gwe_blf_data_tree
, hf_c15ch_out_gwe_blf_data_rb_ua_handle
,
6732 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6733 proto_tree_add_item(c15ch_out_gwe_blf_data_tree
, hf_c15ch_out_gwe_blf_data_rb_type
,
6734 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6736 ti
= proto_tree_add_item(c15ch_out_gwe_blf_data_tree
, hf_c15ch_out_gwe_blf_data_med_ni_tn
,
6737 tvb
, 5, 8, ENC_BIG_ENDIAN
);
6738 sub_med_ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe_sub1
);
6739 proto_tree_add_item(sub_med_ni_tn_tree
, hf_c15ch_out_gwe_blf_data_med_ni
,
6740 tvb
, 5, 4, ENC_BIG_ENDIAN
);
6741 proto_tree_add_item(sub_med_ni_tn_tree
, hf_c15ch_out_gwe_blf_data_med_tn
,
6742 tvb
, 9, 4, ENC_BIG_ENDIAN
);
6744 ti
= proto_tree_add_item(c15ch_out_gwe_blf_data_tree
, hf_c15ch_out_gwe_blf_data_rb_ni_tn
,
6745 tvb
, 13, 8, ENC_BIG_ENDIAN
);
6746 sub_rb_ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe_sub2
);
6747 proto_tree_add_item(sub_rb_ni_tn_tree
, hf_c15ch_out_gwe_blf_data_rb_ni
,
6748 tvb
, 13, 4, ENC_BIG_ENDIAN
);
6749 proto_tree_add_item(sub_rb_ni_tn_tree
, hf_c15ch_out_gwe_blf_data_rb_tn
,
6750 tvb
, 17, 4, ENC_BIG_ENDIAN
);
6753 return tvb_reported_length(tvb
);
6757 static int dissect_c15ch_out_gwe_call_ans(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6759 proto_item
* ti
= NULL
;
6760 proto_tree
* c15ch_out_gwe_call_ans_tree
= NULL
;
6764 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_call_ans
, tvb
, 0, 13, ENC_NA
);
6765 c15ch_out_gwe_call_ans_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6766 proto_tree_add_item(c15ch_out_gwe_call_ans_tree
, hf_c15ch_out_gwe_call_ans_conn_num
,
6767 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6768 proto_tree_add_item(c15ch_out_gwe_call_ans_tree
, hf_c15ch_out_gwe_call_ans_op_cl_ans_rsdp_ip
,
6769 tvb
, 4, 4, ENC_LITTLE_ENDIAN
);
6770 proto_tree_add_item(c15ch_out_gwe_call_ans_tree
, hf_c15ch_out_gwe_call_ans_op_cl_ans_rsdp_port
,
6771 tvb
, 8, 4, ENC_BIG_ENDIAN
);
6772 proto_tree_add_item(c15ch_out_gwe_call_ans_tree
, hf_c15ch_out_gwe_call_ans_encap_isup
,
6773 tvb
, 12, 1, ENC_BIG_ENDIAN
);
6776 return tvb_reported_length(tvb
);
6780 static int dissect_c15ch_out_gwe_call_notify(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6782 proto_item
* ti
= NULL
;
6783 proto_tree
* c15ch_out_gwe_call_notify_tree
= NULL
;
6787 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_call_notify
, tvb
, 0, 8, ENC_NA
);
6788 c15ch_out_gwe_call_notify_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6789 proto_tree_add_item(c15ch_out_gwe_call_notify_tree
, hf_c15ch_out_gwe_call_notify_op_gwe_mwi
,
6790 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6791 proto_tree_add_item(c15ch_out_gwe_call_notify_tree
, hf_c15ch_out_gwe_call_notify_status_code
,
6792 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6795 return tvb_reported_length(tvb
);
6799 static int dissect_c15ch_out_gwe_call_prog(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6801 proto_item
* ti
= NULL
;
6802 proto_tree
* c15ch_out_gwe_call_prog_tree
= NULL
;
6806 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_call_prog
, tvb
, 0, 9, ENC_NA
);
6807 c15ch_out_gwe_call_prog_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6808 proto_tree_add_item(c15ch_out_gwe_call_prog_tree
, hf_c15ch_out_gwe_call_prog_conn_num
,
6809 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6810 proto_tree_add_item(c15ch_out_gwe_call_prog_tree
, hf_c15ch_out_gwe_call_prog_op_gwe_stat_code
,
6811 tvb
, 4, 4, ENC_BIG_ENDIAN
);
6812 proto_tree_add_item(c15ch_out_gwe_call_prog_tree
, hf_c15ch_out_gwe_call_prog_encap_isup
,
6813 tvb
, 8, 1, ENC_BIG_ENDIAN
);
6816 return tvb_reported_length(tvb
);
6820 static int dissect_c15ch_out_gwe_call_rel(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6822 proto_item
* ti
= NULL
;
6823 proto_tree
* c15ch_out_gwe_call_rel_tree
= NULL
;
6827 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_call_rel
, tvb
, 0, 5, ENC_NA
);
6828 c15ch_out_gwe_call_rel_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6829 proto_tree_add_item(c15ch_out_gwe_call_rel_tree
, hf_c15ch_out_gwe_call_rel_status_code
,
6830 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6831 proto_tree_add_item(c15ch_out_gwe_call_rel_tree
, hf_c15ch_out_gwe_call_rel_encap_isup
,
6832 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6835 return tvb_reported_length(tvb
);
6839 static int dissect_c15ch_out_gwe_call_setup(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6841 proto_item
* ti
= NULL
;
6842 proto_tree
* c15ch_out_gwe_call_setup_tree
= NULL
;
6844 uint8_t redir_num_digits
;
6845 uint8_t ocn_num_digits
;
6846 uint8_t chrg_num_digits
;
6850 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_call_setup
, tvb
, 0, 60, ENC_NA
);
6851 c15ch_out_gwe_call_setup_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6853 redir_num_digits
= tvb_get_uint8(tvb
, 12);
6856 ocn_num_digits
= tvb_get_uint8(tvb
, 30);
6859 chrg_num_digits
= tvb_get_uint8(tvb
, 46);
6861 proto_tree_add_item(c15ch_out_gwe_call_setup_tree
, hf_c15ch_out_gwe_call_setup_conn_num
,
6862 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6863 proto_tree_add_item(c15ch_out_gwe_call_setup_tree
, hf_c15ch_out_gwe_call_setup_op_cl_ans_rsdp_ip
,
6864 tvb
, 4, 4, ENC_LITTLE_ENDIAN
);
6865 proto_tree_add_item(c15ch_out_gwe_call_setup_tree
, hf_c15ch_out_gwe_call_setup_op_cl_ans_rsdp_port
,
6866 tvb
, 8, 4, ENC_BIG_ENDIAN
);
6867 add_digits_string(hf_c15ch_out_gwe_call_setup_op_gwe_redir_digits
, tvb
, c15ch_out_gwe_call_setup_tree
,
6868 13, redir_num_digits
, 15, 1);
6869 proto_tree_add_item(c15ch_out_gwe_call_setup_tree
, hf_c15ch_out_gwe_call_setup_op_gwe_rdir_ton
,
6870 tvb
, 28, 1, ENC_BIG_ENDIAN
);
6871 proto_tree_add_item(c15ch_out_gwe_call_setup_tree
, hf_c15ch_out_gwe_call_setup_op_gwe_rdir_np
,
6872 tvb
, 29, 1, ENC_BIG_ENDIAN
);
6873 add_digits_string(hf_c15ch_out_gwe_call_setup_op_gwe_ocn_digits
, tvb
, c15ch_out_gwe_call_setup_tree
,
6874 31, ocn_num_digits
, 15, 1);
6875 add_digits_string(hf_c15ch_out_gwe_call_setup_op_gwe_chrg_digits
, tvb
, c15ch_out_gwe_call_setup_tree
,
6876 47, chrg_num_digits
, 10, 1);
6877 proto_tree_add_item(c15ch_out_gwe_call_setup_tree
, hf_c15ch_out_gwe_call_setup_op_gwe_chrg_noa
,
6878 tvb
, 57, 1, ENC_BIG_ENDIAN
);
6879 proto_tree_add_item(c15ch_out_gwe_call_setup_tree
, hf_c15ch_out_gwe_call_setup_op_gwe_chrg_npi
,
6880 tvb
, 58, 1, ENC_BIG_ENDIAN
);
6881 proto_tree_add_item(c15ch_out_gwe_call_setup_tree
, hf_c15ch_out_gwe_call_setup_encap_isup
,
6882 tvb
, 59, 1, ENC_BIG_ENDIAN
);
6884 return tvb_reported_length(tvb
);
6887 static int dissect_c15ch_out_gwe_conn_num(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6889 proto_item
* ti
= NULL
;
6890 proto_tree
* c15ch_out_gwe_conn_num_tree
= NULL
;
6894 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_conn_num
, tvb
, 0, 4, ENC_NA
);
6895 c15ch_out_gwe_conn_num_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6896 proto_tree_add_item(c15ch_out_gwe_conn_num_tree
, hf_c15ch_out_gwe_conn_num_out_gwe_conn_num
,
6897 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6900 return tvb_reported_length(tvb
);
6903 static int dissect_c15ch_out_gwe_del_subs_ua(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6905 proto_item
* ti
= NULL
;
6906 proto_tree
* c15ch_out_gwe_del_subs_ua_tree
= NULL
;
6910 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_del_subs_ua
, tvb
, 0, 4, ENC_NA
);
6911 c15ch_out_gwe_del_subs_ua_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6912 proto_tree_add_item(c15ch_out_gwe_del_subs_ua_tree
, hf_c15ch_out_gwe_del_subs_ua_op_sip_ua_hndl
,
6913 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6916 return tvb_reported_length(tvb
);
6920 static int dissect_c15ch_out_gwe_digit_scan(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6922 proto_item
* ti
= NULL
;
6923 proto_tree
* c15ch_out_gwe_digit_scan_tree
= NULL
;
6930 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_digit_scan
, tvb
, 0, 255, ENC_NA
);
6931 c15ch_out_gwe_digit_scan_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6932 proto_tree_add_item(c15ch_out_gwe_digit_scan_tree
, hf_c15ch_out_gwe_digit_scan_voip_dgmp_override
,
6933 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6936 add_string_field( c15ch_out_gwe_digit_scan_tree
, tvb
, str_start
, max_str_len
, hf_c15ch_out_gwe_digit_scan_actv_dgmp
);
6937 proto_tree_add_item(c15ch_out_gwe_digit_scan_tree
, hf_c15ch_out_gwe_digit_scan_op_gwe_digit_scan_tone
,
6938 tvb
, 251, 1, ENC_BIG_ENDIAN
);
6939 proto_tree_add_item(c15ch_out_gwe_digit_scan_tree
, hf_c15ch_out_gwe_digit_scan_op_gwe_tone_type
,
6940 tvb
, 252, 1, ENC_BIG_ENDIAN
);
6941 proto_tree_add_item(c15ch_out_gwe_digit_scan_tree
, hf_c15ch_out_gwe_digit_scan_op_gwe_tone_to
,
6942 tvb
, 253, 1, ENC_BIG_ENDIAN
);
6943 proto_tree_add_item(c15ch_out_gwe_digit_scan_tree
, hf_c15ch_out_gwe_digit_scan_op_gwe_digit_flash
,
6944 tvb
, 254, 1, ENC_BIG_ENDIAN
);
6947 return tvb_reported_length(tvb
);
6951 static int dissect_c15ch_out_gwe_line_sprvsn(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6953 proto_item
* ti
= NULL
;
6954 proto_tree
* c15ch_out_gwe_line_sprvsn_tree
= NULL
;
6958 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_line_sprvsn
, tvb
, 0, 3, ENC_NA
);
6959 c15ch_out_gwe_line_sprvsn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6960 proto_tree_add_item(c15ch_out_gwe_line_sprvsn_tree
, hf_c15ch_out_gwe_line_sprvsn_op_gwe_ofhk_event
,
6961 tvb
, 0, 1, ENC_BIG_ENDIAN
);
6962 proto_tree_add_item(c15ch_out_gwe_line_sprvsn_tree
, hf_c15ch_out_gwe_line_sprvsn_op_gwe_onhk_event
,
6963 tvb
, 1, 1, ENC_BIG_ENDIAN
);
6964 proto_tree_add_item(c15ch_out_gwe_line_sprvsn_tree
, hf_c15ch_out_gwe_line_sprvsn_op_gwe_flhk_event
,
6965 tvb
, 2, 1, ENC_BIG_ENDIAN
);
6968 return tvb_reported_length(tvb
);
6972 static int dissect_c15ch_out_gwe_md_conn(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6974 proto_item
* ti
= NULL
;
6975 proto_tree
* c15ch_out_gwe_md_conn_tree
= NULL
;
6979 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_md_conn
, tvb
, 0, 6, ENC_NA
);
6980 c15ch_out_gwe_md_conn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
6981 proto_tree_add_item(c15ch_out_gwe_md_conn_tree
, hf_c15ch_out_gwe_md_conn_conn_num
,
6982 tvb
, 0, 4, ENC_BIG_ENDIAN
);
6983 proto_tree_add_item(c15ch_out_gwe_md_conn_tree
, hf_c15ch_out_gwe_md_conn_status_code
,
6984 tvb
, 4, 1, ENC_BIG_ENDIAN
);
6985 proto_tree_add_item(c15ch_out_gwe_md_conn_tree
, hf_c15ch_out_gwe_md_conn_op_gwe_mode
,
6986 tvb
, 5, 1, ENC_BIG_ENDIAN
);
6989 return tvb_reported_length(tvb
);
6993 static int dissect_c15ch_out_gwe_out_cot(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
6995 proto_item
* ti
= NULL
;
6996 proto_tree
* c15ch_out_gwe_out_cot_tree
= NULL
;
6997 proto_tree
* sub_ni_tn_tree
= NULL
;
7001 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_out_cot
, tvb
, 0, 8, ENC_NA
);
7002 c15ch_out_gwe_out_cot_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7004 ti
= proto_tree_add_item(c15ch_out_gwe_out_cot_tree
, hf_c15ch_out_gwe_out_cot_ni_tn
,
7005 tvb
, 0, 8, ENC_BIG_ENDIAN
);
7006 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_third_level_out_gwe_sub1
);
7008 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_out_cot_ni
,
7009 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7010 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_out_cot_tn
,
7011 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7014 return tvb_reported_length(tvb
);
7018 static int dissect_c15ch_out_gwe_mk_conn(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7020 proto_item
* ti
= NULL
;
7021 proto_tree
* c15ch_out_gwe_mk_conn_tree
= NULL
;
7025 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_mk_conn
, tvb
, 0, 12, ENC_NA
);
7026 c15ch_out_gwe_mk_conn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7027 proto_tree_add_item(c15ch_out_gwe_mk_conn_tree
, hf_c15ch_out_gwe_mk_conn_conn_num
,
7028 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7029 proto_tree_add_item(c15ch_out_gwe_mk_conn_tree
, hf_c15ch_out_gwe_mk_conn_op_mk_conn_rsdp_ip
,
7030 tvb
, 4, 4, ENC_LITTLE_ENDIAN
);
7031 proto_tree_add_item(c15ch_out_gwe_mk_conn_tree
, hf_c15ch_out_gwe_mk_conn_op_mk_conn_rsdp_port
,
7032 tvb
, 8, 4, ENC_BIG_ENDIAN
);
7035 return tvb_reported_length(tvb
);
7038 static int dissect_c15ch_out_gwe_pcm_data(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7040 proto_item
* ti
= NULL
;
7041 proto_tree
* c15ch_out_gwe_pcm_data_tree
= NULL
;
7045 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_pcm_data
, tvb
, 0, 8, ENC_NA
);
7046 c15ch_out_gwe_pcm_data_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7047 proto_tree_add_item(c15ch_out_gwe_pcm_data_tree
, hf_c15ch_out_gwe_pcm_data_rb_ua_handle_near
,
7048 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7049 proto_tree_add_item(c15ch_out_gwe_pcm_data_tree
, hf_c15ch_out_gwe_pcm_data_rb_ua_handle_far
,
7050 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7053 return tvb_reported_length(tvb
);
7056 static int dissect_c15ch_out_gwe_ring_line(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7058 proto_item
* ti
= NULL
;
7059 proto_tree
* c15ch_out_gwe_ring_line_tree
= NULL
;
7063 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_ring_line
, tvb
, 0, 101, ENC_NA
);
7064 c15ch_out_gwe_ring_line_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7065 proto_tree_add_item(c15ch_out_gwe_ring_line_tree
, hf_c15ch_out_gwe_ring_line_op_gwe_display
,
7066 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7067 add_string_field( c15ch_out_gwe_ring_line_tree
, tvb
, 1, 100, hf_c15ch_out_gwe_ring_line_op_gwe_display_chars
);
7070 return tvb_reported_length(tvb
);
7074 static int dissect_c15ch_out_gwe_rv_subs_data(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7076 proto_item
* ti
= NULL
;
7077 proto_tree
* c15ch_out_gwe_rv_subs_data_tree
= NULL
;
7078 proto_tree
* sub_ni_tn_tree
= NULL
;
7082 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_rv_subs_data
, tvb
, 0, 8, ENC_NA
);
7083 c15ch_out_gwe_rv_subs_data_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7085 ti
= proto_tree_add_item(c15ch_out_gwe_rv_subs_data_tree
, hf_c15ch_out_gwe_rv_subs_data_rb_fe_ni_tn
,
7086 tvb
, 0, 8, ENC_BIG_ENDIAN
);
7087 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_third_level_out_gwe_sub1
);
7088 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_rv_subs_data_rb_fe_ni
,
7089 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7090 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_rv_subs_data_rb_fe_tn
,
7091 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7094 return tvb_reported_length(tvb
);
7097 static int dissect_c15ch_out_gwe_sac_notify(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7099 proto_item
* ti
= NULL
;
7100 proto_tree
* c15ch_out_gwe_sac_notify_tree
= NULL
;
7104 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_sac_notify
, tvb
, 0, 2, ENC_NA
);
7105 c15ch_out_gwe_sac_notify_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7106 proto_tree_add_item(c15ch_out_gwe_sac_notify_tree
, hf_c15ch_out_gwe_sac_notify_op_gwe_blf_state
,
7107 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7108 proto_tree_add_item(c15ch_out_gwe_sac_notify_tree
, hf_c15ch_out_gwe_sac_notify_op_gwe_subs_state
,
7109 tvb
, 1, 1, ENC_BIG_ENDIAN
);
7112 return tvb_reported_length(tvb
);
7116 static int dissect_c15ch_out_gwe_sac_list_entry(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7118 proto_item
* ti
= NULL
;
7119 proto_tree
* c15ch_out_gwe_sac_list_entry_tree
= NULL
;
7123 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_sac_list_entry
, tvb
, 0, 72, ENC_NA
);
7124 c15ch_out_gwe_sac_list_entry_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7125 add_string_field( c15ch_out_gwe_sac_list_entry_tree
, tvb
, 0,72,
7126 hf_c15ch_out_gwe_sac_list_entry_op_gwe_med_uri
);
7129 return tvb_reported_length(tvb
);
7133 static int dissect_c15ch_out_gwe_sac_sub_valid(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7135 proto_item
* ti
= NULL
;
7136 proto_tree
* c15ch_out_gwe_sac_sub_valid_tree
= NULL
;
7140 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_sac_sub_valid
, tvb
, 0, 5, ENC_NA
);
7141 c15ch_out_gwe_sac_sub_valid_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7142 proto_tree_add_item(c15ch_out_gwe_sac_sub_valid_tree
, hf_c15ch_out_gwe_sac_sub_valid_op_gwe_subs_valid
,
7143 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7144 proto_tree_add_item(c15ch_out_gwe_sac_sub_valid_tree
, hf_c15ch_out_gwe_sac_sub_valid_op_gwe_num_list_items
,
7145 tvb
, 1, 4, ENC_BIG_ENDIAN
);
7148 return tvb_reported_length(tvb
);
7152 static int dissect_c15ch_out_gwe_sip_info(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7154 proto_item
* ti
= NULL
;
7155 proto_tree
* c15ch_out_gwe_sip_info_tree
= NULL
;
7160 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_sip_info
, tvb
, 0, 5, ENC_NA
);
7161 c15ch_out_gwe_sip_info_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7162 proto_tree_add_item(c15ch_out_gwe_sip_info_tree
, hf_c15ch_out_gwe_sip_info_op_gwe_sip_info_type
,
7163 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7164 proto_tree_add_item(c15ch_out_gwe_sip_info_tree
, hf_c15ch_out_gwe_sip_info_op_gwe_sip_info
,
7165 tvb
, 1, 4, ENC_BIG_ENDIAN
);
7168 return tvb_reported_length(tvb
);
7171 static int dissect_c15ch_out_gwe_sip_refer(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7173 proto_item
* ti
= NULL
;
7174 proto_tree
* c15ch_out_gwe_sip_refer_tree
= NULL
;
7178 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_sip_refer
, tvb
, 0, 4, ENC_NA
);
7179 c15ch_out_gwe_sip_refer_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7180 proto_tree_add_item(c15ch_out_gwe_sip_refer_tree
, hf_c15ch_out_gwe_sip_refer_op_gwe_refer_ua_hndl
,
7181 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7184 return tvb_reported_length(tvb
);
7188 static int dissect_c15ch_out_gwe_update_ni_tn(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7190 proto_item
* ti
= NULL
;
7191 proto_tree
* c15ch_out_gwe_update_ni_tn_tree
= NULL
;
7192 proto_tree
* sub_ni_tn_tree
= NULL
;
7197 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_update_ni_tn
, tvb
, 0, 8, ENC_NA
);
7198 c15ch_out_gwe_update_ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7200 ti
= proto_tree_add_item(c15ch_out_gwe_update_ni_tn_tree
, hf_c15ch_out_gwe_update_ni_tn_ni_tn
,
7201 tvb
, 0, 8, ENC_BIG_ENDIAN
);
7203 sub_ni_tn_tree
= proto_item_add_subtree (ti
, ett_c15ch_third_level_out_gwe_sub1
);
7204 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_update_ni_tn_ni
,
7205 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7206 proto_tree_add_item(sub_ni_tn_tree
, hf_c15ch_out_gwe_update_ni_tn_tn
,
7207 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7210 return tvb_reported_length(tvb
);
7213 static int dissect_c15ch_out_gwe_update_rec_addr(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7215 proto_item
* ti
= NULL
;
7216 proto_tree
* c15ch_out_gwe_update_rec_addr_tree
= NULL
;
7220 ti
= proto_tree_add_item(tree
, hf_c15ch_out_gwe_update_rec_addr
, tvb
, 0, 4, ENC_NA
);
7221 c15ch_out_gwe_update_rec_addr_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_out_gwe
);
7222 proto_tree_add_item(c15ch_out_gwe_update_rec_addr_tree
, hf_c15ch_out_gwe_update_rec_addr_op_new_rec_addr
,
7223 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7226 return tvb_reported_length(tvb
);
7231 static int dissect_c15ch_tone(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7233 proto_item
* ti
= NULL
;
7234 proto_tree
* c15ch_tone_tree
= NULL
;
7237 tvbuff_t
* next_tvb
;
7240 msg_type
= tvb_get_uint8(tvb
, 0);
7241 col_clear(pinfo
->cinfo
, COL_INFO
);
7242 col_add_fstr(pinfo
->cinfo
, COL_INFO
, "Type: TONE, Msg Subtype: %s",
7243 val_to_str(msg_type
, c15_tone_msg_types
, "Unknown Msg Subtype: %d") );
7246 ti
= proto_tree_add_item(tree
, hf_c15ch_tone
, tvb
, 0, 1, ENC_NA
);
7247 proto_item_append_text(ti
, ", Msg Subtype: %s",
7248 val_to_str(msg_type
, c15_tone_msg_types
, "Unknown Msg Subtype: %d"));
7249 c15ch_tone_tree
= proto_item_add_subtree(ti
, ett_c15ch_second_level
);
7250 proto_tree_add_item(c15ch_tone_tree
, hf_c15ch_tone_msg_type
,
7251 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7253 next_tvb
= tvb_new_subset_remaining(tvb
, 1);
7254 retv
= 1 + dissector_try_uint(c15ch_tone_dissector_table
, msg_type
, next_tvb
, pinfo
, tree
);
7259 static int dissect_c15ch_tone_cot_control(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7261 proto_item
* ti
= NULL
;
7262 proto_tree
* c15ch_tone_cot_control_tree
= NULL
;
7266 ti
= proto_tree_add_item(tree
, hf_c15ch_tone_cot_control
, tvb
, 0, 5, ENC_NA
);
7267 c15ch_tone_cot_control_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone
);
7268 proto_tree_add_item(c15ch_tone_cot_control_tree
, hf_c15ch_tone_cot_control_device_id
,
7269 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7270 proto_tree_add_item(c15ch_tone_cot_control_tree
, hf_c15ch_tone_cot_control_cot_task
,
7271 tvb
, 1, 1, ENC_BIG_ENDIAN
);
7272 proto_tree_add_item(c15ch_tone_cot_control_tree
, hf_c15ch_tone_cot_control_dest_h248
,
7273 tvb
, 2, 1, ENC_BIG_ENDIAN
);
7274 proto_tree_add_item(c15ch_tone_cot_control_tree
, hf_c15ch_tone_cot_control_srce_h248
,
7275 tvb
, 3, 1, ENC_BIG_ENDIAN
);
7276 proto_tree_add_item(c15ch_tone_cot_control_tree
, hf_c15ch_tone_cot_control_svc_channel
,
7277 tvb
, 4, 1, ENC_BIG_ENDIAN
);
7280 return tvb_reported_length(tvb
);
7283 static int dissect_c15ch_tone_cpm(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7285 proto_item
* ti
= NULL
;
7286 proto_tree
* c15ch_tone_cpm_tree
= NULL
;
7290 ti
= proto_tree_add_item(tree
, hf_c15ch_tone_cpm
, tvb
, 0, 3, ENC_NA
);
7291 c15ch_tone_cpm_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone
);
7292 proto_tree_add_item(c15ch_tone_cpm_tree
, hf_c15ch_tone_cpm_loop_type
,
7293 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7294 proto_tree_add_item(c15ch_tone_cpm_tree
, hf_c15ch_tone_cpm_device_id
,
7295 tvb
, 1, 1, ENC_BIG_ENDIAN
);
7296 proto_tree_add_item(c15ch_tone_cpm_tree
, hf_c15ch_tone_cpm_tone_type
,
7297 tvb
, 2, 1, ENC_BIG_ENDIAN
);
7300 return tvb_reported_length(tvb
);
7304 static int dissect_c15ch_tone_give_tone(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7306 proto_item
* ti
= NULL
;
7307 proto_tree
* c15ch_tone_give_tone_tree
= NULL
;
7311 ti
= proto_tree_add_item(tree
, hf_c15ch_tone_give_tone
, tvb
, 0, 2, ENC_NA
);
7312 c15ch_tone_give_tone_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone
);
7313 proto_tree_add_item(c15ch_tone_give_tone_tree
, hf_c15ch_tone_give_tone_tone_id
,
7314 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7315 proto_tree_add_item(c15ch_tone_give_tone_tree
, hf_c15ch_tone_give_tone_tone_type
,
7316 tvb
, 1, 1, ENC_BIG_ENDIAN
);
7319 return tvb_reported_length(tvb
);
7322 static int dissect_c15ch_tone_madn_ring(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7324 proto_item
* ti
= NULL
;
7325 proto_tree
* c15ch_tone_madn_ring_tree
= NULL
;
7329 ti
= proto_tree_add_item(tree
, hf_c15ch_tone_madn_ring
, tvb
, 0, 2, ENC_NA
);
7330 c15ch_tone_madn_ring_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone
);
7331 proto_tree_add_item(c15ch_tone_madn_ring_tree
, hf_c15ch_tone_madn_ring_device_id
,
7332 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7333 proto_tree_add_item(c15ch_tone_madn_ring_tree
, hf_c15ch_tone_madn_ring_tone_type
,
7334 tvb
, 1, 1, ENC_BIG_ENDIAN
);
7337 return tvb_reported_length(tvb
);
7341 static int dissect_c15ch_tone_opls(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7343 proto_item
* ti
= NULL
;
7344 proto_tree
* c15ch_tone_opls_tree
= NULL
;
7345 proto_tree
* to_ni_tn_tree
= NULL
;
7348 num_digits
= tvb_get_uint8(tvb
, 12);
7352 ti
= proto_tree_add_item(tree
, hf_c15ch_tone_opls
, tvb
, 0, 67, ENC_NA
);
7353 c15ch_tone_opls_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone
);
7354 proto_tree_add_item(c15ch_tone_opls_tree
, hf_c15ch_tone_opls_svce_from_ni
,
7355 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7356 ti
= proto_tree_add_item(c15ch_tone_opls_tree
, hf_c15ch_tone_opls_svce_to_ni_tn
,
7357 tvb
, 4, 8, ENC_BIG_ENDIAN
);
7358 to_ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone_sub1
);
7359 proto_tree_add_item(to_ni_tn_tree
, hf_c15ch_tone_opls_svce_to_ni
,
7360 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7361 proto_tree_add_item(to_ni_tn_tree
, hf_c15ch_tone_opls_svce_to_tn
,
7362 tvb
, 8, 4, ENC_BIG_ENDIAN
);
7364 add_digits_string(hf_c15ch_tone_opls_digits
, tvb
, c15ch_tone_opls_tree
,
7365 13, num_digits
, 54, 1);
7368 return tvb_reported_length(tvb
);
7372 static int dissect_c15ch_tone_rcvr(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7374 proto_item
* ti
= NULL
;
7375 proto_tree
* c15ch_tone_rcvr_tree
= NULL
;
7376 proto_tree
* ni_tn_tree
= NULL
;
7381 ti
= proto_tree_add_item(tree
, hf_c15ch_tone_rcvr
, tvb
, 0, 9, ENC_NA
);
7382 c15ch_tone_rcvr_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone
);
7383 proto_tree_add_item(c15ch_tone_rcvr_tree
, hf_c15ch_tone_rcvr_rcvr_id
,
7384 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7385 ti
= proto_tree_add_item(c15ch_tone_rcvr_tree
, hf_c15ch_tone_rcvr_conn_to_ni_tn
,
7386 tvb
, 1, 8, ENC_BIG_ENDIAN
);
7387 ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone_sub1
);
7388 proto_tree_add_item(ni_tn_tree
, hf_c15ch_tone_rcvr_conn_to_ni
,
7389 tvb
, 1, 4, ENC_BIG_ENDIAN
);
7390 proto_tree_add_item(ni_tn_tree
, hf_c15ch_tone_rcvr_conn_to_tn
,
7391 tvb
, 5, 4, ENC_BIG_ENDIAN
);
7394 return tvb_reported_length(tvb
);
7398 static int dissect_c15ch_tone_timeout(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7400 proto_item
* ti
= NULL
;
7401 proto_tree
* c15ch_tone_timeout_tree
= NULL
;
7402 proto_tree
* ni_tn_tree
= NULL
;
7406 ti
= proto_tree_add_item(tree
, hf_c15ch_tone_timeout
, tvb
, 0, 15, ENC_NA
);
7407 c15ch_tone_timeout_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone
);
7408 proto_tree_add_item(c15ch_tone_timeout_tree
, hf_c15ch_tone_timeout_device_id
,
7409 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7410 proto_tree_add_item(c15ch_tone_timeout_tree
, hf_c15ch_tone_timeout_service_pm
,
7411 tvb
, 1, 1, ENC_BIG_ENDIAN
);
7413 ti
= proto_tree_add_item(c15ch_tone_timeout_tree
, hf_c15ch_tone_timeout_service_ni_tn
,
7414 tvb
, 2, 8, ENC_BIG_ENDIAN
);
7415 ni_tn_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone_sub1
);
7416 proto_tree_add_item(ni_tn_tree
, hf_c15ch_tone_timeout_service_ni
,
7417 tvb
, 2, 4, ENC_BIG_ENDIAN
);
7418 proto_tree_add_item(ni_tn_tree
, hf_c15ch_tone_timeout_service_tn
,
7419 tvb
, 6, 4, ENC_BIG_ENDIAN
);
7421 proto_tree_add_item(c15ch_tone_timeout_tree
, hf_c15ch_tone_timeout_gw_provided
,
7422 tvb
, 10, 1, ENC_BIG_ENDIAN
);
7423 proto_tree_add_item(c15ch_tone_timeout_tree
, hf_c15ch_tone_timeout_gw_service_tone_type_or_from_ni
,
7424 tvb
, 11, 4, ENC_BIG_ENDIAN
);
7427 return tvb_reported_length(tvb
);
7430 static int dissect_c15ch_tone_tone_control(tvbuff_t
*tvb
, packet_info
*pinfo _U_
, proto_tree
*tree
, void *data _U_
)
7432 proto_item
* ti
= NULL
;
7433 proto_tree
* c15ch_tone_tone_control_tree
= NULL
;
7437 ti
= proto_tree_add_item(tree
, hf_c15ch_tone_tone_control
, tvb
, 0, 2, ENC_NA
);
7438 c15ch_tone_tone_control_tree
= proto_item_add_subtree(ti
, ett_c15ch_third_level_tone
);
7439 proto_tree_add_item(c15ch_tone_tone_control_tree
, hf_c15ch_tone_tone_control_device_id
,
7440 tvb
, 0, 1, ENC_BIG_ENDIAN
);
7441 proto_tree_add_item(c15ch_tone_tone_control_tree
, hf_c15ch_tone_tone_control_tone_type
,
7442 tvb
, 1, 1, ENC_BIG_ENDIAN
);
7445 return tvb_reported_length(tvb
);
7448 /* Second level for new Generic Messages */
7449 /* Generic Message 1 is for a 1232 character ASCII string */
7450 static int dissect_c15ch_c15_generic_msg_1(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7452 proto_item
* ti
= NULL
;
7453 proto_tree
* c15ch_c15_generic_msg_1_tree
= NULL
;
7456 length
= tvb_reported_length(tvb
);
7460 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_generic_msg_1
, tvb
, 0, length
, ENC_NA
);
7461 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Length: %d", length
);
7462 c15ch_c15_generic_msg_1_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
7463 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_parm_1
,
7464 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7465 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_parm_2
,
7466 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7467 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_parm_3
,
7468 tvb
, 8, 4, ENC_BIG_ENDIAN
);
7469 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_parm_4
,
7470 tvb
, 12, 4, ENC_BIG_ENDIAN
);
7471 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_parm_5
,
7472 tvb
, 16, 4, ENC_BIG_ENDIAN
);
7473 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_data_len
,
7474 tvb
, 20, 4, ENC_BIG_ENDIAN
);
7475 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_cr_ptr_val
,
7476 tvb
, 24, 4, ENC_BIG_ENDIAN
);
7477 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_dr_ptr_val
,
7478 tvb
, 28, 4, ENC_BIG_ENDIAN
);
7479 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_spr_int_1
,
7480 tvb
, 32, 4, ENC_BIG_ENDIAN
);
7481 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_spr_int_2
,
7482 tvb
, 36, 4, ENC_BIG_ENDIAN
);
7483 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_spr_uptr_1
,
7484 tvb
, 40, 4, ENC_BIG_ENDIAN
);
7485 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_spr_uptr_2
,
7486 tvb
, 44, 4, ENC_BIG_ENDIAN
);
7487 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_spr_pptr_1
,
7488 tvb
, 48, 4, ENC_BIG_ENDIAN
);
7489 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_spr_pptr_2
,
7490 tvb
, 52, 4, ENC_BIG_ENDIAN
);
7491 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_1
,
7492 tvb
, 56, 4, ENC_BIG_ENDIAN
);
7493 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_2
,
7494 tvb
, 60, 4, ENC_BIG_ENDIAN
);
7495 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_3
,
7496 tvb
, 64, 4, ENC_BIG_ENDIAN
);
7497 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_4
,
7498 tvb
, 68, 4, ENC_BIG_ENDIAN
);
7499 proto_tree_add_item(c15ch_c15_generic_msg_1_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_5
,
7500 tvb
, 72, 4, ENC_BIG_ENDIAN
);
7501 add_string_field(c15ch_c15_generic_msg_1_tree
, tvb
, 76, 1232,
7502 hf_c15ch_c15_generic_msg_gen_msg_string
);
7508 /* Generic Message 2 is for a 1232 hex bytes */
7509 static int dissect_c15ch_c15_generic_msg_2(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7511 proto_item
* ti
= NULL
;
7512 proto_tree
* c15ch_c15_generic_msg_2_tree
= NULL
;
7515 length
= tvb_reported_length(tvb
);
7519 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_generic_msg_2
, tvb
, 0, length
, ENC_NA
);
7520 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Length: %d", length
);
7521 c15ch_c15_generic_msg_2_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
7522 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_parm_1
,
7523 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7524 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_parm_2
,
7525 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7526 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_parm_3
,
7527 tvb
, 8, 4, ENC_BIG_ENDIAN
);
7528 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_parm_4
,
7529 tvb
, 12, 4, ENC_BIG_ENDIAN
);
7530 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_parm_5
,
7531 tvb
, 16, 4, ENC_BIG_ENDIAN
);
7532 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_data_len
,
7533 tvb
, 20, 4, ENC_BIG_ENDIAN
);
7534 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_cr_ptr_val
,
7535 tvb
, 24, 4, ENC_BIG_ENDIAN
);
7536 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_dr_ptr_val
,
7537 tvb
, 28, 4, ENC_BIG_ENDIAN
);
7538 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_spr_int_1
,
7539 tvb
, 32, 4, ENC_BIG_ENDIAN
);
7540 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_spr_int_2
,
7541 tvb
, 36, 4, ENC_BIG_ENDIAN
);
7542 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_spr_uptr_1
,
7543 tvb
, 40, 4, ENC_BIG_ENDIAN
);
7544 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_spr_uptr_2
,
7545 tvb
, 44, 4, ENC_BIG_ENDIAN
);
7546 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_spr_pptr_1
,
7547 tvb
, 48, 4, ENC_BIG_ENDIAN
);
7548 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_spr_pptr_2
,
7549 tvb
, 52, 4, ENC_BIG_ENDIAN
);
7550 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_1
,
7551 tvb
, 56, 4, ENC_BIG_ENDIAN
);
7552 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_2
,
7553 tvb
, 60, 4, ENC_BIG_ENDIAN
);
7554 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_3
,
7555 tvb
, 64, 4, ENC_BIG_ENDIAN
);
7556 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_4
,
7557 tvb
, 68, 4, ENC_BIG_ENDIAN
);
7558 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_5
,
7559 tvb
, 72, 4, ENC_BIG_ENDIAN
);
7560 proto_tree_add_item(c15ch_c15_generic_msg_2_tree
, hf_c15ch_c15_generic_msg_gen_data_large
,
7561 tvb
, 76, 1232, ENC_NA
);
7567 /* Generic Message 3 is for a 616 character string - 616 hex bytes */
7568 static int dissect_c15ch_c15_generic_msg_3(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7570 proto_item
* ti
= NULL
;
7571 proto_tree
* c15ch_c15_generic_msg_3_tree
= NULL
;
7574 length
= tvb_reported_length(tvb
);
7578 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_generic_msg_3
, tvb
, 0, length
, ENC_NA
);
7579 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Length: %d", length
);
7580 c15ch_c15_generic_msg_3_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
7581 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_parm_1
,
7582 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7583 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_parm_2
,
7584 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7585 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_parm_3
,
7586 tvb
, 8, 4, ENC_BIG_ENDIAN
);
7587 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_parm_4
,
7588 tvb
, 12, 4, ENC_BIG_ENDIAN
);
7589 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_parm_5
,
7590 tvb
, 16, 4, ENC_BIG_ENDIAN
);
7591 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_data_len
,
7592 tvb
, 20, 4, ENC_BIG_ENDIAN
);
7593 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_cr_ptr_val
,
7594 tvb
, 24, 4, ENC_BIG_ENDIAN
);
7595 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_dr_ptr_val
,
7596 tvb
, 28, 4, ENC_BIG_ENDIAN
);
7597 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_spr_int_1
,
7598 tvb
, 32, 4, ENC_BIG_ENDIAN
);
7599 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_spr_int_2
,
7600 tvb
, 36, 4, ENC_BIG_ENDIAN
);
7601 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_spr_uptr_1
,
7602 tvb
, 40, 4, ENC_BIG_ENDIAN
);
7603 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_spr_uptr_2
,
7604 tvb
, 44, 4, ENC_BIG_ENDIAN
);
7605 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_spr_pptr_1
,
7606 tvb
, 48, 4, ENC_BIG_ENDIAN
);
7607 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_spr_pptr_2
,
7608 tvb
, 52, 4, ENC_BIG_ENDIAN
);
7609 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_1
,
7610 tvb
, 56, 4, ENC_BIG_ENDIAN
);
7611 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_2
,
7612 tvb
, 60, 4, ENC_BIG_ENDIAN
);
7613 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_3
,
7614 tvb
, 64, 4, ENC_BIG_ENDIAN
);
7615 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_4
,
7616 tvb
, 68, 4, ENC_BIG_ENDIAN
);
7617 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_5
,
7618 tvb
, 72, 4, ENC_BIG_ENDIAN
);
7619 add_string_field(c15ch_c15_generic_msg_3_tree
, tvb
, 76, 616,
7620 hf_c15ch_c15_generic_msg_gen_msg_string
);
7621 proto_tree_add_item(c15ch_c15_generic_msg_3_tree
, hf_c15ch_c15_generic_msg_gen_data_large
,
7622 tvb
, 692, 616, ENC_NA
);
7628 /* Generic Message 4 is for a 924 character string - 308 hex bytes */
7629 static int dissect_c15ch_c15_generic_msg_4(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7631 proto_item
* ti
= NULL
;
7632 proto_tree
* c15ch_c15_generic_msg_4_tree
= NULL
;
7635 length
= tvb_reported_length(tvb
);
7639 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_generic_msg_4
, tvb
, 0, length
, ENC_NA
);
7640 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Length: %d", length
);
7641 c15ch_c15_generic_msg_4_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
7642 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_parm_1
,
7643 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7644 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_parm_2
,
7645 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7646 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_parm_3
,
7647 tvb
, 8, 4, ENC_BIG_ENDIAN
);
7648 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_parm_4
,
7649 tvb
, 12, 4, ENC_BIG_ENDIAN
);
7650 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_parm_5
,
7651 tvb
, 16, 4, ENC_BIG_ENDIAN
);
7652 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_data_len
,
7653 tvb
, 20, 4, ENC_BIG_ENDIAN
);
7654 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_cr_ptr_val
,
7655 tvb
, 24, 4, ENC_BIG_ENDIAN
);
7656 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_dr_ptr_val
,
7657 tvb
, 28, 4, ENC_BIG_ENDIAN
);
7658 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_spr_int_1
,
7659 tvb
, 32, 4, ENC_BIG_ENDIAN
);
7660 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_spr_int_2
,
7661 tvb
, 36, 4, ENC_BIG_ENDIAN
);
7662 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_spr_uptr_1
,
7663 tvb
, 40, 4, ENC_BIG_ENDIAN
);
7664 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_spr_uptr_2
,
7665 tvb
, 44, 4, ENC_BIG_ENDIAN
);
7666 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_spr_pptr_1
,
7667 tvb
, 48, 4, ENC_BIG_ENDIAN
);
7668 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_spr_pptr_2
,
7669 tvb
, 52, 4, ENC_BIG_ENDIAN
);
7670 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_1
,
7671 tvb
, 56, 4, ENC_BIG_ENDIAN
);
7672 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_2
,
7673 tvb
, 60, 4, ENC_BIG_ENDIAN
);
7674 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_3
,
7675 tvb
, 64, 4, ENC_BIG_ENDIAN
);
7676 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_4
,
7677 tvb
, 68, 4, ENC_BIG_ENDIAN
);
7678 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_5
,
7679 tvb
, 72, 4, ENC_BIG_ENDIAN
);
7680 add_string_field(c15ch_c15_generic_msg_4_tree
, tvb
, 76, 924,
7681 hf_c15ch_c15_generic_msg_gen_msg_string
);
7682 proto_tree_add_item(c15ch_c15_generic_msg_4_tree
, hf_c15ch_c15_generic_msg_gen_data_large
,
7683 tvb
, 1000, 308, ENC_NA
);
7689 /* Generic Message 5 is for a 308 character string - 924 hex bytes */
7690 static int dissect_c15ch_c15_generic_msg_5(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7692 proto_item
* ti
= NULL
;
7693 proto_tree
* c15ch_c15_generic_msg_5_tree
= NULL
;
7696 length
= tvb_reported_length(tvb
);
7700 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_generic_msg_5
, tvb
, 0, length
, ENC_NA
);
7701 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Length: %d", length
);
7702 c15ch_c15_generic_msg_5_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
7703 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_parm_1
,
7704 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7705 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_parm_2
,
7706 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7707 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_parm_3
,
7708 tvb
, 8, 4, ENC_BIG_ENDIAN
);
7709 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_parm_4
,
7710 tvb
, 12, 4, ENC_BIG_ENDIAN
);
7711 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_parm_5
,
7712 tvb
, 16, 4, ENC_BIG_ENDIAN
);
7713 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_data_len
,
7714 tvb
, 20, 4, ENC_BIG_ENDIAN
);
7715 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_cr_ptr_val
,
7716 tvb
, 24, 4, ENC_BIG_ENDIAN
);
7717 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_dr_ptr_val
,
7718 tvb
, 28, 4, ENC_BIG_ENDIAN
);
7719 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_spr_int_1
,
7720 tvb
, 32, 4, ENC_BIG_ENDIAN
);
7721 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_spr_int_2
,
7722 tvb
, 36, 4, ENC_BIG_ENDIAN
);
7723 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_spr_uptr_1
,
7724 tvb
, 40, 4, ENC_BIG_ENDIAN
);
7725 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_spr_uptr_2
,
7726 tvb
, 44, 4, ENC_BIG_ENDIAN
);
7727 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_spr_pptr_1
,
7728 tvb
, 48, 4, ENC_BIG_ENDIAN
);
7729 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_spr_pptr_2
,
7730 tvb
, 52, 4, ENC_BIG_ENDIAN
);
7731 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_1
,
7732 tvb
, 56, 4, ENC_BIG_ENDIAN
);
7733 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_2
,
7734 tvb
, 60, 4, ENC_BIG_ENDIAN
);
7735 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_3
,
7736 tvb
, 64, 4, ENC_BIG_ENDIAN
);
7737 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_4
,
7738 tvb
, 68, 4, ENC_BIG_ENDIAN
);
7739 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_gen_msg_field_5
,
7740 tvb
, 72, 4, ENC_BIG_ENDIAN
);
7741 add_string_field(c15ch_c15_generic_msg_5_tree
, tvb
, 76, 308,
7742 hf_c15ch_c15_generic_msg_gen_msg_string
);
7743 proto_tree_add_item(c15ch_c15_generic_msg_5_tree
, hf_c15ch_c15_generic_msg_gen_data_large
,
7744 tvb
, 384, 924, ENC_NA
);
7751 static int dissect_c15ch_c15_correlate_msg(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7753 proto_item
* ti
= NULL
;
7754 proto_tree
* c15ch_c15_correlate_msg_tree
= NULL
;
7757 length
= tvb_reported_length(tvb
);
7761 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_correlate_msg
, tvb
, 0, length
, ENC_NA
);
7762 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Length: %d", length
);
7763 c15ch_c15_correlate_msg_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
7764 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_call_ref
,
7765 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7766 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_usage_id
,
7767 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7768 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_opt_parm_2
,
7769 tvb
, 8, 4, ENC_BIG_ENDIAN
);
7770 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_opt_parm_3
,
7771 tvb
, 12, 4, ENC_BIG_ENDIAN
);
7772 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_opt_parm_4
,
7773 tvb
, 16, 4, ENC_BIG_ENDIAN
);
7774 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_opt_parm_5
,
7775 tvb
, 20, 4, ENC_BIG_ENDIAN
);
7776 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_opt_parm_6_ptr
,
7777 tvb
, 24, 4, ENC_BIG_ENDIAN
);
7778 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_opt_parm_7_ptr
,
7779 tvb
, 28, 4, ENC_BIG_ENDIAN
);
7780 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_opt_parm_8_ptr
,
7781 tvb
, 32, 4, ENC_BIG_ENDIAN
);
7782 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_opt_parm_9_ptr
,
7783 tvb
, 36, 4, ENC_BIG_ENDIAN
);
7784 proto_tree_add_item(c15ch_c15_correlate_msg_tree
, hf_c15ch_c15_generic_msg_cr_ptr_val
,
7785 tvb
, 40, 4, ENC_BIG_ENDIAN
);
7786 add_string_field(c15ch_c15_correlate_msg_tree
, tvb
, 44, 129,
7787 hf_c15ch_c15_opt_string_parm_8
);
7788 add_string_field(c15ch_c15_correlate_msg_tree
, tvb
, 173, 129,
7789 hf_c15ch_c15_opt_string_parm_9
);
7795 /* SIP REG SUBS report */
7796 static int dissect_c15ch_c15_sip_reg_subs_report(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7798 proto_item
* ti
= NULL
;
7799 proto_tree
* c15ch_c15_sip_reg_subs_report_tree
= NULL
;
7803 int report_type_str_len
;
7805 length
= tvb_reported_length(tvb
);
7809 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_sip_reg_subs_report
, tvb
, 0, length
, ENC_NA
);
7810 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Length: %d", length
);
7811 c15ch_c15_sip_reg_subs_report_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
7815 report_type
= tvb_get_stringz_enc(pinfo
->pool
, tvb
, str_start
, &report_type_str_len
, ENC_ASCII
);
7817 add_string_field(c15ch_c15_sip_reg_subs_report_tree
, tvb
, 0, 12,
7818 hf_c15ch_c15_sip_report_type
);
7819 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_rate
,
7820 tvb
, 12, 4, ENC_BIG_ENDIAN
);
7821 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_hour
,
7822 tvb
, 16, 4, ENC_BIG_ENDIAN
);
7823 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_peak_min
,
7824 tvb
, 20, 4, ENC_BIG_ENDIAN
);
7825 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_peak_sec
,
7826 tvb
, 24, 4, ENC_BIG_ENDIAN
);
7827 if ( g_strcmp0( "REGISTER", report_type
) == 0 )
7829 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_auth_good
,
7830 tvb
, 28, 4, ENC_BIG_ENDIAN
);
7831 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_auth_fail
,
7832 tvb
, 32, 4, ENC_BIG_ENDIAN
);
7833 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_ovd084
,
7834 tvb
, 36, 4, ENC_BIG_ENDIAN
);
7835 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_ovd086
,
7836 tvb
, 40, 4, ENC_BIG_ENDIAN
);
7837 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_ovd088
,
7838 tvb
, 44, 4, ENC_BIG_ENDIAN
);
7839 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_sip104
,
7840 tvb
, 48, 4, ENC_BIG_ENDIAN
);
7841 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_reg_spare_1
,
7842 tvb
, 52, 4, ENC_BIG_ENDIAN
);
7843 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_reg_spare_2
,
7844 tvb
, 56, 4, ENC_BIG_ENDIAN
);
7845 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_reg_spare_3
,
7846 tvb
, 60, 4, ENC_BIG_ENDIAN
);
7850 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_status_200_cnt
,
7851 tvb
, 28, 4, ENC_BIG_ENDIAN
);
7852 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_status_202_cnt
,
7853 tvb
, 32, 4, ENC_BIG_ENDIAN
);
7854 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_status_405_cnt
,
7855 tvb
, 36, 4, ENC_BIG_ENDIAN
);
7856 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_subs_spare_1
,
7857 tvb
, 40, 4, ENC_BIG_ENDIAN
);
7858 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_subs_spare_2
,
7859 tvb
, 44, 4, ENC_BIG_ENDIAN
);
7860 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_subs_spare_3
,
7861 tvb
, 48, 4, ENC_BIG_ENDIAN
);
7862 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_subs_spare_4
,
7863 tvb
, 52, 4, ENC_BIG_ENDIAN
);
7864 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_subs_spare_5
,
7865 tvb
, 56, 4, ENC_BIG_ENDIAN
);
7866 proto_tree_add_item(c15ch_c15_sip_reg_subs_report_tree
, hf_c15ch_c15_subs_spare_6
,
7867 tvb
, 60, 4, ENC_BIG_ENDIAN
);
7875 static int dissect_c15ch_c15_sys_alarm(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7877 proto_item
* ti
= NULL
;
7878 proto_tree
* c15ch_c15_sys_alarm_tree
= NULL
;
7881 length
= tvb_reported_length(tvb
);
7885 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_sys_alarm
, tvb
, 0, length
, ENC_NA
);
7886 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Length: %d", length
);
7887 c15ch_c15_sys_alarm_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
7888 add_string_field(c15ch_c15_sys_alarm_tree
, tvb
, 0, 7,
7889 hf_c15ch_c15_omm_tag_code
);
7890 add_string_field(c15ch_c15_sys_alarm_tree
, tvb
, 7, 5,
7891 hf_c15ch_c15_alarm_class
);
7892 add_string_field(c15ch_c15_sys_alarm_tree
, tvb
, 12, 4,
7893 hf_c15ch_c15_alarm_status
);
7894 add_string_field(c15ch_c15_sys_alarm_tree
, tvb
, 16, 5,
7895 hf_c15ch_c15_site_name
);
7896 add_string_field(c15ch_c15_sys_alarm_tree
, tvb
, 21, 5,
7897 hf_c15ch_c15_system
);
7904 static int dissect_c15ch_c15_tty_msg(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void *data _U_
)
7906 proto_item
* ti
= NULL
;
7907 proto_tree
* c15ch_c15_tty_msg_tree
= NULL
;
7910 length
= tvb_reported_length(tvb
);
7914 ti
= proto_tree_add_item( tree
, hf_c15ch_c15_tty_msg
, tvb
, 0, length
, ENC_NA
);
7915 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Length: %d", length
);
7916 c15ch_c15_tty_msg_tree
= proto_item_add_subtree( ti
, ett_c15ch_second_level
);
7917 proto_tree_add_item(c15ch_c15_tty_msg_tree
, hf_c15ch_c15_tty_int_parm_1
,
7918 tvb
, 0, 4, ENC_BIG_ENDIAN
);
7919 proto_tree_add_item(c15ch_c15_tty_msg_tree
, hf_c15ch_c15_tty_int_parm_2
,
7920 tvb
, 4, 4, ENC_BIG_ENDIAN
);
7921 proto_tree_add_item(c15ch_c15_tty_msg_tree
, hf_c15ch_c15_tty_int_parm_3
,
7922 tvb
, 8, 4, ENC_BIG_ENDIAN
);
7923 proto_tree_add_item(c15ch_c15_tty_msg_tree
, hf_c15ch_c15_tty_int_parm_4
,
7924 tvb
, 12, 4, ENC_BIG_ENDIAN
);
7925 add_string_field(c15ch_c15_tty_msg_tree
, tvb
, 16, 8,
7926 hf_c15ch_c15_omm_msg_tag
);
7927 add_string_field(c15ch_c15_tty_msg_tree
, tvb
, 24, 40,
7928 hf_c15ch_c15_text_location
);
7929 add_string_field(c15ch_c15_tty_msg_tree
, tvb
, 64, 40,
7930 hf_c15ch_c15_tty_text_parm_1
);
7931 add_string_field(c15ch_c15_tty_msg_tree
, tvb
, 104, 40,
7932 hf_c15ch_c15_tty_text_parm_2
);
7933 add_string_field(c15ch_c15_tty_msg_tree
, tvb
, 144, 40,
7934 hf_c15ch_c15_tty_text_parm_3
);
7940 /* register functions */
7941 /* fields for c15 heartbeat dissector */
7942 void proto_register_c15ch_hbeat(void)
7944 static hf_register_info hf
[] = {
7945 { &hf_c15ch_hbeat_clli
,
7946 {"CLLI", "c15hbeat.clli",
7947 FT_STRINGZ
, BASE_NONE
,
7951 { &hf_c15ch_hbeat_primary
,
7952 {"Primary", "c15hbeat.primary",
7957 { &hf_c15ch_hbeat_secondary
,
7958 {"Secondary", "c15hbeat.secondary",
7963 { &hf_c15ch_hbeat_interface
,
7964 {"Interface", "c15hbeat.interface",
7965 FT_STRINGZ
, BASE_NONE
,
7969 }; /* close hf[] array declaration */
7971 /* Protocol subtree array */
7972 static int *ett
[] = {
7976 proto_c15ch_hbeat
= proto_register_protocol("C15 Call History Heartbeat Protocol", "C15HBEAT", "c15hbeat");
7977 proto_register_field_array(proto_c15ch_hbeat
, hf
, array_length(hf
));
7978 proto_register_subtree_array(ett
, array_length(ett
));
7980 c15ch_hbeat_handle
= register_dissector("c15hbeat", dissect_c15ch_hbeat
, proto_c15ch_hbeat
);
7985 void proto_register_c15ch(void)
7987 /* fields for C15 header : base c15 dissector for non-heartbeat packets */
7988 /* first level of dissection */
7989 static hf_register_info hf
[] = {
7990 { &hf_c15ch_version
,
7991 {"Version", "c15.ch.version",
7992 FT_UINT32
, BASE_DEC
,
7996 { &hf_c15ch_msgtype
,
7997 {"Message Type", "c15.ch.msgtype",
7998 FT_UINT32
, BASE_DEC
|BASE_EXT_STRING
,
8003 { "Size", "c15.ch.size",
8004 FT_UINT32
, BASE_DEC
,
8008 { &hf_c15ch_call_ref
,
8009 {"Call Reference", "c15.ch.callref",
8010 FT_UINT32
, BASE_HEX
,
8014 { &hf_c15ch_srce_ni_tn
,
8015 {"Source NI/TN", "c15.ch.srce_ni_tn",
8016 FT_UINT64
, BASE_HEX
,
8020 { &hf_c15ch_dest_ni_tn
,
8021 {"Destination NI/TN", "c15.ch.dest_ni_tn",
8022 FT_UINT64
, BASE_HEX
,
8026 { &hf_c15ch_srce_ni
,
8027 {"Source NI", "c15.ch.srce_ni",
8028 FT_UINT32
, BASE_HEX
,
8032 { &hf_c15ch_srce_tn
,
8033 {"Source TN", "c15.ch.srce_tn",
8034 FT_UINT32
, BASE_HEX
,
8038 { &hf_c15ch_dest_ni
,
8039 {"Destination NI", "c15.ch.dest_ni",
8040 FT_UINT32
, BASE_HEX
,
8044 { &hf_c15ch_dest_tn
,
8045 {"Destination TN", "c15.ch.dest_tn",
8046 FT_UINT32
, BASE_HEX
,
8050 { &hf_c15ch_realtime
,
8051 {"Real Time", "c15.ch.realtime",
8052 FT_UINT32
, BASE_DEC
,
8059 /* Protocol subtree array */
8060 static int *ett
[] = {
8067 static hf_register_info hf_second_level
[] = {
8068 { &hf_c15ch_ama_call_code
,
8069 { "Call Code", "c15.ama.call_code",
8074 { &hf_c15ch_ama_orig_digits
,
8075 { "Orig Digits", "c15.ama.orig_digits",
8076 FT_STRINGZ
, BASE_NONE
,
8080 { &hf_c15ch_ama_num_dialed_digits
,
8081 { "Number of Dialed Digits", "c15.ama.num_dialed_digits",
8086 { &hf_c15ch_ama_br_prefix
,
8087 { "BR Prefix", "c15.ama.br_prefix",
8089 VALS( ama_br_prefix_types
),
8092 { &hf_c15ch_ama_dialed_digits
,
8093 { "Dialed Digits", "c15.ama.dialed_digits",
8094 FT_STRINGZ
, BASE_NONE
,
8098 { &hf_c15ch_ama_start_hour
,
8099 { "Start Hour", "c15.ama.start_hour",
8104 { &hf_c15ch_ama_start_minute
,
8105 { "Start Minute", "c15.ama.start_minute",
8110 { &hf_c15ch_ama_start_second
,
8111 { "Start Second", "c15.ama.start_second",
8116 { &hf_c15ch_ama_start_tenth_second
,
8117 { "Start Tenth of Second", "c15.ama.start_tenth_second",
8122 { &hf_c15ch_ama_start_day
,
8123 { "Start Day", "c15.ama.start_day",
8128 { &hf_c15ch_ama_start_month
,
8129 { "Start Month", "c15.ama.start_month",
8134 { &hf_c15ch_ama_start_year
,
8135 { "Start Year", "c15.ama.start_year",
8140 { &hf_c15ch_ama_answered
,
8141 { "Answered", "c15.ama.answered",
8142 FT_BOOLEAN
, BASE_NONE
,
8146 { &hf_c15ch_ama_elapsed_time
,
8147 { "Elapsed Time (Millisec)", "c15.ama.elapsed_time",
8148 FT_UINT32
, BASE_DEC
,
8152 { &hf_c15ch_ama_call_type
,
8153 { "Call Type", "c15.ama.call_type",
8154 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
8155 &ama_call_types_ext
,
8158 { &hf_c15ch_c15_info_text
,
8159 {"C15 Info Text", "c15.info.text",
8160 FT_STRINGZ
, BASE_NONE
,
8165 { &hf_c15ch_c15_info_code
,
8166 {"C15 Info Code", "c15.info.code",
8167 FT_STRINGZ
, BASE_NONE
,
8171 { &hf_c15ch_c15_info_level
,
8172 {"C15 Info Level", "c15.info.level",
8174 VALS( c15ch_c15_info_level_types
),
8178 { &hf_c15ch_clli_clli_string
,
8179 {"CLLI", "c15.clli.clli",
8180 FT_STRINGZ
, BASE_NONE
,
8184 { &hf_c15ch_clli_active_core
,
8185 {"Active Core", "c15.clli.active_core",
8190 { &hf_c15ch_clli_inactive_core
,
8191 {"Inactive Core", "c15.clli.inactive_core",
8196 { &hf_c15ch_clli_interface_string
,
8197 {"Interface", "c15.clli.interface",
8198 FT_STRINGZ
, BASE_NONE
,
8202 { &hf_c15ch_clli_seconds
,
8203 {"Seconds", "c15.clli.seconds",
8204 FT_UINT32
, BASE_DEC
,
8208 { &hf_c15ch_clli_microseconds
,
8209 {"Microseconds", "c15.clli.microseconds",
8210 FT_UINT32
, BASE_DEC
,
8215 { &hf_c15ch_conn_connfrom
,
8216 { "Conn From", "c15.conn.connfrom",
8217 FT_UINT32
, BASE_DEC
,
8218 VALS( c15_conn_from_types
),
8221 { &hf_c15ch_conn_conntype
,
8222 { "Conn Type", "c15.conn.conntype",
8223 FT_UINT32
, BASE_DEC
,
8227 { &hf_c15ch_conn_perphtype
,
8228 { "Perph Type", "c15.conn.perphtype",
8229 FT_UINT32
, BASE_DEC
,
8233 { &hf_c15ch_conn_intra
,
8234 { "Intra", "c15.conn.intra",
8239 { &hf_c15ch_conn_srceni
,
8240 { "Source NI", "c15.conn.srceni",
8241 FT_UINT32
, BASE_HEX
,
8245 { &hf_c15ch_conn_srcetn
,
8246 { "Source TN", "c15.conn.srcetn",
8247 FT_UINT32
, BASE_HEX
,
8251 { &hf_c15ch_conn_srcenitn
,
8252 { "Source NI/TN", "c15.conn.srcenitn",
8253 FT_UINT64
, BASE_HEX
,
8257 { &hf_c15ch_conn_destni
,
8258 {"Destination NI", "c15.conn.destni",
8259 FT_UINT32
, BASE_HEX
,
8263 { &hf_c15ch_conn_desttn
,
8264 { "Destination TN", "c15.conn.desttn",
8265 FT_UINT32
, BASE_HEX
,
8269 { &hf_c15ch_conn_destnitn
,
8270 {"Destination NI/TN", "c15.conn.destnitn",
8271 FT_UINT64
, BASE_HEX
,
8275 { &hf_c15ch_conn_interlinknum
,
8276 { "Interlink Number", "c15.conn.interlinknum",
8277 FT_UINT32
, BASE_DEC
,
8281 { &hf_c15ch_conn_fromport
,
8282 { "From Port", "c15.conn.fromport",
8283 FT_UINT32
, BASE_DEC
,
8287 { &hf_c15ch_conn_fromslot
,
8288 { "From Slot", "c15.conn.fromslot",
8289 FT_UINT32
, BASE_DEC
,
8293 { &hf_c15ch_conn_toport
,
8294 { "From Port", "c15.conn.fromport",
8295 FT_UINT32
, BASE_DEC
,
8299 { &hf_c15ch_conn_toslot
,
8300 { "To Slot", "c15.conn.toslot",
8301 FT_UINT32
, BASE_DEC
,
8305 { &hf_c15ch_conn_hubcallid
,
8306 { "Hub Call ID", "c15.conn.hubcallid",
8307 FT_UINT32
, BASE_DEC
,
8312 { &hf_c15ch_cp_state_ch_oldpm
,
8313 {"Old Progress Mark", "c15.cpsc.oldpm",
8314 FT_UINT32
, BASE_DEC
|BASE_EXT_STRING
,
8315 &c15_cp_state_pm_types_ext
,
8318 { &hf_c15ch_cp_state_ch_newpm
,
8319 {"New Progress Mark", "c15.cpsc.newpm",
8320 FT_UINT32
, BASE_DEC
|BASE_EXT_STRING
,
8321 &c15_cp_state_pm_types_ext
,
8324 { &hf_c15ch_cp_state_ch_subpm
,
8325 {"Sub Progress Mark", "c15.cpsc.subpm",
8326 FT_UINT32
, BASE_DEC
,
8330 { &hf_c15ch_cp_state_ch_trkpm
,
8331 {"Trunk Progress Mark", "c15.cpsc.trkpm",
8332 FT_UINT32
, BASE_DEC
,
8336 { &hf_c15ch_cp_state_ch_slepm
,
8337 {"SLE Progress Mark", "c15.cpsc.slepm",
8338 FT_UINT32
, BASE_DEC
,
8342 { &hf_c15ch_cp_state_ch_flags
,
8343 {"Flags", "c15.cpsc.flags",
8344 FT_UINT32
, BASE_HEX
,
8348 { &hf_c15ch_cp_state_ch_oldrtetype
,
8349 {"Old RTE Type", "c15.cpsc.oldrtetype",
8350 FT_UINT32
, BASE_DEC
,
8354 { &hf_c15ch_cp_state_ch_oldrteidx
,
8355 {"Old RTE Index", "c15.cpsc.oldrteidx",
8356 FT_UINT32
, BASE_DEC
,
8360 { &hf_c15ch_cp_state_ch_newrtetype
,
8361 {"New RTE Type", "c15.cpsc.newrtetype",
8362 FT_UINT32
, BASE_DEC
,
8366 { &hf_c15ch_cp_state_ch_newrteidx
,
8367 {"New RTE Index", "c15.cpsc.newrteidx",
8368 FT_UINT32
, BASE_DEC
,
8373 { &hf_c15ch_dest_digits_digits
,
8374 { "Digits", "c15.dest_digits.digits",
8375 FT_STRINGZ
, BASE_NONE
,
8379 { &hf_c15ch_echo_cancel_ni
,
8380 {"NI", "c15.echo_cancel.ni",
8381 FT_UINT32
, BASE_HEX
,
8386 { &hf_c15ch_echo_cancel_tn
,
8387 {"TN", "c15.echo_cancel.tn",
8388 FT_UINT32
, BASE_HEX
,
8392 { &hf_c15ch_echo_cancel_ni_tn
,
8393 {"NI/TN", "c15.echo_cancel.ni_tn",
8394 FT_UINT64
, BASE_HEX
,
8398 { &hf_c15ch_echo_cancel_old_l2_mode
,
8399 {"Old L2 Mode", "c15.echo_cancel.old_l2_mode",
8401 VALS( c15_echo_cancel_l2_mode_types
),
8404 { &hf_c15ch_echo_cancel_old_channel_mode
,
8405 {"Old Channel Mode", "c15.echo_cancel.old_channel_mode",
8406 FT_UINT32
, BASE_DEC
,
8407 VALS( c15_echo_cancel_channel_mode_types
),
8410 { &hf_c15ch_echo_cancel_old_ecan_mode
,
8411 {"Old Ecan Mode", "c15.echo_cancel.old_ecan_mode",
8412 FT_UINT32
, BASE_DEC
,
8413 VALS( c15_echo_cancel_ecan_mode_types
),
8416 { &hf_c15ch_echo_cancel_new_l2_mode
,
8417 {"New L2 Mode", "c15.echo_cancel.new_l2_mode",
8419 VALS( c15_echo_cancel_l2_mode_types
),
8422 { &hf_c15ch_echo_cancel_new_channel_mode
,
8423 {"New Channel Mode", "c15.echo_cancel.new_channel_mode",
8424 FT_UINT32
, BASE_DEC
,
8425 VALS( c15_echo_cancel_channel_mode_types
),
8428 { &hf_c15ch_echo_cancel_new_ecan_mode
,
8429 {"New Ecan Mode", "c15.echo_cancel.new_ecan_mode",
8430 FT_UINT32
, BASE_DEC
,
8431 VALS( c15_echo_cancel_ecan_mode_types
),
8434 { &hf_c15ch_echo_cancel_tone_id
,
8435 {"Tone ID", "c15.echo_cancel.tone_id",
8436 FT_UINT32
, BASE_DEC
,
8440 { &hf_c15ch_echo_cancel_pm
,
8441 {"PM", "c15.echo_cancel.pm",
8442 FT_UINT32
, BASE_DEC
,
8446 { &hf_c15ch_echo_cancel_pc
,
8447 {"PC", "c15.echo_cancel.pc",
8448 FT_UINT32
, BASE_DEC
,
8452 { &hf_c15ch_echo_cancel_loop
,
8453 {"Loop", "c15.echo_cancel.loop",
8454 FT_UINT32
, BASE_DEC
,
8458 { &hf_c15ch_echo_cancel_slot
,
8459 {"Slot", "c15.echo_cancel.slot",
8460 FT_UINT32
, BASE_DEC
,
8464 { &hf_c15ch_echo_cancel_location
,
8465 {"Location", "c15.echo_cancel.location",
8466 FT_STRINGZ
, BASE_NONE
,
8471 { &hf_c15ch_encap_isup_direction
,
8472 {"Direction", "c15.encap_isup.direction",
8477 { &hf_c15ch_encap_isup_isup_msg_length
,
8478 {"Message Type", "c15.encap_isup.isup_msg_length",
8479 FT_UINT32
, BASE_DEC
,
8484 { &hf_c15ch_isup_direction
,
8485 {"Direction", "c15.isup.direction",
8487 VALS( c15_isup_direction_types
),
8490 { &hf_c15ch_isup_msgtype
,
8491 {"Message Type", "c15.isup.msgtype",
8492 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
8493 &c15_isup_types_ext
,
8496 { &hf_c15ch_isup_cic
,
8497 { "CIC", "c15.isup.cic",
8498 FT_UINT32
, BASE_DEC
,
8502 { &hf_c15ch_isup_opcmember
,
8503 { "OPC Member", "c15.isup.opcmember",
8508 { &hf_c15ch_isup_opccluster
,
8509 { "OPC Cluster", "c15.isup.opccluster",
8514 { &hf_c15ch_isup_opcnetwork
,
8515 { "OPC Network", "c15.isup.opcnetwork",
8520 { &hf_c15ch_isup_dpcmember
,
8521 {"DPC Member", "c15.isup.dpcmember",
8526 { &hf_c15ch_isup_dpccluster
,
8527 { "DPC Cluster", "c15.isup.dpccluster",
8532 { &hf_c15ch_isup_dpcnetwork
,
8533 { "DPC Network", "c15.isup.dpcnetwork",
8538 { &hf_c15ch_isup_level3index
,
8539 { "Level 3 Index", "c15.isup.level3index",
8544 { &hf_c15ch_isup_ni
,
8545 { "NI", "c15.isup.ni",
8546 FT_UINT32
, BASE_HEX
,
8550 { &hf_c15ch_isup_tn
,
8551 { "TN", "c15.isup.tn",
8552 FT_UINT32
, BASE_HEX
,
8556 { &hf_c15ch_isup_ni_tn
,
8557 {"NI/TN", "c15.isup.ni_tn",
8558 FT_UINT64
, BASE_HEX
,
8562 { &hf_c15ch_isup_c15hdr
,
8563 { "C15 Header", "c15.isup.c15hdr",
8564 FT_BYTES
, BASE_NONE
,
8568 { &hf_c15ch_isup_layer2hdr
,
8569 { "Layer 2 Header", "c15.isup.layer2hdr",
8570 FT_BYTES
, BASE_NONE
,
8574 { &hf_c15ch_isup_layer3hdr
,
8575 { "Layer 3 Header", "c15.isup.layer3hdr",
8576 FT_BYTES
, BASE_NONE
,
8580 { &hf_c15ch_isup_iptime
,
8581 {"IP Time", "c15.isup.iptime",
8582 FT_UINT32
, BASE_HEX
,
8587 { &hf_c15ch_mkbrk_makebreak
,
8588 { "Make Break", "c15.mkbrk.makebreak",
8593 { &hf_c15ch_mkbrk_nshlf
,
8594 { "Nshlf", "c15.mkbrk.nshlf",
8599 { &hf_c15ch_mkbrk_stm
,
8600 { "Stm", "c15.mkbrk.stm",
8605 { &hf_c15ch_mkbrk_caddr
,
8606 { "C Address", "c15.mkbrk.caddr",
8607 FT_UINT32
, BASE_DEC
,
8611 { &hf_c15ch_mkbrk_cdata
,
8612 { "C Data", "c15.mkbrk.cdata",
8613 FT_UINT32
, BASE_DEC
,
8618 { &hf_c15ch_nitnxlate_ni
,
8619 {"NI", "c15.nitnxlate.ni",
8620 FT_UINT32
, BASE_HEX
,
8624 { &hf_c15ch_nitnxlate_tn
,
8625 { "TN", "c15.nitnxlate.tn",
8626 FT_UINT32
, BASE_HEX
,
8630 { &hf_c15ch_nitnxlate_ni_tn
,
8631 {"NI/TN", "c15.nitnxlate.ni_tn",
8632 FT_UINT64
, BASE_HEX
,
8636 { &hf_c15ch_nitnxlate_equiptype
,
8637 { "Equipment Type", "c15.nitnxlate.equiptype",
8638 FT_UINT32
, BASE_DEC
|BASE_EXT_STRING
,
8639 &ett_c15ch_nitnxlate_equip_types_ext
,
8642 { &hf_c15ch_nitnxlate_sitestring
,
8643 { "Site String", "c15.nitnxlate.sitestring",
8644 FT_STRINGZ
, BASE_NONE
,
8648 { &hf_c15ch_nitnxlate_concat_string
,
8649 { "ID String", "c15.nitnxlate.id_string",
8650 FT_STRINGZ
, BASE_NONE
,
8654 { &hf_c15ch_nitnxlate_subsitestring
,
8655 { "Subsite String", "c15.nitnxlate.subsitestring",
8656 FT_STRINGZ
, BASE_NONE
,
8660 { &hf_c15ch_nitnxlate_equipname
,
8661 { "Equipment Name", "c15.nitnxlate.equipname",
8662 FT_STRINGZ
, BASE_NONE
,
8666 { &hf_c15ch_nitnxlate_gw_type
,
8667 { "GW Type", "c15.nitnxlate.gw_type",
8668 FT_UINT32
, BASE_DEC
,
8669 VALS( ett_c15ch_nitnxlate_gwe_types
),
8672 { &hf_c15ch_nitnxlate_parm_1
,
8673 { "Parm 1", "c15.nitnxlate.parm_1",
8674 FT_UINT32
, BASE_DEC
,
8678 { &hf_c15ch_nitnxlate_parm_2
,
8679 { "Parm 2", "c15.nitnxlate.parm_2",
8680 FT_UINT32
, BASE_DEC
,
8684 { &hf_c15ch_nitnxlate_parm_3
,
8685 { "Parm 3", "c15.nitnxlate.parm_3",
8686 FT_UINT32
, BASE_DEC
,
8690 { &hf_c15ch_nitnxlate_parm_4
,
8691 { "Parm 4", "c15.nitnxlate.parm_4",
8692 FT_UINT32
, BASE_DEC
,
8696 { &hf_c15ch_nitnxlate_key
,
8697 { "Key", "c15.nitnxlate.key",
8698 FT_UINT32
, BASE_DEC
,
8702 { &hf_c15ch_nitnxlate_gateway
,
8703 { "Gateway", "c15.nitnxlate.gateway",
8704 FT_UINT32
, BASE_DEC
,
8708 { &hf_c15ch_nitnxlate_line
,
8709 { "Line", "c15.nitnxlate.line",
8710 FT_UINT32
, BASE_DEC
,
8714 { &hf_c15ch_nitnxlate_bay
,
8715 { "Bay", "c15.nitnxlate.bay",
8716 FT_UINT32
, BASE_DEC
,
8720 { &hf_c15ch_nitnxlate_shelf
,
8721 { "Shelf", "c15.nitnxlate.shelf",
8722 FT_UINT32
, BASE_DEC
,
8726 { &hf_c15ch_nitnxlate_lsg
,
8727 { "LSG", "c15.nitnxlate.lsg",
8728 FT_UINT32
, BASE_DEC
,
8732 { &hf_c15ch_nitnxlate_idt_rdt
,
8733 { "IDT/RDT", "c15.nitnxlate.idt_rdt",
8734 FT_UINT32
, BASE_DEC
,
8738 { &hf_c15ch_nitnxlate_pm
,
8739 { "PM", "c15.nitnxlate.pm",
8740 FT_UINT32
, BASE_DEC
,
8744 { &hf_c15ch_nitnxlate_ptrk
,
8745 { "Ptrk", "c15.nitnxlate.ptrk",
8746 FT_UINT32
, BASE_DEC
,
8750 { &hf_c15ch_nitnxlate_channel
,
8751 { "Channel", "c15.nitnxlate.channel",
8752 FT_UINT32
, BASE_DEC
,
8756 { &hf_c15ch_nitnxlate_pc_sts1
,
8757 { "PC or STS1", "c15.nitnxlate.pc_sts1",
8758 FT_UINT32
, BASE_DEC
,
8762 { &hf_c15ch_nitnxlate_port_vt15
,
8763 { "Port or VT15", "c15.nitnxlate.port_vt15",
8764 FT_UINT32
, BASE_DEC
,
8768 { &hf_c15ch_nitnxlate_user_tid
,
8769 { "User TID", "c15.nitnxlate.user_tid",
8770 FT_STRINGZ
, BASE_NONE
,
8774 { &hf_c15ch_nitnxlate_host
,
8775 { "Host", "c15.nitnxlate.host",
8776 FT_STRINGZ
, BASE_NONE
,
8780 { &hf_c15ch_nitnxlate_sip_call_id_64
,
8781 { "SIP Call-ID-64", "c15.nitnxlate.sip_call_id-64", /* Output for SIP Call-ID */
8782 FT_STRINGZ
, BASE_NONE
,
8786 { &hf_c15ch_nitnxlate_tg_num
,
8787 { "Target Group Num", "c15.nitnxlate.tg_num",
8788 FT_UINT32
, BASE_DEC
,
8792 { &hf_c15ch_nitnxlate_mgcp_line_id
,
8793 { "MGCP Line ID", "c15.nitnxlate.mgcp_line_id",
8794 FT_STRINGZ
, BASE_NONE
,
8799 { &hf_c15ch_ntwk_conn_pathtype
,
8800 { "Path Type", "c15.ntwkconn.pathtype",
8802 VALS( ett_c15ch_ntwk_conn_path_types
),
8805 { &hf_c15ch_ntwk_conn_conntype
,
8806 { "Conn Type", "c15.ntwkconn.conntype",
8808 VALS( ett_c15ch_ntwk_conn_conn_types
),
8811 { &hf_c15ch_ntwk_conn_fromoptimized
,
8812 { "From Optimized", "c15.ntwkconn.fromoptimized",
8813 FT_BOOLEAN
, BASE_NONE
,
8817 { &hf_c15ch_ntwk_conn_fromsite
,
8818 { "From Site", "c15.ntwkconn.fromsite",
8819 FT_STRINGZ
, BASE_NONE
,
8823 { &hf_c15ch_ntwk_conn_frompm
,
8824 { "From PM", "c15.ntwkconn.frompm",
8829 { &hf_c15ch_ntwk_conn_frompc
,
8830 { "From PC", "c15.ntwkconn.frompc",
8835 { &hf_c15ch_ntwk_conn_fromloop
,
8836 { "From Loop", "c15.ntwkconn.fromloop",
8841 { &hf_c15ch_ntwk_conn_fromslot
,
8842 { "From Slot", "c15.ntwkconn.fromslot",
8847 { &hf_c15ch_ntwk_conn_fromlocation
,
8848 { "From Location", "c15.ntwkconn.fromlocation",
8849 FT_STRINGZ
, BASE_NONE
,
8853 { &hf_c15ch_ntwk_conn_fromcnx
,
8854 { "From CNX", "c15.ntwkconn.fromcnx",
8855 FT_UINT32
, BASE_DEC
,
8859 { &hf_c15ch_ntwk_conn_fromntwkni
,
8860 { "From Ntwk NI", "c15.ntwkconn.fromntwkni",
8861 FT_UINT32
, BASE_HEX
,
8865 { &hf_c15ch_ntwk_conn_fromntwktn
,
8866 { "From Ntwk TN", "c15.ntwkconn.fromntwktn",
8867 FT_UINT32
, BASE_HEX
,
8871 { &hf_c15ch_ntwk_conn_fromntwknitn
,
8872 { "From Ntwk NI/TN", "c15.ntwkconn.fromntwknitn",
8873 FT_UINT64
, BASE_HEX
,
8877 { &hf_c15ch_ntwk_conn_mbshold
,
8878 { "MBS Hold", "c15.ntwkconn.mbshold",
8883 { &hf_c15ch_ntwk_conn_tooptimized
,
8884 { "To Optimized", "c15.ntwkconn.tooptimized",
8885 FT_BOOLEAN
, BASE_NONE
,
8889 { &hf_c15ch_ntwk_conn_tosite
,
8890 { "To Site", "c15.ntwkconn.tosite",
8891 FT_STRINGZ
, BASE_NONE
,
8895 { &hf_c15ch_ntwk_conn_topm
,
8896 { "To PM", "c15.ntwkconn.topm",
8901 { &hf_c15ch_ntwk_conn_topc
,
8902 { "To PC", "c15.ntwkconn.topc",
8907 { &hf_c15ch_ntwk_conn_toloop
,
8908 { "To Loop", "c15.ntwkconn.toloop",
8913 { &hf_c15ch_ntwk_conn_tolocation
,
8914 { "To Location", "c15.ntwkconn.tolocation",
8915 FT_STRINGZ
, BASE_NONE
,
8919 { &hf_c15ch_ntwk_conn_toslot
,
8920 { "To Slot", "c15.ntwkconn.toslot",
8925 { &hf_c15ch_ntwk_conn_tocnx
,
8926 { "To CNX", "c15.ntwkconn.tocnx",
8927 FT_UINT32
, BASE_DEC
,
8932 { &hf_c15ch_orig_tnblocktype
,
8933 { "TN Block Type", "c15.orig.tnblocktype",
8934 FT_UINT32
, BASE_DEC
|BASE_EXT_STRING
,
8935 &c15ch_orig_block_types_ext
,
8938 { &hf_c15ch_orig_ni
,
8939 { "NI", "c15.orig.ni",
8940 FT_UINT32
, BASE_HEX
,
8944 { &hf_c15ch_orig_tn
,
8945 { "TN", "c15.orig.tn",
8946 FT_UINT32
, BASE_HEX
,
8950 { &hf_c15ch_orig_ni_tn
,
8951 {"NI/TN", "c15.orig.ni_tn",
8952 FT_UINT64
, BASE_HEX
,
8956 { &hf_c15ch_orig_dndigits
,
8957 { "DN Digits", "c15.orig.dndigits",
8958 FT_STRINGZ
, BASE_NONE
,
8962 { &hf_c15ch_orig_nidscrn
,
8963 { "Nid Scrn", "c15.orig.nidscrn",
8968 { &hf_c15ch_orig_nidaddrtype
,
8969 { "Nid Address Type", "c15.orig.nidaddrtype",
8974 { &hf_c15ch_orig_nidnmbrplan
,
8975 { "Nid Number Plan", "c15.orig.nidnmbrplan",
8980 { &hf_c15ch_orig_nidprivind
,
8981 { "Nid Priv Ind", "c15.orig.nidprivind",
8986 { &hf_c15ch_orig_upnsaved
,
8987 { "UPN Saved", "c15.orig.upnsaved",
8992 { &hf_c15ch_orig_upndigits
,
8993 { "UPN Digits", "c15.orig.upndigits",
8994 FT_STRINGZ
, BASE_NONE
,
8998 { &hf_c15ch_orig_upnscrn
,
8999 { "UPN Scrn", "c15.orig.upnscrn",
9004 { &hf_c15ch_orig_upnaddrtype
,
9005 { "UPN Address Type", "c15.orig.upnaddrtype",
9010 { &hf_c15ch_orig_upnnmbrplan
,
9011 { "UPN Nmbr Plan", "c15.orig.upnnmbrplan",
9016 { &hf_c15ch_orig_upnprivind
,
9017 { "UPN Priv Ind", "c15.orig.upnprivind",
9022 { &hf_c15ch_orig_rnpsaved
,
9023 { "RNP Saved", "c15.orig.rnpsaved",
9028 { &hf_c15ch_orig_rnpdigits
,
9029 { "RNP Digits", "c15.orig.rnpdigits",
9030 FT_STRINGZ
, BASE_NONE
,
9034 { &hf_c15ch_orig_rnpscrn
,
9035 { "RNP Scrn", "c15.orig.rnpscrn",
9040 { &hf_c15ch_orig_rnpaddrtype
,
9041 { "RNP Address Type", "c15.orig.rnpaddrtype",
9046 { &hf_c15ch_orig_rnpnmbrplan
,
9047 { "RNP Number Plan", "c15.orig.rnpnmbrplan",
9052 { &hf_c15ch_orig_rnpprivind
,
9053 { "RNP Priv Ind", "c15.orig.rnpprivind",
9058 { &hf_c15ch_orig_iptime
,
9059 { "IP Time", "c15.orig.iptime",
9060 FT_UINT32
, BASE_HEX
,
9065 { &hf_c15ch_outgwebc_pbc_conn_ni
,
9066 { "PBC Conn NI", "c15.out_gwe_bc.pbc.conn.ni",
9067 FT_UINT32
, BASE_HEX
,
9071 { &hf_c15ch_outgwebc_pbc_conn_tn
,
9072 { "PBC Conn TN", "c15.out_gwe_bc.pbc_conn.tn",
9073 FT_UINT32
, BASE_HEX
,
9077 { &hf_c15ch_outgwebc_pbc_conn_ni_tn
,
9078 {"PBC Conn NI/TN", "c15.out_gwe_bc.pbc_conn.ni_tn",
9079 FT_UINT64
, BASE_HEX
,
9083 { &hf_c15ch_outgwebc_pbc_conn_num
,
9084 { "PBC Conn Num", "c15.out_gwe_bc.pbc_conn.num",
9085 FT_UINT32
, BASE_DEC
,
9089 { &hf_c15ch_outgwebc_pbc_conn_type
,
9090 { "PBC Conn Type", "c15.out_gwe_bc.pbc_conn.type",
9095 { &hf_c15ch_outgwebc_bc_msg_type
,
9096 { "BC Msg Type", "c15.out_gwe_bc.bc_msg_type",
9101 { &hf_c15ch_outgwebc_op_bc_sdp_ip
,
9102 { "OP BC SDP IP", "c15.out_gwe_bc.op_bc_sdp.ip",
9107 { &hf_c15ch_outgwebc_op_bc_sdp_port
,
9108 { "OP BC SDP Port", "c15.out_gwe_bc.op_bc_sdp.port",
9109 FT_UINT32
, BASE_DEC
,
9113 { &hf_c15ch_outgwebc_pbc_mdrp_mode
,
9114 { "PBC MDRP Mode", "c15.out_gwe_bc.pbc.mdrp_mode",
9119 { &hf_c15ch_outgwebc_pbc_tst_flags
,
9120 { "PBC TST Flags", "c15.out_gwe_bc.pbc.tst_flags",
9121 FT_UINT32
, BASE_HEX
,
9126 { &hf_c15ch_pathfind_vds30
,
9127 {"VDS30", "c15.pathfind.vds30",
9129 VALS( c15ch_pathfind_vds30_types
),
9132 { &hf_c15ch_pathfind_fromgweni
,
9133 { "From GWE NI", "c15.pathfind.fromgweni",
9134 FT_UINT32
, BASE_HEX
,
9138 { &hf_c15ch_pathfind_fromgwetn
,
9139 { "From GWE TN", "c15.pathfind.fromgwetn",
9140 FT_UINT32
, BASE_HEX
,
9144 { &hf_c15ch_pathfind_fromgwenitn
,
9145 { "From GWE NI/TN", "c15.pathfind.fromgwenitn",
9146 FT_UINT64
, BASE_HEX
,
9150 { &hf_c15ch_pathfind_fromoptimized
,
9151 { "From Optimized", "c15.pathfind.fromoptimized",
9156 { &hf_c15ch_pathfind_fromsite
,
9157 { "From Site", "c15.pathfind.fromsite",
9158 FT_STRINGZ
, BASE_NONE
,
9162 { &hf_c15ch_pathfind_frompm
,
9163 { "From Port Module", "c15.pathfind.frompm",
9168 { &hf_c15ch_pathfind_frompc
,
9169 { "From Port Controller", "c15.pathfind.frompc",
9174 { &hf_c15ch_pathfind_fromloop
,
9175 { "From Loop", "c15.pathfind.fromloop",
9176 FT_UINT32
, BASE_DEC
,
9180 { &hf_c15ch_pathfind_fromslot
,
9181 { "From Slot", "c15.pathfind.fromslot",
9182 FT_UINT32
, BASE_DEC
,
9186 { &hf_c15ch_pathfind_fromcnx
,
9187 { "From CNX", "c15.pathfind.fromcnx",
9188 FT_UINT32
, BASE_DEC
,
9192 { &hf_c15ch_pathfind_fromni
,
9193 { "From NI", "c15.pathfind.fromni",
9194 FT_UINT32
, BASE_HEX
,
9198 { &hf_c15ch_pathfind_fromtn
,
9199 { "From TN", "c15.pathfind.fromtn",
9200 FT_UINT32
, BASE_HEX
,
9204 { &hf_c15ch_pathfind_fromnitn
,
9205 { "From NI/TN", "c15.pathfind.fromnitn",
9206 FT_UINT64
, BASE_HEX
,
9210 { &hf_c15ch_pathfind_togweni
,
9211 { "To GWE NI", "c15.pathfind.togweni",
9212 FT_UINT32
, BASE_HEX
,
9216 { &hf_c15ch_pathfind_togwetn
,
9217 { "To GWE TN", "c15.pathfind.togwetn",
9218 FT_UINT32
, BASE_HEX
,
9222 { &hf_c15ch_pathfind_togwenitn
,
9223 { "To GWE TN", "c15.pathfind.togwenitn",
9224 FT_UINT64
, BASE_HEX
,
9228 { &hf_c15ch_pathfind_tooptimized
,
9229 { "To Optimized", "c15.pathfind.tooptimized",
9234 { &hf_c15ch_pathfind_tosite
,
9235 { "To Site", "c15.pathfind.tosite",
9236 FT_STRINGZ
, BASE_NONE
,
9240 { &hf_c15ch_pathfind_topm
,
9241 { "To Port Module", "c15.pathfind.topm",
9246 { &hf_c15ch_pathfind_topc
,
9247 { "To Port Controller", "c15.pathfind.topc",
9252 { &hf_c15ch_pathfind_toloop
,
9253 { "To Loop", "c15.pathfind.toloop",
9254 FT_UINT32
, BASE_DEC
,
9258 { &hf_c15ch_pathfind_toslot
,
9259 { "To Slot", "c15.pathfind.toslot",
9260 FT_UINT32
, BASE_DEC
,
9264 { &hf_c15ch_pathfind_tocnx
,
9265 { "To CNX", "c15.pathfind.tocnx",
9266 FT_UINT32
, BASE_DEC
,
9270 { &hf_c15ch_pathfind_toni
,
9271 { "To NI", "c15.pathfind.toni",
9272 FT_UINT32
, BASE_HEX
,
9276 { &hf_c15ch_pathfind_totn
,
9277 { "To TN", "c15.pathfind.totn",
9278 FT_UINT32
, BASE_HEX
,
9282 { &hf_c15ch_pathfind_tonitn
,
9283 { "To NI/TN", "c15.pathfind.tonitn",
9284 FT_UINT64
, BASE_HEX
,
9289 { &hf_c15ch_pathidle_vds30
,
9290 {"VDS30", "c15.pathidle.vds30",
9292 VALS( c15ch_pathidle_vds30_types
),
9295 { &hf_c15ch_pathidle_idlecode
,
9296 {"Idle Code", "c15.pathidle.idlecode",
9298 VALS( c15ch_pathidle_idle_types
),
9301 { &hf_c15ch_pathidle_pathtype
,
9302 { "Path Type", "c15.pathidle.pathtype",
9304 VALS( c15ch_pathidle_path_types
),
9307 { &hf_c15ch_pathidle_fromgweni
,
9308 { "From GWE NI", "c15.pathidle.fromgweni",
9309 FT_UINT32
, BASE_HEX
,
9313 { &hf_c15ch_pathidle_fromgwetn
,
9314 { "From GWE TN", "c15.pathidle.fromgwetn",
9315 FT_UINT32
, BASE_HEX
,
9319 { &hf_c15ch_pathidle_fromgwenitn
,
9320 { "From GWE NI/TN", "c15.pathidle.fromgwenitn",
9321 FT_UINT64
, BASE_HEX
,
9325 { &hf_c15ch_pathidle_fromsite
,
9326 { "From Site", "c15.pathidle.fromsite",
9327 FT_STRINGZ
, BASE_NONE
,
9331 { &hf_c15ch_pathidle_frompm
,
9332 { "From Port Module", "c15.pathidle.frompm",
9337 { &hf_c15ch_pathidle_frompc
,
9338 { "From Port Controller", "c15.pathidle.frompc",
9343 { &hf_c15ch_pathidle_fromloop
,
9344 { "From Loop", "c15.pathidle.fromloop",
9345 FT_UINT32
, BASE_DEC
,
9349 { &hf_c15ch_pathidle_fromslot
,
9350 { "From Slot", "c15.pathidle.fromslot",
9351 FT_UINT32
, BASE_DEC
,
9355 { &hf_c15ch_pathidle_fromcnx
,
9356 { "From CNX", "c15.pathidle.fromcnx",
9357 FT_UINT32
, BASE_DEC
,
9361 { &hf_c15ch_pathidle_fromni
,
9362 { "From NI", "c15.pathidle.fromni",
9363 FT_UINT32
, BASE_HEX
,
9367 { &hf_c15ch_pathidle_fromtn
,
9368 { "From TN", "c15.pathidle.fromtn",
9369 FT_UINT32
, BASE_HEX
,
9373 { &hf_c15ch_pathidle_fromnitn
,
9374 { "From NI/TN", "c15.pathidle.fromnitn",
9375 FT_UINT64
, BASE_HEX
,
9379 { &hf_c15ch_pathidle_togweni
,
9380 { "To GWE NI", "c15.pathidle.togweni",
9381 FT_UINT32
, BASE_HEX
,
9385 { &hf_c15ch_pathidle_togwenitn
,
9386 { "To GWE NI/TN", "c15.pathidle.togwenitn",
9387 FT_UINT64
, BASE_HEX
,
9391 { &hf_c15ch_pathidle_togwetn
,
9392 { "To GWE TN", "c15.pathidle.togwetn",
9393 FT_UINT32
, BASE_HEX
,
9397 { &hf_c15ch_pathidle_tosite
,
9398 { "To Site", "c15.pathidle.tosite",
9399 FT_STRINGZ
, BASE_NONE
,
9403 { &hf_c15ch_pathidle_topm
,
9404 { "To Port Module", "c15.pathidle.topm",
9409 { &hf_c15ch_pathidle_topc
,
9410 { "To Port Controller", "c15.pathidle.topc",
9415 { &hf_c15ch_pathidle_toloop
,
9416 { "To Loop", "c15.pathidle.toloop",
9417 FT_UINT32
, BASE_DEC
,
9421 { &hf_c15ch_pathidle_toslot
,
9422 { "To Slot", "c15.pathidle.toslot",
9423 FT_UINT32
, BASE_DEC
,
9427 { &hf_c15ch_pathidle_tocnx
,
9428 {"To CNX", "c15.pathidle.tocnx",
9429 FT_UINT32
, BASE_DEC
,
9433 { &hf_c15ch_pathidle_toni
,
9434 { "To NI", "c15.pathidle.toni",
9435 FT_UINT32
, BASE_HEX
,
9439 { &hf_c15ch_pathidle_totn
,
9440 { "From TN", "c15.pathidle.totn",
9441 FT_UINT32
, BASE_HEX
,
9445 { &hf_c15ch_pathidle_tonitn
,
9446 { "To NI/TN", "c15.pathidle.tonitn",
9447 FT_UINT64
, BASE_HEX
,
9452 { &hf_c15ch_q931_direction
,
9453 { "Direction", "c15.q931.direction",
9455 VALS( c15ch_q931_direction_types
),
9458 { &hf_c15ch_q931_ni
,
9459 { "NI", "c15.q931.ni",
9460 FT_UINT32
, BASE_HEX
,
9464 { &hf_c15ch_q931_tn
,
9465 { "TN", "c15.q931.tn",
9466 FT_UINT32
, BASE_HEX
,
9470 { &hf_c15ch_q931_ni_tn
,
9471 { "NI/TN", "c15.q931.ni_tn",
9472 FT_UINT64
, BASE_HEX
,
9476 { &hf_c15ch_q931_msglength
,
9477 { "Message Length", "c15.q931.msglength",
9478 FT_UINT32
, BASE_DEC
,
9483 { "C15 Q931", "c15.q931",
9484 FT_PROTOCOL
, BASE_NONE
,
9489 { "NI", "c15.qos.ni",
9490 FT_UINT32
, BASE_HEX
,
9495 { "TN", "c15.qos.tn",
9496 FT_UINT32
, BASE_HEX
,
9500 { &hf_c15ch_qos_ni_tn
,
9501 { "NI/TN", "c15.qos.ni_tn",
9502 FT_UINT64
, BASE_HEX
,
9506 { &hf_c15ch_qos_rtcp_call_id
,
9507 { "RTCP Call ID", "c15.qos.rtcp_call_id",
9508 FT_UINT32
, BASE_DEC
,
9512 { &hf_c15ch_qos_register_type
,
9513 { "Register Type", "c15.qos.register_type",
9514 FT_UINT32
, BASE_DEC
,
9518 { &hf_c15ch_qos_tg_num
,
9519 { "TG Num", "c15.qos.tg_num",
9520 FT_UINT32
, BASE_DEC
,
9524 { &hf_c15ch_qos_trk_type
,
9525 { "Trunk Type", "c15.qos.trk_type",
9526 FT_UINT32
, BASE_DEC
,
9530 { &hf_c15ch_qos_status
,
9531 { "Status", "c15.qos.status",
9532 FT_UINT32
, BASE_DEC
,
9533 VALS( ett_c15ch_qos_status_types
),
9536 { &hf_c15ch_qos_codec
,
9537 { "Codec", "c15.qos.codec",
9538 FT_UINT32
, BASE_DEC
,
9542 { &hf_c15ch_qos_given_ip
,
9543 { "Given IP", "c15.qos.given_ip",
9548 { &hf_c15ch_qos_real_ip
,
9549 { "Real IP", "c15.qos.real_ip",
9554 { &hf_c15ch_qos_local_ip
,
9555 { "Local IP", "c15.qos.local_ip",
9560 { &hf_c15ch_qos_tx_pkts
,
9561 { "Tx Packets", "c15.qos.tx_pkts",
9562 FT_UINT32
, BASE_DEC
,
9566 { &hf_c15ch_qos_lost_pkts
,
9567 { "Lost Packets", "c15.qos.lost_pkts",
9568 FT_UINT32
, BASE_DEC
,
9572 { &hf_c15ch_qos_lost_pct
,
9573 { "Lost Percent", "c15.qos.lost_pct",
9574 FT_UINT32
, BASE_DEC
,
9578 { &hf_c15ch_qos_jitter
,
9579 { "Jitter", "c15.qos.jitter",
9580 FT_UINT32
, BASE_DEC
,
9584 { &hf_c15ch_qos_rtt
,
9585 { "Round Trip Time", "c15.qos.rtt",
9586 FT_UINT32
, BASE_DEC
,
9590 { &hf_c15ch_qos_avg_rtt
,
9591 { "Average Round Trip Time", "c15.qos.avg_rtt",
9592 FT_UINT32
, BASE_DEC
,
9596 { &hf_c15ch_qos_duration
,
9597 { "Duration", "c15.qos.duration",
9598 FT_UINT32
, BASE_DEC
,
9602 { &hf_c15ch_qos_mos
,
9603 { "MOS", "c15.qos.mos",
9604 FT_FLOAT
, BASE_NONE
,
9608 { &hf_c15ch_qos_ep_type
,
9609 { "EP Type", "c15.qos.ep_type",
9610 FT_UINT32
, BASE_DEC
,
9614 { &hf_c15ch_qos_dn_or_tg
,
9615 { "DN or TG", "c15.qos.dn_or_tg",
9616 FT_STRINGZ
, BASE_NONE
,
9621 { "Port Module", "c15.qos.pm",
9627 { "Port Controller", "c15.qos.pc",
9632 { &hf_c15ch_qos_hour
,
9633 { "Hour", "c15.qos.hour",
9638 { &hf_c15ch_qos_min
,
9639 { "Minutes", "c15.qos.min",
9644 { &hf_c15ch_qos_sec
,
9645 { "Seconds", "c15.qos.sec",
9650 { &hf_c15ch_qos_tenth_sec
,
9651 { "Tenths of Seconds", "c15.qos.tenth_sec",
9656 { &hf_c15ch_qos_year
,
9657 { "Year", "c15.qos.year",
9658 FT_UINT32
, BASE_DEC
,
9662 { &hf_c15ch_qos_month
,
9663 { "Month", "c15.qos.month",
9668 { &hf_c15ch_qos_day
,
9669 { "Day", "c15.qos.day",
9674 { &hf_c15ch_qos_day_of_week
,
9675 { "Day of Week", "c15.qos.day_of_week",
9681 { &hf_c15ch_route_number
,
9682 { "Number", "c15.route.number",
9683 FT_UINT32
, BASE_DEC
,
9687 { &hf_c15ch_route_type
,
9688 { "Type", "c15.route.type",
9689 FT_UINT32
, BASE_DEC
|BASE_EXT_STRING
,
9690 &c15_route_types_ext
,
9693 { &hf_c15ch_route_subpm
,
9694 { "Sub Progress Mark", "c15.route.subpm",
9695 FT_UINT32
, BASE_DEC
,
9699 { &hf_c15ch_route_trkpm
,
9700 { "Trk Progress Mark", "c15.route.trkpm",
9701 FT_UINT32
, BASE_DEC
,
9705 { &hf_c15ch_route_strtaindo
,
9706 { "START AIN DO", "c15.route.strtaindo",
9708 VALS( c15_route_strt_ain_do_types
),
9711 { &hf_c15ch_route_cr_rte_adv
,
9712 { "CR RTE Adv", "c15.route.cr_rte_adv",
9713 FT_UINT32
, BASE_DEC
,
9717 { &hf_c15ch_route_cause
,
9718 { "Cause", "c15.route.cause",
9719 FT_UINT32
, BASE_DEC
,
9724 { &hf_c15ch_sccp_direction
,
9725 { "Direction", "c15.sccp.direction",
9727 VALS( c15ch_sccp_direction_types
),
9730 { &hf_c15ch_sccp_msgtype
,
9731 { "Message Type", "c15.sccp.msgtype",
9733 VALS( c15ch_sccp_msg_types
),
9736 { &hf_c15ch_sccp_hopcount
,
9737 { "Hop Count", "c15.sccp.hopcount",
9742 { &hf_c15ch_sccp_transactionnum
,
9743 { "Transaction Number", "c15.sccp.transactionnum",
9744 FT_UINT32
, BASE_DEC
,
9748 { &hf_c15ch_sccp_opcmember
,
9749 { "OPC Member", "c15.sccp.opcmember",
9754 { &hf_c15ch_sccp_opccluster
,
9755 { "OPC Cluster", "c15.sccp.opccluster",
9760 { &hf_c15ch_sccp_opcnetwork
,
9761 { "OPC Network", "c15.sccp.opcnetwork",
9766 { &hf_c15ch_sccp_dpcmember
,
9767 { "DPC Member", "c15.sccp.dpcmember",
9772 { &hf_c15ch_sccp_dpccluster
,
9773 { "DPC Cluster", "c15.sccp.dpccluster",
9778 { &hf_c15ch_sccp_dpcnetwork
,
9779 { "DPC Network", "c15.sccp.dpcnetwork",
9784 { &hf_c15ch_sccp_level3index
,
9785 { "Level 3 Index", "c15.sccp.level3index",
9790 { &hf_c15ch_sccp_ni
,
9791 { "NI", "c15.sccp.ni",
9792 FT_UINT32
, BASE_HEX
,
9796 { &hf_c15ch_sccp_tn
,
9797 { "TN", "c15.sccp.tn",
9798 FT_UINT32
, BASE_HEX
,
9802 { &hf_c15ch_sccp_ni_tn
,
9803 { "NI/TN", "c15.sccp.ni_tn",
9804 FT_UINT64
, BASE_HEX
,
9808 { &hf_c15ch_sccp_sls
,
9809 { "SLS", "c15.sccp.sls",
9814 { &hf_c15ch_sccp_iptime
,
9815 { "IP Time", "c15.sccp.iptime",
9816 FT_UINT32
, BASE_HEX
,
9821 { &hf_c15ch_srcedest_conntype
,
9822 { "Connection Type", "c15.srcedest.conntype",
9824 VALS( c15_srcedest_conn_types
),
9827 { &hf_c15ch_srcedest_pathtype
,
9828 { "Path Type", "c15.srcedest.pathtype",
9830 VALS( c15_srcedest_path_types
),
9833 { &hf_c15ch_srcedest_pathdirect
,
9834 { "Path Direction", "c15.srcedest.pathdirect",
9840 { &hf_c15ch_tcap_direction
,
9841 { "Direction", "c15.tcap.direction",
9843 VALS( c15ch_tcap_direction_types
),
9846 { &hf_c15ch_tcap_action
,
9847 { "Action", "c15.tcap.action",
9849 VALS( c15ch_tcap_action_types
),
9852 { &hf_c15ch_tcap_package_type
,
9853 { "Package Type", "c15.tcap.package_type",
9855 VALS( c15ch_tcap_package_types
),
9858 { &hf_c15ch_tcap_ssn
,
9859 { "SSN", "c15.tcap.ssn",
9864 { &hf_c15ch_tcap_local_ssn
,
9865 { "Local SSN", "c15.tcap.local_ssn",
9867 VALS( c15ch_tcap_local_ssn_types
),
9870 { &hf_c15ch_tcap_result_err_code
,
9871 { "Result Error Code", "c15.tcap.result_err_code",
9873 VALS( c15ch_tcap_err_code_types
),
9876 { &hf_c15ch_tcap_return_reason
,
9877 { "Return Reason", "c15.tcap.return_reason",
9879 VALS( c15ch_tcap_ret_reason_types
),
9882 { &hf_c15ch_tcap_feat_id
,
9883 { "Feat ID", "c15.tcap.feat_id",
9885 VALS( c15ch_tcap_feat_id_types
),
9888 { &hf_c15ch_tcap_feat_req
,
9889 { "Feat Req", "c15.tcap.feat_req",
9891 VALS( c15ch_tcap_feat_req_types
),
9894 { &hf_c15ch_tcap_cl_comp_result
,
9895 { "CL Comp Result", "c15.tcap.cl_comp_result",
9900 { &hf_c15ch_tcap_release_bit
,
9901 { "Release Bit", "c15.tcap.release_bit",
9903 VALS( c15ch_tcap_rel_bit_types
),
9906 { &hf_c15ch_tcap_term_cl_request
,
9907 { "Term CL Request", "c15.tcap.term_cl_request",
9912 { &hf_c15ch_tcap_opc_index
,
9913 { "OPC Index", "c15.tcap.opc_index",
9918 { &hf_c15ch_tcap_dpc_mem
,
9919 { "DPC Mem", "c15.tcap.dpc_mem",
9924 { &hf_c15ch_tcap_dpc_clus
,
9925 { "DPC Clus", "c15.tcap.dpc_clus",
9930 { &hf_c15ch_tcap_dpc_net
,
9931 { "DPC Net", "c15.tcap.dpc_net",
9936 { &hf_c15ch_tcap_cp_id
,
9937 { "CP ID", "c15.tcap.cp_id",
9938 FT_UINT32
, BASE_HEX
,
9943 { &hf_c15ch_twc_rswch_pm
,
9944 { "Progress Mark", "c15.twc_rswch.pm",
9945 FT_UINT32
, BASE_DEC
,
9949 { &hf_c15ch_twc_rswch_subpm
,
9950 { "Sub Progress Mark", "c15.twc_rswch.subpm",
9951 FT_UINT32
, BASE_DEC
,
9955 { &hf_c15ch_twc_rswch_trkpm
,
9956 { "Trunk Progress Mark", "c15.twc_rswch.trkpm",
9957 FT_UINT32
, BASE_DEC
,
9961 { &hf_c15ch_twc_rswch_devid
,
9962 { "Device ID", "c15.twc_rswch.devid",
9963 FT_UINT32
, BASE_DEC
,
9967 { &hf_c15ch_twc_rswch_event
,
9968 { "Event", "c15.twc_rswch.event",
9969 FT_UINT32
, BASE_DEC
,
9973 { &hf_c15ch_twc_rswch_parm
,
9974 { "Parameter", "c15.twc_rswch.parm",
9975 FT_UINT32
, BASE_DEC
,
9979 { &hf_c15ch_twc_rswch_iptime
,
9980 { "IP Time", "c15.twc_rswch.iptime",
9981 FT_UINT32
, BASE_DEC
,
9986 { &hf_c15ch_cp_event_pm
,
9987 { "Progress Mark", "c15.cpe.pm",
9988 FT_UINT32
, BASE_DEC
|BASE_EXT_STRING
,
9992 { &hf_c15ch_cp_event_subpm
,
9993 { "Sub Progress Mark", "c15.cpe.subpm",
9994 FT_UINT32
, BASE_DEC
,
9998 { &hf_c15ch_cp_event_subpm_orig
,
9999 { "Sub Progress Mark (Orig)", "c15.cpe.subpm_orig",
10000 FT_UINT32
, BASE_DEC
,
10001 VALS( subpm_orig_types
),
10004 { &hf_c15ch_cp_event_subpm_disc_time
,
10005 { "Sub Progress Mark (Disc Time)", "c15.cpe.subpm_disc_time",
10006 FT_UINT32
, BASE_DEC
,
10007 VALS( subpm_disc_time_types
),
10010 { &hf_c15ch_cp_event_subpm_revert
,
10011 { "Sub Progress Mark (Revertive)", "c15.cpe.subpm_revert",
10012 FT_UINT32
, BASE_DEC
,
10013 VALS( subpm_revert_types
),
10016 { &hf_c15ch_cp_event_subpm_orig_dt
,
10017 { "Sub Progress Mark (Orig DT)", "c15.cpe.subpm_orig_dt",
10018 FT_UINT32
, BASE_DEC
,
10019 VALS( subpm_orig_dt_types
),
10022 { &hf_c15ch_cp_event_subpm_orig_ws
,
10023 { "Sub Progress Mark (Orig WS)", "c15.cpe.subpm_orig_ws",
10024 FT_UINT32
, BASE_DEC
,
10025 VALS( subpm_orig_ws_types
),
10028 { &hf_c15ch_cp_event_subpm_orig_dd
,
10029 { "Sub Progress Mark (Orig DD)", "c15.cpe.subpm_orig_dd",
10030 FT_UINT32
, BASE_DEC
,
10031 VALS( subpm_orig_dd_types
),
10034 { &hf_c15ch_cp_event_subpm_orig_id
,
10035 { "Sub Progress Mark (Orig ID)", "c15.cpe.subpm_orig_id",
10036 FT_UINT32
, BASE_DEC
,
10037 VALS( subpm_orig_id_types
),
10040 { &hf_c15ch_cp_event_subpm_no_test
,
10041 { "Sub Progress Mark (No Test)", "c15.cpe.subpm_no_test",
10042 FT_UINT32
, BASE_DEC
,
10043 VALS( subpm_no_test_types
),
10046 { &hf_c15ch_cp_event_subpm_dialing
,
10047 { "Sub Progress Mark (Dialing)", "c15.cpe.subpm_dialing",
10048 FT_UINT32
, BASE_DEC
,
10049 VALS( subpm_dialing_types
),
10052 { &hf_c15ch_cp_event_subpm_rebuilt
,
10053 { "Sub Progress Mark (Rebuilt)", "c15.cpe.subpm_rebuilt",
10054 FT_UINT32
, BASE_DEC
,
10055 VALS( subpm_rebuilt_types
),
10058 { &hf_c15ch_cp_event_subpm_acfw_reac
,
10059 { "Sub Progress Mark (ACFW Reac)", "c15.cpe.subpm_acfw_reac",
10060 FT_UINT32
, BASE_DEC
,
10061 VALS( subpm_acfw_reac_types
),
10064 { &hf_c15ch_cp_event_subpm_process_route
,
10065 { "Sub Progress Mark (Process Route)", "c15.cpe.subpm_process_route",
10066 FT_UINT32
, BASE_DEC
,
10067 VALS( subpm_process_route_types
),
10070 { &hf_c15ch_cp_event_subpm_rte_line
,
10071 { "Sub Progress Mark (Rte Line)", "c15.cpe.subpm_rte_line",
10072 FT_UINT32
, BASE_DEC
,
10073 VALS( subpm_rte_line_types
),
10076 { &hf_c15ch_cp_event_subpm_mtce
,
10077 { "Sub Progress Mark (MTCE)", "c15.cpe.subpm_mtce",
10078 FT_UINT32
, BASE_DEC
,
10079 VALS( subpm_mtce_types
),
10082 { &hf_c15ch_cp_event_subpm_aux_tone
,
10083 { "Sub Progress Mark (AUXT)", "c15.cpe.subpm_aux_tone",
10084 FT_UINT32
, BASE_DEC
,
10085 VALS( subpm_aux_tone_types
),
10088 { &hf_c15ch_cp_event_subpm_noller
,
10089 { "Sub Progress Mark (NOLLER)", "c15.cpe.subpm_noller",
10090 FT_UINT32
, BASE_DEC
,
10091 VALS( subpm_noller_types
),
10094 { &hf_c15ch_cp_event_subpm_ittk
,
10095 { "Sub Progress Mark (ITTK)", "c15.cpe.subpm_ittk",
10096 FT_UINT32
, BASE_DEC
,
10097 VALS( subpm_ittk_types
),
10100 { &hf_c15ch_cp_event_subpm_alm_send
,
10101 { "Sub Progress Mark (Alarm Send)", "c15.cpe.subpm_alm_send",
10102 FT_UINT32
, BASE_DEC
,
10103 VALS( subpm_alm_send_types
),
10106 { &hf_c15ch_cp_event_subpm_ani_spill
,
10107 { "Sub Progress Mark (ANI Spill)", "c15.cpe.subpm_ani_spill",
10108 FT_UINT32
, BASE_DEC
,
10109 VALS( subpm_ani_spill_types
),
10112 { &hf_c15ch_cp_event_subpm_trunk_term
,
10113 { "Sub Progress Mark (Trunk Term)", "c15.cpe.subpm_trunk_term",
10114 FT_UINT32
, BASE_DEC
,
10115 VALS( subpm_trunk_term_types
),
10118 { &hf_c15ch_cp_event_subpm_line_term
,
10119 { "Sub Progress Mark (Line Term)", "c15.cpe.subpm_line_term",
10120 FT_UINT32
, BASE_DEC
,
10121 VALS( subpm_line_term_types
),
10124 { &hf_c15ch_cp_event_subpm_non_cp
,
10125 { "Sub Progress Mark (Non CP)", "c15.cpe.subpm_non_cp",
10126 FT_UINT32
, BASE_DEC
,
10127 VALS( subpm_non_cp_types
),
10130 { &hf_c15ch_cp_event_subpm_3wc
,
10131 { "Sub Progress Mark (3wc)", "c15.cpe.subpm_3wc",
10132 FT_UINT32
, BASE_DEC
,
10133 VALS( subpm_twc_types
),
10136 { &hf_c15ch_cp_event_subpm_held_3wc
,
10137 { "Sub Progress Mark (Held 3WC)", "c15.cpe.subpm_held_3wc",
10138 FT_UINT32
, BASE_DEC
,
10139 VALS( subpm_held_3wc_types
),
10142 { &hf_c15ch_cp_event_subpm_cwt
,
10143 { "Sub Progress Mark (CWT)", "c15.cpe.subpm_cwt",
10144 FT_UINT32
, BASE_DEC
,
10145 VALS( subpm_cwt_types
),
10148 { &hf_c15ch_cp_event_subpm_held_cwt
,
10149 { "Sub Progress Mark (Held CWT)", "c15.cpe.subpm_held_cwt",
10150 FT_UINT32
, BASE_DEC
,
10151 VALS( subpm_held_cwt_types
),
10154 { &hf_c15ch_cp_event_subpm_update_sc
,
10155 { "Sub Progress Mark (Update SC)", "c15.cpe.subpm_update_sc",
10156 FT_UINT32
, BASE_DEC
,
10157 VALS( subpm_update_sc_types
),
10160 { &hf_c15ch_cp_event_subpm_orig_spdt
,
10161 { "Sub Progress Mark (Orig SPDT)", "c15.cpe.subpm_orig_spdt",
10162 FT_UINT32
, BASE_DEC
,
10163 VALS( subpm_orig_dt_types
),
10166 { &hf_c15ch_cp_event_subpm_acfw_retm
,
10167 { "Sub Progress Mark (ACFW RETM)", "c15.cpe.subpm_acfw_retm",
10168 FT_UINT32
, BASE_DEC
,
10169 VALS( subpm_acfw_retm_types
),
10172 { &hf_c15ch_cp_event_subpm_cfw_busy
,
10173 { "Sub Progress Mark (CFW Busy)", "c15.cpe.subpm_cfw_busy",
10174 FT_UINT32
, BASE_DEC
,
10175 VALS( subpm_cfw_busy_types
),
10178 { &hf_c15ch_cp_event_subpm_cfw
,
10179 { "Sub Progress Mark (CFW)", "c15.cpe.subpm_cfw",
10180 FT_UINT32
, BASE_DEC
,
10181 VALS( subpm_cfw_types
),
10184 { &hf_c15ch_cp_event_subpm_cfw_deact
,
10185 { "Sub Progress Mark (CFW Deact)", "c15.cpe.subpm_cfw_deact",
10186 FT_UINT32
, BASE_DEC
,
10187 VALS( subpm_cfw_deact_types
),
10190 { &hf_c15ch_cp_event_subpm_rcfw
,
10191 { "Sub Progress Mark (RCFW)", "c15.cpe.subpm_rcfw",
10192 FT_UINT32
, BASE_DEC
,
10193 VALS( subpm_rcfw_types
),
10196 { &hf_c15ch_cp_event_subpm_rotl_tp
,
10197 { "Sub Progress Mark (ROTL TP)", "c15.cpe.subpm_rotl_tp",
10198 FT_UINT32
, BASE_DEC
,
10199 VALS( subpm_rotl_tp_types
),
10202 { &hf_c15ch_cp_event_subpm_chdt
,
10203 { "Sub Progress Mark (CHD DT)", "c15.cpe.subpm_chdt",
10204 FT_UINT32
, BASE_DEC
,
10205 VALS( subpm_chdt_types
),
10208 { &hf_c15ch_cp_event_subpm_chd
,
10209 { "Sub Progress Mark (Call Hold)", "c15.cpe.subpm_chd",
10210 FT_UINT32
, BASE_DEC
,
10211 VALS( subpm_chd_types
),
10214 { &hf_c15ch_cp_event_subpm_cheld
,
10215 { "Sub Progress Mark (Call Held)", "c15.cpe.subpm_cheld",
10216 FT_UINT32
, BASE_DEC
,
10217 VALS( subpm_cheld_types
),
10220 { &hf_c15ch_cp_event_subpm_3wch
,
10221 { "Sub Progress Mark (3WCH)", "c15.cpe.subpm_3wch",
10222 FT_UINT32
, BASE_DEC
,
10223 VALS( subpm_twc_types
),
10226 { &hf_c15ch_cp_event_subpm_3wcw
,
10227 { "Sub Progress Mark (3WCW)", "c15.cpe.subpm_3wcw",
10228 FT_UINT32
, BASE_DEC
,
10229 VALS( subpm_twc_types
),
10232 { &hf_c15ch_cp_event_subpm_cslt
,
10233 { "Sub Progress Mark (CSLT)", "c15.cpe.subpm_cslt",
10234 FT_UINT32
, BASE_DEC
,
10235 VALS( subpm_held_3wc_types
),
10238 { &hf_c15ch_cp_event_subpm_dig_ckt_test
,
10239 { "Sub Progress Mark (Dig CKT Test)", "c15.cpe.subpm_dig_ckt",
10240 FT_UINT32
, BASE_DEC
,
10241 VALS( subpm_dig_ckt_test_types
),
10244 { &hf_c15ch_cp_event_dig_ckt_test_subpm_sp
,
10245 { "Sub Progress Mark (Dig CKT Test, Single Party)", "c15.cpe.dig_ckt_test_subpm_sp",
10246 FT_UINT32
, BASE_DEC
,
10247 VALS( dig_ckt_test_subpm_sp_types
),
10250 { &hf_c15ch_cp_event_dig_ckt_test_subpm_mp
,
10251 { "Sub Progress Mark (Dig CKT Test, Multi Party)", "c15.cpe.dig_ckt_test_subpm_mp",
10252 FT_UINT32
, BASE_DEC
,
10253 VALS( dig_ckt_test_subpm_mp_types
),
10256 { &hf_c15ch_cp_event_dig_ckt_test_subpm_coin
,
10257 { "Sub Progress Mark (Dig CKT Test, Coin)", "c15.cpe.dig_ckt_test_subpm_coin",
10258 FT_UINT32
, BASE_DEC
,
10259 VALS( dig_ckt_test_subpm_coin_types
),
10262 { &hf_c15ch_cp_event_dig_ckt_test_subpm_isdn
,
10263 { "Sub Progress Mark (Dig CKT Test, ISDN)", "c15.cpe.dig_ckt_test_subpm_isdn",
10264 FT_UINT32
, BASE_DEC
,
10265 VALS( dig_ckt_test_subpm_isdn_types
),
10268 { &hf_c15ch_cp_event_dig_ckt_test_subpm_trc
,
10269 { "Sub Progress Mark (Dig CKT Test, TRC)", "c15.cpe.dig_ckt_test_subpm_trc",
10270 FT_UINT32
, BASE_DEC
,
10271 VALS( dig_ckt_test_subpm_trc_types
),
10274 { &hf_c15ch_cp_event_dig_ckt_test_subpm_disc
,
10275 { "Sub Progress Mark (Dig CKT Test, Disc)", "c15.cpe.dig_ckt_test_subpm_disc",
10276 FT_UINT32
, BASE_DEC
,
10277 VALS( dig_ckt_test_subpm_disc_types
),
10280 { &hf_c15ch_cp_event_subpm_nail
,
10281 { "Sub Progress Mark (NAIL)", "c15.cpe.subpm_nail",
10282 FT_UINT32
, BASE_DEC
,
10283 VALS( subpm_nail_types
),
10286 { &hf_c15ch_cp_event_subpm_dcbi
,
10287 { "Sub Progress Mark (DCBI)", "c15.cpe.subpm_dcbi",
10288 FT_UINT32
, BASE_DEC
,
10289 VALS( subpm_dcbi_types
),
10292 { &hf_c15ch_cp_event_subpm_rag_confirm
,
10293 { "Sub Progress Mark (RAG Confirm)", "c15.cpe.subpm_rag_confirm",
10294 FT_UINT32
, BASE_DEC
,
10295 VALS( subpm_rag_confirm_types
),
10298 { &hf_c15ch_cp_event_subpm_rag_process
,
10299 { "Sub Progress Mark (RAG Process)", "c15.cpe.subpm_rag_process",
10300 FT_UINT32
, BASE_DEC
,
10301 VALS( subpm_rag_process_types
),
10304 { &hf_c15ch_cp_event_subpm_e800
,
10305 { "Sub Progress Mark (E800 Db)", "c15.cpe.subpm_e800",
10306 FT_UINT32
, BASE_DEC
,
10307 VALS( subpm_e800_types
),
10310 { &hf_c15ch_cp_event_subpm_cfra
,
10311 { "Sub Progress Mark (CFRA)", "c15.cpe.subpm_cfra",
10312 FT_UINT32
, BASE_DEC
,
10313 VALS( subpm_cfra_types
),
10316 { &hf_c15ch_cp_event_subpm_mwi_deac
,
10317 { "Sub Progress Mark (MWI Deac)", "c15.cpe.subpm_mwi_deac",
10318 FT_UINT32
, BASE_DEC
,
10319 VALS( subpm_mwi_deac_types
),
10322 { &hf_c15ch_cp_event_subpm_acar_cp
,
10323 { "Sub Progress Mark (ACAR CP)", "c15.cpe.subpm_acar_cp",
10324 FT_UINT32
, BASE_DEC
,
10325 VALS( subpm_acar_cp_types
),
10328 { &hf_c15ch_cp_event_subpm_acar_rering
,
10329 { "Sub Progress Mark (ACAR Rering)", "c15.cpe.subpm_acar_rering",
10330 FT_UINT32
, BASE_DEC
,
10331 VALS( subpm_acar_rering_types
),
10334 { &hf_c15ch_cp_event_subpm_acar_ann
,
10335 { "Sub Progress Mark (ACAR Ann)", "c15.cpe.subpm_acar_ann",
10336 FT_UINT32
, BASE_DEC
,
10337 VALS( subpm_acar_ann_types
),
10340 { &hf_c15ch_cp_event_subpm_sle
,
10341 { "Sub Progress Mark (CP SLE)", "c15.cpe.subpm_sle",
10342 FT_UINT32
, BASE_DEC
,
10343 VALS( subpm_sle_types
),
10346 { &hf_c15ch_cp_event_subpm_perform_cot
,
10347 { "Sub Progress Mark (Perform COT)", "c15.cpe.subpm_perform_cot",
10348 FT_UINT32
, BASE_DEC
,
10349 VALS( subpm_perform_cot_types
),
10352 { &hf_c15ch_cp_event_subpm_clid
,
10353 { "Sub Progress Mark (CLID)", "c15.cpe.subpm_clid",
10354 FT_UINT32
, BASE_DEC
,
10355 VALS( subpm_clid_types
),
10358 { &hf_c15ch_cp_event_subpm_xpm
,
10359 { "Sub Progress Mark (XPM)", "c15.cpe.subpm_xpm",
10360 FT_UINT32
, BASE_DEC
,
10361 VALS( subpm_xpm_types
),
10364 { &hf_c15ch_cp_event_subpm_mwil
,
10365 { "Sub Progress Mark (MWIL)", "c15.cpe.subpm_mwil",
10366 FT_UINT32
, BASE_DEC
,
10367 VALS( subpm_mwil_types
),
10370 { &hf_c15ch_cp_event_subpm_ldbs
,
10371 { "Sub Progress Mark (LDBS)", "c15.cpe.subpm_ldbs",
10372 FT_UINT32
, BASE_DEC
,
10373 VALS( subpm_ldbs_types
),
10376 { &hf_c15ch_cp_event_subpm_acr
,
10377 { "Sub Progress Mark (ACR)", "c15.cpe.subpm_acr",
10378 FT_UINT32
, BASE_DEC
,
10379 VALS( subpm_acr_types
),
10382 { &hf_c15ch_cp_event_subpm_call_park
,
10383 { "Sub Progress Mark (Call Park)", "c15.cpe.subpm_call_park",
10384 FT_UINT32
, BASE_DEC
,
10385 VALS( subpm_call_park_types
),
10388 { &hf_c15ch_cp_event_subpm_camp_on_recall
,
10389 { "Sub Progress Mark (Camp On Recall)", "c15.cpe.subpm_camp_on_recall",
10390 FT_UINT32
, BASE_DEC
,
10391 VALS( subpm_camp_on_recall_types
),
10394 { &hf_c15ch_cp_event_subpm_cff
,
10395 { "Sub Progress Mark (Call Fwrd Fixed Dest)", "c15.cpe.subpm_cff",
10396 FT_UINT32
, BASE_DEC
,
10397 VALS( subpm_cff_types
),
10400 { &hf_c15ch_cp_event_subpm_ibert
,
10401 { "Sub Progress Mark (IBERT)", "c15.cpe.subpm_ibert",
10402 FT_UINT32
, BASE_DEC
,
10403 VALS( subpm_ibert_types
),
10406 { &hf_c15ch_cp_event_subpm_ain
,
10407 { "Sub Progress Mark (AIN)", "c15.cpe.subpm_ain",
10408 FT_UINT32
, BASE_DEC
,
10409 VALS( subpm_ain_types
),
10412 { &hf_c15ch_cp_event_subpm_ain_sit
,
10413 { "Sub Progress Mark (AIN SIT)", "c15.cpe.subpm_ain_sit",
10414 FT_UINT32
, BASE_DEC
,
10415 VALS( subpm_ain_sit_types
),
10418 { &hf_c15ch_cp_event_subpm_ain_rtg
,
10419 { "Sub Progress Mark (AIN RTG)", "c15.cpe.subpm_ain_rtg",
10420 FT_UINT32
, BASE_DEC
,
10421 VALS( subpm_ain_rtg_types
),
10424 { &hf_c15ch_cp_event_subpm_nail_bcon
,
10425 { "Sub Progress Mark (NAIL BCON)", "c15.cpe.subpm_nail_bcon",
10426 FT_UINT32
, BASE_DEC
,
10427 VALS( subpm_nail_bcon_types
),
10430 { &hf_c15ch_cp_event_subpm_nail_dcon
,
10431 { "Sub Progress Mark (NAIL DCON)", "c15.cpe.subpm_nail_dcon",
10432 FT_UINT32
, BASE_DEC
,
10433 VALS( subpm_nail_dcon_types
),
10436 { &hf_c15ch_cp_event_subpm_qtrn_trvr
,
10437 { "Sub Progress Mark (QTRN TRVR)", "c15.cpe.subpm_qtrn_trvr",
10438 FT_UINT32
, BASE_DEC
,
10439 VALS( subpm_qtrn_trvr_types
),
10442 { &hf_c15ch_cp_event_subpm_ekts
,
10443 { "Sub Progress Mark (EKTS)", "c15.cpe.subpm_ekts",
10444 FT_UINT32
, BASE_DEC
,
10445 VALS( subpm_ekts_types
),
10448 { &hf_c15ch_cp_event_subpm_alt
,
10449 { "Sub Progress Mark (ALT)", "c15.cpe.subpm_alt",
10450 FT_UINT32
, BASE_DEC
,
10451 VALS( subpm_alt_types
),
10454 { &hf_c15ch_cp_event_subpm_calea
,
10455 { "Sub Progress Mark (CALEA)", "c15.cpe.subpm_calea",
10456 FT_UINT32
, BASE_DEC
,
10457 VALS( subpm_calea_types
),
10460 { &hf_c15ch_cp_event_subpm_sim_ring
,
10461 { "Sub Progress Mark (Sim Ring)", "c15.cpe.subpm_sim_ring",
10462 FT_UINT32
, BASE_DEC
,
10463 VALS( subpm_sim_ring_types
),
10466 { &hf_c15ch_cp_event_subpm_lta
,
10467 { "Sub Progress Mark (LTA)", "c15.cpe.subpm_lta",
10468 FT_UINT32
, BASE_DEC
,
10469 VALS( subpm_lta_types
),
10472 { &hf_c15ch_cp_event_subpm_hgq
,
10473 { "Sub Progress Mark (HGQ)", "c15.cpe.subpm_hgq",
10474 FT_UINT32
, BASE_DEC
,
10475 VALS( subpm_hgq_types
),
10478 { &hf_c15ch_cp_event_subpm_idle
,
10479 { "Sub Progress Mark (Idle)", "c15.cpe.subpm_idle",
10480 FT_UINT32
, BASE_DEC
,
10481 VALS( subpm_idle_types
),
10484 { &hf_c15ch_cp_event_subpm_sig
,
10485 { "Sub Progress Mark (Sig)", "c15.cpe.subpm_sig",
10486 FT_UINT32
, BASE_DEC
,
10487 VALS( subpm_sig_types
),
10490 { &hf_c15ch_cp_event_subpm_sig_dest
,
10491 { "Sub Progress Mark (Sig Dest)", "c15.cpe.subpm_sig_dest",
10492 FT_UINT32
, BASE_DEC
,
10493 VALS( subpm_sig_dest_types
),
10496 { &hf_c15ch_cp_event_subpm_agl_splrg
,
10497 { "Sub Progress Mark (AGL Splash Ring)", "c15.cpe.subpm_agl_splrg",
10498 FT_UINT32
, BASE_DEC
,
10499 VALS( subpm_agl_splrg_types
),
10502 { &hf_c15ch_cp_event_trkpm
,
10503 { "Trunk Progress Mark", "c15.cpe.trkpm",
10504 FT_UINT32
, BASE_DEC
,
10508 { &hf_c15ch_cp_event_dig_ckt_test_trkpm
,
10509 { "Trunk Progress Mark (Dig CKT Test)", "c15.cpe.dig_ckt_test_trkpm",
10510 FT_UINT32
, BASE_DEC
,
10511 VALS( trkpm_dig_ckt_test_types
),
10514 { &hf_c15ch_cp_event_devid
,
10515 { "Device ID", "c15.cpe.devid",
10516 FT_UINT32
, BASE_DEC
|BASE_EXT_STRING
,
10517 &c15_dev_types_ext
,
10520 { &hf_c15ch_cp_event_event
,
10521 { "Event", "c15.cpe.event",
10522 FT_UINT32
, BASE_DEC
|BASE_EXT_STRING
,
10523 &c15_event_types_ext
,
10526 { &hf_c15ch_cp_event_parm
,
10527 { "Parm", "c15.cpe.parm",
10528 FT_UINT32
, BASE_DEC
,
10532 { &hf_c15ch_cp_event_iptime
,
10533 { "IP Time", "c15.cpe.iptime",
10534 FT_UINT32
, BASE_DEC
,
10538 { &hf_c15ch_inc_gwe_ni
,
10539 { "NI", "c15.inc_gwe.ni",
10540 FT_UINT32
, BASE_HEX
,
10544 { &hf_c15ch_inc_gwe_tn
,
10545 { "TN", "c15.inc_gwe.tn",
10546 FT_UINT32
, BASE_HEX
,
10550 { &hf_c15ch_inc_gwe_ni_tn
,
10551 {"NI/TN", "c15.inc_gwe.ni_tn",
10552 FT_UINT64
, BASE_HEX
,
10556 { &hf_c15ch_inc_gwe_taskid
,
10557 { "Task ID", "c15.inc_gwe.taskid",
10558 FT_UINT8
, BASE_DEC
,
10559 VALS( c15inc_gwe_task_types
),
10562 { &hf_c15ch_inc_gwe_fiatid_invalid
,
10563 { "Fiat ID (Invalid)", "c15.inc_gwe.fiatid_invalid",
10564 FT_UINT8
, BASE_DEC
,
10568 { &hf_c15ch_inc_gwe_fiatid_bc
,
10569 { "Fiat ID (Bearer Control)", "c15.inc_gwe.fiatid_bc",
10570 FT_UINT8
, BASE_DEC
,
10571 VALS( c15inc_gwe_bc_fiat_types
),
10574 { &hf_c15ch_inc_gwe_fiatid_mtce
,
10575 { "Fiat ID (MTCE)", "c15.inc_gwe.fiatid_mtce",
10576 FT_UINT8
, BASE_DEC
,
10577 VALS( c15inc_gwe_mtce_fiat_types
),
10580 { &hf_c15ch_inc_gwe_fiatid_om
,
10581 { "Fiat ID (OM)", "c15.inc_gwe.fiatid_om",
10582 FT_UINT8
, BASE_DEC
,
10583 VALS( c15inc_gwe_om_fiat_types
),
10586 { &hf_c15ch_inc_gwe_fiatid_h248
,
10587 { "Fiat ID (H248)", "c15.inc_gwe.fiatid_h248",
10588 FT_UINT8
, BASE_DEC
,
10589 VALS( c15inc_gwe_h248_fiat_types
),
10592 { &hf_c15ch_inc_gwe_fiatid_sua
,
10593 { "Fiat ID (SUA)", "c15.inc_gwe.fiatid_sua",
10594 FT_UINT8
, BASE_DEC
,
10595 VALS( c15inc_gwe_sua_fiat_types
),
10598 { &hf_c15ch_inc_gwe_fiatid_mgcp
,
10599 { "Fiat ID (MGCP)", "c15.inc_gwe.fiatid_mgcp",
10600 FT_UINT8
, BASE_DEC
,
10601 VALS( c15inc_gwe_mgcp_fiat_types
),
10604 { &hf_c15ch_inc_gwe_fiatid_sip_notify
,
10605 { "Fiat ID (SIP Notify)", "c15.inc_gwe.fiatid_sip_notify",
10606 FT_UINT8
, BASE_DEC
,
10607 VALS( c15inc_gwe_sip_notify_fiat_types
),
10610 { &hf_c15ch_inc_gwe_fiatid_admn
,
10611 { "Fiat ID (Admn)", "c15.inc_gwe.fiatid_admn",
10612 FT_UINT8
, BASE_DEC
,
10613 VALS( c15inc_gwe_admn_fiat_types
),
10616 { &hf_c15ch_inc_gwe_datatype
,
10617 { "Datatype", "c15.inc_gwe.datatype",
10618 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
10619 &c15inc_gwe_types_ext
,
10623 { &hf_c15ch_out_gwe_ni
,
10624 { "NI", "c15.out_gwe.ni",
10625 FT_UINT32
, BASE_HEX
,
10629 { &hf_c15ch_out_gwe_tn
,
10630 { "TN", "c15.out_gwe.tn",
10631 FT_UINT32
, BASE_HEX
,
10635 { &hf_c15ch_out_gwe_ni_tn
,
10636 {"NI/TN", "c15.out_gwe.ni_tn",
10637 FT_UINT64
, BASE_HEX
,
10641 { &hf_c15ch_out_gwe_op_gwe_msg_type
,
10642 { "OP GWE Msg Type", "c15.out_gwe.op_gwe_msg_type",
10643 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
10644 &c15_out_gwe_msg_types_ext
,
10647 { &hf_c15ch_out_gwe_op_gwe_protocol
,
10648 { "OP GWE Protocol", "c15.out_gwe.op_gwe_protocol",
10649 FT_UINT8
, BASE_DEC
,
10650 VALS( c15_out_gwe_protocol_types
),
10653 { &hf_c15ch_out_gwe_op_sua_hndl
,
10654 { "Sip User Agent Handle", "c15.out_gwe.sua_hndl",
10655 FT_UINT32
, BASE_HEX
,
10659 { &hf_c15ch_out_gwe_gwe_data_type
,
10660 { "GWE Datatype", "c15.out_gwe.gwe_data_type",
10661 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
10662 &c15_out_gwe_data_types_ext
,
10666 { &hf_c15ch_tone_msg_type
,
10667 { "Msg Type", "c15.tone.msg_type",
10668 FT_UINT8
, BASE_DEC
,
10669 VALS( c15_tone_msg_types
),
10672 { &hf_c15ch_cp_state_ch
,
10673 { "C15 CP State Change", "c15.cpsc",
10674 FT_PROTOCOL
, BASE_NONE
,
10678 { &hf_c15ch_cp_event
,
10679 { "C15 CP Event", "c15.cpe",
10680 FT_PROTOCOL
, BASE_NONE
,
10685 { "C15 ISUP", "c15.isup",
10686 FT_PROTOCOL
, BASE_NONE
,
10690 { &hf_c15ch_nitnxlate
,
10691 { "C15 NITN Xlate", "c15.nitnxlate",
10692 FT_PROTOCOL
, BASE_NONE
,
10697 { "C15 SCCP", "c15.sccp",
10698 FT_PROTOCOL
, BASE_NONE
,
10703 { "C15 CP Orig", "c15.orig",
10704 FT_PROTOCOL
, BASE_NONE
,
10709 { "C15 Conn", "c15.conn",
10710 FT_PROTOCOL
, BASE_NONE
,
10714 { &hf_c15ch_ntwk_conn
,
10715 { "C15 Network Conn", "c15.ntwkconn",
10716 FT_PROTOCOL
, BASE_NONE
,
10721 { "C15 Make Break", "c15.mkbrk",
10722 FT_PROTOCOL
, BASE_NONE
,
10726 { &hf_c15ch_pathfind
,
10727 { "C15 Path Find", "c15.pathfind",
10728 FT_PROTOCOL
, BASE_NONE
,
10732 { &hf_c15ch_pathidle
,
10733 { "C15 Path Idle", "c15.pathidle",
10734 FT_PROTOCOL
, BASE_NONE
,
10738 { &hf_c15ch_dest_digits
,
10739 { "C15 Destination Digits", "c15.dest_digits",
10740 FT_PROTOCOL
, BASE_NONE
,
10744 { &hf_c15ch_twc_rswch
,
10745 { "C15 TWC Rswch", "c15.twc_rswch",
10746 FT_PROTOCOL
, BASE_NONE
,
10750 { &hf_c15ch_srcedest
,
10751 { "C15 Source Destination", "c15.srcedest",
10752 FT_PROTOCOL
, BASE_NONE
,
10757 { "C15 Route", "c15.route",
10758 FT_PROTOCOL
, BASE_NONE
,
10762 { &hf_c15ch_inc_gwe
,
10763 { "C15 Incoming GWE", "c15.inc_gwe",
10764 FT_PROTOCOL
, BASE_NONE
,
10768 { &hf_c15ch_out_gwe
,
10769 { "C15 Outgoing GWE", "c15.out_gwe",
10770 FT_PROTOCOL
, BASE_NONE
,
10774 { &hf_c15ch_outgwebc
,
10775 { "C15 Out GWE Bearer Control", "c15.out_gwe_bc",
10776 FT_PROTOCOL
, BASE_NONE
,
10781 { "C15 AMA", "c15.ama",
10782 FT_PROTOCOL
, BASE_NONE
,
10787 { "C15 Quality of Service", "c15.qos",
10788 FT_PROTOCOL
, BASE_NONE
,
10792 { &hf_c15ch_echo_cancel
,
10793 { "C15 Echo Cancel", "c15.echo_cancel",
10794 FT_PROTOCOL
, BASE_NONE
,
10799 { "C15 Tone", "c15.tone",
10800 FT_PROTOCOL
, BASE_NONE
,
10804 { &hf_c15ch_encap_isup
,
10805 { "C15 Encapsulated ISUP", "c15.encap_isup",
10806 FT_PROTOCOL
, BASE_NONE
,
10811 { "C15 TCAP", "c15.tcap",
10812 FT_PROTOCOL
, BASE_NONE
,
10817 { "C15 CLLI", "c15.clli",
10818 FT_PROTOCOL
, BASE_NONE
,
10822 { &hf_c15ch_c15_info
,
10823 { "C15 Info", "c15.info",
10824 FT_PROTOCOL
, BASE_NONE
,
10828 /* new Generic Messages */
10829 { &hf_c15ch_c15_generic_msg_1
,
10830 { "C15 Generic Message 1", "c15.generic_msg_1",
10831 FT_PROTOCOL
, BASE_NONE
,
10835 { &hf_c15ch_c15_generic_msg_2
,
10836 { "C15 Generic Message 2", "c15.generic_msg_2",
10837 FT_PROTOCOL
, BASE_NONE
,
10841 { &hf_c15ch_c15_generic_msg_3
,
10842 { "C15 Generic Message 3", "c15.generic_msg_3",
10843 FT_PROTOCOL
, BASE_NONE
,
10847 { &hf_c15ch_c15_generic_msg_4
,
10848 { "C15 Generic Message 4", "c15.generic_msg_4",
10849 FT_PROTOCOL
, BASE_NONE
,
10853 { &hf_c15ch_c15_generic_msg_5
,
10854 { "C15 Generic Message 5", "c15.generic_msg_5",
10855 FT_PROTOCOL
, BASE_NONE
,
10859 { &hf_c15ch_c15_correlate_msg
,
10860 { "C15 Correlate Message", "c15.correlate_msg",
10861 FT_PROTOCOL
, BASE_NONE
,
10865 { &hf_c15ch_c15_generic_msg_parm_1
,
10866 { "Parameter 1", "c15.parm_1",
10867 FT_UINT32
, BASE_DEC
,
10871 { &hf_c15ch_c15_generic_msg_parm_2
,
10872 { "Parameter 2", "c15.parm_2",
10873 FT_UINT32
, BASE_DEC
,
10877 { &hf_c15ch_c15_generic_msg_parm_3
,
10878 { "Parameter 3", "c15.parm_3",
10879 FT_UINT32
, BASE_DEC
,
10883 { &hf_c15ch_c15_generic_msg_parm_4
,
10884 { "Parameter 4", "c15.parm_4",
10885 FT_UINT32
, BASE_HEX
,
10889 { &hf_c15ch_c15_generic_msg_parm_5
,
10890 { "Parameter 5", "c15.parm_5",
10891 FT_UINT32
, BASE_HEX
,
10895 { &hf_c15ch_c15_generic_msg_data_len
,
10896 { "Data Length", "c15.data_len",
10897 FT_UINT32
, BASE_DEC
,
10901 { &hf_c15ch_c15_generic_msg_cr_ptr_val
,
10902 { "CR Pointer Value", "c15.cr_ptr_val",
10903 FT_UINT32
, BASE_HEX
,
10907 { &hf_c15ch_c15_generic_msg_dr_ptr_val
,
10908 { "DR Pointer Value", "c15.dr_ptr_val",
10909 FT_UINT32
, BASE_HEX
,
10913 { &hf_c15ch_c15_generic_msg_spr_int_1
,
10914 { "Optional Integer 1", "c15.spr_int_1",
10915 FT_UINT32
, BASE_DEC
,
10919 { &hf_c15ch_c15_generic_msg_spr_int_2
,
10920 { "Optional Integer 2", "c15.spr_int_2",
10921 FT_UINT32
, BASE_DEC
,
10925 { &hf_c15ch_c15_generic_msg_spr_uptr_1
,
10926 { "Optional Unprotected Pointer 1", "c15.spr_uptr_1",
10927 FT_UINT32
, BASE_HEX
,
10931 { &hf_c15ch_c15_generic_msg_spr_uptr_2
,
10932 { "Optional Unprotected Pointer 2", "c15.spr_uptr_2",
10933 FT_UINT32
, BASE_HEX
,
10937 { &hf_c15ch_c15_generic_msg_spr_pptr_1
,
10938 { "Optional Protected Pointer 1", "c15.spr_pptr_1",
10939 FT_UINT32
, BASE_HEX
,
10943 { &hf_c15ch_c15_generic_msg_spr_pptr_2
,
10944 { "Optional Protected Pointer 2", "c15.spr_pptr_2",
10945 FT_UINT32
, BASE_HEX
,
10949 { &hf_c15ch_c15_generic_msg_gen_msg_field_1
,
10950 { "Generic Message Field 1", "c15.gen_msg_field_1",
10951 FT_UINT32
, BASE_DEC
,
10955 { &hf_c15ch_c15_generic_msg_gen_msg_field_2
,
10956 { "Generic Message Field 2", "c15.gen_msg_field_2",
10957 FT_UINT32
, BASE_DEC
,
10961 { &hf_c15ch_c15_generic_msg_gen_msg_field_3
,
10962 { "Generic Message Field 3", "c15.gen_msg_field_3",
10963 FT_UINT32
, BASE_DEC
,
10967 { &hf_c15ch_c15_generic_msg_gen_msg_field_4
,
10968 { "Generic Message Field 4", "c15.gen_msg_field_4",
10969 FT_UINT32
, BASE_DEC
,
10973 { &hf_c15ch_c15_generic_msg_gen_msg_field_5
,
10974 { "Generic Message Field 5", "c15.gen_msg_field_5",
10975 FT_UINT32
, BASE_DEC
,
10979 { &hf_c15ch_c15_generic_msg_gen_msg_string
,
10980 { "Message", "c15.msg_string",
10981 FT_STRINGZ
, BASE_NONE
,
10985 { &hf_c15ch_c15_generic_msg_gen_data_large
,
10986 { "Hex Message", "c15.data_large",
10987 FT_BYTES
, BASE_NONE
,
10991 { &hf_c15ch_c15_usage_id
,
10992 { "Usage ID", "c15.usage_id",
10993 FT_UINT32
, BASE_DEC
,
10997 { &hf_c15ch_c15_opt_parm_2
,
10998 { "Optional Parameter 2", "c15.opt_parm_2",
10999 FT_UINT32
, BASE_DEC
,
11003 { &hf_c15ch_c15_opt_parm_3
,
11004 { "Optional Parameter 3", "c15.opt_parm_3",
11005 FT_UINT32
, BASE_DEC
,
11009 { &hf_c15ch_c15_opt_parm_4
,
11010 { "Optional Parameter 4", "c15.opt_parm_4",
11011 FT_UINT32
, BASE_DEC
,
11015 { &hf_c15ch_c15_opt_parm_5
,
11016 { "Optional Parameter 5", "c15.opt_parm_5",
11017 FT_UINT32
, BASE_DEC
,
11021 { &hf_c15ch_c15_opt_parm_6_ptr
,
11022 { "Optional Parameter 6 Pointer", "c15.opt_parm_6_ptr",
11023 FT_UINT32
, BASE_HEX
,
11027 { &hf_c15ch_c15_opt_parm_7_ptr
,
11028 { "Optional Parameter 7 Pointer", "c15.opt_parm_7_ptr",
11029 FT_UINT32
, BASE_HEX
,
11033 { &hf_c15ch_c15_opt_parm_8_ptr
,
11034 { "Optional Parameter 8 Pointer", "c15.opt_parm_8_ptr",
11035 FT_UINT32
, BASE_HEX
,
11039 { &hf_c15ch_c15_opt_parm_9_ptr
,
11040 { "Optional Parameter 9 Pointer", "c15.opt_parm_9_ptr",
11041 FT_UINT32
, BASE_HEX
,
11045 { &hf_c15ch_c15_opt_string_parm_8
,
11046 { "String Parameter 8", "c15.opt_string_parm_8",
11047 FT_STRINGZ
, BASE_NONE
,
11051 { &hf_c15ch_c15_opt_string_parm_9
,
11052 { "String Parameter 9", "c15.opt_string_parm_9",
11053 FT_STRINGZ
, BASE_NONE
,
11057 { &hf_c15ch_c15_sip_reg_subs_report
,
11058 { "C15 SIP REG SUBS Report", "c15.sip_reg_subs_report",
11059 FT_PROTOCOL
, BASE_NONE
,
11063 { &hf_c15ch_c15_sip_report_type
,
11064 { "SIP Report Type", "c15.sip_report_type",
11065 FT_STRINGZ
, BASE_NONE
,
11069 { &hf_c15ch_c15_rate
,
11070 { "Rate", "c15.rate",
11071 FT_UINT32
, BASE_DEC
,
11075 { &hf_c15ch_c15_hour
,
11076 { "Hour", "c15.hour",
11077 FT_UINT32
, BASE_DEC
,
11081 { &hf_c15ch_c15_peak_min
,
11082 { "Peak Minute", "c15.peak_min",
11083 FT_UINT32
, BASE_DEC
,
11087 { &hf_c15ch_c15_peak_sec
,
11088 { "Peak Second", "c15.peak_sec",
11089 FT_UINT32
, BASE_DEC
,
11093 { &hf_c15ch_c15_auth_good
,
11094 { "Good Authentications in Last Hour", "c15.auth_good",
11095 FT_UINT32
, BASE_DEC
,
11099 { &hf_c15ch_c15_auth_fail
,
11100 { "Failed Authentications in Last Hour", "c15.auth_fail",
11101 FT_UINT32
, BASE_DEC
,
11105 { &hf_c15ch_c15_ovd084
,
11106 { "OVD084 Occurrences in Last Hour", "c15.ovd084",
11107 FT_UINT32
, BASE_DEC
,
11111 { &hf_c15ch_c15_ovd086
,
11112 { "OVD086 Occurrences in Last Hour", "c15.ovd086",
11113 FT_UINT32
, BASE_DEC
,
11117 { &hf_c15ch_c15_ovd088
,
11118 { "OVD088 Occurrences in Last Hour", "c15.ovd088",
11119 FT_UINT32
, BASE_DEC
,
11123 { &hf_c15ch_c15_sip104
,
11124 { "SIP104 Occurrences in Last Hour", "c15.sip104",
11125 FT_UINT32
, BASE_DEC
,
11129 { &hf_c15ch_c15_reg_spare_1
,
11130 { "REGISTER Optional Parameter 1", "c15.reg_spare_1",
11131 FT_UINT32
, BASE_DEC
,
11135 { &hf_c15ch_c15_reg_spare_2
,
11136 { "REGISTER Optional Parameter 2", "c15.reg_spare_2",
11137 FT_UINT32
, BASE_DEC
,
11141 { &hf_c15ch_c15_reg_spare_3
,
11142 { "REGISTER Optional Parameter 3", "c15.reg_spare_3",
11143 FT_UINT32
, BASE_HEX
,
11147 { &hf_c15ch_c15_status_200_cnt
,
11148 { "Status 200 in Last Hour", "c15.status_200_cnt",
11149 FT_UINT32
, BASE_DEC
,
11153 { &hf_c15ch_c15_status_202_cnt
,
11154 { "Status 202 in Last Hour", "c15.status_202_cnt",
11155 FT_UINT32
, BASE_DEC
,
11159 { &hf_c15ch_c15_status_405_cnt
,
11160 { "Status 405 in Last Hour", "c15.status_405_cnt",
11161 FT_UINT32
, BASE_DEC
,
11165 { &hf_c15ch_c15_subs_spare_1
,
11166 { "SUBSCRIBE Optional Parameter 1", "c15.subs_spare_1",
11167 FT_UINT32
, BASE_DEC
,
11171 { &hf_c15ch_c15_subs_spare_2
,
11172 { "SUBSCRIBE Optional Parameter 2", "c15.subs_spare_2",
11173 FT_UINT32
, BASE_DEC
,
11177 { &hf_c15ch_c15_subs_spare_3
,
11178 { "SUBSCRIBE Optional Parameter 3", "c15.subs_spare_3",
11179 FT_UINT32
, BASE_DEC
,
11183 { &hf_c15ch_c15_subs_spare_4
,
11184 { "SUBSCRIBE Optional Parameter 4", "c15.subs_spare_4",
11185 FT_UINT32
, BASE_DEC
,
11189 { &hf_c15ch_c15_subs_spare_5
,
11190 { "SUBSCRIBE Optional Parameter 5", "c15.subs_spare_5",
11191 FT_UINT32
, BASE_HEX
,
11195 { &hf_c15ch_c15_subs_spare_6
,
11196 { "SUBSCRIBE Optional Parameter 6", "c15.subs_spare_6",
11197 FT_UINT32
, BASE_HEX
,
11201 { &hf_c15ch_c15_sys_alarm
,
11202 { "C15 SYSTEM ALARM", "c15.sys_alarm",
11203 FT_PROTOCOL
, BASE_NONE
,
11207 { &hf_c15ch_c15_omm_tag_code
,
11208 { "C15 ALARM Code", "c15.omm_tag_code",
11209 FT_STRINGZ
, BASE_NONE
,
11213 { &hf_c15ch_c15_alarm_class
,
11214 { "C15 ALARM Class", "c15.alarm_class",
11215 FT_STRINGZ
, BASE_NONE
,
11219 { &hf_c15ch_c15_alarm_status
,
11220 { "C15 ALARM Status", "c15.alarm_status",
11221 FT_STRINGZ
, BASE_NONE
,
11225 { &hf_c15ch_c15_site_name
,
11226 { "C15 Site Name", "c15.site_name",
11227 FT_STRINGZ
, BASE_NONE
,
11231 { &hf_c15ch_c15_system
,
11232 { "C15 System", "c15.system",
11233 FT_STRINGZ
, BASE_NONE
,
11237 { &hf_c15ch_c15_tty_msg
,
11238 { "C15 TTY MESSAGE", "c15.tty_msg",
11239 FT_PROTOCOL
, BASE_NONE
,
11243 { &hf_c15ch_c15_tty_int_parm_1
,
11244 { "TTY Optional Parameter 1", "c15.int_parm_1",
11245 FT_UINT32
, BASE_DEC
,
11249 { &hf_c15ch_c15_tty_int_parm_2
,
11250 { "TTY Optional Parameter 2", "c15.int_parm_2",
11251 FT_UINT32
, BASE_DEC
,
11255 { &hf_c15ch_c15_tty_int_parm_3
,
11256 { "TTY Optional Parameter 3", "c15.int_parm_3",
11257 FT_UINT32
, BASE_HEX
,
11261 { &hf_c15ch_c15_tty_int_parm_4
,
11262 { "TTY Optional Parameter 4", "c15.int_parm_4",
11263 FT_UINT32
, BASE_HEX
,
11267 { &hf_c15ch_c15_omm_msg_tag
,
11268 { "C15 TTY OMM Message Tag", "c15.omm_msg_tag",
11269 FT_STRINGZ
, BASE_NONE
,
11273 { &hf_c15ch_c15_text_location
,
11274 { "C15 TTY Location", "c15.text_location",
11275 FT_STRINGZ
, BASE_NONE
,
11279 { &hf_c15ch_c15_tty_text_parm_1
,
11280 { "C15 TTY Text Parameter 1", "c15.tty_text_parm_1",
11281 FT_STRINGZ
, BASE_NONE
,
11285 { &hf_c15ch_c15_tty_text_parm_2
,
11286 { "C15 TTY Text Parameter 2", "c15.tty_text_parm_2",
11287 FT_STRINGZ
, BASE_NONE
,
11291 { &hf_c15ch_c15_tty_text_parm_3
,
11292 { "C15 TTY Text Parameter 3", "c15.tty_text_parm_3",
11293 FT_STRINGZ
, BASE_NONE
,
11298 static int *ett_second_level
[] = {
11299 &ett_c15ch_second_level
,
11300 &ett_c15ch_second_level_sub1
,
11301 &ett_c15ch_second_level_sub2
,
11302 &ett_c15ch_second_level_sub3
,
11303 &ett_c15ch_second_level_sub4
11308 static hf_register_info hf_third_level_tone
[] = {
11309 { &hf_c15ch_tone_cot_control_device_id
,
11310 { "Device ID", "c15.tone.cot_control.device_id",
11311 FT_UINT8
, BASE_DEC
,
11315 { &hf_c15ch_tone_cot_control_cot_task
,
11316 { "COT Task", "c15.tone.cot_control.cot_task",
11317 FT_UINT8
, BASE_DEC
,
11321 { &hf_c15ch_tone_cot_control_dest_h248
,
11322 { "Destination H248", "c15.tone.cot_control.dest_h248",
11323 FT_UINT8
, BASE_DEC
,
11327 { &hf_c15ch_tone_cot_control_srce_h248
,
11328 { "Source H248", "c15.tone.cot_control.srce_h248",
11329 FT_UINT8
, BASE_DEC
,
11333 { &hf_c15ch_tone_cot_control_svc_channel
,
11334 { "Svc Channel", "c15.tone.cot_control.svc_channel",
11335 FT_UINT8
, BASE_DEC
,
11339 { &hf_c15ch_tone_give_tone_tone_id
,
11340 { "Tone ID", "c15.tone.give_tone.tone_id",
11341 FT_UINT8
, BASE_DEC
,
11345 { &hf_c15ch_tone_give_tone_tone_type
,
11346 { "Tone Type", "c15.tone.give_tone.tone_type",
11347 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
11352 { &hf_c15ch_tone_madn_ring_device_id
,
11353 { "Device ID", "c15.tone.madn_ring.device_id",
11354 FT_UINT8
, BASE_DEC
,
11358 { &hf_c15ch_tone_madn_ring_tone_type
,
11359 { "Tone Type", "c15.tone.madn_ring.tone_type",
11360 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
11364 { &hf_c15ch_tone_opls_svce_from_ni
,
11365 { "Svce From NI", "c15.tone.opls.svce_from_ni",
11366 FT_UINT32
, BASE_HEX
,
11370 { &hf_c15ch_tone_opls_svce_to_ni
,
11371 { "Svce To NI", "c15.tone.opls.svce_to_ni",
11372 FT_UINT32
, BASE_HEX
,
11376 { &hf_c15ch_tone_opls_svce_to_tn
,
11377 { "Svce To TN", "c15.tone.opls.svce_to_tn",
11378 FT_UINT32
, BASE_HEX
,
11382 { &hf_c15ch_tone_opls_svce_to_ni_tn
,
11383 { "Svce To NI/TN", "c15.tone.opls.svce_to_ni_tn",
11384 FT_UINT64
, BASE_HEX
,
11388 { &hf_c15ch_tone_opls_digits
,
11389 { "Digits", "c15.tone.opls.digits",
11390 FT_STRINGZ
, BASE_NONE
,
11394 { &hf_c15ch_tone_rcvr_rcvr_id
,
11395 { "Receiver ID", "c15.tone.rcvr.rcvr_id",
11396 FT_UINT8
, BASE_DEC
,
11400 { &hf_c15ch_tone_rcvr_conn_to_ni
,
11401 { "Conn to NI", "c15.tone.rcvr.conn_to_ni",
11402 FT_UINT32
, BASE_HEX
,
11406 { &hf_c15ch_tone_rcvr_conn_to_tn
,
11407 { "Conn to TN", "c15.tone.rcvr.conn_to_tn",
11408 FT_UINT32
, BASE_HEX
,
11412 { &hf_c15ch_tone_rcvr_conn_to_ni_tn
,
11413 { "Conn to NI/TN", "c15.tone.rcvr.conn_to_ni_tn",
11414 FT_UINT64
, BASE_HEX
,
11418 { &hf_c15ch_tone_timeout_device_id
,
11419 { "Device ID", "c15.tone.timeout.device_id",
11420 FT_UINT8
, BASE_DEC
,
11424 { &hf_c15ch_tone_timeout_service_pm
,
11425 { "Service PM", "c15.tone.timeout.service_pm",
11426 FT_UINT8
, BASE_DEC
,
11430 { &hf_c15ch_tone_timeout_service_ni
,
11431 { "Service NI", "c15.tone.timeout.service_ni",
11432 FT_UINT32
, BASE_DEC
,
11436 { &hf_c15ch_tone_timeout_service_tn
,
11437 { "Service TN", "c15.tone.timeout.service_tn",
11438 FT_UINT32
, BASE_DEC
,
11442 { &hf_c15ch_tone_timeout_service_ni_tn
,
11443 { "Service NI/TN", "c15.tone.timeout.service_ni_tn",
11444 FT_UINT64
, BASE_HEX
,
11448 { &hf_c15ch_tone_timeout_gw_provided
,
11449 { "GW Provided", "c15.tone.timeout.gw_provided",
11450 FT_UINT8
, BASE_DEC
,
11454 { &hf_c15ch_tone_timeout_gw_service_tone_type_or_from_ni
,
11455 { "GW Service Tone Type or From NI", "c15.tone.timeout.gw_service_tone_type_or_from_ni",
11456 FT_UINT32
, BASE_DEC
,
11460 { &hf_c15ch_tone_tone_control_device_id
,
11461 { "Device ID", "c15.tone.tone_control.device_id",
11462 FT_UINT8
, BASE_DEC
,
11466 { &hf_c15ch_tone_tone_control_tone_type
,
11467 { "Tone Type", "c15.tone.tone_control.tone_type",
11468 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
11473 { &hf_c15ch_tone_cpm_loop_type
,
11474 { "Loop Type", "c15.tone.cpm.loop_type",
11475 FT_UINT8
, BASE_DEC
,
11476 VALS( loop_types
),
11479 { &hf_c15ch_tone_cpm_device_id
,
11480 { "Device ID", "c15.tone.cpm.device_id",
11481 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
11485 { &hf_c15ch_tone_cpm_tone_type
,
11486 { "Tone Type", "c15.tone.cpm.tone_type",
11487 FT_UINT8
, BASE_DEC
|BASE_EXT_STRING
,
11491 { &hf_c15ch_tone_tone_control
,
11492 { "C15 Tone Control", "c15.tone.tone_control",
11493 FT_PROTOCOL
, BASE_NONE
,
11497 { &hf_c15ch_tone_give_tone
,
11498 { "C15 Give Tone", "c15.tone.give_tone",
11499 FT_PROTOCOL
, BASE_NONE
,
11503 { &hf_c15ch_tone_opls
,
11504 { "C15 Tone OPLS", "c15.tone.opls",
11505 FT_PROTOCOL
, BASE_NONE
,
11509 { &hf_c15ch_tone_cot_control
,
11510 { "C15 Tone COT Control", "c15.tone.cot_control",
11511 FT_PROTOCOL
, BASE_NONE
,
11515 { &hf_c15ch_tone_cpm
,
11516 { "C15 Tone CPM", "c15.tone.cpm",
11517 FT_PROTOCOL
, BASE_NONE
,
11521 { &hf_c15ch_tone_rcvr
,
11522 { "C15 Tone Receiver", "c15.tone.rcvr",
11523 FT_PROTOCOL
, BASE_NONE
,
11527 { &hf_c15ch_tone_madn_ring
,
11528 { "C15 Tone MADN Ring", "c15.tone.madn_ring",
11529 FT_PROTOCOL
, BASE_NONE
,
11533 { &hf_c15ch_tone_timeout
,
11534 { "C15 Tone Timeout", "c15.tone.timeout",
11535 FT_PROTOCOL
, BASE_NONE
,
11542 static int *ett_third_level_tone
[] = {
11543 &ett_c15ch_third_level_tone
,
11544 &ett_c15ch_third_level_tone_sub1
11547 static hf_register_info hf_third_level_inc_gwe
[] = {
11549 { &hf_c15ch_inc_gwe_reply_ip_gwe_msg_type
,
11550 { "IP GWE Msg Type", "c15.inc_gwe.reply.ip_gwe_msg_type",
11551 FT_UINT32
, BASE_DEC
,
11555 { &hf_c15ch_inc_gwe_reply_ip_gwe_stat_code
,
11556 { "IP GWE Stat Code", "c15.inc_gwe.reply.ip_gwe_stat_code",
11557 FT_UINT32
, BASE_DEC
,
11561 { &hf_c15ch_inc_gwe_reply_ip_gwe_conn_num
,
11562 { "IP GWE Connection Number", "c15.inc_gwe.reply.ip_gwe_conn_num",
11563 FT_UINT32
, BASE_DEC
,
11567 { &hf_c15ch_inc_gwe_reply_nw_mdcn_lsdp_ip
,
11568 { "NW MDCN LSDP IP", "c15.inc_gwe.reply.nw_mdcn_lsdp_ip",
11569 FT_IPv4
, BASE_NONE
,
11573 { &hf_c15ch_inc_gwe_reply_nw_mdcn_lsdp_port
,
11574 { "NW MDCN LSDP Port", "c15.inc_gwe.reply.nw_mdcn_lsdp_port",
11575 FT_UINT32
, BASE_DEC
,
11579 { &hf_c15ch_inc_gwe_reply_nw_mdcn_rsdp_ip
,
11580 { "NW MDCN RSDP IP", "c15.inc_gwe.reply.nw_mdcn_rsdp_ip",
11581 FT_IPv4
, BASE_NONE
,
11585 { &hf_c15ch_inc_gwe_reply_nw_mdcn_rsdp_port
,
11586 { "NW MDCN RSDP Port", "c15.inc_gwe.reply.nw_mdcn_rsdp_port",
11587 FT_UINT32
, BASE_DEC
,
11591 { &hf_c15ch_inc_gwe_bc_pgi_pbc_conn_num
,
11592 { "PBC Connection Number", "c15.inc_gwe.bc_pgi.pbc_conn_num",
11593 FT_UINT32
, BASE_DEC
,
11597 { &hf_c15ch_inc_gwe_bc_pgi_pbc_conn_type
,
11598 { "PBC Connection Type", "c15.inc_gwe.bc_pgi.pbc_conn_type",
11599 FT_UINT8
, BASE_DEC
,
11600 VALS( c15_inc_gwe_bc_pgi_pbc_conn_types
),
11603 { &hf_c15ch_inc_gwe_bc_pgi_pbc_msg_type
,
11604 { "PBC Message Type", "c15.inc_gwe.bc_pgi.pbc_msg_type",
11605 FT_UINT8
, BASE_DEC
,
11609 { &hf_c15ch_inc_gwe_bc_pgi_bc_mode
,
11610 { "BC Mode", "c15.inc_gwe.bc_pgi.bc_mode",
11611 FT_UINT8
, BASE_DEC
,
11615 { &hf_c15ch_inc_gwe_bc_pgi_bc_pgi_sdp
,
11616 { "BC PGI SDP", "c15.inc_gwe.bc_pgi.bc_pgi_sdp",
11617 FT_IPv4
, BASE_NONE
,
11621 { &hf_c15ch_inc_gwe_bc_pgi_bc_pgi_m_port
,
11622 { "BC PGI M Port", "c15.inc_gwe.bc_pgi.bc_pgi_m_port",
11623 FT_UINT32
, BASE_DEC
,
11627 { &hf_c15ch_inc_gwe_bc_pgi_pbc_tst_flags
,
11628 { "PBC TST Flags", "c15.inc_gwe.bc_pgi.pbc_tst_flags",
11629 FT_UINT32
, BASE_HEX
,
11633 { &hf_c15ch_inc_gwe_mgcp_dlcx_err_code
,
11634 { "Error Code", "c15.inc_gwe.mgcp_dlcx.err_code",
11635 FT_UINT32
, BASE_DEC
,
11639 { &hf_c15ch_inc_gwe_h248_digit_ip_gwe_digit
,
11640 { "IP GWE Digit", "c15.inc_gwe.h248_digit.ip_gwe_digit",
11641 FT_UINT8
, BASE_DEC
,
11645 { &hf_c15ch_inc_gwe_h248_digit_ip_gwe_digit_method
,
11646 { "IP GWE Digit Method", "c15.inc_gwe.h248_digit.ip_gwe_digit_method",
11647 FT_UINT8
, BASE_DEC
,
11651 { &hf_c15ch_inc_gwe_voip_cot_ip_gwe_pass_code
,
11652 { "IP GWE Digit", "c15.inc_gwe.voip_cot.ip_gwe_pass_code",
11653 FT_BOOLEAN
, BASE_NONE
,
11654 TFS( &c15_inc_gwe_voip_cot_ip_gwe_pass_code_types
),
11657 { &hf_c15ch_inc_gwe_notify_ip_gwe_mwi_stat
,
11658 { "IP GWE Message Waiting Indicator Stat", "c15.inc_gwe.notify.ip_gwe_mwi_stat",
11659 FT_UINT32
, BASE_DEC
,
11663 { &hf_c15ch_inc_gwe_notify_ip_gwe_digits
,
11664 { "IP GWE Digits", "c15.inc_gwe.notify.ip_gwe_digits",
11665 FT_STRINGZ
, BASE_NONE
,
11669 { &hf_c15ch_inc_gwe_admn_updt_ip_gwe_med_ni
,
11670 { "IP GWE Med NI", "c15.inc_gwe.admn_updt.ip_gwe_med_ni",
11671 FT_UINT32
, BASE_HEX
,
11675 { &hf_c15ch_inc_gwe_admn_updt_ip_gwe_med_tn
,
11676 { "IP GWE Med TN", "c15.inc_gwe.admn_updt.ip_gwe_med_tn",
11677 FT_UINT32
, BASE_HEX
,
11681 { &hf_c15ch_inc_gwe_admn_updt_ip_gwe_med_ni_tn
,
11682 {"IP GWE Med NI/TN", "c15.inc_gwe.admn_updt.ip_gwe_med_ni_tn",
11683 FT_UINT64
, BASE_HEX
,
11687 { &hf_c15ch_inc_gwe_admn_updt_ip_ns_iface
,
11688 { "IP NS Interface", "c15.inc_gwe.admn_updt.ip_ns_iface",
11689 FT_UINT32
, BASE_DEC
,
11693 { &hf_c15ch_inc_gwe_admn_updt_ip_ns_terminal
,
11694 { "IP NS Terminal", "c15.inc_gwe.admn_updt.ip_ns_terminal",
11695 FT_UINT32
, BASE_DEC
,
11699 { &hf_c15ch_inc_gwe_admn_updt_ip_gwe_new_rec_addr
,
11700 { "IP GWE New Rec Addr", "c15.inc_gwe.admn_updt.ip_gwe_new_rec_addr",
11701 FT_UINT32
, BASE_HEX
,
11705 { &hf_c15ch_inc_gwe_cl_setup_ip_gwe_sua_hndl
,
11706 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.cl_setup.ip_gwe_sua_hndl",
11707 FT_UINT32
, BASE_HEX
,
11711 { &hf_c15ch_inc_gwe_cl_setup_ip_gwe_cled_digits
,
11712 { "IP GWE CLED Digits", "c15.inc_gwe.cl_setup.ip_gwe_cled_digits",
11713 FT_STRINGZ
, BASE_NONE
,
11717 { &hf_c15ch_inc_gwe_cl_setup_ip_cl_setup_lsdp
,
11718 { "IP CL Setup LSDP", "c15.inc_gwe.cl_setup.ip_cl_setup_lsdp",
11719 FT_IPv4
, BASE_NONE
,
11723 { &hf_c15ch_inc_gwe_cl_setup_ip_cl_setup_m_port
,
11724 { "IP CL Setup M Port", "c15.inc_gwe.cl_setup.ip_cl_setup_m_port",
11725 FT_UINT32
, BASE_DEC
,
11729 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_sua_hndl
,
11730 { "IP GWE SipUserAgent Handle", "c15.iinc_gwe.ptrk_setup.ip_gwe_sua_hndl",
11731 FT_UINT32
, BASE_HEX
,
11735 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_cled_digits
,
11736 { "IP GWE CLED Digits", "c15.iinc_gwe.ptrk_setup.ip_gwe_cled_digits",
11737 FT_STRINGZ
, BASE_NONE
,
11741 { &hf_c15ch_inc_gwe_ptrk_setup_ip_cl_setup_lsdp
,
11742 { "IP CL SETUP LSDP", "c15.iinc_gwe.ptrk_setup.ip_cl_setup_lsdp",
11743 FT_IPv4
, BASE_NONE
,
11747 { &hf_c15ch_inc_gwe_ptrk_setup_ip_cl_setup_m_port
,
11748 { "IP CL SETUP M Port", "c15.iinc_gwe.ptrk_setup.ip_cl_setup_m_port",
11749 FT_UINT32
, BASE_DEC
,
11753 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clid_pri
,
11754 { "IP GWE CLID PRI", "c15.iinc_gwe.ptrk_setup.ip_gwe_clid_pri",
11755 FT_UINT8
, BASE_DEC
,
11759 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clng_digits
,
11760 { "IP GWE CLNG Digits", "c15.iinc_gwe.ptrk_setup.ip_gwe_clng_digits",
11761 FT_STRINGZ
, BASE_NONE
,
11765 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clng_ton
,
11766 { "IP GWE CLNG TON", "c15.iinc_gwe.ptrk_setup.ip_gwe_clng_ton",
11767 FT_UINT8
, BASE_DEC
,
11771 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_clng_np
,
11772 { "IP GWE CLNG NP", "c15.iinc_gwe.ptrk_setup.ip_gwe_clng_np",
11773 FT_UINT8
, BASE_DEC
,
11777 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_alert_info
,
11778 { "IP GWE Alert Info", "c15.iinc_gwe.ptrk_setup.ip_gwe_alert_info",
11779 FT_UINT32
, BASE_DEC
,
11783 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_redir_digits
,
11784 { "IP GWE REDIR Digits", "c15.iinc_gwe.ptrk_setup.ip_gwe_redir_digits",
11785 FT_STRINGZ
, BASE_NONE
,
11789 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_redir_ton
,
11790 { "IP GWE REDIR TON", "c15.iinc_gwe.ptrk_setup.ip_gwe_redir_ton",
11791 FT_UINT8
, BASE_DEC
,
11795 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_redir_np
,
11796 { "IP GWE REDIR NP", "c15.iinc_gwe.ptrk_setup.ip_gwe_redir_np",
11797 FT_UINT8
, BASE_DEC
,
11801 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_ocn_digits
,
11802 { "IP GWE OCN Digits", "c15.iinc_gwe.ptrk_setup.ip_gwe_ocn_digits",
11803 FT_STRINGZ
, BASE_NONE
,
11807 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_chrg_digits
,
11808 { "IP GWE CHRG Digits", "c15.iinc_gwe.ptrk_setup.ip_gwe_chrg_digits",
11809 FT_STRINGZ
, BASE_NONE
,
11813 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_chrg_noa
,
11814 { "IP GWE CHRG noa", "c15.iinc_gwe.ptrk_setup.ip_gwe_chrg_noa",
11815 FT_UINT8
, BASE_DEC
,
11819 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_chrg_npi
,
11820 { "IP GWE CHRG NPI", "c15.iinc_gwe.ptrk_setup.ip_gwe_chrg_npi",
11821 FT_UINT8
, BASE_DEC
,
11825 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_npdi
,
11826 { "IP GWE NPDI", "c15.iinc_gwe.ptrk_setup.ip_gwe_npdi",
11827 FT_UINT8
, BASE_DEC
,
11831 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_rn_digits
,
11832 { "IP GWE RN Digits", "c15.iinc_gwe.ptrk_setup.ip_gwe_rn_digits",
11833 FT_STRINGZ
, BASE_NONE
,
11837 { &hf_c15ch_inc_gwe_ptrk_setup_ip_gwe_cic_digits
,
11838 { "IP GWE CIC Digits", "c15.iinc_gwe.ptrk_setup.ip_gwe_cic_digits",
11839 FT_STRINGZ
, BASE_NONE
,
11843 { &hf_c15ch_inc_gwe_ptrk_setup_encap_isup
,
11844 { "Encapsulated ISUP", "c15.iinc_gwe.ptrk_setup.encap_isup",
11845 FT_UINT8
, BASE_DEC
,
11849 { &hf_c15ch_inc_gwe_cl_prog_ip_gwe_sua_hndl
,
11850 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.cl_prog.ip_gwe_sua_hndl",
11851 FT_UINT32
, BASE_HEX
,
11855 { &hf_c15ch_inc_gwe_cl_prog_ip_gwe_conn_num
,
11856 { "IP GWE Connection Number", "c15.inc_gwe.cl_prog.ip_gwe_conn_num",
11857 FT_UINT8
, BASE_DEC
,
11861 { &hf_c15ch_inc_gwe_cl_prog_ip_cl_prog_lsdp
,
11862 { "IP CL Prog LSDP", "c15.inc_gwe.cl_prog.ip_cl_prog_lsdp",
11863 FT_IPv4
, BASE_NONE
,
11867 { &hf_c15ch_inc_gwe_cl_prog_ip_cl_prog_m_port
,
11868 { "IP CL Prog M Port", "c15.inc_gwe.cl_prog.ip_cl_prog_m_port",
11869 FT_UINT32
, BASE_DEC
,
11873 { &hf_c15ch_inc_gwe_cl_prog_ip_gwe_stat_code
,
11874 { "IP GWE Stat Code", "c15.inc_gwe.cl_prog.ip_gwe_stat_code",
11875 FT_UINT8
, BASE_DEC
,
11879 { &hf_c15ch_inc_gwe_cl_prog_encap_isup
,
11880 { "Encapsulated ISUP", "c15.inc_gwe.cl_prog.encap_isup",
11881 FT_UINT8
, BASE_DEC
,
11885 { &hf_c15ch_inc_gwe_reply
,
11886 { "C15 Incoming GWE Reply", "c15.inc_gwe.reply",
11887 FT_PROTOCOL
, BASE_NONE
,
11891 { &hf_c15ch_inc_gwe_bc_pgi
,
11892 { "C15 Incoming GWE Bearer Control PGI", "c15.inc_gwe.bc_pgi",
11893 FT_PROTOCOL
, BASE_NONE
,
11897 { &hf_c15ch_inc_gwe_mgcp_dlcx
,
11898 { "C15 Incoming GWE MGCP DLCX", "c15.inc_gwe.mgcp_dlcx",
11899 FT_PROTOCOL
, BASE_NONE
,
11903 { &hf_c15ch_inc_gwe_h248_digit
,
11904 { "C15 Incoming GWE H248 Digit", "c15.inc_gwe.h248_digit",
11905 FT_PROTOCOL
, BASE_NONE
,
11909 { &hf_c15ch_inc_gwe_voip_cot
,
11910 { "C15 Incoming GWE VOIP COT", "c15.inc_gwe.voip_cot",
11911 FT_PROTOCOL
, BASE_NONE
,
11915 { &hf_c15ch_inc_gwe_notify
,
11916 { "C15 Incoming GWE Notify", "c15.inc_gwe.notify",
11917 FT_PROTOCOL
, BASE_NONE
,
11921 { &hf_c15ch_inc_gwe_admn_updt
,
11922 { "C15 Incoming GWE Admn Update", "c15.inc_gwe.admn_updt",
11923 FT_PROTOCOL
, BASE_NONE
,
11927 { &hf_c15ch_inc_gwe_cl_setup
,
11928 { "C15 Incoming GWE CL Setup", "c15.inc_gwe.cl_setup",
11929 FT_PROTOCOL
, BASE_NONE
,
11933 { &hf_c15ch_inc_gwe_ptrk_setup
,
11934 { "C15 Incoming GWE Packet Trunk Setup", "c15.inc_gwe.ptrk_setup",
11935 FT_PROTOCOL
, BASE_NONE
,
11939 { &hf_c15ch_inc_gwe_cl_prog
,
11940 { "C15 Incoming GWE CL Prog", "c15.inc_gwe.cl_prog",
11941 FT_PROTOCOL
, BASE_NONE
,
11945 { &hf_c15ch_inc_gwe_cl_ans_ip_gwe_sua_hndl
,
11946 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.cl_ans.ip_gwe_sua_hndl",
11947 FT_UINT32
, BASE_HEX
,
11951 { &hf_c15ch_inc_gwe_cl_ans_ip_gwe_conn_num
,
11952 { "IP GWE Connection Number", "c15.inc_gwe.cl_ans.ip_gwe_conn_num",
11953 FT_UINT8
, BASE_DEC
,
11957 { &hf_c15ch_inc_gwe_cl_ans_ip_cl_ans_lsdp
,
11958 { "IP CL Prog LSDP", "c15.inc_gwe.cl_ans.ip_cl_ans_lsdp",
11959 FT_IPv4
, BASE_NONE
,
11963 { &hf_c15ch_inc_gwe_cl_ans_ip_cl_ans_m_port
,
11964 { "IP CL Prog M Port", "c15.inc_gwe.cl_ans.ip_cl_ans_m_port",
11965 FT_UINT32
, BASE_DEC
,
11969 { &hf_c15ch_inc_gwe_cl_ans_encap_isup
,
11970 { "Encapsulated ISUP", "c15.inc_gwe.cl_ans.encap_isup",
11971 FT_UINT8
, BASE_DEC
,
11975 { &hf_c15ch_inc_gwe_cl_ans
,
11976 { "C15 Incoming GWE CL Ans", "c15.inc_gwe.cl_ans",
11977 FT_PROTOCOL
, BASE_NONE
,
11981 { &hf_c15ch_inc_gwe_cl_rel_ip_gwe_sua_hndl
,
11982 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.cl_rel.ip_gwe_sua_hndl",
11983 FT_UINT32
, BASE_HEX
,
11987 { &hf_c15ch_inc_gwe_cl_rel_ip_gwe_conn_num
,
11988 { "IP GWE Connection Number", "c15.inc_gwe.cl_rel.ip_gwe_conn_num",
11989 FT_UINT8
, BASE_DEC
,
11993 { &hf_c15ch_inc_gwe_cl_rel_ip_gwe_stat_code
,
11994 { "IP GWE Stat Code", "c15.inc_gwe.cl_rel.ip_gwe_stat_code",
11995 FT_UINT8
, BASE_DEC
,
11999 { &hf_c15ch_inc_gwe_cl_rel_encap_isup
,
12000 { "Encapsulated ISUP", "c15.inc_gwe.cl_rel.encap_isup",
12001 FT_UINT8
, BASE_DEC
,
12005 { &hf_c15ch_inc_gwe_cl_rel
,
12006 { "C15 Incoming GWE CL Release", "c15.inc_gwe.cl_rel",
12007 FT_PROTOCOL
, BASE_NONE
,
12011 { &hf_c15ch_inc_gwe_ntwk_mod_ip_gwe_sua_hndl
,
12012 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.ntwk_mod.ip_gwe_sua_hndl",
12013 FT_UINT32
, BASE_HEX
,
12017 { &hf_c15ch_inc_gwe_ntwk_mod_ip_gwe_conn_num
,
12018 { "IP GWE Connection Number", "c15.inc_gwe.ntwk_mod.ip_gwe_conn_num",
12019 FT_UINT8
, BASE_DEC
,
12023 { &hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_lsdp
,
12024 { "IP Network Mod LSDP", "c15.inc_gwe.ntwk_mod.ip_ntwk_mod_lsdp",
12025 FT_IPv4
, BASE_NONE
,
12029 { &hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_l_m_port
,
12030 { "IP Network Mod L M PORT", "c15.inc_gwe.ntwk_mod.ip_ntwk_mod_l_m_port",
12031 FT_UINT32
, BASE_DEC
,
12035 { &hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_rsdp
,
12036 { "IP Network Mod RSDP", "c15.inc_gwe.ntwk_mod.ip_ntwk_mod_rsdp",
12037 FT_IPv4
, BASE_NONE
,
12041 { &hf_c15ch_inc_gwe_ntwk_mod_ip_ntwk_mod_r_m_port
,
12042 { "IP Network Mod R M PORT", "c15.inc_gwe.ntwk_mod.ip_ntwk_mod_r_m_port",
12043 FT_UINT32
, BASE_DEC
,
12047 { &hf_c15ch_inc_gwe_ntwk_mod_ip_gwe_stat_code
,
12048 { "IP GWE Stat Code", "c15.inc_gwe.ntwk_mod.ip_gwe_stat_code",
12049 FT_UINT8
, BASE_DEC
,
12053 { &hf_c15ch_inc_gwe_ntwk_mod
,
12054 { "C15 Incoming GWE Network Mod", "c15.inc_gwe.ntwk_mod",
12055 FT_PROTOCOL
, BASE_NONE
,
12059 { &hf_c15ch_inc_gwe_rv_avail_ip_gwe_sua_hndl
,
12060 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.rv_avail.ip_gwe_sua_hndl",
12061 FT_UINT32
, BASE_HEX
,
12065 { &hf_c15ch_inc_gwe_rv_avail_ip_gwe_conn_num
,
12066 { "IP GWE Connection Number", "c15.inc_gwe.rv_avail.ip_gwe_conn_num",
12067 FT_UINT32
, BASE_DEC
,
12071 { &hf_c15ch_inc_gwe_rv_avail_ip_gwe_info_len
,
12072 { "IP GWE Info Length", "c15.inc_gwe.rv_avail.ip_gwe_info_len",
12073 FT_UINT32
, BASE_DEC
,
12077 { &hf_c15ch_inc_gwe_rv_avail
,
12078 { "C15 Incoming GWE RV Avail", "c15.inc_gwe.rv_avail",
12079 FT_PROTOCOL
, BASE_NONE
,
12083 { &hf_c15ch_inc_gwe_cl_redir_ip_gwe_sua_hndl
,
12084 { "IP GWE SipUserAgent Handle", "c15.inc_gwe.cl_redir.ip_gwe_sua_hndl",
12085 FT_UINT32
, BASE_HEX
,
12089 { &hf_c15ch_inc_gwe_cl_redir_ip_gwe_conn_num
,
12090 { "IP GWE Connection Number", "c15.inc_gwe.cl_redir.ip_gwe_conn_num",
12091 FT_UINT32
, BASE_HEX
,
12095 { &hf_c15ch_inc_gwe_cl_redir_ip_gwe_redir_digits
,
12096 { "IP GWE Redir Digits", "c15.inc_gwe.cl_redir.ip_gwe_redir_digits",
12097 FT_STRINGZ
, BASE_NONE
,
12101 { &hf_c15ch_inc_gwe_cl_redir
,
12102 { "C15 Incoming GWE CL Redir", "c15.inc_gwe.cl_redir",
12103 FT_PROTOCOL
, BASE_NONE
,
12107 { &hf_c15ch_inc_gwe_cl_refer_ip_gwe_sua_hndl
,
12108 { "IP GWE SipUserAgent Handle", "c15.inc_gwe.cl_refer.ip_gwe_sua_hndl",
12109 FT_UINT32
, BASE_HEX
,
12113 { &hf_c15ch_inc_gwe_cl_refer_ip_gwe_conn_num
,
12114 { "IP GWE Connection Number", "c15.inc_gwe.cl_refer.ip_gwe_conn_num",
12115 FT_UINT32
, BASE_DEC
,
12119 { &hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_digits
,
12120 { "IP GWE TRGT Digits", "c15.inc_gwe.cl_refer.ip_gwe_trgt_digits",
12121 FT_STRINGZ
, BASE_NONE
,
12125 { &hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_tn
,
12126 { "IP GWE TRGT TN", "c15.inc_gwe.cl_refer.ip_gwe_trgt_tn",
12127 FT_UINT32
, BASE_HEX
,
12131 { &hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_ni
,
12132 { "IP GWE TRGT NI", "c15.inc_gwe.cl_refer.ip_gwe_trgt_ni",
12133 FT_UINT32
, BASE_HEX
,
12137 { &hf_c15ch_inc_gwe_cl_refer_ip_gwe_trgt_ni_tn
,
12138 {"IP GWE TRGT NI/TN", "c15.inc_gwe.cl_refer.ip_gwe_trgt_tn_ni",
12139 FT_UINT64
, BASE_HEX
,
12143 { &hf_c15ch_inc_gwe_cl_refer
,
12144 {"C15 Incoming GWE CL Refer", "c15.inc_gwe.cl_refer",
12145 FT_PROTOCOL
, BASE_NONE
,
12149 { &hf_c15ch_inc_gwe_chg_hndl_ip_gwe_sua_hndl
,
12150 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.chg_hndl.ip_gwe_sua_hndl",
12151 FT_UINT32
, BASE_HEX
,
12155 { &hf_c15ch_inc_gwe_chg_hndl_ip_gwe_new_hndl
,
12156 { "IP GWE Message New Sip User Agent Handle", "c15.inc_gwe.chg_hndl.ip_gwe_new_hndl",
12157 FT_UINT32
, BASE_HEX
,
12161 { &hf_c15ch_inc_gwe_chg_hndl
,
12162 { "C15 Incoming GWE Change Handle", "c15.inc_gwe.chg_hndl",
12163 FT_PROTOCOL
, BASE_NONE
,
12167 { &hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_sua_hndl
,
12168 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.subs_chg_hndl.ip_gwe_sua_hndl",
12169 FT_UINT32
, BASE_HEX
,
12173 { &hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_new_hndl
,
12174 { "IP GWE Message New Sip User Agent Handle", "c15.inc_gwe.subs_chg_hndl.ip_gwe_new_hndl",
12175 FT_UINT32
, BASE_HEX
,
12179 { &hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_med_ni
,
12180 { "IP GWE Med NI", "c15.inc_gwe.subs_chg_hndl.ip_gwe_med_ni",
12181 FT_UINT32
, BASE_HEX
,
12185 { &hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_med_tn
,
12186 { "IP GWE Med TN", "c15.inc_gwe.subs_chg_hndl.ip_gwe_med_TN",
12187 FT_UINT32
, BASE_HEX
,
12191 { &hf_c15ch_inc_gwe_subs_chg_hndl_ip_gwe_med_ni_tn
,
12192 {"IP GWE Med NI/TN", "c15.inc_gwe.subs_chg_hndl.ip_gwe_med_ni_tn",
12193 FT_UINT64
, BASE_HEX
,
12197 { &hf_c15ch_inc_gwe_subs_chg_hndl
,
12198 {"C15 Incoming GWE Subscription Change Handle", "c15.inc_gwe.subs_chg_hndl",
12199 FT_PROTOCOL
, BASE_NONE
,
12203 { &hf_c15ch_inc_gwe_info_ip_gwe_sua_hndl
,
12204 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.info.ip_gwe_sua_hndl",
12205 FT_UINT32
, BASE_HEX
,
12209 { &hf_c15ch_inc_gwe_info_ip_gwe_info_type
,
12210 { "IP GWE Info Type", "c15.inc_gwe.info.ip_gwe_info_type",
12211 FT_UINT8
, BASE_DEC
,
12215 { &hf_c15ch_inc_gwe_info_ip_gwe_info_digit
,
12216 { "IP GWE Info Digit", "c15.inc_gwe.info.ip_gwe_info_digit",
12217 FT_UINT32
, BASE_DEC
,
12221 { &hf_c15ch_inc_gwe_info_encap_isup_msg_type
,
12222 { "IP GWE Encapsulated ISUP Message Type", "c15.inc_gwe.info.encap_isup_msg_type",
12223 FT_UINT8
, BASE_DEC
,
12224 VALS( c15ch_inc_gwe_info_encap_isup_msg_types
),
12227 { &hf_c15ch_inc_gwe_info
,
12228 { "C15 Incoming GWE Info", "c15.inc_gwe.info",
12229 FT_PROTOCOL
, BASE_NONE
,
12233 { &hf_c15ch_inc_gwe_inv_repl_ip_gwe_sua_hndl
,
12234 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.inv_repl.ip_gwe_sua_hndl",
12235 FT_UINT32
, BASE_HEX
,
12239 { &hf_c15ch_inc_gwe_inv_repl_ip_gwe_conn_num
,
12240 { "IP GWE Connection Number", "c15.inc_gwe.inv_repl.ip_gwe_conn_num",
12241 FT_UINT32
, BASE_DEC
,
12245 { &hf_c15ch_inc_gwe_inv_repl_ip_inv_repl_rsdp_ip
,
12246 { "IP Inv Repl RSDP IP", "c15.inc_gwe.inv_repl.ip_gwe_inv_repl_rsdp_ip",
12247 FT_IPv4
, BASE_NONE
,
12251 { &hf_c15ch_inc_gwe_inv_repl_ip_inv_repl_rsdp_port
,
12252 { "IP Inv Repl RSDP Port", "c15.inc_gwe.inv_repl.ip_gwe_inv_repl_rsdp_port",
12253 FT_UINT32
, BASE_DEC
,
12257 { &hf_c15ch_inc_gwe_inv_repl
,
12258 { "C15 Incoming GWE Inv Repl", "c15.inc_gwe.inv_repl",
12259 FT_PROTOCOL
, BASE_NONE
,
12263 { &hf_c15ch_inc_gwe_admn_dn_ip_gwe_sua_hndl
,
12264 { "IP GWE SipUserAgent Handle", "c15.inc_gwe.admn_dn.ip_gwe_sua_hndl",
12265 FT_UINT32
, BASE_HEX
,
12269 { &hf_c15ch_inc_gwe_admn_dn_ip_gwe_digits
,
12270 { "IP GWE Digits", "c15.inc_gwe.admn_dn.ip_gwe_digits",
12271 FT_STRINGZ
, BASE_NONE
,
12275 { &hf_c15ch_inc_gwe_admn_dn
,
12276 { "C15 Incoming GWE Admn DN", "c15.inc_gwe.admn_dn",
12277 FT_PROTOCOL
, BASE_NONE
,
12281 { &hf_c15ch_inc_gwe_sua_reply_ip_gwe_sua_hndl
,
12282 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.sua_reply.ip_gwe_sua_hndl",
12283 FT_UINT32
, BASE_HEX
,
12287 { &hf_c15ch_inc_gwe_sua_reply_ip_gwe_msg_type
,
12288 { "IP GWE Message Type", "c15.inc_gwe.sua_reply.ip_gwe_msg_type",
12289 FT_UINT32
, BASE_DEC
,
12293 { &hf_c15ch_inc_gwe_sua_reply_ip_gwe_stat_code
,
12294 { "IP GWE Stat Code", "c15.inc_gwe.sua_reply.ip_gwe_stat_code",
12295 FT_UINT32
, BASE_DEC
,
12299 { &hf_c15ch_inc_gwe_sua_reply_ip_gwe_conn_num
,
12300 { "IP GWE Connection Number", "c15.inc_gwe.sua_reply.ip_gwe_conn_num",
12301 FT_UINT32
, BASE_DEC
,
12305 { &hf_c15ch_inc_gwe_sua_reply_nw_mdcn_lsdp_ip
,
12306 { "NW MDCN LSDP IP", "c15.inc_gwe.sua_reply.nw_mdcn_lsdp_ip",
12307 FT_IPv4
, BASE_NONE
,
12311 { &hf_c15ch_inc_gwe_sua_reply_nw_mdcn_lsdp_port
,
12312 { "NW MDCN LSDP Port", "c15.inc_gwe.sua_reply.nw_mdcn_lsdp_port",
12313 FT_UINT32
, BASE_DEC
,
12317 { &hf_c15ch_inc_gwe_sua_reply_nw_mdcn_rsdp_ip
,
12318 { "NW MDCN RSDP IP", "c15.inc_gwe.sua_reply.nw_mdcn_rsdp_ip",
12319 FT_IPv4
, BASE_NONE
,
12323 { &hf_c15ch_inc_gwe_sua_reply_nw_mdcn_rsdp_port
,
12324 { "NW MDCN RSDP Port", "c15.inc_gwe.sua_reply.nw_mdcn_rsdp_port",
12325 FT_UINT32
, BASE_DEC
,
12329 { &hf_c15ch_inc_gwe_sua_reply
,
12330 { "C15 Incoming GWE Sip User Agent Reply", "c15.inc_gwe.sua_reply",
12331 FT_PROTOCOL
, BASE_NONE
,
12335 { &hf_c15ch_inc_gwe_sua_hndl_ip_gwe_sua_hndl
,
12336 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.sua_hndl.ip_gwe_sua_hndl",
12337 FT_UINT32
, BASE_HEX
,
12341 { &hf_c15ch_inc_gwe_sua_hndl
,
12342 { "C15 Incoming GWE Sip User Agent Handle", "c15.inc_gwe.sua_hndl",
12343 FT_PROTOCOL
, BASE_NONE
,
12347 { &hf_c15ch_inc_gwe_tgh_stat_ip_gwe_sua_hndl
,
12348 { "IP GWE Message Sip User Agent Handle", "c15.inc_gwe.sua_tgh_stat.ip_gwe_sua_hndl",
12349 FT_UINT32
, BASE_HEX
,
12353 { &hf_c15ch_inc_gwe_tgh_stat_ip_gwe_tgh_state
,
12354 { "IP GWE TGH State", "c15.inc_gwe.sua_tgh_stat.ip_gwe_tgh_state",
12355 FT_UINT8
, BASE_HEX
,
12356 VALS( tgh_state_types
),
12359 { &hf_c15ch_inc_gwe_tgh_stat
,
12360 { "C15 Incoming GWE Sipu User Agent TGH State", "c15.inc_gwe.sua_tgh_stat",
12361 FT_PROTOCOL
, BASE_NONE
,
12367 static int *ett_third_level_inc_gwe
[] = {
12368 &ett_c15ch_third_level_inc_gwe
,
12369 &ett_c15ch_third_level_inc_gwe_sub1
12372 static hf_register_info hf_third_level_out_gwe
[] = {
12374 { &hf_c15ch_out_gwe_digit_scan_voip_dgmp_override
,
12375 { "VOIP DGMP Override", "c15.out_gwe.digit_scan.voip_dgmp_override",
12376 FT_UINT32
, BASE_DEC
,
12380 { &hf_c15ch_out_gwe_digit_scan_actv_dgmp
,
12381 { "Actv DGMP", "c15.out_gwe.digit_scan.actv_dgmp",
12382 FT_STRINGZ
, BASE_NONE
,
12386 { &hf_c15ch_out_gwe_digit_scan_op_gwe_digit_scan_tone
,
12387 { "OP GWE Digit Scan Tone", "c15.out_gwe.digit_scan.op_gwe_digit_scan_tone",
12388 FT_UINT8
, BASE_DEC
,
12392 { &hf_c15ch_out_gwe_digit_scan_op_gwe_tone_type
,
12393 { "OP GWE Digit Tone Type", "c15.out_gwe.digit_scan.op_gwe_digit_tone_type",
12394 FT_UINT8
, BASE_DEC
,
12398 { &hf_c15ch_out_gwe_digit_scan_op_gwe_tone_to
,
12399 { "OP GWE Digit Tone To", "c15.out_gwe.digit_scan.op_gwe_digit_tone_to",
12400 FT_UINT8
, BASE_DEC
,
12404 { &hf_c15ch_out_gwe_digit_scan_op_gwe_digit_flash
,
12405 { "OP GWE Digit Flash", "c15.out_gwe.digit_scan.op_gwe_digit_flash",
12406 FT_UINT8
, BASE_DEC
,
12410 { &hf_c15ch_out_gwe_digit_scan
,
12411 { "C15 Outgoing GWE Digit Scan", "c15.out_gwe.digit_scan",
12412 FT_PROTOCOL
, BASE_NONE
,
12416 { &hf_c15ch_out_gwe_conn_num_out_gwe_conn_num
,
12417 { "Outgoing GWE Connection Number", "c15.out_gwe.conn_num.out_gwe_conn_num",
12418 FT_UINT32
, BASE_DEC
,
12422 { &hf_c15ch_out_gwe_conn_num
,
12423 { "C15 Outgoing GWE Connection Number", "c15.out_gwe.conn_num",
12424 FT_PROTOCOL
, BASE_NONE
,
12428 { &hf_c15ch_out_gwe_mk_conn_conn_num
,
12429 { "Connection Number", "c15.out_gwe.mk_conn.conn_num",
12430 FT_UINT32
, BASE_DEC
,
12434 { &hf_c15ch_out_gwe_mk_conn_op_mk_conn_rsdp_ip
,
12435 { "OP MK Conn RSDP IP", "c15.out_gwe.mk_conn.op_mk_conn_rsdp_ip",
12436 FT_IPv4
, BASE_NONE
,
12440 { &hf_c15ch_out_gwe_mk_conn_op_mk_conn_rsdp_port
,
12441 { "OP MK Conn RSDP Port", "c15.out_gwe.mk_conn.op_mk_conn_rsdp_port",
12442 FT_UINT32
, BASE_DEC
,
12446 { &hf_c15ch_out_gwe_mk_conn
,
12447 { "C15 Outgoing GWE Mk Connection", "c15.out_gwe.mk_conn",
12448 FT_PROTOCOL
, BASE_NONE
,
12452 { &hf_c15ch_out_gwe_md_conn_conn_num
,
12453 { "Connection Number", "c15.out_gwe.md_conn.conn_num",
12454 FT_UINT32
, BASE_DEC
,
12458 { &hf_c15ch_out_gwe_md_conn_status_code
,
12459 { "Status Code", "c15.out_gwe.md_conn.status_code",
12460 FT_UINT8
, BASE_DEC
,
12464 { &hf_c15ch_out_gwe_md_conn_op_gwe_mode
,
12465 { "OP GWE Mode", "c15.out_gwe.md_conn.op_md_conn_op_gwe_mode",
12466 FT_UINT8
, BASE_DEC
,
12470 { &hf_c15ch_out_gwe_md_conn
,
12471 { "C15 Outgoing GWE MD Connection", "c15.out_gwe.md_conn",
12472 FT_PROTOCOL
, BASE_NONE
,
12476 { &hf_c15ch_out_gwe_call_ans_conn_num
,
12477 { "Connection Number", "c15.out_gwe.call_ans.conn_num",
12478 FT_UINT32
, BASE_DEC
,
12482 { &hf_c15ch_out_gwe_call_ans_op_cl_ans_rsdp_ip
,
12483 { "OP Call Answer RSDP IP", "c15.out_gwe.call_ans.op_cl_ans_rsdp_ip",
12484 FT_IPv4
, BASE_NONE
,
12488 { &hf_c15ch_out_gwe_call_ans_op_cl_ans_rsdp_port
,
12489 { "OP Call Answer RSDP Port", "c15.out_gwe.call_ans.op_cl_ans_rsdp_port",
12490 FT_UINT32
, BASE_DEC
,
12494 { &hf_c15ch_out_gwe_call_ans_encap_isup
,
12495 { "Encapsulated ISUP", "c15.out_gwe.call_ans.encap_isup",
12496 FT_UINT8
, BASE_DEC
,
12500 { &hf_c15ch_out_gwe_call_ans
,
12501 { "C15 Outgoing GWE Call Answer", "c15.out_gwe.call_ans",
12502 FT_PROTOCOL
, BASE_NONE
,
12506 { &hf_c15ch_out_gwe_call_setup_conn_num
,
12507 { "Connection Number", "c15.out_gwe.call_setup.conn_num",
12508 FT_UINT32
, BASE_HEX
,
12512 { &hf_c15ch_out_gwe_call_setup_op_cl_ans_rsdp_ip
,
12513 { "OP Cl Ans RSDP IP", "c15.out_gwe.call_setup.op_cl_ans_rsdp_ip",
12514 FT_IPv4
, BASE_NONE
,
12518 { &hf_c15ch_out_gwe_call_setup_op_cl_ans_rsdp_port
,
12519 { "OP Cl Ans RSDP Port", "c15.out_gwe.call_setup.op_cl_ans_rsdp_port",
12520 FT_UINT32
, BASE_DEC
,
12524 { &hf_c15ch_out_gwe_call_setup_op_gwe_redir_digits
,
12525 { "OP GWE Redir Digits", "c15.out_gwe.call_setup.op_gwe_redir_digits",
12526 FT_STRINGZ
, BASE_NONE
,
12530 { &hf_c15ch_out_gwe_call_setup_op_gwe_rdir_ton
,
12531 { "OP GWE Redirect TON", "c15.out_gwe.call_setup.op_gwe_rdir_ton",
12532 FT_UINT8
, BASE_DEC
,
12536 { &hf_c15ch_out_gwe_call_setup_op_gwe_rdir_np
,
12537 { "OP GWE Redirect NP", "c15.out_gwe.call_setup.op_gwe_rdir_np",
12538 FT_UINT8
, BASE_DEC
,
12542 { &hf_c15ch_out_gwe_call_setup_op_gwe_ocn_digits
,
12543 { "OP GWE OCN Digits", "c15.out_gwe.call_setup.op_gwe_ocn_digits",
12544 FT_STRINGZ
, BASE_NONE
,
12548 { &hf_c15ch_out_gwe_call_setup_op_gwe_chrg_digits
,
12549 { "OP GWE CHRG Digits", "c15.out_gwe.call_setup.op_gwe_chrg_digits",
12550 FT_STRINGZ
, BASE_NONE
,
12554 { &hf_c15ch_out_gwe_call_setup_op_gwe_chrg_noa
,
12555 { "OP GWE CHRG NOA", "c15.out_gwe.call_setup.op_gwe_chrg_noa",
12556 FT_UINT8
, BASE_DEC
,
12560 { &hf_c15ch_out_gwe_call_setup_op_gwe_chrg_npi
,
12561 { "OP GWE CHRG NPI", "c15.out_gwe.call_setup.op_gwe_chrg_npi",
12562 FT_UINT8
, BASE_DEC
,
12566 { &hf_c15ch_out_gwe_call_setup_encap_isup
,
12567 { "Encapsulated ISUP", "c15.out_gwe.call_setup.encap_isup",
12568 FT_UINT8
, BASE_DEC
,
12572 { &hf_c15ch_out_gwe_call_setup
,
12573 { "C15 Outgoing GWE Call Setup", "c15.out_gwe.call_setup",
12574 FT_PROTOCOL
, BASE_NONE
,
12578 { &hf_c15ch_out_gwe_call_prog_conn_num
,
12579 { "Connection Number", "c15.out_gwe.call_prog.conn_num",
12580 FT_UINT32
, BASE_DEC
,
12584 { &hf_c15ch_out_gwe_call_prog_op_gwe_stat_code
,
12585 { "OP GWE Stat Code", "c15.out_gwe.call_prog.op_gwe_stat_code",
12586 FT_UINT32
, BASE_DEC
,
12590 { &hf_c15ch_out_gwe_call_prog_encap_isup
,
12591 { "Encapsulated ISUP", "c15.out_gwe.call_prog.encap_isup",
12592 FT_UINT8
, BASE_DEC
,
12596 { &hf_c15ch_out_gwe_call_prog
,
12597 { "C15 Outgoing GWE Call Prog", "c15.out_gwe.call_prog",
12598 FT_PROTOCOL
, BASE_NONE
,
12602 { &hf_c15ch_out_gwe_call_notify_op_gwe_mwi
,
12603 { "OP GWE MWI", "c15.out_gwe.call_notify.op_gwe_mwi",
12604 FT_UINT32
, BASE_DEC
,
12608 { &hf_c15ch_out_gwe_call_notify_status_code
,
12609 { "Status Code", "c15.out_gwe.call_notify.status_code",
12610 FT_UINT32
, BASE_DEC
,
12614 { &hf_c15ch_out_gwe_call_notify
,
12615 { "C15 Outgoing GWE Call Notify", "c15.out_gwe.call_notify",
12616 FT_PROTOCOL
, BASE_NONE
,
12620 { &hf_c15ch_out_gwe_call_rel_status_code
,
12621 { "Status Code", "c15.out_gwe.call_rel.status_code",
12622 FT_UINT32
, BASE_DEC
,
12626 { &hf_c15ch_out_gwe_call_rel_encap_isup
,
12627 { "Encapsulated ISUP", "c15.out_gwe.call_rel.encap_isup",
12628 FT_UINT8
, BASE_DEC
,
12632 { &hf_c15ch_out_gwe_call_rel
,
12633 { "C15 Outgoing GWE Call Release", "c15.out_gwe.call_rel",
12634 FT_PROTOCOL
, BASE_NONE
,
12638 { &hf_c15ch_out_gwe_update_ni_tn_ni
,
12639 { "NI", "c15.out_gwe.update_ni_tn.ni",
12640 FT_UINT32
, BASE_HEX
,
12644 { &hf_c15ch_out_gwe_update_ni_tn_tn
,
12645 { "TN", "c15.out_gwe.update_ni_tn.tn",
12646 FT_UINT32
, BASE_HEX
,
12650 { &hf_c15ch_out_gwe_update_ni_tn_ni_tn
,
12651 { "TN", "c15.out_gwe.update_ni_tn.ni_tn",
12652 FT_UINT64
, BASE_HEX
,
12656 { &hf_c15ch_out_gwe_update_ni_tn
,
12657 { "C15 Outgoing GWE Update NI and TN", "c15.out_gwe.update_ni_tn",
12658 FT_PROTOCOL
, BASE_NONE
,
12662 { &hf_c15ch_out_gwe_pcm_data_rb_ua_handle_near
,
12663 { "RB User Agent Handle (Near)", "c15.out_gwe.pcm_data.rb_ua_handle_near",
12664 FT_UINT32
, BASE_HEX
,
12668 { &hf_c15ch_out_gwe_pcm_data_rb_ua_handle_far
,
12669 { "RB User Agent Handle (Far)", "c15.out_gwe.pcm_data.rb_ua_handle_far",
12670 FT_UINT32
, BASE_HEX
,
12674 { &hf_c15ch_out_gwe_pcm_data
,
12675 { "C15 Outgoing GWE PCM Data", "c15.out_gwe.pcm_data",
12676 FT_PROTOCOL
, BASE_NONE
,
12680 { &hf_c15ch_out_gwe_blf_data_rb_ua_handle
,
12681 { "RB User Agent Handle", "c15.out_gwe.blf_data.rb_ua_handle",
12682 FT_UINT32
, BASE_HEX
,
12686 { &hf_c15ch_out_gwe_blf_data_rb_type
,
12687 { "RB Type", "c15.out_gwe.blf_data.rb_type",
12688 FT_UINT8
, BASE_DEC
,
12692 { &hf_c15ch_out_gwe_blf_data_med_ni
,
12693 { "Med NI", "c15.out_gwe.blf_data.med_ni",
12694 FT_UINT32
, BASE_HEX
,
12698 { &hf_c15ch_out_gwe_blf_data_med_tn
,
12699 { "Med TN", "c15.out_gwe.blf_data.med_tn",
12700 FT_UINT32
, BASE_HEX
,
12704 { &hf_c15ch_out_gwe_blf_data_med_ni_tn
,
12705 {"Med NI/TN", "c15.out_gwe.blf_data.med_ni_tn",
12706 FT_UINT64
, BASE_HEX
,
12710 { &hf_c15ch_out_gwe_blf_data_rb_ni
,
12711 { "RB NI", "c15.out_gwe.blf_data.rb_ni",
12712 FT_UINT32
, BASE_HEX
,
12716 { &hf_c15ch_out_gwe_blf_data_rb_tn
,
12717 { "RB TN", "c15.out_gwe.blf_data.rb_tn",
12718 FT_UINT32
, BASE_HEX
,
12722 { &hf_c15ch_out_gwe_blf_data_rb_ni_tn
,
12723 {"RB NI/TN", "c15.out_gwe.blf_data.rb_ni_tn",
12724 FT_UINT64
, BASE_HEX
,
12728 { &hf_c15ch_out_gwe_blf_data
,
12729 {"C15 Outgoing GWE BLF Data", "c15.out_gwe.blf_data",
12730 FT_PROTOCOL
, BASE_NONE
,
12734 { &hf_c15ch_out_gwe_out_cot_ni
,
12735 { "NI", "c15.out_gwe.out_cot.ni",
12736 FT_UINT32
, BASE_HEX
,
12740 { &hf_c15ch_out_gwe_out_cot_tn
,
12741 { "TN", "c15.out_gwe.out_cot.tn",
12742 FT_UINT32
, BASE_HEX
,
12746 { &hf_c15ch_out_gwe_out_cot_ni_tn
,
12747 {"NI/TN", "c15.out_gwe.out_cot.ni_tn",
12748 FT_UINT64
, BASE_HEX
,
12752 { &hf_c15ch_out_gwe_out_cot
,
12753 {"C15 Outgoing GWE Out COT", "c15.out_gwe.out_cot",
12754 FT_PROTOCOL
, BASE_NONE
,
12758 { &hf_c15ch_out_gwe_ring_line_op_gwe_display
,
12759 { "OP GWE Display", "c15.out_gwe.ring_line.op_gwe_display",
12760 FT_UINT8
, BASE_DEC
,
12764 { &hf_c15ch_out_gwe_ring_line_op_gwe_display_chars
,
12765 { "OP GWE Display Chars", "c15.out_gwe.ring_line.op_gwe_display_chars",
12766 FT_STRINGZ
, BASE_NONE
,
12770 { &hf_c15ch_out_gwe_ring_line
,
12771 { "C15 Outgoing GWE Ring Line", "c15.out_gwe.ring_line",
12772 FT_PROTOCOL
, BASE_NONE
,
12776 { &hf_c15ch_out_gwe_audit_conn_ni
,
12777 { "NI", "c15.out_gwe.audit_conn.ni",
12778 FT_UINT32
, BASE_HEX
,
12782 { &hf_c15ch_out_gwe_audit_conn_tn
,
12783 { "TN", "c15.out_gwe.audit_conn.tn",
12784 FT_UINT32
, BASE_HEX
,
12788 { &hf_c15ch_out_gwe_audit_conn_ni_tn
,
12789 {"NI/TN", "c15.out_gwe.audit_conn.ni_tn",
12790 FT_UINT64
, BASE_HEX
,
12794 { &hf_c15ch_out_gwe_audit_conn_context
,
12795 { "Context", "c15.out_gwe.audit_conn.context",
12796 FT_UINT32
, BASE_DEC
,
12800 { &hf_c15ch_out_gwe_audit_conn
,
12801 { "C15 Outgoing GWE Audit Connection", "c15.out_gwe.audit_conn",
12802 FT_PROTOCOL
, BASE_NONE
,
12806 { &hf_c15ch_out_gwe_sac_sub_valid_op_gwe_subs_valid
,
12807 { "OP GWE Subs Valid", "c15.out_gwe.sac_sub_valid.op_gwe_subs_valid",
12808 FT_UINT8
, BASE_DEC
,
12812 { &hf_c15ch_out_gwe_sac_sub_valid_op_gwe_num_list_items
,
12813 { "OP GWE Num List Items", "c15.out_gwe.sac_sub_valid.op_gwe_num_list_items",
12814 FT_UINT32
, BASE_DEC
,
12818 { &hf_c15ch_out_gwe_sac_sub_valid
,
12819 { "C15 Outgoing GWE SAC Subscription Valid", "c15.out_gwe.sac_sub_valid",
12820 FT_PROTOCOL
, BASE_NONE
,
12824 { &hf_c15ch_out_gwe_sac_notify_op_gwe_blf_state
,
12825 { "OP GWE BLF State", "c15.out_gwe.sac_notify.op_gwe_blf_state",
12826 FT_UINT8
, BASE_DEC
,
12830 { &hf_c15ch_out_gwe_sac_notify_op_gwe_subs_state
,
12831 { "OP GWE Subscription State", "c15.out_gwe.sac_notify.op_gwe_subs_state",
12832 FT_UINT8
, BASE_DEC
,
12836 { &hf_c15ch_out_gwe_sac_notify
,
12837 { "C15 Outgoing GWE SAC Notify", "c15.out_gwe.sac_notify",
12838 FT_PROTOCOL
, BASE_NONE
,
12842 { &hf_c15ch_out_gwe_sac_list_entry_op_gwe_med_uri
,
12843 { "OP GWE Med URI", "c15.out_gwe.sac_list_entry.op_gwe_med_uri",
12844 FT_STRINGZ
, BASE_NONE
,
12848 { &hf_c15ch_out_gwe_sac_list_entry
,
12849 { "C15 Outgoing GWE SAC List Entry", "c15.out_gwe.sac_list_entry",
12850 FT_PROTOCOL
, BASE_NONE
,
12854 { &hf_c15ch_out_gwe_rv_subs_data_rb_fe_ni
,
12855 { "RB Fe NI", "c15.out_gwe.rv_subs_data.rb_fe_ni",
12856 FT_UINT32
, BASE_HEX
,
12860 { &hf_c15ch_out_gwe_rv_subs_data_rb_fe_tn
,
12861 { "RB Fe TN", "c15.out_gwe.rv_subs_data.rb_fe_tn",
12862 FT_UINT32
, BASE_HEX
,
12866 { &hf_c15ch_out_gwe_rv_subs_data_rb_fe_ni_tn
,
12867 {"Rb Fe NI/TN", "c15.out_gwe.rv_subs_data.rb_fe_ni_tn",
12868 FT_UINT64
, BASE_HEX
,
12872 { &hf_c15ch_out_gwe_rv_subs_data
,
12873 {"C15 Outgoing GWE Radvision Subscription Data", "c15.out_gwe.rv_subs_data",
12874 FT_PROTOCOL
, BASE_NONE
,
12878 { &hf_c15ch_out_gwe_update_rec_addr_op_new_rec_addr
,
12879 { "OP New Rec Addr", "c15.out_gwe.update_rec_addr.op_new_rec_addr",
12880 FT_UINT32
, BASE_HEX
,
12884 { &hf_c15ch_out_gwe_update_rec_addr
,
12885 { "C15 Outgoing GWE Update Rec Address", "c15.out_gwe.update_rec_addr",
12886 FT_PROTOCOL
, BASE_NONE
,
12890 { &hf_c15ch_out_gwe_del_subs_ua_op_sip_ua_hndl
,
12891 { "OP SIP UA Handle", "c15.out_gwe.del_subs_ua.op_sip_ua_hndl",
12892 FT_UINT32
, BASE_HEX
,
12896 { &hf_c15ch_out_gwe_del_subs_ua
,
12897 { "C15 Outgoing GWE Delete Subscription User Agent", "c15.out_gwe.del_subs_ua",
12898 FT_PROTOCOL
, BASE_NONE
,
12902 { &hf_c15ch_out_gwe_line_sprvsn_op_gwe_ofhk_event
,
12903 { "OP GWE Off-Hook Event", "c15.out_gwe.line_sprvsn.op_gwe_ofhk_event",
12904 FT_UINT8
, BASE_DEC
,
12908 { &hf_c15ch_out_gwe_line_sprvsn_op_gwe_onhk_event
,
12909 { "OP GWE On-Hook Event", "c15.out_gwe.line_sprvsn.op_gwe_onhk_event",
12910 FT_UINT8
, BASE_DEC
,
12914 { &hf_c15ch_out_gwe_line_sprvsn_op_gwe_flhk_event
,
12915 { "OP GWE Flash-Hook Event", "c15.out_gwe.line_sprvsn.op_gwe_flhk_event",
12916 FT_UINT8
, BASE_DEC
,
12920 { &hf_c15ch_out_gwe_line_sprvsn
,
12921 { "C15 Outgoing GWE Line SPRVSN", "c15.out_gwe.line_sprvsn",
12922 FT_PROTOCOL
, BASE_NONE
,
12926 { &hf_c15ch_out_gwe_sip_info_op_gwe_sip_info_type
,
12927 { "OP GWE SIP Info Type", "c15.out_gwe.sip_info.op_gwe_sip_info_type",
12928 FT_UINT8
, BASE_DEC
,
12932 { &hf_c15ch_out_gwe_sip_info_op_gwe_sip_info
,
12933 { "OP GWE SIP Info", "c15.out_gwe.sip_info.op_gwe_sip_info",
12934 FT_UINT32
, BASE_DEC
,
12938 { &hf_c15ch_out_gwe_sip_info
,
12939 { "C15 Outgoing GWE SIP Info", "c15.out_gwe.sip_info",
12940 FT_PROTOCOL
, BASE_NONE
,
12944 { &hf_c15ch_out_gwe_sip_refer_op_gwe_refer_ua_hndl
,
12945 { "OP GWE Refer User Agent Handle", "c15.out_gwe.sip_refer.op_gwe_refer_ua_hndl",
12946 FT_UINT32
, BASE_HEX
,
12950 { &hf_c15ch_out_gwe_sip_refer
,
12951 { "C15 Outgoing GWE SIP Refer", "c15.out_gwe.sip_refer",
12952 FT_PROTOCOL
, BASE_NONE
,
12958 static int *ett_third_level_out_gwe
[] = {
12959 &ett_c15ch_third_level_out_gwe
,
12960 &ett_c15ch_third_level_out_gwe_sub1
,
12961 &ett_c15ch_third_level_out_gwe_sub2
12965 /* first level: Call History Common Header */
12966 proto_c15ch
= proto_register_protocol("C15 Call History Common Header Protocol", "C15.ch", "c15.ch");
12967 proto_register_field_array(proto_c15ch
, hf
, array_length(hf
));
12968 proto_register_subtree_array(ett
, array_length(ett
));
12970 c15ch_handle
= register_dissector("c15.ch", dissect_c15ch
, proto_c15ch
);
12972 /* second level dissector */
12973 proto_c15ch_second_level
= proto_register_protocol("C15 Call History Protocol", "C15", "c15");
12974 proto_register_field_array(proto_c15ch_second_level
, hf_second_level
, array_length(hf_second_level
));
12975 proto_register_subtree_array(ett_second_level
, array_length(ett_second_level
));
12976 c15ch_dissector_table
= register_dissector_table("c15", "C15", proto_c15ch
, FT_UINT32
, BASE_DEC
);
12980 proto_c15ch_third_level_tone
= proto_register_protocol("C15 Tone", "C15.TONE", "c15.tone");
12981 proto_register_field_array(proto_c15ch_third_level_tone
, hf_third_level_tone
, array_length(hf_third_level_tone
));
12982 proto_register_subtree_array(ett_third_level_tone
, array_length(ett_third_level_tone
));
12983 c15ch_tone_dissector_table
= register_dissector_table("c15.tone", "C15.TONE", proto_c15ch_third_level_tone
, FT_UINT32
, BASE_DEC
);
12986 proto_c15ch_third_level_inc_gwe
= proto_register_protocol("C15 Incoming GWE", "C15.INC_GWE", "c15.inc_gwe");
12987 proto_register_field_array(proto_c15ch_third_level_inc_gwe
, hf_third_level_inc_gwe
, array_length(hf_third_level_inc_gwe
));
12988 proto_register_subtree_array(ett_third_level_inc_gwe
, array_length(ett_third_level_inc_gwe
));
12989 c15ch_inc_gwe_dissector_table
= register_dissector_table("c15.inc_gwe", "C15.INC_GWE", proto_c15ch_third_level_inc_gwe
, FT_UINT32
, BASE_DEC
);
12992 proto_c15ch_third_level_out_gwe
= proto_register_protocol("C15 Outgoing GWE", "C15.out_gwe", "c15.out_gwe");
12993 proto_register_field_array(proto_c15ch_third_level_out_gwe
, hf_third_level_out_gwe
, array_length(hf_third_level_out_gwe
));
12994 proto_register_subtree_array(ett_third_level_out_gwe
, array_length(ett_third_level_out_gwe
));
12995 c15ch_out_gwe_dissector_table
= register_dissector_table("c15.out_gwe", "C15.out_gwe", proto_c15ch_third_level_out_gwe
, FT_UINT32
, BASE_DEC
);
13000 /* heartbeat dissector */
13001 void proto_reg_handoff_c15ch_hbeat(void)
13003 dissector_add_uint("ethertype", ETHERTYPE_C15_HBEAT
, c15ch_hbeat_handle
);
13006 /* c15 non-heartbeat dissectors : first-level, second-level, and third-level */
13007 void proto_reg_handoff_c15ch(void)
13009 dissector_handle_t c15ch_second_level_handle
;
13010 dissector_handle_t c15ch_third_level_handle
;
13012 dissector_add_uint("ethertype", ETHERTYPE_C15_CH
, c15ch_handle
);
13015 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_cp_state_ch
, proto_c15ch_second_level
);
13016 dissector_add_uint("c15", C15_CP_STATE_CH
, c15ch_second_level_handle
);
13018 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_cp_event
, proto_c15ch_second_level
);
13019 dissector_add_uint("c15", C15_CP_EVENT
, c15ch_second_level_handle
);
13021 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_isup
, proto_c15ch_second_level
);
13022 dissector_add_uint("c15", C15_ISUP
, c15ch_second_level_handle
);
13024 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_nitnxlate
, proto_c15ch_second_level
);
13025 dissector_add_uint("c15", C15_NITN_XLATE
, c15ch_second_level_handle
);
13027 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_route
, proto_c15ch_second_level
);
13028 dissector_add_uint("c15", C15_ROUTE
, c15ch_second_level_handle
);
13030 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_sccp
, proto_c15ch_second_level
);
13031 dissector_add_uint("c15", C15_SCCP
, c15ch_second_level_handle
);
13033 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_orig
, proto_c15ch_second_level
);
13034 dissector_add_uint("c15", C15_CP_ORIG
, c15ch_second_level_handle
);
13036 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_conn
, proto_c15ch_second_level
);
13037 dissector_add_uint("c15", C15_CONN
, c15ch_second_level_handle
);
13039 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_ntwk_conn
, proto_c15ch_second_level
);
13040 dissector_add_uint("c15", C15_NTWK_CONN
, c15ch_second_level_handle
);
13042 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_mkbrk
, proto_c15ch_second_level
);
13043 dissector_add_uint("c15", C15_MK_BRK
, c15ch_second_level_handle
);
13045 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_pathfind
, proto_c15ch_second_level
);
13046 dissector_add_uint("c15", C15_PATH_FIND
, c15ch_second_level_handle
);
13048 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_pathidle
, proto_c15ch_second_level
);
13049 dissector_add_uint("c15", C15_PATH_IDLE
, c15ch_second_level_handle
);
13051 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_dest_digits
, proto_c15ch_second_level
);
13052 dissector_add_uint("c15", C15_DEST_DIGITS
, c15ch_second_level_handle
);
13054 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_twc_rswch
, proto_c15ch_second_level
);
13055 dissector_add_uint("c15", C15_TWC_RSWCH
, c15ch_second_level_handle
);
13057 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_srcedest
, proto_c15ch_second_level
);
13058 dissector_add_uint("c15", C15_SRCE_DEST
, c15ch_second_level_handle
);
13060 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe
, proto_c15ch_second_level
);
13061 dissector_add_uint("c15", C15_INC_GWE
, c15ch_second_level_handle
);
13063 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe
, proto_c15ch_second_level
);
13064 dissector_add_uint("c15", C15_OUT_GWE
, c15ch_second_level_handle
);
13066 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_outgwebc
, proto_c15ch_second_level
);
13067 dissector_add_uint("c15", C15_OUT_GWE_BC
, c15ch_second_level_handle
);
13069 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_q931
, proto_c15ch_second_level
);
13070 dissector_add_uint("c15", C15_Q931
, c15ch_second_level_handle
);
13072 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_ama
, proto_c15ch_second_level
);
13073 dissector_add_uint("c15", C15_AMA
, c15ch_second_level_handle
);
13075 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_qos
, proto_c15ch_second_level
);
13076 dissector_add_uint("c15", C15_QOS
, c15ch_second_level_handle
);
13078 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_echo_cancel
, proto_c15ch_second_level
);
13079 dissector_add_uint("c15", C15_ECHO_CANCEL
, c15ch_second_level_handle
);
13081 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_tone
, proto_c15ch_second_level
);
13082 dissector_add_uint("c15", C15_TONE
, c15ch_second_level_handle
);
13084 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_encap_isup
, proto_c15ch_second_level
);
13085 dissector_add_uint("c15", C15_ENCAP_ISUP
, c15ch_second_level_handle
);
13087 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_tcap
, proto_c15ch_second_level
);
13088 dissector_add_uint("c15", C15_TCAP
, c15ch_second_level_handle
);
13090 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_clli
, proto_c15ch_second_level
);
13091 dissector_add_uint("c15", C15_CLLI
, c15ch_second_level_handle
);
13093 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_info
, proto_c15ch_second_level
);
13094 dissector_add_uint("c15", C15_INFO
, c15ch_second_level_handle
);
13096 /* Second level for new Generic Messages, Correlate Messages, Alarm Messages, and TTY Messages */
13097 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_generic_msg_1
, proto_c15ch_second_level
);
13098 dissector_add_uint("c15", C15_GENERIC_MSG_1
, c15ch_second_level_handle
);
13100 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_generic_msg_2
, proto_c15ch_second_level
);
13101 dissector_add_uint("c15", C15_GENERIC_MSG_2
, c15ch_second_level_handle
);
13103 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_generic_msg_3
, proto_c15ch_second_level
);
13104 dissector_add_uint("c15", C15_GENERIC_MSG_3
, c15ch_second_level_handle
);
13106 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_generic_msg_4
, proto_c15ch_second_level
);
13107 dissector_add_uint("c15", C15_GENERIC_MSG_4
, c15ch_second_level_handle
);
13109 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_generic_msg_5
, proto_c15ch_second_level
);
13110 dissector_add_uint("c15", C15_GENERIC_MSG_5
, c15ch_second_level_handle
);
13112 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_correlate_msg
, proto_c15ch_second_level
);
13113 dissector_add_uint("c15", C15_CORRELATE_MSG
, c15ch_second_level_handle
);
13115 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_sip_reg_subs_report
, proto_c15ch_second_level
);
13116 dissector_add_uint("c15", C15_SIP_REG_SUBS_REPORT
, c15ch_second_level_handle
);
13118 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_sys_alarm
, proto_c15ch_second_level
);
13119 dissector_add_uint("c15", C15_SYS_ALARM
, c15ch_second_level_handle
);
13121 c15ch_second_level_handle
= create_dissector_handle(dissect_c15ch_c15_tty_msg
, proto_c15ch_second_level
);
13122 dissector_add_uint("c15", C15_TTY_MSG
, c15ch_second_level_handle
);
13126 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_tone_cot_control
, proto_c15ch_third_level_tone
);
13127 dissector_add_uint("c15.tone", C15_TONE_COT
, c15ch_third_level_handle
);
13129 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_tone_cpm
, proto_c15ch_third_level_tone
);
13130 dissector_add_uint("c15.tone", C15_TONE_CPM
, c15ch_third_level_handle
);
13132 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_tone_give_tone
, proto_c15ch_third_level_tone
);
13133 dissector_add_uint("c15.tone", C15_TONE_GIVE_TONE
, c15ch_third_level_handle
);
13135 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_tone_madn_ring
, proto_c15ch_third_level_tone
);
13136 dissector_add_uint("c15.tone", C15_TONE_MADN_RING
, c15ch_third_level_handle
);
13138 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_tone_opls
, proto_c15ch_third_level_tone
);
13139 dissector_add_uint("c15.tone", C15_TONE_OPLS
, c15ch_third_level_handle
);
13141 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_tone_rcvr
, proto_c15ch_third_level_tone
);
13142 dissector_add_uint("c15.tone", C15_TONE_RCVR
, c15ch_third_level_handle
);
13144 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_tone_timeout
, proto_c15ch_third_level_tone
);
13145 dissector_add_uint("c15.tone", C15_TONE_TIMEOUT
, c15ch_third_level_handle
);
13147 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_tone_tone_control
, proto_c15ch_third_level_tone
);
13148 dissector_add_uint("c15.tone", C15_TONE_TONE_CONTROL
, c15ch_third_level_handle
);
13151 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_reply
, proto_c15ch_third_level_inc_gwe
);
13152 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_REPLY
, c15ch_third_level_handle
);
13154 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_bc_pgi
, proto_c15ch_third_level_inc_gwe
);
13155 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_BC_PGI
, c15ch_third_level_handle
);
13157 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_mgcp_dlcx
, proto_c15ch_third_level_inc_gwe
);
13158 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_MGCP_DLCX
, c15ch_third_level_handle
);
13160 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_h248_digit
, proto_c15ch_third_level_inc_gwe
);
13161 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_H248_DIGIT
, c15ch_third_level_handle
);
13163 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_voip_cot
, proto_c15ch_third_level_inc_gwe
);
13164 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_VOIP_COT
, c15ch_third_level_handle
);
13166 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_notify
, proto_c15ch_third_level_inc_gwe
);
13167 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_NOTIFY
, c15ch_third_level_handle
);
13169 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_admn_updt
, proto_c15ch_third_level_inc_gwe
);
13170 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_ADMN_UPDT_REC
, c15ch_third_level_handle
);
13172 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_cl_setup
, proto_c15ch_third_level_inc_gwe
);
13173 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_CL_SETUP
, c15ch_third_level_handle
);
13175 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_ptrk_setup
, proto_c15ch_third_level_inc_gwe
);
13176 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_PTRK_SETUP
, c15ch_third_level_handle
);
13178 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_cl_prog
, proto_c15ch_third_level_inc_gwe
);
13179 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_CL_PROG
, c15ch_third_level_handle
);
13181 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_cl_ans
, proto_c15ch_third_level_inc_gwe
);
13182 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_CL_ANS
, c15ch_third_level_handle
);
13184 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_cl_rel
, proto_c15ch_third_level_inc_gwe
);
13185 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_CL_REL
, c15ch_third_level_handle
);
13187 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_ntwk_mod
, proto_c15ch_third_level_inc_gwe
);
13188 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_NTWK_MOD
, c15ch_third_level_handle
);
13190 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_rv_avail
, proto_c15ch_third_level_inc_gwe
);
13191 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_RV_AVAIL
, c15ch_third_level_handle
);
13193 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_cl_redir
, proto_c15ch_third_level_inc_gwe
);
13194 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_CL_REDIR
, c15ch_third_level_handle
);
13196 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_cl_refer
, proto_c15ch_third_level_inc_gwe
);
13197 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_CL_REFER
, c15ch_third_level_handle
);
13199 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_chg_hndl
, proto_c15ch_third_level_inc_gwe
);
13200 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_CHG_HDL
, c15ch_third_level_handle
);
13202 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_subs_chg_hndl
, proto_c15ch_third_level_inc_gwe
);
13203 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_SUBS_CHG_HDL
, c15ch_third_level_handle
);
13205 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_info
, proto_c15ch_third_level_inc_gwe
);
13206 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_INFO
, c15ch_third_level_handle
);
13208 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_inv_repl
, proto_c15ch_third_level_inc_gwe
);
13209 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_INV_REPL
, c15ch_third_level_handle
);
13211 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_admn_dn
, proto_c15ch_third_level_inc_gwe
);
13212 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_ADMN_DN
, c15ch_third_level_handle
);
13214 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_sua_reply
, proto_c15ch_third_level_inc_gwe
);
13215 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_SUA_REPLY
, c15ch_third_level_handle
);
13217 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_sua_hndl
, proto_c15ch_third_level_inc_gwe
);
13218 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_SUA_HNDL
, c15ch_third_level_handle
);
13220 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_inc_gwe_tgh_stat
, proto_c15ch_third_level_inc_gwe
);
13221 dissector_add_uint("c15.inc_gwe", C15_INC_GWE_SUA_TGH_STAT
, c15ch_third_level_handle
);
13224 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_digit_scan
, proto_c15ch_third_level_out_gwe
);
13225 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_DIGIT_SCAN
, c15ch_third_level_handle
);
13227 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_conn_num
, proto_c15ch_third_level_out_gwe
);
13228 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_CONN_NUM
, c15ch_third_level_handle
);
13230 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_mk_conn
, proto_c15ch_third_level_out_gwe
);
13231 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_MK_CONN
, c15ch_third_level_handle
);
13233 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_md_conn
, proto_c15ch_third_level_out_gwe
);
13234 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_MD_CONN
, c15ch_third_level_handle
);
13236 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_call_ans
, proto_c15ch_third_level_out_gwe
);
13237 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_CALL_ANS
, c15ch_third_level_handle
);
13239 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_call_setup
, proto_c15ch_third_level_out_gwe
);
13240 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_CALL_SETUP
, c15ch_third_level_handle
);
13242 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_call_prog
, proto_c15ch_third_level_out_gwe
);
13243 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_CALL_PROG
, c15ch_third_level_handle
);
13245 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_call_notify
, proto_c15ch_third_level_out_gwe
);
13246 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_CALL_NOTIFY
, c15ch_third_level_handle
);
13248 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_call_rel
, proto_c15ch_third_level_out_gwe
);
13249 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_CALL_REL
, c15ch_third_level_handle
);
13251 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_update_ni_tn
, proto_c15ch_third_level_out_gwe
);
13252 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_UPDT_NI_TN
, c15ch_third_level_handle
);
13254 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_pcm_data
, proto_c15ch_third_level_out_gwe
);
13255 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_PCM_DATA
, c15ch_third_level_handle
);
13257 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_blf_data
, proto_c15ch_third_level_out_gwe
);
13258 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_BLF_DATA
, c15ch_third_level_handle
);
13260 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_out_cot
, proto_c15ch_third_level_out_gwe
);
13261 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_COT
, c15ch_third_level_handle
);
13263 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_ring_line
, proto_c15ch_third_level_out_gwe
);
13264 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_RING_LINE
, c15ch_third_level_handle
);
13266 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_audit_conn
, proto_c15ch_third_level_out_gwe
);
13267 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_AUDIT_CONN
, c15ch_third_level_handle
);
13269 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_sac_sub_valid
, proto_c15ch_third_level_out_gwe
);
13270 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_SAC_SUB_VALID
, c15ch_third_level_handle
);
13272 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_sac_notify
, proto_c15ch_third_level_out_gwe
);
13273 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_SAC_NOTIFY
, c15ch_third_level_handle
);
13275 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_sac_list_entry
, proto_c15ch_third_level_out_gwe
);
13276 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_SAC_LIST_ENTRY
, c15ch_third_level_handle
);
13278 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_rv_subs_data
, proto_c15ch_third_level_out_gwe
);
13279 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_RV_SUBS_DATA
, c15ch_third_level_handle
);
13281 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_update_rec_addr
, proto_c15ch_third_level_out_gwe
);
13282 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_UPDT_REC_ADDR
, c15ch_third_level_handle
);
13284 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_del_subs_ua
, proto_c15ch_third_level_out_gwe
);
13285 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_DEL_SUBS_UA
, c15ch_third_level_handle
);
13287 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_line_sprvsn
, proto_c15ch_third_level_out_gwe
);
13288 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_LINE_SPRVSN
, c15ch_third_level_handle
);
13290 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_sip_info
, proto_c15ch_third_level_out_gwe
);
13291 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_SIP_INFO
, c15ch_third_level_handle
);
13293 c15ch_third_level_handle
= create_dissector_handle(dissect_c15ch_out_gwe_sip_refer
, proto_c15ch_third_level_out_gwe
);
13294 dissector_add_uint("c15.out_gwe", C15_OUT_GWE_SIP_REFER
, c15ch_third_level_handle
);
13296 /* find external dissectors */
13297 general_isup_handle
= find_dissector_add_dependency("isup", proto_c15ch
);
13298 general_sccp_handle
= find_dissector_add_dependency("sccp", proto_c15ch
);
13299 general_q931_handle
= find_dissector_add_dependency("q931", proto_c15ch
);
13304 * Editor modelines - https://www.wireshark.org/tools/modelines.html
13307 * c-basic-offset: 4
13309 * indent-tabs-mode: nil
13312 * vi: set shiftwidth=4 tabstop=8 expandtab:
13313 * :indentSize=4:tabSize=8:noTabs=true: