From e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 10 Apr 2024 22:34:10 +0200 Subject: Adding upstream version 4.2.2. Signed-off-by: Daniel Baumann --- epan/dissectors/asn1/tetra/tetra.asn | 2337 ++++++++++++++++++++++++++++++++++ 1 file changed, 2337 insertions(+) create mode 100644 epan/dissectors/asn1/tetra/tetra.asn (limited to 'epan/dissectors/asn1/tetra/tetra.asn') diff --git a/epan/dissectors/asn1/tetra/tetra.asn b/epan/dissectors/asn1/tetra/tetra.asn new file mode 100644 index 00000000..e197d13f --- /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 -- cgit v1.2.3