aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/tetra/tetra.asn
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/asn1/tetra/tetra.asn')
-rw-r--r--epan/dissectors/asn1/tetra/tetra.asn2337
1 files changed, 2337 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/tetra/tetra.asn b/epan/dissectors/asn1/tetra/tetra.asn
new file mode 100644
index 0000000000..e197d13fb6
--- /dev/null
+++ b/epan/dissectors/asn1/tetra/tetra.asn
@@ -0,0 +1,2337 @@
+-- TETRA packet dissection
+-- Copyright (c) 2007 - 2013 Professional Mobile Communication Research Group,
+-- Beijing Institute of Technology, China
+--
+
+UMAC-MODULE DEFINITIONS AUTOMATIC TAGS ::=
+BEGIN
+
+AACH ::= SEQUENCE
+{
+ function INTEGER(0..3),
+ field1 INTEGER(0..63),
+ field2 INTEGER(0..63)
+}
+
+BSCH ::= SEQUENCE
+{
+ system-code System-Code,
+ colour-code Colour-Code,
+ timeslot-number Timeslot-Number,
+ frame-number Frame-Number,
+ multiple-frame-number Multiple-Frame-Number,
+ sharing-mod Sharing-Mod,
+ ts-reserved-frames TS-Reserved-Frames,
+ u-plane-dtx U-Plane-DTX,
+ frame-18-extension Frame-18-Extension,
+ reserved Reserved ,
+ tm-sdu MLE-Sync
+}
+ System-Code ::= ENUMERATED
+ {
+ ets-300-392-2(0),
+ ets-300-392-2anden-300-392-7(1),
+ en-300-392-2-v2-3-2orlateranden-300-392-7(2),
+ v-d-reserved(3),
+ v-d-reserved(4),
+ v-d-reserved(5),
+ v-d-reserved(6),
+ v-d-reserved(7),
+ reserved(8),
+ reserved(9),
+ direct-mode-operation(10),
+ direct-mode-operation(11),
+ direct-mode-operation(12),
+ direct-mode-operation(13),
+ direct-mode-operation(14),
+ direct-mode-operation(15)
+ }
+ Colour-Code ::= ENUMERATED
+ {
+ pre-defined(0),
+ operator-defined(1),
+ operator-defined(2),
+ operator-defined(3),
+ operator-defined(4),
+ operator-defined(5),
+ operator-defined(6),
+ operator-defined(7),
+ operator-defined(8),
+ operator-defined(9),
+ operator-defined(10),
+ operator-defined(11),
+ operator-defined(12),
+ operator-defined(13),
+ operator-defined(14),
+ operator-defined(15),
+ operator-defined(16),
+ operator-defined(17),
+ operator-defined(18),
+ operator-defined(19),
+ operator-defined(20),
+ operator-defined(21),
+ operator-defined(22),
+ operator-defined(23),
+ operator-defined(24),
+ operator-defined(25),
+ operator-defined(26),
+ operator-defined(27),
+ operator-defined(28),
+ operator-defined(29),
+ operator-defined(30),
+ operator-defined(31),
+ operator-defined(32),
+ operator-defined(33),
+ operator-defined(34),
+ operator-defined(35),
+ operator-defined(36),
+ operator-defined(37),
+ operator-defined(38),
+ operator-defined(39),
+ operator-defined(40),
+ operator-defined(41),
+ operator-defined(42),
+ operator-defined(43),
+ operator-defined(44),
+ operator-defined(45),
+ operator-defined(46),
+ operator-defined(47),
+ operator-defined(48),
+ operator-defined(49),
+ operator-defined(50),
+ operator-defined(51),
+ operator-defined(52),
+ operator-defined(53),
+ operator-defined(54),
+ operator-defined(55),
+ operator-defined(56),
+ operator-defined(57),
+ operator-defined(58),
+ operator-defined(59),
+ operator-defined(60),
+ operator-defined(61),
+ operator-defined(62),
+ operator-defined(63)
+ }
+ Timeslot-Number ::= ENUMERATED
+ {
+ timeslot-1(0),
+ timeslot-2(1),
+ timeslot-3(2),
+ timeslot-4(3)
+ }
+ Frame-Number ::= ENUMERATED
+ {
+ reserved(0),
+ frame-1(1),
+ frame-2(2),
+ frame-3(3),
+ frame-4(4),
+ frame-5(5),
+ frame-6(6),
+ frame-7(7),
+ frame-8(8),
+ frame-9(9),
+ frame-10(10),
+ frame-11(11),
+ frame-12(12),
+ frame-13(13),
+ frame-14(14),
+ frame-15(15),
+ frame-16(16),
+ frame-17(17),
+ frame-18(18),
+ reserved(19),
+ reserved(20),
+ reserved(21),
+ reserved(22),
+ reserved(23),
+ reserved(24),
+ reserved(25),
+ reserved(26),
+ reserved(27),
+ reserved(28),
+ reserved(29),
+ reserved(30),
+ reserved(31)
+ }
+ Multiple-Frame-Number ::= ENUMERATED
+ {
+ reserved(0),
+ multiframe-1(1),
+ multiframe-2(2),
+ multiframe-3(3),
+ multiframe-4(4),
+ multiframe-5(5),
+ multiframe-6(6),
+ multiframe-7(7),
+ multiframe-8(8),
+ multiframe-9(9),
+ multiframe-10(10),
+ multiframe-11(11),
+ multiframe-12(12),
+ multiframe-13(13),
+ multiframe-14(14),
+ multiframe-15(15),
+ multiframe-16(16),
+ multiframe-17(17),
+ multiframe-18(18),
+ multiframe-19(19),
+ multiframe-20(20),
+ multiframe-21(21),
+ multiframe-22(22),
+ multiframe-23(23),
+ multiframe-24(24),
+ multiframe-25(25),
+ multiframe-26(26),
+ multiframe-27(27),
+ multiframe-28(28),
+ multiframe-29(29),
+ multiframe-30(30),
+ multiframe-31(31),
+ multiframe-32(32),
+ multiframe-33(33),
+ multiframe-34(34),
+ multiframe-35(35),
+ multiframe-36(36),
+ multiframe-37(37),
+ multiframe-38(38),
+ multiframe-39(39),
+ multiframe-40(40),
+ multiframe-41(41),
+ multiframe-42(42),
+ multiframe-43(43),
+ multiframe-44(44),
+ multiframe-45(45),
+ multiframe-46(46),
+ multiframe-47(47),
+ multiframe-48(48),
+ multiframe-49(49),
+ multiframe-50(50),
+ multiframe-51(51),
+ multiframe-52(52),
+ multiframe-53(53),
+ multiframe-54(54),
+ multiframe-55(55),
+ multiframe-56(56),
+ multiframe-57(57),
+ multiframe-58(58),
+ multiframe-59(59),
+ multiframe-60(60),
+ reserved(61),
+ reserved(62),
+ reserved(63)
+ }
+ Sharing-Mod ::= ENUMERATED
+ {
+ continuous-transmission(0),
+ carrier-sharing(1),
+ mcch-sharing(2),
+ traffic-carrier-sharing(3)
+ }
+ TS-Reserved-Frames ::= ENUMERATED
+ {
+ frame-reserved-1(0),
+ frames-reserved-2(1),
+ frames-reserved-3(2),
+ frames-reserved-4(3),
+ frames-reserved-6(4),
+ frames-reserved-9(5),
+ frames-reserved-12(6),
+ frames-reserved-18(7)
+ }
+ U-Plane-DTX ::= ENUMERATED
+ {
+ not-allowed(0),
+ allowed(1)
+ }
+ Frame-18-Extension ::= ENUMERATED
+ {
+ not-allowed(0),
+ allowed(1)
+ }
+ Reserved ::= ENUMERATED
+ {
+ default(0),
+ not-used(1)
+ }
+ MLE-Sync ::= SEQUENCE
+ {
+ mcc INTEGER(0..1023),
+ mnc INTEGER(0..16383),
+ neighbour-cell-broadcast INTEGER(0..3),
+ cell-service-level INTEGER(0..3),
+ late-entry-information INTEGER(0..1)
+ }
+
+
+BNCH ::= SEQUENCE
+{
+ pdu-type INTEGER(0..3),
+ broadcast-type INTEGER(0..3),
+ main-carrier INTEGER(0..4095),
+ frequency-band INTEGER(0..15),
+ offset Offset,
+ duplex-spacing INTEGER(0..7),
+ reverse-operation Reverse-Operation,
+ sencond-ctl-carrier Sencond-Ctl-Carrier,
+ ms-txpwr-max-cell MS-TXPWR-MAX-CELL,
+ rxlev-access-min RXLEV-ACCESS-MIN ,
+ access-parameter ACCESS-PARAMETER,
+ radio-downlink-timeout RADIO-DOWNLINK-TIMEOUT,
+ hyperframe-or-cck CHOICE
+ {
+ hyperframe INTEGER(0..65535),
+ cckid INTEGER(0..65535)
+ },
+ optional-params CHOICE
+ {
+ even-multiframe TS-COMMON-FRAMES,
+ odd-multiframe TS-COMMON-FRAMES,
+ access-a-code Default-Code-A,
+ extend-service Extended-Services-Broadcast
+ },
+ la INTEGER(0..16383),
+ subscriber-class Subscriber-class,
+ registriation INTEGER(0..1),
+ de-registration INTEGER(0..1),
+ priority-cell INTEGER(0..1),
+ minimum-mode-service INTEGER(0..1),
+ migration INTEGER(0..1),
+ system-wide-service INTEGER(0..1),
+ tetra-voice-service INTEGER(0..1),
+ circuit-mode-data-service INTEGER(0..1),
+ reserved INTEGER(0..1),
+ sndcp-service INTEGER(0..1),
+ air-interface-encryption INTEGER(0..1),
+ advanced-link-support INTEGER(0..1)
+}
+ Offset ::= ENUMERATED
+ {
+ offset-0(0),
+ offset-positive-6-point-25(1),
+ offset-minus-6-point-25(2),
+ offset-12-point-5(3)
+ }
+
+ Reverse-Operation ::= ENUMERATED
+ {
+ normal(0),
+ reverse(1)
+ }
+ Sencond-Ctl-Carrier ::= ENUMERATED
+ {
+ none(0),
+ timeslot-2(1),
+ timeslots-2and3(2),
+ timeslots-2and3and4(3)
+ }
+ MS-TXPWR-MAX-CELL ::= ENUMERATED
+ {
+ reserved(0),
+ dbm-15(1),
+ dbm-20(2),
+ dbm-25(3),
+ dbm-30(4),
+ dbm-35(5),
+ dbm-40(6),
+ dbm-45(7)
+ }
+ RXLEV-ACCESS-MIN ::= ENUMERATED
+ {
+ dbm-125(0),
+ dbm-120(1),
+ dbm-115(2),
+ dbm-110(3),
+ dbm-105(4),
+ dbm-100(5),
+ dbm-95(6),
+ dnm-90(7),
+ dbm-85(8),
+ dbm-80(9),
+ dbm-75(10),
+ dbm-70(11),
+ dbm-65(12),
+ dbm-60(13),
+ dbm-55(14),
+ dbm-50(15)
+ }
+ ACCESS-PARAMETER ::= ENUMERATED
+ {
+ dbm-53(0),
+ dbm-51(1),
+ dbm-49(2),
+ dbm-47(3),
+ dbm-45(4),
+ dbm-43(5),
+ dbm-41(6),
+ dbm-39(7),
+ dbm-37(8),
+ dbm-35(9),
+ dbm-33(10),
+ dbm-31(11),
+ dbm-29(12),
+ dbm-27(13),
+ dbm-25(14),
+ dbm-23(15)
+ }
+ RADIO-DOWNLINK-TIMEOUT ::= ENUMERATED
+ {
+ disable(0),
+ timeslots-144(1),
+ timeslots-288(2),
+ timeslots-432(3),
+ timeslots-576(4),
+ timeslots-720(5),
+ timeslots-864(6),
+ timeslots-1008(7),
+ timeslots-1152(8),
+ timeslots-1296(9),
+ timeslots-1440(10),
+ timeslots-1584(11),
+ timeslots-1728(12),
+ timeslots-1872(13),
+ timeslots-2016(14),
+ timeslots-2160(15)
+ }
+ TS-COMMON-FRAMES ::= SEQUENCE
+ {
+ frame1 FRAME,
+ frame2 FRAME,
+ frame3 FRAME,
+ frame4 FRAME,
+ frame5 FRAME,
+ frame6 FRAME,
+ frame7 FRAME,
+ frame8 FRAME,
+ frame9 FRAME,
+ frame10 FRAME,
+ frame11 FRAME,
+ frame12 FRAME,
+ frame13 FRAME,
+ frame14 FRAME,
+ frame15 FRAME,
+ frame16 FRAME,
+ frame17 FRAME,
+ frame18 FRAME
+ }
+ FRAME ::= ENUMERATED
+ {
+ not-common(0),
+ common(1)
+ }
+ Default-Code-A ::= SEQUENCE
+ {
+ imm IMM,
+ wt WT,
+ nu NU,
+ frame-len-factor Frame-Len-Factor,
+ timeslot-pointer Timeslot-Pointer,
+ min-pdu-priority Min-Pdu-Priority
+ }
+ IMM ::= ENUMERATED
+ {
+ always-randomize(0),
+ randomize-after-imm-tdma(1),
+ randomize-after-imm-tdma(2),
+ randomize-after-imm-tdma(3),
+ randomize-after-imm-tdma(4),
+ randomize-after-imm-tdma(5),
+ randomize-after-imm-tdma(6),
+ randomize-after-imm-tdma(7),
+ randomize-after-imm-tdma(8),
+ randomize-after-imm-tdma(9),
+ randomize-after-imm-tdma(10),
+ randomize-after-imm-tdma(11),
+ randomize-after-imm-tdma(12),
+ randomize-after-imm-tdma(13),
+ randomize-after-imm-tdma(14),
+ immediate-access-allowed(15)
+ }
+ WT ::= ENUMERATED
+ {
+ reserved(0),
+ response-within-wt-downlink(1),
+ response-within-wt-downlink(2),
+ response-within-wt-downlink(3),
+ response-within-wt-downlink(4),
+ response-within-wt-downlink(5),
+ response-within-wt-downlink(6),
+ response-within-wt-downlink(7),
+ response-within-wt-downlink(8),
+ response-within-wt-downlink(9),
+ response-within-wt-downlink(10),
+ response-within-wt-downlink(11),
+ response-within-wt-downlink(12),
+ response-within-wt-downlink(13),
+ response-within-wt-downlink(14),
+ response-within-wt-downlink(15)
+ }
+ NU ::= ENUMERATED
+ {
+ no-random(0),
+ random-1(1),
+ random-2(2),
+ random-3(3),
+ random-4(4),
+ random-5(5),
+ random-6(6),
+ random-7(7),
+ random-8(8),
+ random-9(9),
+ random-10(10),
+ random-11(11),
+ random-12(12),
+ random-13(13),
+ random-14(14),
+ random-15(15)
+ }
+ Frame-Len-Factor ::= ENUMERATED
+ {
+ multiply-1(0),
+ multiply-4(1)
+ }
+ Timeslot-Pointer ::= ENUMERATED
+ {
+ same-as-downlink(0),
+ timeslot-4(1),
+ timeslot-bit-map(2),
+ timeslot-bit-map(3),
+ timeslot-bit-map(4),
+ timeslot-bit-map(5),
+ timeslot-bit-map(6),
+ timeslot-bit-map(7),
+ timeslot-bit-map(8),
+ timeslot-bit-map(9),
+ timeslot-bit-map(10),
+ timeslot-bit-map(11),
+ timeslot-bit-map(12),
+ timeslot-bit-map(13),
+ timeslot-bit-map(14),
+ all-four-timeslots(15)
+ }
+ Min-Pdu-Priority ::= ENUMERATED
+ {
+ priority-0(0),
+ priority-1(1),
+ priority-2(2),
+ priority-3(3),
+ priority-4(4),
+ priority-5(5),
+ priority-6(6),
+ priority-7(7)
+ }
+ Extended-Services-Broadcast ::= SEQUENCE
+ {
+ security-information INTEGER(0..255),
+ sds-tl-addressing-method SDS-TL-Addressing-Method,
+ gck-supported INTEGER(0..1),
+ section CHOICE
+ {
+ present-1 PRESENT1,
+ present-2 INTEGER(0..127),
+ present-3 INTEGER(0..127),
+ present-4 INTEGER(0..127)
+ }
+ }
+ SDS-TL-Addressing-Method ::= ENUMERATED
+ {
+ reserved(0),
+ service-centre(1),
+ never-use-service-centre(2),
+ ms-choice-to-use-service-centre(3)
+ }
+ PRESENT1 ::=SEQUENCE
+ {
+ data-priority-supported Data-Priority-Supported,
+ reserved INTEGER(0..7),
+ section-2-information Section-Information,
+ section-3-information Section-Information,
+ section-4-information Section-Information
+ }
+ Data-Priority-Supported ::=ENUMERATED
+ {
+ not-supported(0),
+ supported(1)
+ }
+ Section-Information ::=ENUMERATED
+ {
+ no-information(0),
+ futher-information(1)
+ }
+
+
+
+
+MAC-ACCESS ::= SEQUENCE
+{
+ pdu-type INTEGER(0..1),
+ fill-bit-indication Fill-Bit-Indication,
+ encrypted-flag Encrypted-Flag,
+ address Address,
+ data CHOICE
+ {
+ sdu1 U-LLC-PDU,
+ sdu2 ComplexSDU
+ }
+}
+
+Address ::= CHOICE
+{
+ ssi INTEGER(0..16777215),
+ eventLabel INTEGER(0..1023),
+ ussi INTEGER(0..16777215),
+ smi INTEGER(0..16777215)
+}
+U-LLC-PDU ::= CHOICE
+{
+ bl-adata U-BL-ADATA,
+ bl-data U-BL-DATA,
+ bl-udata U-MLE-PDU,
+ bl-ack U-BL-ACK,
+ bl-adata-fcs U-BL-ADATA-FCS,
+ bl-data-fcs U-BL-DATA-FCS,
+ bl-udata-fcs U-MLE-PDU-FCS,
+ bl-ack-fcs U-BL-ACK-FCS,
+ al-setup NULL,
+ al-data NULL,
+ al-udata NULL,
+ al-ack NULL,
+ al-reconnect NULL,
+ reserve1 NULL,
+ reserve2 NULL,
+ al-disc NULL
+}
+ U-BL-ACK-FCS ::= SEQUENCE
+{
+ nr INTEGER(0..1),
+ tl-sdu U-MLE-PDU,
+ fcs OCTET STRING(SIZE(4))
+}
+
+ U-MLE-PDU-FCS ::= SEQUENCE
+ {
+ u-mle-pdu U-MLE-PDU,
+ fcs OCTET STRING(SIZE(4))
+ }
+
+ U-BL-DATA-FCS ::= SEQUENCE
+ {
+ ns INTEGER(0..1),
+ tl-sdu U-MLE-PDU,
+ fcs OCTET STRING(SIZE(4))
+ }
+
+U-BL-ADATA-FCS ::= SEQUENCE
+ {
+ nr INTEGER(0..1),
+ ns INTEGER(0..1),
+ tl-sdu U-MLE-PDU,
+ fcs OCTET STRING(SIZE(4))
+ }
+
+
+U-MLE-PDU ::= CHOICE
+{
+ u-mle-reserved1 NULL,
+ mm U-MM-PDU,
+ cmce U-CMCE-PDU,
+ u-mle-reserved2 NULL,
+ sndcp NULL,
+ mle UMLE-PDU,
+ tetra-management-entity-protocol NULL,
+ u-mle-reserved3 NULL
+}
+ComplexSDU ::= SEQUENCE
+{
+ lengthIndicationOrCapacityRequest CHOICE
+ {
+ lengthIndication LengthIndication,
+ capacityRequest FRAG
+ },
+ tm-sdu U-LLC-PDU
+}
+FRAG ::= SEQUENCE
+{
+ frag Frag1,
+ reservation-requirement SLOT-APPLY
+}
+
+LengthIndication ::= ENUMERATED
+{
+ null(0),
+ reserved-1(1),
+ reserved-2(2),
+ bits-24(3),
+ bits-32(4),
+ bits-40(5),
+ bits-48(6),
+ bits-56(7),
+ bits-64(8),
+ bits-72(9),
+ bits-80(10),
+ bits-88(11),
+ bits-96(12),
+ reserved-13(13),
+ reserved-14(14),
+ reserved-15(15),
+ reserved-16(16),
+ reserved-17(17),
+ reserved-18(18),
+ reserved-19(19),
+ reserved-20(20),
+ reserved-21(21),
+ reserved-22(22),
+ reserved-23(23),
+ reserved-24(24),
+ reserved-25(25),
+ reserved-26(26),
+ reserved-27(27),
+ reserved-28(28),
+ reserved-29(29),
+ reserved-30(30),
+ reserved-31(31)
+}
+SLOT-APPLY ::= ENUMERATED
+{
+ subslot(0),
+ slot-1(1),
+ slot-2(2),
+ slot-3(3),
+ slot-4(4),
+ slot-5(5),
+ slot-6(6),
+ slot-8(7),
+ slot-10(8),
+ slot-13(9),
+ slot-17(10),
+ slot-24(11),
+ slot-34(12),
+ slot-51(13),
+ slot-68(14),
+ more-than-68(15)
+}
+Frag1 ::= ENUMERATED
+{
+ not-fragmented(0),
+ start-of-fragmentation(1)
+}
+
+MAC-DATA ::= SEQUENCE
+{
+ pdu-type INTEGER(0..3),
+ fill-bit-indication Fill-Bit-Indication,
+ encrypted-flag Encrypted-Flag,
+ address Address,
+ lengthIndicationOrCapacityRequest CHOICE
+ {
+ lengthIndication LengthIndicationMacData,
+ capacityRequest FRAG6
+ },
+ tm-sdu U-LLC-PDU
+}
+Fill-Bit-Indication ::= ENUMERATED
+ {
+ no-present(0),
+ present(1)
+ }
+Encrypted-Flag ::= ENUMERATED
+ {
+ not-encrypted(0),
+ encrypted(1)
+ }
+LengthIndicationMacData ::= ENUMERATED
+{
+ null(0),
+ reserved-1(1),
+ reserved-2(2),
+ bits-24(3),
+ bits-32(4),
+ bits-40(5),
+ bits-48(6),
+ bits-56(7),
+ bits-64(8),
+ bits-72(9),
+ bits-80(10),
+ bits-88(11),
+ bits-96(12),
+ bits-104(13),
+ bits-112(14),
+ bits-120(15),
+ bits-128(16),
+ bits-136(17),
+ bits-144(18),
+ bits-152(19),
+ bits-160(20),
+ bits-168(21),
+ bits-176(22),
+ bits-184(23),
+ bits-192(24),
+ bits-200(25),
+ bits-208(26),
+ bits-216(27),
+ bits-224(28),
+ bits-232(29),
+ bits-240(30),
+ bits-248(31),
+ bits-256(32),
+ bits-264(33),
+ bits-272(34),
+ reserved-35(35),
+ reserved-36(36),
+ reserved-37(37),
+ reserved-38(38),
+ reserved-39(39),
+ reserved-40(40),
+ reserved-41(41),
+ reserved-42(42),
+ reserved-43(43),
+ reserved-44(44),
+ reserved-45(45),
+ reserved-46(46),
+ reserved-47(47),
+ reserved-48(48),
+ reserved-49(49),
+ reserved-50(50),
+ reserved-51(51),
+ reserved-52(52),
+ reserved-53(53),
+ reserved-54(54),
+ reserved-55(55),
+ reserved-56(56),
+ reserved-57(57),
+ reserved-58(58),
+ reserved-59(59),
+ reserved-60(60),
+ reserved-61(61),
+ second-halfslot-stolen(62),
+ start-frag(63)
+}
+
+FRAG6 ::= SEQUENCE
+{
+ frag Frag1,
+ reservation-requirement SLOT-APPLY,
+ reserved INTEGER(0..1)
+}
+
+MAC-FRAG ::= SEQUENCE
+{
+ pdu-type INTEGER(0..3),
+ sub-type INTEGER(0..1),
+ fill-bit-indication Fill-Bit-Indication,
+ tm-sdu BIT STRING(SIZE(264))
+}
+
+MAC-FRAG120 ::= SEQUENCE
+{
+ pdu-type INTEGER(0..3),
+ sub-type INTEGER(0..1),
+ fill-bit-indication Fill-Bit-Indication,
+ tm-sdu BIT STRING(SIZE(120))
+}
+
+MAC-END-UPLINK ::= SEQUENCE
+{
+ pdu-type INTEGER(0..3),
+ sub-type INTEGER(0..1),
+ fill-bit-indication Fill-Bit-Indication,
+ lengthInd-ReservationReq LengthIndOrReservationReq,
+ tm-sdu BIT STRING(SIZE(258))
+}
+
+MAC-END-UP114 ::= SEQUENCE
+{
+ pdu-type INTEGER(0..3),
+ pdu-subtype INTEGER(0..1),
+ fill-bit-indication Fill-Bit-Indication,
+ lengthInd-ReservationReq LengthIndOrReservationReq,
+ tm-sdu BIT STRING(SIZE(114))
+}
+
+LengthIndOrReservationReq ::= ENUMERATED
+{
+ reserved-0(0),
+ reserved-1(1),
+ bits-16(2),
+ bits-24(3),
+ bits-32(4),
+ bits-40(5),
+ bits-48(6),
+ bits-56(7),
+ bits-64(8),
+ bits-72(9),
+ bits-80(10),
+ bits-88(11),
+ bits-96(12),
+ bits-104(13),
+ bits-112(14),
+ bits-120(15),
+ bits-128(16),
+ bits-136(17),
+ bits-144(18),
+ bits-152(19),
+ bits-160(20),
+ bits-168(21),
+ bits-176(22),
+ bits-184(23),
+ bits-192(24),
+ bits-200(25),
+ bits-208(26),
+ bits-216(27),
+ bits-224(28),
+ bits-232(29),
+ bits-240(30),
+ bits-248(31),
+ bits-256(32),
+ bits-264(33),
+ bits-272(34),
+ reserved-35(35),
+ reserved-36(36),
+ reserved-37(37),
+ reserved-38(38),
+ reserved-39(39),
+ reserved-40(40),
+ reserved-41(41),
+ reserved-42(42),
+ reserved-43(43),
+ reserved-44(44),
+ reserved-45(45),
+ reserved-46(46),
+ reserved-47(47),
+ subslot(48),
+ slot-1(49),
+ slot-2(50),
+ slot-3(51),
+ slot-4(52),
+ slot-5(53),
+ slot-6(54),
+ slot-8(55),
+ slot-10(56),
+ slot-13(57),
+ slot-17(58),
+ slot-24(59),
+ slot-34(60),
+ slot-51(61),
+ slot-68(62),
+ more-than-68(63)
+}
+
+MAC-END-HU ::= SEQUENCE
+{
+ pdu-type INTEGER(0..1),
+ fill-bit-indication Fill-Bit-Indication,
+ lengthInd-ReservationReq CHOICE
+ {
+ lengthInd LengthIndMacHu,
+ reservation-requirement SLOT-APPLY
+ },
+ tm-sdu BIT STRING(SIZE(85))
+}
+LengthIndMacHu ::= ENUMERATED
+{
+ reserved-0(0),
+ bits-8(1),
+ bits-16(2),
+ bits-24(3),
+ bits-32(4),
+ bits-40(5),
+ bits-48(6),
+ bits-56(7),
+ bits-64(8),
+ bits-72(9),
+ bits-80(10),
+ bits-88(11),
+ bits-96(12),
+ reserved-13(13),
+ reserved-14(14),
+ reserved-15(15)
+}
+
+MAC-END-DOWNLINK ::= SEQUENCE
+{
+ pdu-type INTEGER(0..3),
+ sub-type INTEGER(0..1),
+ fill-bit-indication Fill-Bit-Indication,
+ position-of-grant Position-Of-Grant,
+ lengthIndication LengthIndicationMacEndDl,
+ slot-granting CHOICE
+ {
+ none NULL,
+ slot-granting-param SlotGranting
+ },
+ channel-allocation CHOICE
+ {
+ none NULL,
+ channel-allocation-element ChannelAllocation
+ },
+ tm-sdu BIT STRING(SIZE(255))
+}
+
+SlotGranting ::= SEQUENCE
+{
+ capacity-allocation Capacity-Allocation,
+ granting-delay Granting-delay
+ }
+
+
+ Capacity-Allocation ::= ENUMERATED
+ {
+ first-subslot(0),
+ slot-allocated-1(1),
+ slot-allocated-2(2),
+ slot-allocated-3(3),
+ slot-allocated-4(4),
+ slot-allocated-5(5),
+ slot-allocated-6(6),
+ slot-allocated-8(7),
+ slot-allocated-10(8),
+ slot-allocated-13(9),
+ slot-allocated-17(10),
+ slot-allocated-24(11),
+ slot-allocated-34(12),
+ lot-allocated-51(13),
+ slot-allocated-68(14),
+ second-subslot(15)
+ }
+Granting-delay ::= ENUMERATED
+ {
+ capacity-allocation-at-next-opportunity(0),
+ number-of-opportunities-delay(1),
+ number-of-opportunities-delay(2),
+ number-of-opportunities-delay(3),
+ number-of-opportunities-delay(4),
+ number-of-opportunities-delay(5),
+ number-of-opportunities-delay(6),
+ number-of-opportunities-delay(7),
+ number-of-opportunities-delay(8),
+ number-of-opportunities-delay(9),
+ number-of-opportunities-delay(10),
+ number-of-opportunities-delay(11),
+ number-of-opportunities-delay(12),
+ number-of-opportunities-delay(13),
+ allocation-starts-at-frame-18(14),
+ wait(15)
+ }
+
+
+ChannelAllocation ::= SEQUENCE
+{
+ allocation-type ENUMERATED {replace(0), add(1), quit(2), reserved(3)},
+ timeslot-assigned Timeslot-Assigned,
+ up-down-assigned ENUMERATED {reserve(0), downlink-only(1), uplink-only(2), uplink-downlink(3)},
+ clch-permission CLCH-permission,
+ cell-change Cell-change-flag,
+ carrier-number INTEGER(0..4095),
+ extend-carrier-flag CHOICE{none NULL,extended Extended-carrier-flag} ,
+ monitoring-pattern CHOICE{one Monitoring-pattern,none1 NULL,none2 NULL,none3 NULL}
+}
+Timeslot-Assigned ::= ENUMERATED
+{
+ go-to-control-channel(0),
+ timeslot-4(1),
+ timeslot-bit-map(2),
+ timeslot-bit-map(3),
+ timeslot-bit-map(4),
+ timeslot-bit-map(5),
+ timeslot-bit-map(6),
+ timeslot-bit-map(7),
+ timeslot-bit-map(8),
+ timeslot-bit-map(9),
+ timeslot-bit-map(10),
+ timeslot-bit-map(11),
+ timeslot-bit-map(12),
+ timeslot-bit-map(13),
+ timeslot-bit-map(14),
+ all-four-timeslots(15)
+}
+CLCH-permission ::= ENUMERATED
+ {
+ no-permission(0),
+ permission(1)
+ }
+ Cell-change-flag ::= ENUMERATED
+ {
+ no-change(0),
+ change(1)
+ }
+ Extended-carrier-flag ::= SEQUENCE
+ {
+ frequency-band INTEGER(0..15),
+ offset INTEGER(0..3),
+ duplex-spacing INTEGER(0..7),
+ reverse-operation ENUMERATED{normal(0),reverse(1)}
+ }
+ Monitoring-pattern ::= ENUMERATED
+ {
+ no(0),
+ one(1),
+ two(2),
+ three(3)
+ }
+
+
+
+MAC-END-DOWN111 ::= SEQUENCE
+{
+ pdu-type INTEGER(0..7),
+ fill-bit-ind BOOLEAN,
+ position-of-grant INTEGER(0..1),
+ lengthIndication LengthIndicationMacEndDl,
+ slot-granting CHOICE
+ {
+ none NULL,
+ slot-granting-param SlotGranting
+ },
+ channel-allocation CHOICE
+ {
+ none NULL,
+ channel-allocation-element ChannelAllocation
+ },
+ tm-sdu BIT STRING(SIZE(111))
+}
+LengthIndicationMacEndDl ::= ENUMERATED
+{
+ reserved-0(0),
+ reserved-1(1),
+ bits-16(2),
+ bits-24(3),
+ bits-32(4),
+ bits-40(5),
+ bits-48(6),
+ bits-56(7),
+ bits-64(8),
+ bits-72(9),
+ bits-80(10),
+ bits-88(11),
+ bits-96(12),
+ bits-104(13),
+ bits-112(14),
+ bits-120(15),
+ bits-128(16),
+ bits-136(17),
+ bits-144(18),
+ bits-152(19),
+ bits-160(20),
+ bits-168(21),
+ bits-176(22),
+ bits-184(23),
+ bits-192(24),
+ bits-200(25),
+ bits-208(26),
+ bits-216(27),
+ bits-224(28),
+ bits-232(29),
+ bits-240(30),
+ bits-248(31),
+ bits-256(32),
+ bits-264(33),
+ bits-272(34),
+ reserved-35(35),
+ reserved-36(36),
+ reserved-37(37),
+ reserved-38(38),
+ reserved-39(39),
+ reserved-40(40),
+ reserved-41(41),
+ reserved-42(42),
+ reserved-43(43),
+ reserved-44(44),
+ reserved-45(45),
+ reserved-46(46),
+ reserved-47(47),
+ reserved-48(48),
+ reserved-49(49),
+ reserved-50(50),
+ reserved-51(51),
+ reserved-52(52),
+ reserved-53(53),
+ reserved-54(54),
+ reserved-55(55),
+ reserved-56(56),
+ reserved-57(57),
+ reserved-58(58),
+ reserved-59(59),
+ reserved-60(60),
+ reserved-61(61),
+ reserved-62(62),
+ reserved-63(63)
+}
+
+MAC-RESOURCE ::= SEQUENCE
+{
+ pdu-type INTEGER(0..3),
+ fill-bit-indication Fill-Bit-Indication,
+ position-of-grant Position-Of-Grant,
+ encryption-mode INTEGER(0..3),
+ access-ack ENUMERATED{undefined(0),random-access-acknowledged(1)},
+ lengthIndication LengthIndicationMacResource,
+ address AddressMacResource
+}
+OTHER-DATA ::= SEQUENCE
+{
+ power-control CHOICE
+ {
+ none NULL,
+ powerParameters PowerControl
+ },
+ slot-granting CHOICE
+ {
+ none NULL,
+ slot-granting-param SlotGranting
+ },
+ channel-allocation CHOICE
+ {
+ none NULL,
+ channel-allocation-element ChannelAllocation
+ },
+ tm-sdu D-LLC-PDU
+}
+
+
+Position-Of-Grant ::= ENUMERATED
+ {
+ on-current(0),
+ on-allocated(1)
+ }
+AddressMacResource ::= CHOICE
+{
+ null-pdu NULL,
+ ssi SSI-NEED,
+ eventLabel EVENT-NEED,
+ ussi USSI-NEED,
+ smi SMI-NEED,
+ ssi-eventLabel SSI-EVENT-NEED,
+ ssi-usage-maker SSI-USAGE-NEED,
+ smi-eventLabel SMI-EVENT-NEED
+}
+SSI-NEED ::= SEQUENCE
+{
+ ssi INTEGER(0..16777215),
+ other OTHER-DATA
+}
+EVENT-NEED ::= SEQUENCE
+{
+ eventlabel INTEGER(0..1023),
+ other OTHER-DATA
+}
+USSI-NEED ::= SEQUENCE
+{
+ ussi INTEGER(0..16777215),
+ other OTHER-DATA
+}
+
+SMI-NEED ::= SEQUENCE
+{
+ smi INTEGER(0..16777215),
+ other OTHER-DATA
+}
+SSI-EVENT-NEED ::= SEQUENCE
+{
+ ssi INTEGER(0..16777215),
+ ventlabel INTEGER(0..1023),
+ other OTHER-DATA
+}
+SSI-USAGE-NEED ::= SEQUENCE
+{
+ ssi INTEGER(0..16777215),
+ usage-maker INTEGER(0..63),
+ other OTHER-DATA
+}
+SMI-EVENT-NEED ::= SEQUENCE
+{
+ smi-eventlabel BIT STRING(SIZE(34)),
+ other OTHER-DATA
+}
+
+
+LengthIndicationMacResource ::= ENUMERATED
+{
+ reserved-0(0),
+ reserved-1(1),
+ null-pdu(2),
+ reserved(3),
+ bits-32(4),
+ bits-40(5),
+ bits-48(6),
+ bits-56(7),
+ bits-64(8),
+ bits-72(9),
+ bits-80(10),
+ bits-88(11),
+ bits-96(12),
+ bits-104(13),
+ bits-112(14),
+ bits-120(15),
+ bits-128(16),
+ bits-136(17),
+ bits-144(18),
+ bits-152(19),
+ bits-160(20),
+ bits-168(21),
+ bits-176(22),
+ bits-184(23),
+ bits-192(24),
+ bits-200(25),
+ bits-208(26),
+ bits-216(27),
+ bits-224(28),
+ bits-232(29),
+ bits-240(30),
+ bits-248(31),
+ bits-256(32),
+ bits-264(33),
+ bits-272(34),
+ reserved-35(35),
+ reserved-36(36),
+ reserved-37(37),
+ reserved-38(38),
+ reserved-39(39),
+ reserved-40(40),
+ reserved-41(41),
+ reserved-42(42),
+ reserved-43(43),
+ reserved-44(44),
+ reserved-45(45),
+ reserved-46(46),
+ reserved-47(47),
+ reserved-48(48),
+ reserved-49(49),
+ reserved-50(50),
+ reserved-51(51),
+ reserved-52(52),
+ reserved-53(53),
+ reserved-54(54),
+ reserved-55(55),
+ reserved-56(56),
+ reserved-57(57),
+ reserved-58(58),
+ reserved-59(59),
+ reserved-60(60),
+ reserved-61(61),
+ second-halfslot-stolen(62),
+ start-frag(63)
+}
+
+ PowerControl ::= ENUMERATED
+ {
+ no-change(0),
+ increase-1(1),
+ increase-2(2),
+ increase-3(3),
+ increase-4(4),
+ increase-5(5),
+ increase-6(6),
+ maximum-xceeded(7),
+ revert-open-loop-control(8),
+ decrease-1(9),
+ decrease-2(10),
+ decrease-3(11),
+ decrease-4(12),
+ decrease-5(13),
+ decrease-6(14),
+ radio-uplink-failure(15)
+ }
+
+
+ExtendCarrier ::= SEQUENCE
+{
+ freq-band INTEGER(0..15),
+ offset INTEGER(0..3),
+ duplex-spacing INTEGER(0..7),
+ reverse-operation BOOLEAN
+}
+
+MAC-ACCESS-DEFINE ::= SEQUENCE
+{
+ pdu-type INTEGER(0..3),
+ broadcast-type INTEGER(0..3),
+ broadcast-channel INTEGER(0..1),
+ access-code INTEGER(0..3),
+ imm INTEGER(0..15),
+ wt INTEGER(0..15),
+ nu INTEGER(0..15),
+ frame-len-factor INTEGER(0..1),
+ timeslot-pointer INTEGER(0..15),
+ min-priority INTEGER(0..7),
+ optional-field CHOICE
+{
+ none NULL,
+ class-bitmap INTEGER(0..65535),
+ gssi INTEGER(0..33554431),
+ reserved NULL
+ },
+ filler-bits INTEGER(0..7)
+}
+
+D-LLC-PDU ::= CHOICE
+{
+ bl-adata D-BL-ADATA,
+ bl-data D-BL-DATA,
+ bl-udata D-MLE-PDU,
+ bl-ack D-BL-ACK,
+ bl-adata-fcs D-BL-ADATA-FCS,
+ bl-data-fcs D-BL-DATA-FCS,
+ bl-udata-fcs D-MLE-PDU-FCS,
+ bl-ack-fcs D-BL-ACK-FCS,
+ al-setup NULL,
+ al-data NULL,
+ al-udata NULL,
+ al-ack NULL,
+ al-reconnect NULL,
+ reserve1 NULL,
+ reserve2 NULL,
+ al-disc NULL
+}
+
+D-BL-ACK-FCS ::= SEQUENCE
+{
+ nr INTEGER(0..1),
+ tl-sdu D-MLE-PDU,
+ fcs OCTET STRING(SIZE(4))
+}
+
+D-MLE-PDU-FCS ::= SEQUENCE
+ {
+ d-mle-pdu D-MLE-PDU,
+ fcs OCTET STRING(SIZE(4))
+ }
+
+
+D-BL-ADATA-FCS ::= SEQUENCE
+ {
+ nr INTEGER(0..1),
+ ns INTEGER(0..1),
+ tl-sdu D-MLE-PDU,
+ fcs OCTET STRING(SIZE(4))
+ }
+
+D-BL-DATA-FCS ::= SEQUENCE
+ {
+ ns INTEGER(0..1),
+ tl-sdu D-MLE-PDU,
+ fcs OCTET STRING(SIZE(4))
+ }
+
+U-BL-ACK ::= SEQUENCE
+{
+ nr INTEGER(0..1),
+ tl-sdu U-MLE-PDU
+}
+
+D-BL-ACK ::= SEQUENCE
+{
+ nr INTEGER(0..1),
+ tl-sdu D-MLE-PDU
+}
+
+U-BL-DATA ::= SEQUENCE
+{
+ ns INTEGER(0..1),
+ tl-sdu U-MLE-PDU
+}
+
+D-BL-DATA ::= SEQUENCE
+{
+ ns INTEGER(0..1),
+ tl-sdu D-MLE-PDU
+}
+
+U-BL-ADATA ::= SEQUENCE
+{
+ nr INTEGER(0..1),
+ ns INTEGER(0..1),
+ tl-sdu U-MLE-PDU
+}
+
+D-BL-ADATA ::= SEQUENCE
+{
+ nr INTEGER(0..1),
+ ns INTEGER(0..1),
+ tl-sdu D-MLE-PDU
+}
+
+D-MLE-PDU ::= CHOICE
+{
+ u-mle-reserved1 NULL,
+ mm D-MM-PDU,
+ cmce D-CMCE-PDU,
+ u-mle-reserved2 NULL,
+ sndcp NULL,
+ mle DMLE-PDU,
+ tetra-management-entity-protocol NULL,
+ u-mle-reserved3 NULL
+}
+
+UMLE-PDU ::= CHOICE
+{
+ u-prepare U-PREPARE,
+ umle-reserved1 NULL,
+ umle-reserved2 NULL,
+ umle-reserved3 NULL,
+ u-restore U-RESTORE,
+ umle-reserved4 NULL,
+ umle-reserved5 NULL,
+ umle-reserved6 NULL
+}
+
+DMLE-PDU ::= CHOICE
+{
+ d-new-cell D-NEW-CELL,
+ d-prepare-fail D-PREPARE-FAIL,
+ d-nwrk-broadcast D-NWRK-BRDADCAST,
+ dmle-reserved1 NULL,
+ d-restore-ack D-RESTORE-ACK,
+ d-restore-fail D-RESTORE-FAIL,
+ dmle-reserved2 NULL,
+ dmle-reserved3 NULL
+}
+
+U-PREPARE ::= SEQUENCE
+{
+ pdu-type INTEGER(0..7),
+ optional-elements CHOICE
+ {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ cell-number CHOICE{none NULL, cell-number INTEGER(0..65535)},
+ sdu BIT STRING
+ }
+ }
+}
+
+U-RESTORE ::= SEQUENCE
+{
+ pdu-type INTEGER(0..7),
+ optional-elements CHOICE {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ mcc CHOICE{none NULL,mcc INTEGER(0..1023)},
+ mnc CHOICE{none NULL,mnc INTEGER(0..16383)},
+ la CHOICE{none NULL,la INTEGER(0..16383)},
+ sdu BIT STRING
+ }
+ }
+}
+
+D-NEW-CELL ::= SEQUENCE
+{
+ pdu-type INTEGER(0..7),
+ channel-command-valid INTEGER(0..3),
+ optional-elements CHOICE {
+ no-type2 NULL,
+ sdu BIT STRING
+ }
+}
+
+D-PREPARE-FAIL ::= SEQUENCE
+{
+ pdu-type INTEGER(0..7),
+ fail-cause INTEGER(0..3),
+ optional-elements CHOICE {
+ no-type2 NULL,
+ sdu BIT STRING
+ }
+}
+
+D-NWRK-BRDADCAST ::= SEQUENCE
+{
+ pdu-type INTEGER(0..7),
+ cell-re-select-parameters INTEGER(0..65535),
+ cell-service-level INTEGER(0..3),
+ optional-elements CHOICE {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ tetra-network-time CHOICE{none NULL, tetra-network-time TETRA-NETWORK-TIME},
+ number-of-neighbour-cells CHOICE{none NULL, number-of-neighbour-cells INTEGER(0..7)}
+ }
+ }
+}
+
+TETRA-NETWORK-TIME ::= SEQUENCE
+{
+ network-time INTEGER(SIZE(24)),
+ local-time-offset-sign INTEGER(0..1),
+ local-time-offset INTEGER(0..63),
+ year INTEGER(0..63),
+ reserved INTEGER(SIZE(11))
+}
+
+D-RESTORE-ACK ::= SEQUENCE
+{
+ pdu-type INTEGER(0..7),
+ sdu BIT STRING
+}
+
+D-RESTORE-FAIL ::= SEQUENCE
+{
+ pdu-type INTEGER(0..7),
+ fail-cause INTEGER(0..3)
+}
+
+U-MM-PDU ::= CHOICE
+{
+ u-Authentication NULL,
+ u-Itsi-Detach NULL,
+ u-Location-Update-Demand U-LOCATION-UPDATE-DEMAND,
+ u-MM-Status U-MM-STATUS,
+ u-MM-reserved1 NULL,
+ u-WK NULL,
+ u-MM-reserved3 NULL,
+ u-Attach-Detach-Group-Identity U-ATTACH-DETACH-GROUP-IDENTITY,
+ u-Attach-Detach-Group-Identity-Ack U-ATTACH-DETACH-GROUP-IDENTITY-ACK,
+ u-TEI-Provide NULL,
+ u-MM-reserved6 NULL,
+ u-Disabled-Status NULL,
+ u-MM-reserved7 NULL,
+ u-MM-reserved8 NULL,
+ u-MM-reserved9 NULL,
+ u-MM-Function-Not-Support NULL
+}
+
+D-MM-PDU ::= CHOICE
+{
+ d-Otar NULL,
+ d-Authentication NULL,
+ d-Authentication-Reject NULL,
+ d-Disable NULL,
+ d-Enable NULL,
+ d-Location-Update-Accept D-LOCATION-UPDATE-ACCEPT,
+ d-Location-Update-Command NULL,
+ d-Location-Update-Reject D-LOCATION-UPDATE-REJECT,
+ d-MM-reserved2 NULL,
+ d-Location-Update-Proceeding NULL,
+ d-Attach-Detach-Group-Identity D-ATTACH-DETACH-GROUP-IDENTITY,
+ d-Attach-Detach-Group-Identity-Ack D-ATTACH-DETACH-GROUP-IDENTITY-ACK,
+ d-MM-Status D-MM-STATUS,
+ d-MM-reserved5 NULL,
+ d-MM-reserved6 NULL,
+ d-MM-Function-Not-Support NULL
+}
+
+UPDATE-TYPE ::= ENUMERATED
+{
+ roaming-location-updating(0),
+ temporary-registration(1),
+ periodic-location-updating(2),
+ itsi-attach(3),
+ call-restoration-roaming(4),
+ migrating-or-call-restoration-migrating(5),
+ demand-location-updating(6),
+ disabled-MS-updating(7)
+}
+
+TYPE3-IDENTIFIER ::= ENUMERATED
+{
+ reserved(0),
+ default-group-attachment-lifetime(1),
+ new-registered-area(2),
+ group-identity-location-demand(3),
+ group-report-response(4),
+ group-identity-location-accept(5),
+ dm-ms-address(6),
+ group-identity-downlink(7),
+ group-identity-uplink(8),
+ authentication-uplink(9),
+ authentication-downlink(10),
+ reserved(11),
+ reserved1(12),
+ reserved2(13),
+ reserved3(14),
+ proprietary(15)
+}
+
+GROUP-IDENTITY-DOWNLINK ::= SEQUENCE
+{
+ attach-detach-identifier CHOICE{
+ attach SEQUENCE{
+ lifetime INTEGER(0..3),
+ class-of-usage INTEGER(0..7)
+ },
+ detach SEQUENCE{
+ detach-downlike ENUMERATED{
+ unknow-gssi(0),
+ temporary-detachment1(1),
+ temporary-detachment2(2),
+ permanent-detachment(3)
+ }
+ }
+ },
+ address-type CHOICE{
+ gssi OCTET STRING(SIZE(3)),
+ gssi-extension SEQUENCE{ gssi OCTET STRING(SIZE(3)), extension OCTET STRING(SIZE(3))},
+ vgssi OCTET STRING(SIZE(3))
+ }
+}
+
+GROUP-IDENTITY-UPLINK ::= SEQUENCE
+{
+ attach-detach-identifier CHOICE{
+ attach SEQUENCE{
+ class-of-usage INTEGER(0..7)
+ },
+ detach SEQUENCE{
+ detach-uplike ENUMERATED{
+ unknow-gssi(0),
+ invalid-cipher(1),
+ user-intitial(2),
+ reserved(3)
+ }
+ }
+ },
+ address-type CHOICE{
+ gssi OCTET STRING(SIZE(3)),
+ gssi-extension SEQUENCE{ gssi OCTET STRING(SIZE(3)), extension OCTET STRING(SIZE(3))},
+ vgssi OCTET STRING(SIZE(3))
+ }
+}
+
+
+D-LOCATION-UPDATE-ACCEPT ::= SEQUENCE
+{
+ location-update-type UPDATE-TYPE,
+ optional-elements CHOICE
+ {
+ no-type2 NULL,
+ type2-parameters SEQUENCE
+ {
+ ssi CHOICE{none NULL,ssi OCTET STRING(SIZE(3))},
+ address-extension CHOICE{none NULL,address-extension OCTET STRING(SIZE(3))},
+ subscriber-class CHOICE{none NULL,subscriber-class Subscriber-class},
+ energy-saving-mode CHOICE{none NULL,energy-saving-mode INTEGER(0..7)},
+ scch-info CHOICE{none NULL,scch-info INTEGER(0..16383)},
+ type3 CHOICE{
+ no-type3 NULL,
+ type3-elements SEQUENCE
+ {
+ type2-existance BOOLEAN,
+ type3-identifier TYPE3-IDENTIFIER,
+ new-ra CHOICE{none NULL,new-ra INTEGER(0..3)},
+ group-identity-location-accept CHOICE{none NULL,group-identity-location-accept INTEGER(0..3)},
+ group-predefined-lifetime CHOICE{none NULL,group-predefined-lifetime INTEGER(0..3)},
+ group-identity-downlink CHOICE{none NULL,group-identity-downlink INTEGER(0..15)},
+ proprietary CHOICE{none NULL,proprietary INTEGER(0..7) }
+ }
+ }
+ }
+ }
+}
+
+D-LOCATION-UPDATE-REJECT ::= SEQUENCE
+{
+ location-update-type UPDATE-TYPE,
+ reject-cause INTEGER(0..31),
+ cipher-control BOOLEAN
+}
+
+U-MM-STATUS ::= SEQUENCE
+{
+ status-uplink INTEGER(0..63),
+ scanning-on-off ENUMERATED{on(0),off(1)}
+
+}
+
+D-MM-STATUS ::= SEQUENCE
+{
+ status-downlink INTEGER(0..63)
+}
+
+Subscriber-class ::= BIT STRING(SIZE(16))
+
+U-CMCE-PDU ::= CHOICE
+{
+ u-Alert U-ALERT,
+ reserved1 NULL,
+ u-Connect U-CONNECT,
+ reserved2 NULL,
+ u-Disconnect U-DISCONNECT,
+ u-Info U-INFO,
+ u-Release U-RELEASE,
+ u-Setup U-SETUP,
+ u-Status U-STATUS,
+ u-Tx-Ceased U-TX-CEASED,
+ u-Tx-Demand U-TX-DEMAND,
+ reserved3 NULL,
+ reserved4 NULL,
+ reserved5 NULL,
+ u-Call-Restore U-CALL-RESTORE,
+ u-SDS-Data U-SDS-DATA,
+ u-Facility NULL
+}
+
+U-RELEASE ::= SEQUENCE
+{
+ call-identifier INTEGER(0..16383),
+ disconnect-cause INTEGER(0..31)
+}
+
+U-SDS-DATA ::= SEQUENCE
+{
+ area-selection INTEGER(0..15),
+ called-party-type-identifier CHOICE{
+ sna INTEGER(0..255),
+ ssi INTEGER(0..16777215),
+ ssi-extension BIT STRING(SIZE(48)),
+ none NULL
+ },
+ short-data-type-identifier CHOICE{
+ data-1 INTEGER(0..65535),
+ data-2 OCTET STRING(SIZE(4)),
+ data-3 BIT STRING(SIZE(64)),
+ length-indicator-data-4 INTEGER(0..4194304)
+ }
+}
+
+U-STATUS ::= SEQUENCE
+{
+ area-selection INTEGER(0..15),
+ called-party-type-identifier CHOICE
+ {
+ short-number-address INTEGER(0..255),
+ ssi INTEGER(0..16777215),
+ called-ssi-called-extension BIT STRING(SIZE(48)),
+ none NULL
+ },
+ pre-coded-status INTEGER(0..65535)
+}
+
+U-INFO ::= SEQUENCE
+{
+ call-id INTEGER(0..16383),
+ poll-response INTEGER(0..1)
+}
+
+D-CMCE-PDU ::= CHOICE
+{
+ d-Alert D-ALERT,
+ d-Call-Proceeding D-CALL-PROCEEDING,
+ d-Connect D-CONNECT,
+ d-Connect-Ack D-CONNECT-ACK,
+ d-Disconnect D-DISCONNECT,
+ d-Info D-INFO,
+ d-Release D-RELEASE,
+ d-Setup D-SETUP,
+ d-Status D-STATUS,
+ d-Tx-Ceased D-TX-CEASED,
+ d-Tx-Continue D-TX-CONTINUE,
+ d-Tx-Granted D-TX-GRANTED,
+ d-Tx-Wait D-TX-WAIT,
+ d-Tx-Interrupt NULL,
+ d-Call-Restore D-CALL-RESTORE,
+ d-SDS-Data D-SDS-DATA,
+ d-Facility NULL
+}
+
+D-SDS-DATA ::= SEQUENCE
+{
+ calling-party-type-identifier CHOICE{
+ none1 NULL,
+ ssi INTEGER(0..16777215),
+ ssi-extension OCTET STRING(SIZE(6)),
+ none2 NULL
+ },
+ short-data-type-identifier CHOICE{
+ data-1 INTEGER(0..65535),
+ data-2 OCTET STRING(SIZE(4)),
+ data-3 OCTET STRING(SIZE(8)),
+ length-indicator-data-4 INTEGER(0..4194304)
+ }
+}
+
+D-STATUS ::= SEQUENCE
+{
+ calling-party-type-identifier CHOICE{
+ none1 NULL,
+ calling-party-address-SSI INTEGER(0..16777215),
+ ssi-extension OCTET STRING(SIZE(6)),
+ none2 NULL
+ },
+ pre-coded-status INTEGER(0..65535)
+}
+
+D-DISCONNECT ::= SEQUENCE
+{
+ call-identifier INTEGER(0..16383),
+ disconnect-cause INTEGER(0..31)
+}
+
+D-INFO ::= SEQUENCE
+{
+ call-identifier INTEGER(0..16383),
+ reset-call-time-out-timer INTEGER(0..1),
+ poll-request INTEGER(0..1)
+}
+
+D-TX-WAIT ::= SEQUENCE
+{
+ call-identifier INTEGER(0..16383),
+ transmission-request-permission INTEGER(0..1)
+}
+D-TX-CONTINUE ::= SEQUENCE
+{
+ call-identifier INTEGER(0..16383),
+ continue INTEGER(0..1),
+ transmission-request-permission INTEGER(0..1)
+}
+
+U-LOCATION-UPDATE-DEMAND ::= SEQUENCE
+{
+ location-update-type UPDATE-TYPE,
+ request-to-append-LA BOOLEAN,
+ cipher-control CHOICE{no-cipher NULL,ciphering-parameters INTEGER(0..1023)},
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-parameters SEQUENCE
+ {
+ class-of-MS CHOICE{none NULL, class-of-MS INTEGER(0..16777215)},
+ energy-saving-mode CHOICE{none NULL,energy-saving-mode INTEGER(0..7)},
+ la-information CHOICE{none NULL,la-information INTEGER(0..16383)},
+ ssi CHOICE{none NULL,ssi OCTET STRING(SIZE(3))},
+ address-extension CHOICE{none NULL,address-extension OCTET STRING(SIZE(3))},
+ type3 CHOICE
+ {
+ no-type3 NULL,
+ type3-elements SEQUENCE
+ {
+ type3-identifier TYPE3-IDENTIFIER,
+ group-identity-location-demand CHOICE{none NULL,group-identity-location-demand INTEGER(0..3)},
+ group-report-response CHOICE{none NULL,group-report-response BOOLEAN},
+ group-identity-uplink CHOICE{none NULL,group-identity-uplink INTEGER(0..15)},
+ proprietary CHOICE{none NULL,proprietary INTEGER(0..7) }
+ }
+ }
+ }
+ }
+}
+
+U-ATTACH-DETACH-GROUP-IDENTITY ::=SEQUENCE
+{
+ group-identity-report BOOLEAN,
+ group-identity-attach-detach-mode BOOLEAN,
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-element SEQUENCE{
+ type3 CHOICE
+ {
+ no-type3 NULL,
+ type3-elements SEQUENCE
+ {
+ type3-identifier TYPE3-IDENTIFIER,
+ length INTEGER(0..2047),
+ repeat-num INTEGER(0..63),
+ group-identity-uplink GROUP-IDENTITY-UPLINK
+ --group-report-response CHOICE{none NULL,group-report-response INTEGER(0..7)},
+ --group-identity-uplink CHOICE{none NULL,group-identity-uplink INTEGER(0..15)},
+ -- proprietary CHOICE{none NULL,proprietary INTEGER(0..7)}
+ }
+ }
+ }
+ }
+}
+
+
+U-ATTACH-DETACH-GROUP-IDENTITY-ACK ::=SEQUENCE
+{
+ group-identity-ack-type BOOLEAN,
+ group-identity-attach-detach-mode BOOLEAN,
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-element SEQUENCE{
+ type3 CHOICE{
+ no-type3 NULL,
+ type3-elements SEQUENCE
+ {
+ type3-identifier TYPE3-IDENTIFIER,
+ length INTEGER(0..2047),
+ repeat-num INTEGER(0..63),
+ group-identity-uplink GROUP-IDENTITY-UPLINK
+ --group-identity-uplink CHOICE{none NULL,group-identity-uplink INTEGER(0..15)},
+ -- proprietary CHOICE{none NULL,proprietary INTEGER(0..7) }
+ }
+ }
+ }
+}
+}
+
+U-SETUP ::= SEQUENCE{
+ area-selection INTEGER ( 0..15 ),
+ hook-method-selection BOOLEAN,
+ simple-duplex-selection ENUMERATED {simplex(0), duplex(1)},
+ basic-service-information Basic-service-information,
+ request-transmit-send-data INTEGER ( 0..1 ),
+ call-priority INTEGER ( 0..15 ),
+ clir-control INTEGER ( 0..3 ),
+ called-party-address Called-party-address-type,
+ optional-elements CHOICE
+ {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ external-subscriber-number [14] CHOICE { none NULL, external-subscriber-number [14] INTEGER (0..31)},
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+Basic-service-information ::= SEQUENCE
+{
+ circuit-mode CIRCUIT,
+ encryption INTEGER(0..1),
+ communication INTEGER(0..3),
+ slots-or-speech INTEGER(0..3)
+ }
+CIRCUIT ::= ENUMERATED {
+ speech-tch-s(0),
+ unprotected-tch-7-2(1),
+ low-protection-tch-4-8(2),
+ low-protection-tch-4-8(3),
+ low-protection-tch-4-8(4),
+ high-protection-tch-2-4(5),
+ high-protection-tch-2-4(6),
+ high-protection-tch-2-4(7)
+ }
+
+U-ALERT::=
+ SEQUENCE{
+ call-identifier INTEGER ( 0..1023 ),
+ reserved INTEGER ( 0..1 ),
+ simplex-duplex-selection ENUMERATED {simplex(0), duplex(1)},
+ optional-elements CHOICE {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ basic-service-information CHOICE{none NULL, basic-service-information Basic-service-information},
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+
+U-CONNECT ::=
+ SEQUENCE{
+ call-identifier INTEGER (0..1023),
+ hook-method-selection BOOLEAN,
+ simplex-duplex-selection ENUMERATED {simplex(0), duplex(1)},
+ optional-elements CHOICE {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ basic-service-information CHOICE{none NULL, basic-service-information Basic-service-information},
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+
+U-TX-CEASED::=
+ SEQUENCE{
+ call-identifier INTEGER ( 0..1023 ),
+ optional-elements CHOICE {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+
+U-TX-DEMAND::=
+ SEQUENCE{
+ call-identifier INTEGER ( 0..1023 ),
+ tx-demand-priority INTEGER ( 0..3),
+ encryption-control INTEGER ( 0..1 ),
+ reserved INTEGER ( 0..1 ),
+ optional-elements CHOICE {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+U-DISCONNECT ::=
+ SEQUENCE{
+ call-identifier INTEGER ( 0..1023 ),
+ disconnect-cause INTEGER ( 0..31 ),
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+U-CALL-RESTORE::=
+ SEQUENCE{
+ call-identifier INTEGER ( 0..1023 ),
+ request-to-transmit-send-data INTEGER ( 0..1 ),
+ other-party-address Other-party-address-type,
+ basic-service-information Basic-service-information,
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+
+D-SETUP ::= SEQUENCE{
+ call-identifier INTEGER (0..16383 ),
+ call-time-out INTEGER (0..15 ),
+ hook-method-selection INTEGER(0..1),
+ simplex-duplex-selection ENUMERATED {simplex(0), duplex(1)},
+ basic-service-information Basic-service-information,
+ transmission-grant INTEGER (0..3 ),
+ transmission-request-permission INTEGER (0..1 ),
+ call-priority INTEGER (0..15),
+ optional-elements CHOICE {
+ no-type2 NULL ,
+ type2-parameters SEQUENCE {
+ calling-party-address CHOICE { none NULL, calling-party-address Calling-party-address-type},
+ external-subscriber-number [14] CHOICE { none NULL, external-subscriber-number [14] INTEGER (0..15)},
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+D-CALL-PROCEEDING ::=
+ SEQUENCE{
+ call-identifier INTEGER (0..1023),
+ call-time-out-setup-phase INTEGER (0..7),
+ hook-method-selection BOOLEAN ,
+ simplex-duplex-selection INTEGER (0..1),
+ optional-elements CHOICE {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ basic-service-information CHOICE{none NULL, basic-service-information Basic-service-information},
+ call-status CHOICE{none NULL, call-status INTEGER (0..7)},
+ notification-indicator CHOICE{none NULL, notification-indicator INTEGER (0..63) },
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+
+D-ALERT ::= SEQUENCE{
+
+ call-identifier INTEGER ( 0..1023 ),
+ call-time-out-setup-phase INTEGER ( 0..7 ),
+ reserved INTEGER ( 0..1 ),
+ simplex-duplex-selection ENUMERATED {simplex(0), duplex(1)},
+ call-queued BOOLEAN,
+ optional-elements CHOICE
+ {
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ basic-service-infomation CHOICE{none NULL, basic-service-infomation Basic-service-information},
+ notification-indicator CHOICE{none NULL, notification-indicator INTEGER (0..63) },
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+
+D-CONNECT::=
+ SEQUENCE{
+ call-identifier INTEGER (0..1023),
+ call-time-out INTEGER (0..31),
+ hook-method-selection BOOLEAN,
+ simplex-duplex-selection ENUMERATED {simplex(0), duplex(1)},
+ transmission-grant INTEGER (0..3),
+ transmission-request-permission INTEGER (0..1) ,
+ call-ownership INTEGER (0..1) ,
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ call-priority CHOICE{none NULL, call-priority INTEGER (0..15)},
+ basic-service-information CHOICE{none NULL, basic-service-information Basic-service-information},
+ temporary-address CHOICE { none NULL, temporary-address Calling-party-address-type},
+ notification-indicator CHOICE { none NULL, notification-indicator INTEGER (0..63)},
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+ }
+
+D-CONNECT-ACK::=
+ SEQUENCE{
+ call-identifier INTEGER (0..1023),
+ call-time-out INTEGER (0..15),
+ transmission-grant INTEGER (0..3),
+ transmission-request-permission INTEGER (0..1),
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ notification-indicator CHOICE { none NULL, notification-indicator INTEGER (0..63)},
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+D-RELEASE::=
+ SEQUENCE{
+ call-identifier INTEGER ( 0..16383 ),
+ disconnect-cause INTEGER ( 0..31 ),
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ notification-indicator CHOICE {none NULL, notification-indicator INTEGER (0..63) },
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+ }
+
+D-CALL-RESTORE::=
+ SEQUENCE{
+ call-identifier INTEGER ( 0..1023 ),
+ transmission-grant INTEGER ( 0..3 ),
+ transmission-request-permission INTEGER( 0..1 ),
+ reset-call-time-out INTEGER ( 0..1 ),
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ new-call-identifier CHOICE{none NULL, new-call-identifier INTEGER (0..1023)},
+ call-time-out CHOICE{none NULL, call-time-out INTEGER ( 0..7 )},
+ call-status CHOICE { none NULL, call-status INTEGER ( 0..7 )},
+ modify CHOICE { none NULL, modify Modify-type},
+ notification-indicator CHOICE { none NULL, notification-indicator INTEGER (0..63)},
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+}
+
+D-TX-CEASED::=
+ SEQUENCE{
+ call-identifier INTEGER ( 0..1023 ),
+ transmission-request-permission INTEGER ( 0..1 ),
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-parameters SEQUENCE {
+ notification-indicator CHOICE {none NULL, notification-indicator INTEGER (0..63) },
+ prop [15] CHOICE {none NULL, prop [15] Proprietary }
+ }
+ }
+ }
+
+D-TX-GRANTED ::=
+ SEQUENCE {
+ call-identifier INTEGER ( 0..1023 ),
+ transmission-grant INTEGER ( 0..3 ),
+ transmission-request-permission INTEGER ( 0..1 ),
+ encryption-control INTEGER ( 0..1 ),
+ reserved INTEGER ( 0..1 )
+}
+ D-ATTACH-DETACH-GROUP-IDENTITY ::=SEQUENCE
+{
+ group-identity-report BOOLEAN,
+ group-identity-ack-request BOOLEAN,
+ group-identity-attach-detach-mode BOOLEAN,
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-element SEQUENCE{
+ type3 CHOICE{
+ no-type3 NULL,
+ type3-elements SEQUENCE
+ {type3-identifier TYPE3-IDENTIFIER,
+ length INTEGER(0..2047),
+ repeat-num INTEGER(0..63),
+ group-identity-downlink GROUP-IDENTITY-DOWNLINK
+ --proprietary CHOICE{none NULL,proprietary INTEGER(0..7)},
+ --group-report-response CHOICE{none NULL,group-report-response INTEGER(0..7)},
+ -- group-identity-downlink CHOICE{none NULL,group-identity-downlink INTEGER(0..15)}
+ }
+ }
+ }
+ }
+}
+
+D-ATTACH-DETACH-GROUP-IDENTITY-ACK ::=SEQUENCE
+{
+ group-identity-attach-detach-accept BOOLEAN,
+ reserved INTEGER ( 0..1 ),
+ optional-elements CHOICE{
+ no-type2 NULL,
+ type2-element SEQUENCE{
+ type3 CHOICE{
+ no-type3 NULL,
+ type3-elements SEQUENCE
+ {
+ type3-identifier TYPE3-IDENTIFIER,
+ length INTEGER(0..2047),
+ repeat-num INTEGER(0..63),
+ group-identity-downlink GROUP-IDENTITY-DOWNLINK
+ -- proprietary CHOICE{none NULL,proprietary INTEGER(0..7) },
+ -- group-identity-downlink CHOICE{none NULL,group-identity-downlink INTEGER(0..15)}
+ }
+ }
+ }
+ }
+}
+
+SPEECHMODE ::= SEQUENCE
+{
+ encryption-flag INTEGER ( 0..1 ),
+ communication-type CALLMODE,
+ speech-service INTEGER (0..3)
+}
+
+DATAMODE ::= SEQUENCE
+{
+ encryption-flag INTEGER ( 0..1 ),
+ communication-type INTEGER ( 0..3 ),
+ slots-per-frame INTEGER (0..3)
+}
+
+CALLMODE ::= ENUMERATED
+{
+ single-call(0),
+ group-call(1),
+ reserve(2),
+ broadcase(3)
+}
+
+Calling-party-address-type ::= CHOICE {
+ called-party-sna [0] INTEGER ( 0..255 ),
+ called-party-ssi [1] INTEGER ( 0..16777215 ),
+ -- WS modification: fix misspelling
+ called-party-ssi-extension [2] SEQUENCE {
+ -- End WS modification
+ called-party-ssi INTEGER ( 0..16777215 ),
+ -- WS modification: fix misspelling
+ called-party-extention INTEGER ( 0..16777215 )
+ -- End WS modification
+ }
+}
+
+Called-party-address-type ::= Calling-party-address-type
+Other-party-address-type ::= Calling-party-address-type
+
+Proprietary ::= [15] SEQUENCE {
+ -- element identifier is 15 as defined in table 212
+ -- the length is encoded in 11 bits (table E.1)
+ data CHOICE
+ {
+ element1 Type1,
+ element Type2
+ }
+}
+
+Proprietary-element-owner ::= INTEGER(0..255)
+
+Type1 ::= SEQUENCE
+{
+ proprietary-element-owner Proprietary-element-owner,
+ proprietary-element-owner-extension BIT STRING
+ }
+
+Type2 ::= SEQUENCE
+{
+ proprietary-element-owner Proprietary-element-owner
+
+ }
+
+Modify-type ::= SEQUENCE{
+ simplex-duplex-selection ENUMERATED {simplex(0), duplex(1)},
+ basic-service-information Basic-service-information
+}
+
+
+
+END