From 960885a60feb1ef3f9f654c7f4caf73f7a25dc4a Mon Sep 17 00:00:00 2001 From: rajalakshmisv Date: Tue, 31 May 2022 14:59:10 +0000 Subject: [PATCH] E2AP and E2SM-RC version upgrade to E2aP v.2.0 and E2SM-RC to v1.0.1 Signed-off-by: rajalakshmisv Change-Id: I241726da02e3aea69f3cc3e127a47455b778c1e6 --- Dockerfile | 2 +- control/rcControl.go | 144 +- control/rcControlUtils.go | 58 + control/rcE2AP.go | 21 + control/rcE2SmRc.go | 153 +- control/rcService.go | 7 +- control/rcTypes.go | 66 +- e2ap/e2ap.asn | 1593 ++++ e2ap/headers/AMFName.h | 46 + e2ap/headers/Cause.h | 15 +- e2ap/headers/CauseE2node.h | 55 + e2ap/headers/CauseMisc.h | 6 +- e2ap/headers/CauseProtocol.h | 6 +- e2ap/headers/CauseRIC.h | 65 - e2ap/headers/CauseRICrequest.h | 68 + e2ap/headers/CauseRICservice.h | 8 +- e2ap/headers/CauseTransport.h | 6 +- e2ap/headers/Criticality.h | 4 +- e2ap/headers/CriticalityDiagnostics-IE-Item.h | 6 +- e2ap/headers/CriticalityDiagnostics-IE-List.h | 6 +- e2ap/headers/CriticalityDiagnostics.h | 6 +- e2ap/headers/E2AP-PDU.h | 6 +- .../headers/E2RemovalFailure.h | 26 +- .../headers/E2RemovalRequest.h | 26 +- .../headers/E2RemovalResponse.h | 24 +- e2ap/headers/E2nodeComponentConfigAddition-Item.h | 48 + e2ap/headers/E2nodeComponentConfigAddition-List.h | 44 + .../E2nodeComponentConfigAdditionAck-Item.h | 48 + .../E2nodeComponentConfigAdditionAck-List.h | 44 + e2ap/headers/E2nodeComponentConfigRemoval-Item.h | 46 + e2ap/headers/E2nodeComponentConfigRemoval-List.h | 44 + .../headers/E2nodeComponentConfigRemovalAck-Item.h | 48 + .../headers/E2nodeComponentConfigRemovalAck-List.h | 44 + e2ap/headers/E2nodeComponentConfigUpdate-Item.h | 48 + e2ap/headers/E2nodeComponentConfigUpdate-List.h | 44 + e2ap/headers/E2nodeComponentConfigUpdateAck-Item.h | 48 + e2ap/headers/E2nodeComponentConfigUpdateAck-List.h | 44 + e2ap/headers/E2nodeComponentConfiguration.h | 45 + e2ap/headers/E2nodeComponentConfigurationAck.h | 58 + e2ap/headers/E2nodeComponentID.h | 76 + e2ap/headers/E2nodeComponentInterfaceE1.h | 44 + e2ap/headers/E2nodeComponentInterfaceF1.h | 44 + .../headers/E2nodeComponentInterfaceNG.h | 28 +- e2ap/headers/E2nodeComponentInterfaceS1.h | 44 + e2ap/headers/E2nodeComponentInterfaceType.h | 61 + e2ap/headers/E2nodeComponentInterfaceW1.h | 44 + e2ap/headers/E2nodeComponentInterfaceX2.h | 48 + e2ap/headers/E2nodeComponentInterfaceXn.h | 44 + e2ap/headers/E2nodeConfigurationUpdate.h | 42 + .../headers/E2nodeConfigurationUpdateAcknowledge.h | 42 + e2ap/headers/E2nodeConfigurationUpdateFailure.h | 42 + e2ap/headers/E2nodeTNLassociationRemoval-Item.h | 45 + e2ap/headers/E2nodeTNLassociationRemoval-List.h | 44 + e2ap/headers/E2setupFailure.h | 8 +- e2ap/headers/E2setupRequest.h | 8 +- e2ap/headers/E2setupResponse.h | 8 +- e2ap/headers/ENB-ID-Choice.h | 6 +- e2ap/headers/ENB-ID.h | 6 +- e2ap/headers/ENGNB-ID.h | 6 +- e2ap/headers/ErrorIndication.h | 8 +- e2ap/headers/GNB-CU-UP-ID.h | 6 +- e2ap/headers/GNB-DU-ID.h | 6 +- e2ap/headers/GNB-ID-Choice.h | 6 +- e2ap/headers/GlobalE2node-ID.h | 6 +- e2ap/headers/GlobalE2node-eNB-ID.h | 6 +- e2ap/headers/GlobalE2node-en-gNB-ID.h | 14 +- e2ap/headers/GlobalE2node-gNB-ID.h | 12 +- e2ap/headers/GlobalE2node-ng-eNB-ID.h | 14 +- e2ap/headers/GlobalENB-ID.h | 6 +- e2ap/headers/GlobalNG-RANNode-ID.h | 61 + e2ap/headers/GlobalRIC-ID.h | 6 +- e2ap/headers/GlobalenGNB-ID.h | 6 +- e2ap/headers/GlobalgNB-ID.h | 6 +- e2ap/headers/GlobalngeNB-ID.h | 6 +- e2ap/headers/InitiatingMessage.h | 26 +- e2ap/headers/MMEname.h | 46 + e2ap/headers/NGENB-DU-ID.h | 46 + e2ap/headers/PLMN-Identity.h | 6 +- e2ap/headers/Presence.h | 4 +- e2ap/headers/PrintableString.h | 37 + e2ap/headers/ProcedureCode.h | 8 +- e2ap/headers/ProtocolIE-Container.h | 304 +- e2ap/headers/ProtocolIE-ContainerList.h | 6 +- e2ap/headers/ProtocolIE-ContainerPair.h | 6 +- e2ap/headers/ProtocolIE-ContainerPairList.h | 6 +- e2ap/headers/ProtocolIE-Field.h | 537 +- e2ap/headers/ProtocolIE-FieldPair.h | 6 +- e2ap/headers/ProtocolIE-ID.h | 31 +- e2ap/headers/ProtocolIE-SingleContainer.h | 306 +- e2ap/headers/RANfunction-Item.h | 10 +- e2ap/headers/RANfunctionDefinition.h | 6 +- e2ap/headers/RANfunctionID-Item.h | 6 +- e2ap/headers/RANfunctionID.h | 6 +- e2ap/headers/RANfunctionIDcause-Item.h | 6 +- e2ap/headers/RANfunctionOID.h | 46 + e2ap/headers/RANfunctionRevision.h | 6 +- e2ap/headers/RANfunctions-List.h | 6 +- e2ap/headers/RANfunctionsID-List.h | 6 +- e2ap/headers/RANfunctionsIDcause-List.h | 6 +- e2ap/headers/RICaction-Admitted-Item.h | 6 +- e2ap/headers/RICaction-Admitted-List.h | 6 +- e2ap/headers/RICaction-NotAdmitted-Item.h | 6 +- e2ap/headers/RICaction-NotAdmitted-List.h | 6 +- e2ap/headers/RICaction-ToBeSetup-Item.h | 6 +- e2ap/headers/RICactionDefinition.h | 6 +- e2ap/headers/RICactionID.h | 6 +- e2ap/headers/RICactionType.h | 6 +- e2ap/headers/RICactions-ToBeSetup-List.h | 6 +- e2ap/headers/RICcallProcessID.h | 6 +- e2ap/headers/RICcontrolAckRequest.h | 9 +- e2ap/headers/RICcontrolAcknowledge.h | 8 +- e2ap/headers/RICcontrolFailure.h | 8 +- e2ap/headers/RICcontrolHeader.h | 6 +- e2ap/headers/RICcontrolMessage.h | 6 +- e2ap/headers/RICcontrolOutcome.h | 6 +- e2ap/headers/RICcontrolRequest.h | 8 +- e2ap/headers/RICcontrolStatus.h | 57 - e2ap/headers/RICeventTriggerDefinition.h | 6 +- e2ap/headers/RICindication.h | 8 +- e2ap/headers/RICindicationHeader.h | 6 +- e2ap/headers/RICindicationMessage.h | 6 +- e2ap/headers/RICindicationSN.h | 6 +- e2ap/headers/RICindicationType.h | 6 +- e2ap/headers/RICrequestID.h | 6 +- e2ap/headers/RICserviceQuery.h | 8 +- e2ap/headers/RICserviceUpdate.h | 42 - e2ap/headers/RICserviceUpdateAcknowledge.h | 42 - e2ap/headers/RICserviceUpdateFailure.h | 42 - e2ap/headers/RICsubscription-List-withCause.h | 44 + e2ap/headers/RICsubscription-withCause-Item.h | 48 + e2ap/headers/RICsubscriptionDeleteFailure.h | 8 +- e2ap/headers/RICsubscriptionDeleteRequest.h | 8 +- e2ap/headers/RICsubscriptionDeleteRequired.h | 42 + e2ap/headers/RICsubscriptionDeleteResponse.h | 8 +- e2ap/headers/RICsubscriptionDetails.h | 6 +- e2ap/headers/RICsubscriptionFailure.h | 8 +- e2ap/headers/RICsubscriptionRequest.h | 8 +- e2ap/headers/RICsubscriptionResponse.h | 8 +- e2ap/headers/RICsubsequentAction.h | 6 +- e2ap/headers/RICsubsequentActionType.h | 6 +- e2ap/headers/RICtimeToWait.h | 41 +- e2ap/headers/ResetRequest.h | 8 +- e2ap/headers/ResetResponse.h | 8 +- e2ap/headers/SuccessfulOutcome.h | 24 +- e2ap/headers/TNLinformation.h | 45 + e2ap/headers/TNLusage.h | 55 + e2ap/headers/TimeToWait.h | 6 +- e2ap/headers/TransactionID.h | 46 + e2ap/headers/TriggeringMessage.h | 4 +- e2ap/headers/TypeOfError.h | 6 +- e2ap/headers/UnsuccessfulOutcome.h | 24 +- e2ap/headers/asn_constant.h | 3 + e2ap/headers/asn_system.h | 6 +- .../MeasurementTypeName.c => e2ap/lib/AMFName.c | 42 +- e2ap/lib/Cause.c | 38 +- e2ap/lib/CauseE2node.c | 56 + e2ap/lib/CauseMisc.c | 6 +- e2ap/lib/CauseProtocol.c | 6 +- e2ap/lib/CauseRIC.c | 76 - e2ap/lib/CauseRICrequest.c | 82 + e2ap/lib/CauseRICservice.c | 10 +- e2ap/lib/CauseTransport.c | 6 +- e2ap/lib/Criticality.c | 4 +- e2ap/lib/CriticalityDiagnostics-IE-Item.c | 6 +- e2ap/lib/CriticalityDiagnostics-IE-List.c | 6 +- e2ap/lib/CriticalityDiagnostics.c | 6 +- e2ap/lib/E2AP-PDU.c | 6 +- e2ap/lib/E2RemovalFailure.c | 50 + e2ap/lib/E2RemovalRequest.c | 50 + e2ap/lib/E2RemovalResponse.c | 50 + e2ap/lib/E2nodeComponentConfigAddition-Item.c | 70 + e2ap/lib/E2nodeComponentConfigAddition-List.c | 53 + e2ap/lib/E2nodeComponentConfigAdditionAck-Item.c | 70 + e2ap/lib/E2nodeComponentConfigAdditionAck-List.c | 53 + e2ap/lib/E2nodeComponentConfigRemoval-Item.c | 60 + e2ap/lib/E2nodeComponentConfigRemoval-List.c | 53 + e2ap/lib/E2nodeComponentConfigRemovalAck-Item.c | 70 + e2ap/lib/E2nodeComponentConfigRemovalAck-List.c | 53 + e2ap/lib/E2nodeComponentConfigUpdate-Item.c | 70 + e2ap/lib/E2nodeComponentConfigUpdate-List.c | 53 + e2ap/lib/E2nodeComponentConfigUpdateAck-Item.c | 70 + e2ap/lib/E2nodeComponentConfigUpdateAck-List.c | 53 + e2ap/lib/E2nodeComponentConfiguration.c | 60 + e2ap/lib/E2nodeComponentConfigurationAck.c | 114 + e2ap/lib/E2nodeComponentID.c | 122 + e2ap/lib/E2nodeComponentInterfaceE1.c | 50 + e2ap/lib/E2nodeComponentInterfaceF1.c | 50 + e2ap/lib/E2nodeComponentInterfaceNG.c | 50 + e2ap/lib/E2nodeComponentInterfaceS1.c | 50 + e2ap/lib/E2nodeComponentInterfaceType.c | 68 + e2ap/lib/E2nodeComponentInterfaceW1.c | 50 + e2ap/lib/E2nodeComponentInterfaceX2.c | 64 + e2ap/lib/E2nodeComponentInterfaceXn.c | 50 + e2ap/lib/E2nodeConfigurationUpdate.c | 50 + e2ap/lib/E2nodeConfigurationUpdateAcknowledge.c | 50 + e2ap/lib/E2nodeConfigurationUpdateFailure.c | 50 + e2ap/lib/E2nodeTNLassociationRemoval-Item.c | 60 + e2ap/lib/E2nodeTNLassociationRemoval-List.c | 53 + e2ap/lib/E2setupFailure.c | 8 +- e2ap/lib/E2setupRequest.c | 8 +- e2ap/lib/E2setupResponse.c | 8 +- e2ap/lib/ENB-ID-Choice.c | 6 +- e2ap/lib/ENB-ID.c | 6 +- e2ap/lib/ENGNB-ID.c | 6 +- e2ap/lib/ErrorIndication.c | 8 +- e2ap/lib/GNB-CU-UP-ID.c | 6 +- e2ap/lib/GNB-DU-ID.c | 6 +- e2ap/lib/GNB-ID-Choice.c | 6 +- e2ap/lib/GlobalE2node-ID.c | 6 +- e2ap/lib/GlobalE2node-eNB-ID.c | 6 +- e2ap/lib/GlobalE2node-en-gNB-ID.c | 42 +- e2ap/lib/GlobalE2node-gNB-ID.c | 35 +- e2ap/lib/GlobalE2node-ng-eNB-ID.c | 39 +- e2ap/lib/GlobalENB-ID.c | 6 +- e2ap/lib/GlobalNG-RANNode-ID.c | 67 + e2ap/lib/GlobalRIC-ID.c | 6 +- e2ap/lib/GlobalenGNB-ID.c | 6 +- e2ap/lib/GlobalgNB-ID.c | 6 +- e2ap/lib/GlobalngeNB-ID.c | 6 +- e2ap/lib/InitiatingMessage.c | 124 +- e2sm/lib/CellObjectID.c => e2ap/lib/MMEname.c | 46 +- e2ap/lib/NGENB-DU-ID.c | 70 + e2ap/lib/PLMN-Identity.c | 6 +- e2ap/lib/Presence.c | 4 +- e2ap/lib/PrintableString.c | 130 + e2ap/lib/ProcedureCode.c | 4 +- e2ap/lib/ProtocolIE-Container.c | 866 +- e2ap/lib/ProtocolIE-ContainerList.c | 6 +- e2ap/lib/ProtocolIE-ContainerPair.c | 6 +- e2ap/lib/ProtocolIE-ContainerPairList.c | 6 +- e2ap/lib/ProtocolIE-Field.c | 8735 ++++++++++++++------ e2ap/lib/ProtocolIE-FieldPair.c | 6 +- e2ap/lib/ProtocolIE-ID.c | 4 +- e2ap/lib/ProtocolIE-SingleContainer.c | 298 +- e2ap/lib/RANfunction-Item.c | 24 +- e2ap/lib/RANfunctionDefinition.c | 6 +- e2ap/lib/RANfunctionID-Item.c | 6 +- e2ap/lib/RANfunctionID.c | 6 +- e2ap/lib/RANfunctionIDcause-Item.c | 6 +- e2ap/lib/RANfunctionOID.c | 109 + e2ap/lib/RANfunctionRevision.c | 6 +- e2ap/lib/RANfunctions-List.c | 12 +- e2ap/lib/RANfunctionsID-List.c | 12 +- e2ap/lib/RANfunctionsIDcause-List.c | 12 +- e2ap/lib/RICaction-Admitted-Item.c | 6 +- e2ap/lib/RICaction-Admitted-List.c | 8 +- e2ap/lib/RICaction-NotAdmitted-Item.c | 6 +- e2ap/lib/RICaction-NotAdmitted-List.c | 8 +- e2ap/lib/RICaction-ToBeSetup-Item.c | 6 +- e2ap/lib/RICactionDefinition.c | 6 +- e2ap/lib/RICactionID.c | 6 +- e2ap/lib/RICactionType.c | 6 +- e2ap/lib/RICactions-ToBeSetup-List.c | 8 +- e2ap/lib/RICcallProcessID.c | 6 +- e2ap/lib/RICcontrolAckRequest.c | 16 +- e2ap/lib/RICcontrolAcknowledge.c | 8 +- e2ap/lib/RICcontrolFailure.c | 8 +- e2ap/lib/RICcontrolHeader.c | 6 +- e2ap/lib/RICcontrolMessage.c | 6 +- e2ap/lib/RICcontrolOutcome.c | 6 +- e2ap/lib/RICcontrolRequest.c | 8 +- e2ap/lib/RICcontrolStatus.c | 60 - e2ap/lib/RICeventTriggerDefinition.c | 6 +- e2ap/lib/RICindication.c | 8 +- e2ap/lib/RICindicationHeader.c | 6 +- e2ap/lib/RICindicationMessage.c | 6 +- e2ap/lib/RICindicationSN.c | 6 +- e2ap/lib/RICindicationType.c | 6 +- e2ap/lib/RICrequestID.c | 6 +- e2ap/lib/RICserviceQuery.c | 8 +- e2ap/lib/RICserviceUpdate.c | 50 - e2ap/lib/RICserviceUpdateAcknowledge.c | 50 - e2ap/lib/RICserviceUpdateFailure.c | 50 - e2ap/lib/RICsubscription-List-withCause.c | 53 + e2ap/lib/RICsubscription-withCause-Item.c | 70 + e2ap/lib/RICsubscriptionDeleteFailure.c | 8 +- e2ap/lib/RICsubscriptionDeleteRequest.c | 8 +- e2ap/lib/RICsubscriptionDeleteRequired.c | 50 + e2ap/lib/RICsubscriptionDeleteResponse.c | 8 +- e2ap/lib/RICsubscriptionDetails.c | 6 +- e2ap/lib/RICsubscriptionFailure.c | 8 +- e2ap/lib/RICsubscriptionRequest.c | 8 +- e2ap/lib/RICsubscriptionResponse.c | 8 +- e2ap/lib/RICsubsequentAction.c | 6 +- e2ap/lib/RICsubsequentActionType.c | 6 +- e2ap/lib/RICtimeToWait.c | 82 +- e2ap/lib/ResetRequest.c | 8 +- e2ap/lib/ResetResponse.c | 8 +- e2ap/lib/SuccessfulOutcome.c | 108 +- e2ap/lib/TNLinformation.c | 140 + e2ap/lib/TNLusage.c | 60 + e2ap/lib/TimeToWait.c | 6 +- .../ProcedureCode.c => e2ap/lib/TransactionID.c | 38 +- e2ap/lib/TriggeringMessage.c | 4 +- e2ap/lib/TypeOfError.c | 6 +- e2ap/lib/UnsuccessfulOutcome.c | 106 +- e2ap/lib/asn_internal.c | 3 +- e2ap/lib/asn_random_fill.c | 4 - e2ap/lib/per_support.c | 9 +- e2ap/wrapper.c | 74 +- e2ap/wrapper.h | 15 +- e2ap/wrapper.o | Bin 0 -> 8416 bytes e2sm/.wrapper.c.swm | Bin 0 -> 20480 bytes e2sm/.wrapper.c.swn | Bin 0 -> 24576 bytes e2sm/.wrapper.c.swo | Bin 0 -> 16384 bytes e2sm/e2sm-rc-nov2021.asn | 1551 ++++ e2sm/headers/.RANParameter-Testing-Item.h.swp | Bin 0 -> 12288 bytes e2sm/headers/AMF-UE-NGAP-ID.h | 46 + e2sm/headers/AMFPointer.h | 46 + e2sm/headers/AMFRegionID.h | 46 + e2sm/headers/AMFSetID.h | 46 + e2sm/headers/BIT_STRING.h | 0 e2sm/headers/BOOLEAN.h | 0 e2sm/headers/CGI.h | 61 + e2sm/headers/CSI-RS-Index.h | 46 - .../CallProcessBreakpoint-RANParameter-Item.h | 50 + .../headers/CellIdentification-RANParameter-Item.h | 50 + e2sm/headers/CellObjectID.h | 46 - e2sm/headers/CellResourceReportListItem.h | 58 - e2sm/headers/ControlAction-RANParameter-Item.h | 50 + e2sm/headers/ControlOutcome-RANParameter-Item.h | 50 + e2sm/headers/CoreCPID.h | 58 + e2sm/headers/Criticality.h | 52 - e2sm/headers/E-UTRA-ARFCN.h | 46 + e2sm/headers/E-UTRA-PCI.h | 46 + e2sm/headers/E-UTRA-TAC.h | 46 + e2sm/headers/E2SM-KPM-ActionDefinition-Format1.h | 46 - e2sm/headers/E2SM-KPM-ActionDefinition.h | 67 - .../E2SM-KPM-EventTriggerDefinition-Format1.h | 53 - e2sm/headers/E2SM-KPM-EventTriggerDefinition.h | 55 - e2sm/headers/E2SM-KPM-IndicationHeader-Format1.h | 46 - e2sm/headers/E2SM-KPM-IndicationHeader.h | 55 - e2sm/headers/E2SM-KPM-IndicationMessage-Format1.h | 69 - e2sm/headers/E2SM-KPM-IndicationMessage.h | 55 - e2sm/headers/E2SM-KPM-RANFunctionDefinition.h | 60 - .../E2SM-RC-ActionDefinition-Format1-Item.h | 44 + e2sm/headers/E2SM-RC-ActionDefinition-Format1.h | 53 + .../E2SM-RC-ActionDefinition-Format2-Item.h | 48 + e2sm/headers/E2SM-RC-ActionDefinition-Format2.h | 53 + .../E2SM-RC-ActionDefinition-Format3-Item.h | 44 + e2sm/headers/E2SM-RC-ActionDefinition-Format3.h | 57 + e2sm/headers/E2SM-RC-ActionDefinition.h | 73 + e2sm/headers/E2SM-RC-CallProcessID-Format1.h | 44 + e2sm/headers/E2SM-RC-CallProcessID.h | 65 + e2sm/headers/E2SM-RC-ControlHeader-Format1.h | 24 +- e2sm/headers/E2SM-RC-ControlHeader.h | 38 +- e2sm/headers/E2SM-RC-ControlMessage-Format1-Item.h | 46 + e2sm/headers/E2SM-RC-ControlMessage-Format1.h | 12 +- e2sm/headers/E2SM-RC-ControlMessage.h | 38 +- e2sm/headers/E2SM-RC-ControlOutcome-Format1-Item.h | 46 + e2sm/headers/E2SM-RC-ControlOutcome-Format1.h | 53 + e2sm/headers/E2SM-RC-ControlOutcome.h | 65 + e2sm/headers/E2SM-RC-EventTrigger-Format1-Item.h | 66 + e2sm/headers/E2SM-RC-EventTrigger-Format1.h | 55 + e2sm/headers/E2SM-RC-EventTrigger-Format2.h | 52 + e2sm/headers/E2SM-RC-EventTrigger-Format3-Item.h | 52 + e2sm/headers/E2SM-RC-EventTrigger-Format3.h | 53 + e2sm/headers/E2SM-RC-EventTrigger-Format4-Item.h | 52 + e2sm/headers/E2SM-RC-EventTrigger-Format4.h | 53 + e2sm/headers/E2SM-RC-EventTrigger-Format5.h | 59 + e2sm/headers/E2SM-RC-EventTrigger.h | 77 + e2sm/headers/E2SM-RC-IndicationHeader-Format1.h | 44 + e2sm/headers/E2SM-RC-IndicationHeader-Format2.h | 48 + e2sm/headers/E2SM-RC-IndicationHeader.h | 68 + .../E2SM-RC-IndicationMessage-Format1-Item.h | 46 + e2sm/headers/E2SM-RC-IndicationMessage-Format1.h | 53 + .../E2SM-RC-IndicationMessage-Format2-Item.h | 55 + ...C-IndicationMessage-Format2-RANParameter-Item.h | 46 + e2sm/headers/E2SM-RC-IndicationMessage-Format2.h | 53 + .../E2SM-RC-IndicationMessage-Format3-Item.h | 52 + e2sm/headers/E2SM-RC-IndicationMessage-Format3.h | 53 + .../E2SM-RC-IndicationMessage-Format4-ItemCell.h | 50 + .../E2SM-RC-IndicationMessage-Format4-ItemUE.h | 48 + e2sm/headers/E2SM-RC-IndicationMessage-Format4.h | 60 + .../E2SM-RC-IndicationMessage-Format5-Item.h | 46 + e2sm/headers/E2SM-RC-IndicationMessage-Format5.h | 53 + e2sm/headers/E2SM-RC-IndicationMessage.h | 77 + e2sm/headers/E2SM-RC-RANFunctionDefinition.h | 30 +- e2sm/headers/EN-GNB-ID.h | 56 + e2sm/headers/ENB-ID-Choice.h | 60 - e2sm/headers/ENB-ID.h | 4 +- e2sm/headers/ENB-UE-X2AP-ID-Extension.h | 46 + e2sm/headers/ENB-UE-X2AP-ID.h | 46 + e2sm/headers/EUTRA-CGI.h | 46 + e2sm/headers/EUTRACellIdentity.h | 46 + .../EventTrigger-Cell-Info-Item-Choice-Group.h | 44 + ...EventTrigger-Cell-Info-Item-Choice-Individual.h | 44 + e2sm/headers/EventTrigger-Cell-Info-Item.h | 74 + ...rement-Container.h => EventTrigger-Cell-Info.h} | 30 +- .../EventTrigger-UE-Info-Item-Choice-Group.h | 44 + .../EventTrigger-UE-Info-Item-Choice-Individual.h | 46 + e2sm/headers/EventTrigger-UE-Info-Item.h | 74 + ...PC-DU-PM-Container.h => EventTrigger-UE-Info.h} | 30 +- e2sm/headers/EventTrigger-UEevent-Info-Item.h | 46 + ...UUP-PM-Format.h => EventTrigger-UEevent-Info.h} | 30 +- e2sm/headers/FGC-DU-PM-Container.h | 53 - e2sm/headers/FQIPERSlicesPerPlmnListItem.h | 47 - e2sm/headers/FQIPERSlicesPerPlmnPerCellListItem.h | 47 - e2sm/headers/FiveGS-TAC.h | 46 + e2sm/headers/FiveQI.h | 4 +- e2sm/headers/FreqBandNrItem.h | 42 + e2sm/headers/GNB-CU-CP-UE-E1AP-ID.h | 47 + e2sm/headers/GNB-CU-UE-F1AP-ID.h | 47 + e2sm/headers/GNB-CU-UP-ID.h | 4 +- e2sm/headers/GNB-DU-ID.h | 4 +- e2sm/headers/GNB-ID-Choice.h | 56 - e2sm/headers/{ENGNB-ID.h => GNB-ID.h} | 36 +- e2sm/headers/GUAMI.h | 50 + e2sm/headers/GUMMEI.h | 48 + e2sm/headers/GlobalE2node-ID.h | 67 - e2sm/headers/GlobalE2node-gNB-ID.h | 48 - e2sm/headers/GlobalENB-ID.h | 8 +- e2sm/headers/GlobalGNB-ID.h | 46 + e2sm/headers/GlobalKPMnode-ID.h | 65 - e2sm/headers/GlobalKPMnode-eNB-ID.h | 44 - e2sm/headers/GlobalKPMnode-en-gNB-ID.h | 44 - e2sm/headers/GlobalKPMnode-gNB-ID.h | 48 - e2sm/headers/GlobalKPMnode-ng-eNB-ID.h | 44 - e2sm/headers/GlobalNGRANNodeID.h | 61 + .../{MeasurementInfoItem.h => GlobalNgENB-ID.h} | 28 +- e2sm/headers/GlobalenGNB-ID.h | 12 +- e2sm/headers/GroupID.h | 56 + e2sm/headers/INTEGER.h | 0 e2sm/headers/IndexToRFSP.h | 45 + e2sm/headers/InsertIndication-RANParameter-Item.h | 50 + e2sm/headers/Interface-MessageID.h | 57 + e2sm/headers/InterfaceID-E1.h | 46 + e2sm/headers/InterfaceID-F1.h | 46 + e2sm/headers/InterfaceID-NG.h | 44 + .../{GlobalE2node-ng-eNB-ID.h => InterfaceID-S1.h} | 26 +- e2sm/headers/InterfaceID-W1.h | 46 + e2sm/headers/InterfaceID-X2.h | 70 + e2sm/headers/InterfaceID-Xn.h | 44 + e2sm/headers/InterfaceIdentifier.h | 76 + e2sm/headers/InterfaceType.h | 61 + ...ter-Item.h => L2Parameters-RANParameter-Item.h} | 26 +- e2sm/headers/L3-RRC-Measurements.h | 50 - e2sm/headers/LogicalOR.h | 56 + e2sm/headers/MME-Code.h | 46 + e2sm/headers/MME-Group-ID.h | 46 + e2sm/headers/MME-UE-S1AP-ID.h | 47 + e2sm/headers/Makefile.am.libasncodec | 344 - e2sm/headers/MatchingUEidList.h | 44 - e2sm/headers/MeasQuantityResults.h | 48 - e2sm/headers/MeasQuantityResultsEUTRA.h | 48 - e2sm/headers/MeasResultListEUTRA.h | 44 - e2sm/headers/MeasResultListNR.h | 44 - e2sm/headers/MeasResultNR.h | 68 - e2sm/headers/MeasResultNeighCells.h | 61 - e2sm/headers/MeasResultPCell.h | 48 - e2sm/headers/MeasResultServMO.h | 50 - e2sm/headers/MeasResultServMOList.h | 44 - e2sm/headers/MeasurementCondUEidItem.h | 50 - e2sm/headers/MeasurementCondUEidList.h | 44 - e2sm/headers/MeasurementInfoList.h | 44 - e2sm/headers/MeasurementType.h | 59 - e2sm/headers/MeasurementTypeID.h | 46 - e2sm/headers/MeasurementTypeName.h | 46 - e2sm/headers/MeasurementValue.h | 67 - e2sm/headers/MessageType-Choice-NI.h | 50 + ...E2node-en-gNB-ID.h => MessageType-Choice-RRC.h} | 26 +- e2sm/headers/MessageType-Choice.h | 61 + e2sm/headers/NG-RANnodeUEXnAPID.h | 47 + e2sm/headers/NGENB-CU-UE-W1AP-ID.h | 47 + e2sm/headers/NGENB-DU-ID.h | 46 + e2sm/headers/NI-Type.h | 57 - e2sm/headers/NR-ARFCN.h | 44 + e2sm/headers/{NRCGI.h => NR-CGI.h} | 26 +- e2sm/headers/NR-PCI.h | 46 + e2sm/headers/NRCellIdentity.h | 4 +- e2sm/headers/NRFrequencyBand-List.h | 44 + e2sm/headers/NRFrequencyBandItem.h | 46 + e2sm/headers/NRFrequencyInfo.h | 46 + e2sm/headers/NRFrequencyShift7p5khz.h | 56 + e2sm/headers/NULL.h | 45 - e2sm/headers/NativeEnumerated.h | 0 e2sm/headers/NativeInteger.h | 0 e2sm/headers/NativeReal.h | 0 e2sm/headers/NeighborCell-Item-Choice-E-UTRA.h | 73 + e2sm/headers/NeighborCell-Item-Choice-NR.h | 82 + e2sm/headers/NeighborCell-Item.h | 61 + e2sm/headers/NeighborCell-List.h | 44 + e2sm/headers/NeighborRelation-Info.h | 48 + e2sm/headers/NgENB-ID.h | 60 + e2sm/headers/OCTET_STRING.h | 0 e2sm/headers/OCUCP-PF-Container.h | 45 - e2sm/headers/OCUUP-PF-Container.h | 53 - e2sm/headers/OPEN_TYPE.h | 0 e2sm/headers/PF-Container.h | 58 - e2sm/headers/PF-ContainerListItem.h | 46 - e2sm/headers/PLMN-Identity.h | 46 - e2sm/headers/PLMNIdentity.h | 46 + e2sm/headers/PM-Containers-Item.h | 48 - e2sm/headers/PerQCIReportListItemFormat.h | 47 - e2sm/headers/PerUE-PM-Item.h | 55 - e2sm/headers/PhysCellId.h | 46 - e2sm/headers/PlmnID-Item.h | 50 - e2sm/headers/PolicyAction-RANParameter-Item.h | 50 + e2sm/headers/PolicyCondition-RANParameter-Item.h | 50 + e2sm/headers/Presence.h | 52 - e2sm/headers/PrintableString.h | 0 e2sm/headers/ProcedureCode.h | 45 - e2sm/headers/ProtocolIE-ID.h | 92 - e2sm/headers/QCI.h | 4 +- e2sm/headers/QoSID.h | 56 + e2sm/headers/QosFlowIdentifier.h | 45 + e2sm/headers/RAN-CallProcess-ID.h | 46 + e2sm/headers/RAN-Container.h | 45 - ...=> RANFunctionDefinition-Control-Action-Item.h} | 30 +- e2sm/headers/RANFunctionDefinition-Control-Item.h | 69 + e2sm/headers/RANFunctionDefinition-Control.h | 53 + ...nctionDefinition-EventTrigger-Breakpoint-Item.h | 57 + ...ctionDefinition-EventTrigger-CallProcess-Item.h | 57 + ...ANFunctionDefinition-EventTrigger-Style-Item.h} | 22 +- e2sm/headers/RANFunctionDefinition-EventTrigger.h | 81 + .../RANFunctionDefinition-Insert-Indication-Item.h | 57 + e2sm/headers/RANFunctionDefinition-Insert-Item.h | 63 + e2sm/headers/RANFunctionDefinition-Insert.h | 53 + .../RANFunctionDefinition-Policy-Action-Item.h | 66 + e2sm/headers/RANFunctionDefinition-Policy-Item.h | 58 + e2sm/headers/RANFunctionDefinition-Policy.h | 53 + e2sm/headers/RANFunctionDefinition-Report-Item.h | 62 + e2sm/headers/RANFunctionDefinition-Report.h | 53 + .../RANParameter-Definition-Choice-LIST-Item.h | 50 + e2sm/headers/RANParameter-Definition-Choice-LIST.h | 53 + ...RANParameter-Definition-Choice-STRUCTURE-Item.h | 50 + .../RANParameter-Definition-Choice-STRUCTURE.h | 53 + e2sm/headers/RANParameter-Definition-Choice.h | 61 + e2sm/headers/RANParameter-Definition.h | 46 + e2sm/headers/RANParameter-ELEMENT.h | 46 - e2sm/headers/RANParameter-ID.h | 7 +- e2sm/headers/RANParameter-LIST.h | 8 +- e2sm/headers/RANParameter-Name.h | 4 +- ...ameter-Item.h => RANParameter-STRUCTURE-Item.h} | 26 +- e2sm/headers/RANParameter-STRUCTURE.h | 10 +- ...RANParameter-Testing-Item-Choice-ElementFalse.h | 50 + .../RANParameter-Testing-Item-Choice-ElementTrue.h | 44 + .../RANParameter-Testing-Item-Choice-List.h | 46 + .../RANParameter-Testing-Item-Choice-Structure.h | 46 + e2sm/headers/RANParameter-Testing-Item.h | 78 + e2sm/headers/RANParameter-Testing-LIST.h | 44 + e2sm/headers/RANParameter-Testing-STRUCTURE.h | 44 + e2sm/headers/RANParameter-Testing.h | 44 + e2sm/headers/RANParameter-TestingCondition.h | 80 + e2sm/headers/RANParameter-Value.h | 20 +- .../RANParameter-ValueType-Choice-ElementFalse.h | 46 + .../RANParameter-ValueType-Choice-ElementTrue.h | 44 + e2sm/headers/RANParameter-ValueType-Choice-List.h | 46 + .../RANParameter-ValueType-Choice-Structure.h | 46 + e2sm/headers/RANParameter-ValueType.h | 27 +- e2sm/headers/RANUEID.h | 46 + e2sm/headers/RANcallProcess-ID-string.h | 45 - e2sm/headers/RANfunction-Name.h | 4 +- e2sm/headers/REAL.h | 0 e2sm/headers/RIC-CallProcessBreakpoint-ID.h | 46 + e2sm/headers/RIC-CallProcessBreakpoint-Name.h | 46 + e2sm/headers/RIC-CallProcessType-ID.h | 46 + e2sm/headers/RIC-CallProcessType-Name.h | 46 + e2sm/headers/RIC-ControlAction-ID.h | 4 +- e2sm/headers/RIC-ControlAction-Name.h | 4 +- e2sm/headers/RIC-ControlStyle-Item.h | 60 - e2sm/headers/RIC-EventTrigger-Cell-ID.h | 46 + e2sm/headers/RIC-EventTrigger-UE-ID.h | 46 + e2sm/headers/RIC-EventTrigger-UEevent-ID.h | 46 + e2sm/headers/RIC-EventTriggerCondition-ID.h | 46 + e2sm/headers/RIC-Format-Type.h | 4 +- e2sm/headers/RIC-InsertIndication-ID.h | 46 + e2sm/headers/RIC-InsertIndication-Name.h | 46 + e2sm/headers/RIC-PolicyAction-RANParameter-Item.h | 46 + .../{ODU-PF-Container.h => RIC-PolicyAction.h} | 32 +- e2sm/headers/RIC-ReportStyle-Item.h | 49 - e2sm/headers/RIC-Style-Name.h | 4 +- e2sm/headers/RIC-Style-Type.h | 4 +- e2sm/headers/RRC-MessageID.h | 70 + e2sm/headers/RRC-State.h | 58 + e2sm/headers/RRCEvent.h | 58 - e2sm/headers/RRCclass-LTE.h | 66 + e2sm/headers/RRCclass-NR.h | 62 + e2sm/headers/RSRP-Range.h | 46 - e2sm/headers/RSRP-RangeEUTRA.h | 46 - e2sm/headers/RSRQ-Range.h | 46 - e2sm/headers/RSRQ-RangeEUTRA.h | 46 - e2sm/headers/RT-Period-IE.h | 74 - e2sm/headers/Report-RANParameter-Item.h | 50 + e2sm/headers/ResultsPerCSI-RS-Index.h | 48 - e2sm/headers/ResultsPerCSI-RS-IndexList.h | 44 - e2sm/headers/ResultsPerSSB-Index.h | 48 - e2sm/headers/ResultsPerSSB-IndexList.h | 44 - e2sm/headers/S-NSSAI.h | 17 +- e2sm/headers/SD.h | 46 + e2sm/headers/SINR-Range.h | 46 - e2sm/headers/SINR-RangeEUTRA.h | 46 - e2sm/headers/SSB-Index.h | 46 - e2sm/headers/SST.h | 46 + e2sm/headers/ServCellIndex.h | 46 - e2sm/headers/ServedPlmnPerCellListItem.h | 50 - e2sm/headers/ServingCell-ARFCN.h | 61 + e2sm/headers/ServingCell-PCI.h | 59 + e2sm/headers/ServingCellMeasurements.h | 61 - e2sm/headers/SlicePerPlmnPerCellListItem.h | 55 - e2sm/headers/SliceToReportListItem.h | 55 - e2sm/headers/SubscriberProfileIDforRFP.h | 45 + e2sm/headers/SupportedSULBandList.h | 44 + ...ReportListItem.h => SupportedSULFreqBandItem.h} | 27 +- e2sm/headers/TimeStamp.h | 46 - e2sm/headers/Trigger-ConditionIE-Item.h | 44 - e2sm/headers/TriggerType-Choice-L2state.h | 44 + e2sm/headers/TriggerType-Choice-RRCstate-Item.h | 46 + ...P-PM-Format.h => TriggerType-Choice-RRCstate.h} | 30 +- e2sm/headers/TriggerType-Choice-UEID.h | 44 + e2sm/headers/TriggerType-Choice.h | 64 + e2sm/headers/TriggeringMessage.h | 52 - e2sm/headers/UE-Identity.h | 45 - e2sm/headers/UEID-EN-GNB.h | 56 + e2sm/headers/UEID-ENB.h | 54 + e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-Item.h | 44 + e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-List.h | 44 + e2sm/headers/UEID-GNB-CU-CP-F1AP-ID-Item.h | 44 + e2sm/headers/UEID-GNB-CU-F1AP-ID-List.h | 44 + e2sm/headers/UEID-GNB-CU-UP.h | 46 + e2sm/headers/{GlobalngeNB-ID.h => UEID-GNB-DU.h} | 30 +- e2sm/headers/UEID-GNB.h | 60 + e2sm/headers/UEID-NG-ENB-DU.h | 44 + e2sm/headers/UEID-NG-ENB.h | 56 + e2sm/headers/UEID.h | 76 + e2sm/headers/UEIdentification-RANParameter-Item.h | 50 + e2sm/headers/asn_SEQUENCE_OF.h | 0 e2sm/headers/asn_SET_OF.h | 0 e2sm/headers/asn_application.h | 0 e2sm/headers/asn_bit_data.h | 0 e2sm/headers/asn_codecs.h | 0 e2sm/headers/asn_codecs_prim.h | 0 e2sm/headers/asn_constant.h | 46 +- e2sm/headers/asn_internal.h | 0 e2sm/headers/asn_ioc.h | 0 e2sm/headers/asn_random_fill.h | 0 e2sm/headers/asn_system.h | 6 +- e2sm/headers/ber_decoder.h | 0 e2sm/headers/ber_tlv_length.h | 0 e2sm/headers/ber_tlv_tag.h | 0 e2sm/headers/constr_CHOICE.h | 0 e2sm/headers/constr_SEQUENCE.h | 0 e2sm/headers/constr_SEQUENCE_OF.h | 0 e2sm/headers/constr_SET_OF.h | 0 e2sm/headers/constr_TYPE.h | 0 e2sm/headers/constraints.h | 0 e2sm/headers/der_encoder.h | 0 e2sm/headers/oer_decoder.h | 0 e2sm/headers/oer_encoder.h | 0 e2sm/headers/oer_support.h | 0 e2sm/headers/per_decoder.h | 0 e2sm/headers/per_encoder.h | 0 e2sm/headers/per_opentype.h | 0 e2sm/headers/per_support.h | 0 e2sm/headers/tags | 11 + e2sm/headers/xer_decoder.h | 0 e2sm/headers/xer_encoder.h | 0 e2sm/headers/xer_support.h | 0 e2sm/lib/AMF-UE-NGAP-ID.c | 70 + e2sm/lib/AMFPointer.c | 70 + e2sm/lib/AMFRegionID.c | 70 + e2sm/lib/AMFSetID.c | 70 + e2sm/lib/CGI.c | 67 + e2sm/lib/CSI-RS-Index.c | 64 - e2sm/lib/CUUPMeasurement-Container.c | 130 - e2sm/lib/CallProcessBreakpoint-RANParameter-Item.c | 73 + e2sm/lib/CellIdentification-RANParameter-Item.c | 73 + e2sm/lib/CellResourceReportListItem.c | 228 - e2sm/lib/ControlAction-RANParameter-Item.c | 73 + e2sm/lib/ControlOutcome-RANParameter-Item.c | 73 + e2sm/lib/CoreCPID.c | 67 + e2sm/lib/Criticality.c | 58 - e2sm/lib/{ProtocolIE-ID.c => E-UTRA-ARFCN.c} | 34 +- e2sm/lib/{SINR-Range.c => E-UTRA-PCI.c} | 40 +- e2sm/lib/E-UTRA-TAC.c | 65 + e2sm/lib/E2SM-KPM-ActionDefinition-Format1.c | 60 - e2sm/lib/E2SM-KPM-ActionDefinition.c | 108 - e2sm/lib/E2SM-KPM-EventTriggerDefinition-Format1.c | 132 - e2sm/lib/E2SM-KPM-EventTriggerDefinition.c | 56 - e2sm/lib/E2SM-KPM-IndicationHeader-Format1.c | 60 - e2sm/lib/E2SM-KPM-IndicationHeader.c | 56 - e2sm/lib/E2SM-KPM-IndicationMessage-Format1.c | 322 - e2sm/lib/E2SM-KPM-IndicationMessage.c | 56 - e2sm/lib/E2SM-KPM-RANFunctionDefinition.c | 232 - e2sm/lib/E2SM-RC-ActionDefinition-Format1-Item.c | 50 + e2sm/lib/E2SM-RC-ActionDefinition-Format1.c | 130 + e2sm/lib/E2SM-RC-ActionDefinition-Format2-Item.c | 63 + e2sm/lib/E2SM-RC-ActionDefinition-Format2.c | 130 + e2sm/lib/E2SM-RC-ActionDefinition-Format3-Item.c | 50 + e2sm/lib/E2SM-RC-ActionDefinition-Format3.c | 153 + e2sm/lib/E2SM-RC-ActionDefinition.c | 130 + e2sm/lib/E2SM-RC-CallProcessID-Format1.c | 50 + e2sm/lib/E2SM-RC-CallProcessID.c | 98 + e2sm/lib/E2SM-RC-ControlHeader-Format1.c | 93 +- e2sm/lib/E2SM-RC-ControlHeader.c | 76 +- e2sm/lib/E2SM-RC-ControlMessage-Format1-Item.c | 60 + e2sm/lib/E2SM-RC-ControlMessage-Format1.c | 76 +- e2sm/lib/E2SM-RC-ControlMessage.c | 76 +- e2sm/lib/E2SM-RC-ControlOutcome-Format1-Item.c | 60 + e2sm/lib/E2SM-RC-ControlOutcome-Format1.c | 130 + e2sm/lib/E2SM-RC-ControlOutcome.c | 98 + e2sm/lib/E2SM-RC-EventTrigger-Format1-Item.c | 155 + e2sm/lib/E2SM-RC-EventTrigger-Format1.c | 143 + e2sm/lib/E2SM-RC-EventTrigger-Format2.c | 84 + e2sm/lib/E2SM-RC-EventTrigger-Format3-Item.c | 116 + e2sm/lib/E2SM-RC-EventTrigger-Format3.c | 130 + e2sm/lib/E2SM-RC-EventTrigger-Format4-Item.c | 83 + e2sm/lib/E2SM-RC-EventTrigger-Format4.c | 130 + e2sm/lib/E2SM-RC-EventTrigger-Format5.c | 123 + e2sm/lib/E2SM-RC-EventTrigger.c | 142 + e2sm/lib/E2SM-RC-IndicationHeader-Format1.c | 52 + e2sm/lib/E2SM-RC-IndicationHeader-Format2.c | 70 + e2sm/lib/E2SM-RC-IndicationHeader.c | 109 + e2sm/lib/E2SM-RC-IndicationMessage-Format1-Item.c | 60 + e2sm/lib/E2SM-RC-IndicationMessage-Format1.c | 130 + e2sm/lib/E2SM-RC-IndicationMessage-Format2-Item.c | 140 + ...C-IndicationMessage-Format2-RANParameter-Item.c | 60 + e2sm/lib/E2SM-RC-IndicationMessage-Format2.c | 130 + e2sm/lib/E2SM-RC-IndicationMessage-Format3-Item.c | 83 + e2sm/lib/E2SM-RC-IndicationMessage-Format3.c | 130 + .../E2SM-RC-IndicationMessage-Format4-ItemCell.c | 73 + .../lib/E2SM-RC-IndicationMessage-Format4-ItemUE.c | 72 + e2sm/lib/E2SM-RC-IndicationMessage-Format4.c | 220 + e2sm/lib/E2SM-RC-IndicationMessage-Format5-Item.c | 60 + e2sm/lib/E2SM-RC-IndicationMessage-Format5.c | 130 + e2sm/lib/E2SM-RC-IndicationMessage.c | 142 + e2sm/lib/E2SM-RC-RANFunctionDefinition.c | 229 +- e2sm/lib/{GNB-ID-Choice.c => EN-GNB-ID.c} | 52 +- e2sm/lib/ENB-ID.c | 4 +- e2sm/lib/ENB-UE-X2AP-ID-Extension.c | 64 + e2sm/lib/ENB-UE-X2AP-ID.c | 64 + e2sm/lib/EPC-CUUP-PM-Format.c | 130 - e2sm/lib/EPC-DU-PM-Container.c | 130 - e2sm/lib/EUTRA-CGI.c | 60 + e2sm/lib/EUTRACellIdentity.c | 70 + .../lib/EventTrigger-Cell-Info-Item-Choice-Group.c | 50 + ...EventTrigger-Cell-Info-Item-Choice-Individual.c | 50 + e2sm/lib/EventTrigger-Cell-Info-Item.c | 131 + e2sm/lib/EventTrigger-Cell-Info.c | 130 + e2sm/lib/EventTrigger-UE-Info-Item-Choice-Group.c | 50 + .../EventTrigger-UE-Info-Item-Choice-Individual.c | 60 + e2sm/lib/EventTrigger-UE-Info-Item.c | 131 + e2sm/lib/EventTrigger-UE-Info.c | 130 + e2sm/lib/EventTrigger-UEevent-Info-Item.c | 62 + e2sm/lib/EventTrigger-UEevent-Info.c | 130 + e2sm/lib/FGC-CUUP-PM-Format.c | 130 - e2sm/lib/FGC-DU-PM-Container.c | 130 - e2sm/lib/FQIPERSlicesPerPlmnListItem.c | 150 - e2sm/lib/FQIPERSlicesPerPlmnPerCellListItem.c | 138 - e2sm/lib/{PLMN-Identity.c => FiveGS-TAC.c} | 34 +- e2sm/lib/FiveQI.c | 4 +- e2sm/lib/FreqBandNrItem.c | 83 + e2sm/lib/GNB-CU-CP-UE-E1AP-ID.c | 60 + e2sm/lib/GNB-CU-UE-F1AP-ID.c | 60 + e2sm/lib/GNB-CU-UP-ID.c | 4 +- e2sm/lib/GNB-DU-ID.c | 4 +- e2sm/lib/{ENGNB-ID.c => GNB-ID.c} | 40 +- e2sm/lib/GUAMI.c | 80 + e2sm/lib/GUMMEI.c | 70 + e2sm/lib/GlobalE2node-ID.c | 89 - e2sm/lib/GlobalE2node-eNB-ID.c | 50 - e2sm/lib/GlobalE2node-en-gNB-ID.c | 50 - e2sm/lib/GlobalE2node-gNB-ID.c | 72 - e2sm/lib/GlobalE2node-ng-eNB-ID.c | 50 - e2sm/lib/GlobalENB-ID.c | 12 +- e2sm/lib/GlobalGNB-ID.c | 60 + e2sm/lib/GlobalKPMnode-ID.c | 87 - e2sm/lib/GlobalKPMnode-eNB-ID.c | 50 - e2sm/lib/GlobalKPMnode-en-gNB-ID.c | 51 - e2sm/lib/GlobalKPMnode-gNB-ID.c | 72 - e2sm/lib/GlobalKPMnode-ng-eNB-ID.c | 51 - e2sm/lib/GlobalNGRANNodeID.c | 67 + e2sm/lib/GlobalNgENB-ID.c | 60 + e2sm/lib/GlobalenGNB-ID.c | 14 +- e2sm/lib/GlobalgNB-ID.c | 60 - e2sm/lib/GlobalngeNB-ID.c | 60 - e2sm/lib/GroupID.c | 65 + e2sm/lib/IndexToRFSP.c | 64 + e2sm/lib/InsertIndication-RANParameter-Item.c | 73 + e2sm/lib/Interface-MessageID.c | 113 + e2sm/lib/InterfaceID-E1.c | 60 + e2sm/lib/InterfaceID-F1.c | 60 + e2sm/lib/InterfaceID-NG.c | 50 + e2sm/lib/InterfaceID-S1.c | 50 + e2sm/lib/InterfaceID-W1.c | 60 + e2sm/lib/InterfaceID-X2.c | 109 + e2sm/lib/InterfaceID-Xn.c | 50 + e2sm/lib/InterfaceIdentifier.c | 122 + e2sm/lib/InterfaceType.c | 68 + e2sm/lib/L2Parameters-RANParameter-Item.c | 73 + e2sm/lib/L3-RRC-Measurements.c | 74 - e2sm/lib/LogicalOR.c | 58 + e2sm/lib/MME-Code.c | 65 + e2sm/lib/MME-Group-ID.c | 65 + e2sm/lib/MME-UE-S1AP-ID.c | 60 + e2sm/lib/Makefile.am.libasncodec | 544 ++ e2sm/lib/MeasQuantityResults.c | 72 - e2sm/lib/MeasQuantityResultsEUTRA.c | 72 - e2sm/lib/MeasResultEUTRA.c | 60 - e2sm/lib/MeasResultListEUTRA.c | 53 - e2sm/lib/MeasResultListNR.c | 53 - e2sm/lib/MeasResultNR.c | 230 - e2sm/lib/MeasResultNeighCells.c | 67 - e2sm/lib/MeasResultPCell.c | 70 - e2sm/lib/MeasResultServMO.c | 73 - e2sm/lib/MeasResultServMOList.c | 53 - e2sm/lib/MeasurementInfoItem.c | 50 - e2sm/lib/MeasurementInfoList.c | 53 - e2sm/lib/MeasurementType.c | 65 - e2sm/lib/MeasurementValue.c | 86 - e2sm/lib/MessageType-Choice-NI.c | 74 + e2sm/lib/MessageType-Choice-RRC.c | 50 + e2sm/lib/MessageType-Choice.c | 67 + e2sm/lib/NG-RANnodeUEXnAPID.c | 60 + e2sm/lib/NGENB-CU-UE-W1AP-ID.c | 60 + e2sm/lib/NGENB-DU-ID.c | 70 + e2sm/lib/NI-Type.c | 60 - e2sm/lib/NR-ARFCN.c | 83 + e2sm/lib/NR-CGI.c | 60 + e2sm/lib/{PhysCellId.c => NR-PCI.c} | 34 +- e2sm/lib/NRCGI.c | 60 - e2sm/lib/NRCellIdentity.c | 4 +- e2sm/lib/NRFrequencyBand-List.c | 53 + e2sm/lib/NRFrequencyBandItem.c | 93 + e2sm/lib/NRFrequencyInfo.c | 72 + e2sm/lib/NRFrequencyShift7p5khz.c | 58 + e2sm/lib/NULL.c | 299 - e2sm/lib/NeighborCell-Item-Choice-E-UTRA.c | 245 + e2sm/lib/NeighborCell-Item-Choice-NR.c | 306 + e2sm/lib/NeighborCell-Item.c | 67 + e2sm/lib/NeighborCell-List.c | 53 + e2sm/lib/NeighborRelation-Info.c | 70 + e2sm/lib/{ENB-ID-Choice.c => NgENB-ID.c} | 80 +- e2sm/lib/OCUCP-PF-Container.c | 128 - e2sm/lib/OCUUP-PF-Container.c | 130 - e2sm/lib/ODU-PF-Container.c | 130 - e2sm/lib/PF-Container.c | 78 - e2sm/lib/PF-ContainerListItem.c | 60 - e2sm/lib/PLMNIdentity.c | 65 + e2sm/lib/PM-Containers-Item.c | 63 - e2sm/lib/PM-Info-Item.c | 60 - e2sm/lib/PerQCIReportListItem.c | 138 - e2sm/lib/PerQCIReportListItemFormat.c | 150 - e2sm/lib/PerUE-PM-Item.c | 142 - e2sm/lib/PlmnID-Item.c | 74 - e2sm/lib/PolicyAction-RANParameter-Item.c | 73 + e2sm/lib/PolicyCondition-RANParameter-Item.c | 73 + e2sm/lib/Presence.c | 58 - e2sm/lib/QCI.c | 8 +- e2sm/lib/QoSID.c | 65 + e2sm/lib/QosFlowIdentifier.c | 64 + e2sm/lib/RAN-CallProcess-ID.c | 64 + e2sm/lib/RAN-Container.c | 31 - e2sm/lib/RAN-ControlParameter-Item.c | 60 - .../RANFunctionDefinition-Control-Action-Item.c | 152 + e2sm/lib/RANFunctionDefinition-Control-Item.c | 282 + e2sm/lib/RANFunctionDefinition-Control.c | 130 + ...nctionDefinition-EventTrigger-Breakpoint-Item.c | 152 + ...ctionDefinition-EventTrigger-CallProcess-Item.c | 150 + ...RANFunctionDefinition-EventTrigger-Style-Item.c | 70 + e2sm/lib/RANFunctionDefinition-EventTrigger.c | 492 ++ .../RANFunctionDefinition-Insert-Indication-Item.c | 152 + e2sm/lib/RANFunctionDefinition-Insert-Item.c | 202 + e2sm/lib/RANFunctionDefinition-Insert.c | 130 + .../lib/RANFunctionDefinition-Policy-Action-Item.c | 252 + e2sm/lib/RANFunctionDefinition-Policy-Item.c | 162 + e2sm/lib/RANFunctionDefinition-Policy.c | 130 + e2sm/lib/RANFunctionDefinition-Report-Item.c | 192 + e2sm/lib/RANFunctionDefinition-Report.c | 130 + .../lib/RANParameter-Definition-Choice-LIST-Item.c | 73 + e2sm/lib/RANParameter-Definition-Choice-LIST.c | 130 + ...RANParameter-Definition-Choice-STRUCTURE-Item.c | 73 + .../lib/RANParameter-Definition-Choice-STRUCTURE.c | 130 + e2sm/lib/RANParameter-Definition-Choice.c | 67 + e2sm/lib/RANParameter-Definition.c | 51 + e2sm/lib/RANParameter-ELEMENT.c | 60 - e2sm/lib/RANParameter-ID.c | 22 +- e2sm/lib/RANParameter-Item.c | 61 - e2sm/lib/RANParameter-LIST.c | 68 +- e2sm/lib/RANParameter-Name.c | 4 +- e2sm/lib/RANParameter-STRUCTURE-Item.c | 61 + e2sm/lib/RANParameter-STRUCTURE.c | 24 +- ...RANParameter-Testing-Item-Choice-ElementFalse.c | 73 + .../RANParameter-Testing-Item-Choice-ElementTrue.c | 50 + e2sm/lib/RANParameter-Testing-Item-Choice-List.c | 51 + .../RANParameter-Testing-Item-Choice-Structure.c | 51 + e2sm/lib/RANParameter-Testing-Item.c | 141 + e2sm/lib/RANParameter-Testing-LIST.c | 53 + e2sm/lib/RANParameter-Testing-STRUCTURE.c | 53 + e2sm/lib/RANParameter-Testing.c | 53 + e2sm/lib/RANParameter-TestingCondition.c | 179 + e2sm/lib/RANParameter-Value.c | 60 +- .../RANParameter-ValueType-Choice-ElementFalse.c | 53 + .../RANParameter-ValueType-Choice-ElementTrue.c | 50 + e2sm/lib/RANParameter-ValueType-Choice-List.c | 51 + e2sm/lib/RANParameter-ValueType-Choice-Structure.c | 51 + e2sm/lib/RANParameter-ValueType.c | 53 +- e2sm/lib/{TimeStamp.c => RANUEID.c} | 34 +- e2sm/lib/RANfunction-Name.c | 8 +- e2sm/lib/RIC-CallProcessBreakpoint-ID.c | 64 + e2sm/lib/RIC-CallProcessBreakpoint-Name.c | 109 + e2sm/lib/RIC-CallProcessType-ID.c | 64 + ...cess-ID-string.c => RIC-CallProcessType-Name.c} | 42 +- e2sm/lib/RIC-ControlAction-ID.c | 10 +- e2sm/lib/RIC-ControlAction-Item.c | 152 - e2sm/lib/RIC-ControlAction-Name.c | 4 +- e2sm/lib/RIC-ControlStyle-Item.c | 172 - ...surementTypeID.c => RIC-EventTrigger-Cell-ID.c} | 34 +- e2sm/lib/RIC-EventTrigger-UE-ID.c | 64 + e2sm/lib/RIC-EventTrigger-UEevent-ID.c | 64 + e2sm/lib/RIC-EventTriggerCondition-ID.c | 64 + e2sm/lib/RIC-EventTriggerStyle-Item.c | 70 - e2sm/lib/RIC-Format-Type.c | 4 +- e2sm/lib/RIC-InsertIndication-ID.c | 64 + e2sm/lib/RIC-InsertIndication-Name.c | 109 + e2sm/lib/RIC-PolicyAction-RANParameter-Item.c | 60 + e2sm/lib/RIC-PolicyAction.c | 142 + e2sm/lib/RIC-ReportStyle-Item.c | 80 - e2sm/lib/RIC-Style-Name.c | 4 +- e2sm/lib/RIC-Style-Type.c | 4 +- e2sm/lib/RRC-MessageID.c | 117 + e2sm/lib/RRC-State.c | 62 + e2sm/lib/RRCEvent.c | 62 - e2sm/lib/RRCclass-LTE.c | 78 + e2sm/lib/RRCclass-NR.c | 70 + e2sm/lib/RSRP-Range.c | 64 - e2sm/lib/RSRP-RangeEUTRA.c | 64 - e2sm/lib/RSRQ-Range.c | 64 - e2sm/lib/RSRQ-RangeEUTRA.c | 64 - e2sm/lib/RT-Period-IE.c | 94 - e2sm/lib/Report-RANParameter-Item.c | 73 + e2sm/lib/ResultsPerCSI-RS-Index.c | 63 - e2sm/lib/ResultsPerCSI-RS-IndexList.c | 53 - e2sm/lib/ResultsPerSSB-Index.c | 63 - e2sm/lib/ResultsPerSSB-IndexList.c | 53 - e2sm/lib/S-NSSAI.c | 86 +- e2sm/lib/SD.c | 65 + e2sm/lib/SINR-RangeEUTRA.c | 64 - e2sm/lib/SSB-Index.c | 64 - e2sm/lib/SST.c | 65 + e2sm/lib/ServCellIndex.c | 64 - e2sm/lib/ServedPlmnPerCellListItem.c | 74 - e2sm/lib/ServingCell-ARFCN.c | 66 + e2sm/lib/ServingCell-PCI.c | 65 + e2sm/lib/ServingCellMeasurements.c | 67 - e2sm/lib/SlicePerPlmnPerCellListItem.c | 140 - e2sm/lib/SliceToReportListItem.c | 140 - e2sm/lib/SubscriberProfileIDforRFP.c | 64 + e2sm/lib/SupportedSULBandList.c | 53 + e2sm/lib/SupportedSULFreqBandItem.c | 83 + e2sm/lib/Trigger-ConditionIE-Item.c | 50 - e2sm/lib/TriggerType-Choice-L2state.c | 50 + e2sm/lib/TriggerType-Choice-RRCstate-Item.c | 62 + e2sm/lib/TriggerType-Choice-RRCstate.c | 130 + e2sm/lib/TriggerType-Choice-UEID.c | 83 + e2sm/lib/TriggerType-Choice.c | 78 + e2sm/lib/TriggeringMessage.c | 58 - e2sm/lib/UE-Identity.c | 31 - e2sm/lib/UEID-EN-GNB.c | 103 + e2sm/lib/UEID-ENB.c | 93 + e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-Item.c | 50 + e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-List.c | 53 + e2sm/lib/UEID-GNB-CU-CP-F1AP-ID-Item.c | 50 + e2sm/lib/UEID-GNB-CU-F1AP-ID-List.c | 53 + e2sm/lib/UEID-GNB-CU-UP.c | 62 + e2sm/lib/UEID-GNB-DU.c | 62 + e2sm/lib/UEID-GNB.c | 126 + e2sm/lib/UEID-NG-ENB-DU.c | 50 + e2sm/lib/UEID-NG-ENB.c | 104 + e2sm/lib/UEID.c | 122 + e2sm/lib/UEIdentification-RANParameter-Item.c | 73 + e2sm/lib/asn_random_fill.c | 6 +- e2sm/lib/pdu_collection.c | 39 - e2sm/wrapper.c | 507 +- e2sm/wrapper.h | 57 +- go.mod | 5 +- go.sum | 16 + protocol/grpc/ricmsgcommrpc/proto/rc.proto | 19 +- protocol/grpc/ricmsgcommrpc/rc/rc.pb.go | 437 +- unitTest/grpcClient.sh | 4 +- xapp-descriptor/config.json | 9 +- 981 files changed, 46001 insertions(+), 19077 deletions(-) create mode 100644 control/rcControlUtils.go create mode 100644 e2ap/e2ap.asn create mode 100644 e2ap/headers/AMFName.h create mode 100644 e2ap/headers/CauseE2node.h delete mode 100644 e2ap/headers/CauseRIC.h create mode 100644 e2ap/headers/CauseRICrequest.h rename e2sm/headers/GlobalgNB-ID.h => e2ap/headers/E2RemovalFailure.h (53%) rename e2sm/headers/PM-Info-Item.h => e2ap/headers/E2RemovalRequest.h (52%) rename e2sm/headers/GlobalE2node-eNB-ID.h => e2ap/headers/E2RemovalResponse.h (52%) create mode 100644 e2ap/headers/E2nodeComponentConfigAddition-Item.h create mode 100644 e2ap/headers/E2nodeComponentConfigAddition-List.h create mode 100644 e2ap/headers/E2nodeComponentConfigAdditionAck-Item.h create mode 100644 e2ap/headers/E2nodeComponentConfigAdditionAck-List.h create mode 100644 e2ap/headers/E2nodeComponentConfigRemoval-Item.h create mode 100644 e2ap/headers/E2nodeComponentConfigRemoval-List.h create mode 100644 e2ap/headers/E2nodeComponentConfigRemovalAck-Item.h create mode 100644 e2ap/headers/E2nodeComponentConfigRemovalAck-List.h create mode 100644 e2ap/headers/E2nodeComponentConfigUpdate-Item.h create mode 100644 e2ap/headers/E2nodeComponentConfigUpdate-List.h create mode 100644 e2ap/headers/E2nodeComponentConfigUpdateAck-Item.h create mode 100644 e2ap/headers/E2nodeComponentConfigUpdateAck-List.h create mode 100644 e2ap/headers/E2nodeComponentConfiguration.h create mode 100644 e2ap/headers/E2nodeComponentConfigurationAck.h create mode 100644 e2ap/headers/E2nodeComponentID.h create mode 100644 e2ap/headers/E2nodeComponentInterfaceE1.h create mode 100644 e2ap/headers/E2nodeComponentInterfaceF1.h rename e2sm/headers/MeasResultEUTRA.h => e2ap/headers/E2nodeComponentInterfaceNG.h (50%) create mode 100644 e2ap/headers/E2nodeComponentInterfaceS1.h create mode 100644 e2ap/headers/E2nodeComponentInterfaceType.h create mode 100644 e2ap/headers/E2nodeComponentInterfaceW1.h create mode 100644 e2ap/headers/E2nodeComponentInterfaceX2.h create mode 100644 e2ap/headers/E2nodeComponentInterfaceXn.h create mode 100644 e2ap/headers/E2nodeConfigurationUpdate.h create mode 100644 e2ap/headers/E2nodeConfigurationUpdateAcknowledge.h create mode 100644 e2ap/headers/E2nodeConfigurationUpdateFailure.h create mode 100644 e2ap/headers/E2nodeTNLassociationRemoval-Item.h create mode 100644 e2ap/headers/E2nodeTNLassociationRemoval-List.h create mode 100644 e2ap/headers/GlobalNG-RANNode-ID.h create mode 100644 e2ap/headers/MMEname.h create mode 100644 e2ap/headers/NGENB-DU-ID.h create mode 100644 e2ap/headers/PrintableString.h create mode 100644 e2ap/headers/RANfunctionOID.h delete mode 100644 e2ap/headers/RICcontrolStatus.h delete mode 100644 e2ap/headers/RICserviceUpdate.h delete mode 100644 e2ap/headers/RICserviceUpdateAcknowledge.h delete mode 100644 e2ap/headers/RICserviceUpdateFailure.h create mode 100644 e2ap/headers/RICsubscription-List-withCause.h create mode 100644 e2ap/headers/RICsubscription-withCause-Item.h create mode 100644 e2ap/headers/RICsubscriptionDeleteRequired.h create mode 100644 e2ap/headers/TNLinformation.h create mode 100644 e2ap/headers/TNLusage.h create mode 100644 e2ap/headers/TransactionID.h rename e2sm/lib/MeasurementTypeName.c => e2ap/lib/AMFName.c (69%) create mode 100644 e2ap/lib/CauseE2node.c delete mode 100644 e2ap/lib/CauseRIC.c create mode 100644 e2ap/lib/CauseRICrequest.c create mode 100644 e2ap/lib/E2RemovalFailure.c create mode 100644 e2ap/lib/E2RemovalRequest.c create mode 100644 e2ap/lib/E2RemovalResponse.c create mode 100644 e2ap/lib/E2nodeComponentConfigAddition-Item.c create mode 100644 e2ap/lib/E2nodeComponentConfigAddition-List.c create mode 100644 e2ap/lib/E2nodeComponentConfigAdditionAck-Item.c create mode 100644 e2ap/lib/E2nodeComponentConfigAdditionAck-List.c create mode 100644 e2ap/lib/E2nodeComponentConfigRemoval-Item.c create mode 100644 e2ap/lib/E2nodeComponentConfigRemoval-List.c create mode 100644 e2ap/lib/E2nodeComponentConfigRemovalAck-Item.c create mode 100644 e2ap/lib/E2nodeComponentConfigRemovalAck-List.c create mode 100644 e2ap/lib/E2nodeComponentConfigUpdate-Item.c create mode 100644 e2ap/lib/E2nodeComponentConfigUpdate-List.c create mode 100644 e2ap/lib/E2nodeComponentConfigUpdateAck-Item.c create mode 100644 e2ap/lib/E2nodeComponentConfigUpdateAck-List.c create mode 100644 e2ap/lib/E2nodeComponentConfiguration.c create mode 100644 e2ap/lib/E2nodeComponentConfigurationAck.c create mode 100644 e2ap/lib/E2nodeComponentID.c create mode 100644 e2ap/lib/E2nodeComponentInterfaceE1.c create mode 100644 e2ap/lib/E2nodeComponentInterfaceF1.c create mode 100644 e2ap/lib/E2nodeComponentInterfaceNG.c create mode 100644 e2ap/lib/E2nodeComponentInterfaceS1.c create mode 100644 e2ap/lib/E2nodeComponentInterfaceType.c create mode 100644 e2ap/lib/E2nodeComponentInterfaceW1.c create mode 100644 e2ap/lib/E2nodeComponentInterfaceX2.c create mode 100644 e2ap/lib/E2nodeComponentInterfaceXn.c create mode 100644 e2ap/lib/E2nodeConfigurationUpdate.c create mode 100644 e2ap/lib/E2nodeConfigurationUpdateAcknowledge.c create mode 100644 e2ap/lib/E2nodeConfigurationUpdateFailure.c create mode 100644 e2ap/lib/E2nodeTNLassociationRemoval-Item.c create mode 100644 e2ap/lib/E2nodeTNLassociationRemoval-List.c create mode 100644 e2ap/lib/GlobalNG-RANNode-ID.c rename e2sm/lib/CellObjectID.c => e2ap/lib/MMEname.c (69%) create mode 100644 e2ap/lib/NGENB-DU-ID.c create mode 100644 e2ap/lib/PrintableString.c create mode 100644 e2ap/lib/RANfunctionOID.c delete mode 100644 e2ap/lib/RICcontrolStatus.c delete mode 100644 e2ap/lib/RICserviceUpdate.c delete mode 100644 e2ap/lib/RICserviceUpdateAcknowledge.c delete mode 100644 e2ap/lib/RICserviceUpdateFailure.c create mode 100644 e2ap/lib/RICsubscription-List-withCause.c create mode 100644 e2ap/lib/RICsubscription-withCause-Item.c create mode 100644 e2ap/lib/RICsubscriptionDeleteRequired.c create mode 100644 e2ap/lib/TNLinformation.c create mode 100644 e2ap/lib/TNLusage.c rename e2sm/lib/ProcedureCode.c => e2ap/lib/TransactionID.c (51%) create mode 100644 e2ap/wrapper.o create mode 100644 e2sm/.wrapper.c.swm create mode 100644 e2sm/.wrapper.c.swn create mode 100644 e2sm/.wrapper.c.swo create mode 100644 e2sm/e2sm-rc-nov2021.asn create mode 100644 e2sm/headers/.RANParameter-Testing-Item.h.swp create mode 100755 e2sm/headers/AMF-UE-NGAP-ID.h create mode 100755 e2sm/headers/AMFPointer.h create mode 100755 e2sm/headers/AMFRegionID.h create mode 100755 e2sm/headers/AMFSetID.h mode change 100644 => 100755 e2sm/headers/BIT_STRING.h mode change 100644 => 100755 e2sm/headers/BOOLEAN.h create mode 100755 e2sm/headers/CGI.h delete mode 100644 e2sm/headers/CSI-RS-Index.h create mode 100755 e2sm/headers/CallProcessBreakpoint-RANParameter-Item.h create mode 100755 e2sm/headers/CellIdentification-RANParameter-Item.h delete mode 100644 e2sm/headers/CellObjectID.h delete mode 100644 e2sm/headers/CellResourceReportListItem.h create mode 100755 e2sm/headers/ControlAction-RANParameter-Item.h create mode 100755 e2sm/headers/ControlOutcome-RANParameter-Item.h create mode 100755 e2sm/headers/CoreCPID.h delete mode 100644 e2sm/headers/Criticality.h create mode 100755 e2sm/headers/E-UTRA-ARFCN.h create mode 100755 e2sm/headers/E-UTRA-PCI.h create mode 100755 e2sm/headers/E-UTRA-TAC.h delete mode 100644 e2sm/headers/E2SM-KPM-ActionDefinition-Format1.h delete mode 100644 e2sm/headers/E2SM-KPM-ActionDefinition.h delete mode 100644 e2sm/headers/E2SM-KPM-EventTriggerDefinition-Format1.h delete mode 100644 e2sm/headers/E2SM-KPM-EventTriggerDefinition.h delete mode 100644 e2sm/headers/E2SM-KPM-IndicationHeader-Format1.h delete mode 100644 e2sm/headers/E2SM-KPM-IndicationHeader.h delete mode 100644 e2sm/headers/E2SM-KPM-IndicationMessage-Format1.h delete mode 100644 e2sm/headers/E2SM-KPM-IndicationMessage.h delete mode 100644 e2sm/headers/E2SM-KPM-RANFunctionDefinition.h create mode 100755 e2sm/headers/E2SM-RC-ActionDefinition-Format1-Item.h create mode 100755 e2sm/headers/E2SM-RC-ActionDefinition-Format1.h create mode 100755 e2sm/headers/E2SM-RC-ActionDefinition-Format2-Item.h create mode 100755 e2sm/headers/E2SM-RC-ActionDefinition-Format2.h create mode 100755 e2sm/headers/E2SM-RC-ActionDefinition-Format3-Item.h create mode 100755 e2sm/headers/E2SM-RC-ActionDefinition-Format3.h create mode 100755 e2sm/headers/E2SM-RC-ActionDefinition.h create mode 100755 e2sm/headers/E2SM-RC-CallProcessID-Format1.h create mode 100755 e2sm/headers/E2SM-RC-CallProcessID.h mode change 100644 => 100755 e2sm/headers/E2SM-RC-ControlHeader-Format1.h mode change 100644 => 100755 e2sm/headers/E2SM-RC-ControlHeader.h create mode 100755 e2sm/headers/E2SM-RC-ControlMessage-Format1-Item.h mode change 100644 => 100755 e2sm/headers/E2SM-RC-ControlMessage-Format1.h mode change 100644 => 100755 e2sm/headers/E2SM-RC-ControlMessage.h create mode 100755 e2sm/headers/E2SM-RC-ControlOutcome-Format1-Item.h create mode 100755 e2sm/headers/E2SM-RC-ControlOutcome-Format1.h create mode 100755 e2sm/headers/E2SM-RC-ControlOutcome.h create mode 100755 e2sm/headers/E2SM-RC-EventTrigger-Format1-Item.h create mode 100755 e2sm/headers/E2SM-RC-EventTrigger-Format1.h create mode 100755 e2sm/headers/E2SM-RC-EventTrigger-Format2.h create mode 100755 e2sm/headers/E2SM-RC-EventTrigger-Format3-Item.h create mode 100755 e2sm/headers/E2SM-RC-EventTrigger-Format3.h create mode 100755 e2sm/headers/E2SM-RC-EventTrigger-Format4-Item.h create mode 100755 e2sm/headers/E2SM-RC-EventTrigger-Format4.h create mode 100755 e2sm/headers/E2SM-RC-EventTrigger-Format5.h create mode 100755 e2sm/headers/E2SM-RC-EventTrigger.h create mode 100755 e2sm/headers/E2SM-RC-IndicationHeader-Format1.h create mode 100755 e2sm/headers/E2SM-RC-IndicationHeader-Format2.h create mode 100755 e2sm/headers/E2SM-RC-IndicationHeader.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format1-Item.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format1.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format2-Item.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format2-RANParameter-Item.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format2.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format3-Item.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format3.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format4-ItemCell.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format4-ItemUE.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format4.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format5-Item.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage-Format5.h create mode 100755 e2sm/headers/E2SM-RC-IndicationMessage.h mode change 100644 => 100755 e2sm/headers/E2SM-RC-RANFunctionDefinition.h create mode 100755 e2sm/headers/EN-GNB-ID.h delete mode 100644 e2sm/headers/ENB-ID-Choice.h mode change 100644 => 100755 e2sm/headers/ENB-ID.h create mode 100755 e2sm/headers/ENB-UE-X2AP-ID-Extension.h create mode 100755 e2sm/headers/ENB-UE-X2AP-ID.h create mode 100755 e2sm/headers/EUTRA-CGI.h create mode 100755 e2sm/headers/EUTRACellIdentity.h create mode 100755 e2sm/headers/EventTrigger-Cell-Info-Item-Choice-Group.h create mode 100755 e2sm/headers/EventTrigger-Cell-Info-Item-Choice-Individual.h create mode 100755 e2sm/headers/EventTrigger-Cell-Info-Item.h rename e2sm/headers/{CUUPMeasurement-Container.h => EventTrigger-Cell-Info.h} (53%) mode change 100644 => 100755 create mode 100755 e2sm/headers/EventTrigger-UE-Info-Item-Choice-Group.h create mode 100755 e2sm/headers/EventTrigger-UE-Info-Item-Choice-Individual.h create mode 100755 e2sm/headers/EventTrigger-UE-Info-Item.h rename e2sm/headers/{EPC-DU-PM-Container.h => EventTrigger-UE-Info.h} (54%) mode change 100644 => 100755 create mode 100755 e2sm/headers/EventTrigger-UEevent-Info-Item.h rename e2sm/headers/{EPC-CUUP-PM-Format.h => EventTrigger-UEevent-Info.h} (52%) mode change 100644 => 100755 delete mode 100644 e2sm/headers/FGC-DU-PM-Container.h delete mode 100644 e2sm/headers/FQIPERSlicesPerPlmnListItem.h delete mode 100644 e2sm/headers/FQIPERSlicesPerPlmnPerCellListItem.h create mode 100755 e2sm/headers/FiveGS-TAC.h mode change 100644 => 100755 e2sm/headers/FiveQI.h create mode 100755 e2sm/headers/FreqBandNrItem.h create mode 100755 e2sm/headers/GNB-CU-CP-UE-E1AP-ID.h create mode 100755 e2sm/headers/GNB-CU-UE-F1AP-ID.h mode change 100644 => 100755 e2sm/headers/GNB-CU-UP-ID.h mode change 100644 => 100755 e2sm/headers/GNB-DU-ID.h delete mode 100644 e2sm/headers/GNB-ID-Choice.h rename e2sm/headers/{ENGNB-ID.h => GNB-ID.h} (54%) mode change 100644 => 100755 create mode 100755 e2sm/headers/GUAMI.h create mode 100755 e2sm/headers/GUMMEI.h delete mode 100644 e2sm/headers/GlobalE2node-ID.h delete mode 100644 e2sm/headers/GlobalE2node-gNB-ID.h mode change 100644 => 100755 e2sm/headers/GlobalENB-ID.h create mode 100755 e2sm/headers/GlobalGNB-ID.h delete mode 100644 e2sm/headers/GlobalKPMnode-ID.h delete mode 100644 e2sm/headers/GlobalKPMnode-eNB-ID.h delete mode 100644 e2sm/headers/GlobalKPMnode-en-gNB-ID.h delete mode 100644 e2sm/headers/GlobalKPMnode-gNB-ID.h delete mode 100644 e2sm/headers/GlobalKPMnode-ng-eNB-ID.h create mode 100755 e2sm/headers/GlobalNGRANNodeID.h rename e2sm/headers/{MeasurementInfoItem.h => GlobalNgENB-ID.h} (52%) mode change 100644 => 100755 mode change 100644 => 100755 e2sm/headers/GlobalenGNB-ID.h create mode 100755 e2sm/headers/GroupID.h mode change 100644 => 100755 e2sm/headers/INTEGER.h create mode 100755 e2sm/headers/IndexToRFSP.h create mode 100755 e2sm/headers/InsertIndication-RANParameter-Item.h create mode 100755 e2sm/headers/Interface-MessageID.h create mode 100755 e2sm/headers/InterfaceID-E1.h create mode 100755 e2sm/headers/InterfaceID-F1.h create mode 100755 e2sm/headers/InterfaceID-NG.h rename e2sm/headers/{GlobalE2node-ng-eNB-ID.h => InterfaceID-S1.h} (53%) mode change 100644 => 100755 create mode 100755 e2sm/headers/InterfaceID-W1.h create mode 100755 e2sm/headers/InterfaceID-X2.h create mode 100755 e2sm/headers/InterfaceID-Xn.h create mode 100755 e2sm/headers/InterfaceIdentifier.h create mode 100755 e2sm/headers/InterfaceType.h rename e2sm/headers/{RAN-ControlParameter-Item.h => L2Parameters-RANParameter-Item.h} (50%) mode change 100644 => 100755 delete mode 100644 e2sm/headers/L3-RRC-Measurements.h create mode 100755 e2sm/headers/LogicalOR.h create mode 100755 e2sm/headers/MME-Code.h create mode 100755 e2sm/headers/MME-Group-ID.h create mode 100755 e2sm/headers/MME-UE-S1AP-ID.h delete mode 100644 e2sm/headers/Makefile.am.libasncodec delete mode 100644 e2sm/headers/MatchingUEidList.h delete mode 100644 e2sm/headers/MeasQuantityResults.h delete mode 100644 e2sm/headers/MeasQuantityResultsEUTRA.h delete mode 100644 e2sm/headers/MeasResultListEUTRA.h delete mode 100644 e2sm/headers/MeasResultListNR.h delete mode 100644 e2sm/headers/MeasResultNR.h delete mode 100644 e2sm/headers/MeasResultNeighCells.h delete mode 100644 e2sm/headers/MeasResultPCell.h delete mode 100644 e2sm/headers/MeasResultServMO.h delete mode 100644 e2sm/headers/MeasResultServMOList.h delete mode 100644 e2sm/headers/MeasurementCondUEidItem.h delete mode 100644 e2sm/headers/MeasurementCondUEidList.h delete mode 100644 e2sm/headers/MeasurementInfoList.h delete mode 100644 e2sm/headers/MeasurementType.h delete mode 100644 e2sm/headers/MeasurementTypeID.h delete mode 100644 e2sm/headers/MeasurementTypeName.h delete mode 100644 e2sm/headers/MeasurementValue.h create mode 100755 e2sm/headers/MessageType-Choice-NI.h rename e2sm/headers/{GlobalE2node-en-gNB-ID.h => MessageType-Choice-RRC.h} (51%) mode change 100644 => 100755 create mode 100755 e2sm/headers/MessageType-Choice.h create mode 100755 e2sm/headers/NG-RANnodeUEXnAPID.h create mode 100755 e2sm/headers/NGENB-CU-UE-W1AP-ID.h create mode 100755 e2sm/headers/NGENB-DU-ID.h delete mode 100644 e2sm/headers/NI-Type.h create mode 100755 e2sm/headers/NR-ARFCN.h rename e2sm/headers/{NRCGI.h => NR-CGI.h} (61%) mode change 100644 => 100755 create mode 100755 e2sm/headers/NR-PCI.h mode change 100644 => 100755 e2sm/headers/NRCellIdentity.h create mode 100755 e2sm/headers/NRFrequencyBand-List.h create mode 100755 e2sm/headers/NRFrequencyBandItem.h create mode 100755 e2sm/headers/NRFrequencyInfo.h create mode 100755 e2sm/headers/NRFrequencyShift7p5khz.h delete mode 100644 e2sm/headers/NULL.h mode change 100644 => 100755 e2sm/headers/NativeEnumerated.h mode change 100644 => 100755 e2sm/headers/NativeInteger.h mode change 100644 => 100755 e2sm/headers/NativeReal.h create mode 100755 e2sm/headers/NeighborCell-Item-Choice-E-UTRA.h create mode 100755 e2sm/headers/NeighborCell-Item-Choice-NR.h create mode 100755 e2sm/headers/NeighborCell-Item.h create mode 100755 e2sm/headers/NeighborCell-List.h create mode 100755 e2sm/headers/NeighborRelation-Info.h create mode 100755 e2sm/headers/NgENB-ID.h mode change 100644 => 100755 e2sm/headers/OCTET_STRING.h delete mode 100644 e2sm/headers/OCUCP-PF-Container.h delete mode 100644 e2sm/headers/OCUUP-PF-Container.h mode change 100644 => 100755 e2sm/headers/OPEN_TYPE.h delete mode 100644 e2sm/headers/PF-Container.h delete mode 100644 e2sm/headers/PF-ContainerListItem.h delete mode 100644 e2sm/headers/PLMN-Identity.h create mode 100755 e2sm/headers/PLMNIdentity.h delete mode 100644 e2sm/headers/PM-Containers-Item.h delete mode 100644 e2sm/headers/PerQCIReportListItemFormat.h delete mode 100644 e2sm/headers/PerUE-PM-Item.h delete mode 100644 e2sm/headers/PhysCellId.h delete mode 100644 e2sm/headers/PlmnID-Item.h create mode 100755 e2sm/headers/PolicyAction-RANParameter-Item.h create mode 100755 e2sm/headers/PolicyCondition-RANParameter-Item.h delete mode 100644 e2sm/headers/Presence.h mode change 100644 => 100755 e2sm/headers/PrintableString.h delete mode 100644 e2sm/headers/ProcedureCode.h delete mode 100644 e2sm/headers/ProtocolIE-ID.h mode change 100644 => 100755 e2sm/headers/QCI.h create mode 100755 e2sm/headers/QoSID.h create mode 100755 e2sm/headers/QosFlowIdentifier.h create mode 100755 e2sm/headers/RAN-CallProcess-ID.h delete mode 100644 e2sm/headers/RAN-Container.h rename e2sm/headers/{RIC-ControlAction-Item.h => RANFunctionDefinition-Control-Action-Item.h} (50%) mode change 100644 => 100755 create mode 100755 e2sm/headers/RANFunctionDefinition-Control-Item.h create mode 100755 e2sm/headers/RANFunctionDefinition-Control.h create mode 100755 e2sm/headers/RANFunctionDefinition-EventTrigger-Breakpoint-Item.h create mode 100755 e2sm/headers/RANFunctionDefinition-EventTrigger-CallProcess-Item.h rename e2sm/headers/{RIC-EventTriggerStyle-Item.h => RANFunctionDefinition-EventTrigger-Style-Item.h} (53%) mode change 100644 => 100755 create mode 100755 e2sm/headers/RANFunctionDefinition-EventTrigger.h create mode 100755 e2sm/headers/RANFunctionDefinition-Insert-Indication-Item.h create mode 100755 e2sm/headers/RANFunctionDefinition-Insert-Item.h create mode 100755 e2sm/headers/RANFunctionDefinition-Insert.h create mode 100755 e2sm/headers/RANFunctionDefinition-Policy-Action-Item.h create mode 100755 e2sm/headers/RANFunctionDefinition-Policy-Item.h create mode 100755 e2sm/headers/RANFunctionDefinition-Policy.h create mode 100755 e2sm/headers/RANFunctionDefinition-Report-Item.h create mode 100755 e2sm/headers/RANFunctionDefinition-Report.h create mode 100755 e2sm/headers/RANParameter-Definition-Choice-LIST-Item.h create mode 100755 e2sm/headers/RANParameter-Definition-Choice-LIST.h create mode 100755 e2sm/headers/RANParameter-Definition-Choice-STRUCTURE-Item.h create mode 100755 e2sm/headers/RANParameter-Definition-Choice-STRUCTURE.h create mode 100755 e2sm/headers/RANParameter-Definition-Choice.h create mode 100755 e2sm/headers/RANParameter-Definition.h delete mode 100644 e2sm/headers/RANParameter-ELEMENT.h mode change 100644 => 100755 e2sm/headers/RANParameter-ID.h mode change 100644 => 100755 e2sm/headers/RANParameter-LIST.h mode change 100644 => 100755 e2sm/headers/RANParameter-Name.h rename e2sm/headers/{RANParameter-Item.h => RANParameter-STRUCTURE-Item.h} (51%) mode change 100644 => 100755 mode change 100644 => 100755 e2sm/headers/RANParameter-STRUCTURE.h create mode 100755 e2sm/headers/RANParameter-Testing-Item-Choice-ElementFalse.h create mode 100755 e2sm/headers/RANParameter-Testing-Item-Choice-ElementTrue.h create mode 100755 e2sm/headers/RANParameter-Testing-Item-Choice-List.h create mode 100755 e2sm/headers/RANParameter-Testing-Item-Choice-Structure.h create mode 100755 e2sm/headers/RANParameter-Testing-Item.h create mode 100755 e2sm/headers/RANParameter-Testing-LIST.h create mode 100755 e2sm/headers/RANParameter-Testing-STRUCTURE.h create mode 100755 e2sm/headers/RANParameter-Testing.h create mode 100755 e2sm/headers/RANParameter-TestingCondition.h mode change 100644 => 100755 e2sm/headers/RANParameter-Value.h create mode 100755 e2sm/headers/RANParameter-ValueType-Choice-ElementFalse.h create mode 100755 e2sm/headers/RANParameter-ValueType-Choice-ElementTrue.h create mode 100755 e2sm/headers/RANParameter-ValueType-Choice-List.h create mode 100755 e2sm/headers/RANParameter-ValueType-Choice-Structure.h mode change 100644 => 100755 e2sm/headers/RANParameter-ValueType.h create mode 100755 e2sm/headers/RANUEID.h delete mode 100644 e2sm/headers/RANcallProcess-ID-string.h mode change 100644 => 100755 e2sm/headers/RANfunction-Name.h mode change 100644 => 100755 e2sm/headers/REAL.h create mode 100755 e2sm/headers/RIC-CallProcessBreakpoint-ID.h create mode 100755 e2sm/headers/RIC-CallProcessBreakpoint-Name.h create mode 100755 e2sm/headers/RIC-CallProcessType-ID.h create mode 100755 e2sm/headers/RIC-CallProcessType-Name.h mode change 100644 => 100755 e2sm/headers/RIC-ControlAction-ID.h mode change 100644 => 100755 e2sm/headers/RIC-ControlAction-Name.h delete mode 100644 e2sm/headers/RIC-ControlStyle-Item.h create mode 100755 e2sm/headers/RIC-EventTrigger-Cell-ID.h create mode 100755 e2sm/headers/RIC-EventTrigger-UE-ID.h create mode 100755 e2sm/headers/RIC-EventTrigger-UEevent-ID.h create mode 100755 e2sm/headers/RIC-EventTriggerCondition-ID.h mode change 100644 => 100755 e2sm/headers/RIC-Format-Type.h create mode 100755 e2sm/headers/RIC-InsertIndication-ID.h create mode 100755 e2sm/headers/RIC-InsertIndication-Name.h create mode 100755 e2sm/headers/RIC-PolicyAction-RANParameter-Item.h rename e2sm/headers/{ODU-PF-Container.h => RIC-PolicyAction.h} (51%) mode change 100644 => 100755 delete mode 100644 e2sm/headers/RIC-ReportStyle-Item.h mode change 100644 => 100755 e2sm/headers/RIC-Style-Name.h mode change 100644 => 100755 e2sm/headers/RIC-Style-Type.h create mode 100755 e2sm/headers/RRC-MessageID.h create mode 100755 e2sm/headers/RRC-State.h delete mode 100644 e2sm/headers/RRCEvent.h create mode 100755 e2sm/headers/RRCclass-LTE.h create mode 100755 e2sm/headers/RRCclass-NR.h delete mode 100644 e2sm/headers/RSRP-Range.h delete mode 100644 e2sm/headers/RSRP-RangeEUTRA.h delete mode 100644 e2sm/headers/RSRQ-Range.h delete mode 100644 e2sm/headers/RSRQ-RangeEUTRA.h delete mode 100644 e2sm/headers/RT-Period-IE.h create mode 100755 e2sm/headers/Report-RANParameter-Item.h delete mode 100644 e2sm/headers/ResultsPerCSI-RS-Index.h delete mode 100644 e2sm/headers/ResultsPerCSI-RS-IndexList.h delete mode 100644 e2sm/headers/ResultsPerSSB-Index.h delete mode 100644 e2sm/headers/ResultsPerSSB-IndexList.h mode change 100644 => 100755 e2sm/headers/S-NSSAI.h create mode 100755 e2sm/headers/SD.h delete mode 100644 e2sm/headers/SINR-Range.h delete mode 100644 e2sm/headers/SINR-RangeEUTRA.h delete mode 100644 e2sm/headers/SSB-Index.h create mode 100755 e2sm/headers/SST.h delete mode 100644 e2sm/headers/ServCellIndex.h delete mode 100644 e2sm/headers/ServedPlmnPerCellListItem.h create mode 100755 e2sm/headers/ServingCell-ARFCN.h create mode 100755 e2sm/headers/ServingCell-PCI.h delete mode 100644 e2sm/headers/ServingCellMeasurements.h delete mode 100644 e2sm/headers/SlicePerPlmnPerCellListItem.h delete mode 100644 e2sm/headers/SliceToReportListItem.h create mode 100755 e2sm/headers/SubscriberProfileIDforRFP.h create mode 100755 e2sm/headers/SupportedSULBandList.h rename e2sm/headers/{PerQCIReportListItem.h => SupportedSULFreqBandItem.h} (51%) mode change 100644 => 100755 delete mode 100644 e2sm/headers/TimeStamp.h delete mode 100644 e2sm/headers/Trigger-ConditionIE-Item.h create mode 100755 e2sm/headers/TriggerType-Choice-L2state.h create mode 100755 e2sm/headers/TriggerType-Choice-RRCstate-Item.h rename e2sm/headers/{FGC-CUUP-PM-Format.h => TriggerType-Choice-RRCstate.h} (51%) mode change 100644 => 100755 create mode 100755 e2sm/headers/TriggerType-Choice-UEID.h create mode 100755 e2sm/headers/TriggerType-Choice.h delete mode 100644 e2sm/headers/TriggeringMessage.h delete mode 100644 e2sm/headers/UE-Identity.h create mode 100755 e2sm/headers/UEID-EN-GNB.h create mode 100755 e2sm/headers/UEID-ENB.h create mode 100755 e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-Item.h create mode 100755 e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-List.h create mode 100755 e2sm/headers/UEID-GNB-CU-CP-F1AP-ID-Item.h create mode 100755 e2sm/headers/UEID-GNB-CU-F1AP-ID-List.h create mode 100755 e2sm/headers/UEID-GNB-CU-UP.h rename e2sm/headers/{GlobalngeNB-ID.h => UEID-GNB-DU.h} (52%) mode change 100644 => 100755 create mode 100755 e2sm/headers/UEID-GNB.h create mode 100755 e2sm/headers/UEID-NG-ENB-DU.h create mode 100755 e2sm/headers/UEID-NG-ENB.h create mode 100755 e2sm/headers/UEID.h create mode 100755 e2sm/headers/UEIdentification-RANParameter-Item.h mode change 100644 => 100755 e2sm/headers/asn_SEQUENCE_OF.h mode change 100644 => 100755 e2sm/headers/asn_SET_OF.h mode change 100644 => 100755 e2sm/headers/asn_application.h mode change 100644 => 100755 e2sm/headers/asn_bit_data.h mode change 100644 => 100755 e2sm/headers/asn_codecs.h mode change 100644 => 100755 e2sm/headers/asn_codecs_prim.h mode change 100644 => 100755 e2sm/headers/asn_constant.h mode change 100644 => 100755 e2sm/headers/asn_internal.h mode change 100644 => 100755 e2sm/headers/asn_ioc.h mode change 100644 => 100755 e2sm/headers/asn_random_fill.h mode change 100644 => 100755 e2sm/headers/asn_system.h mode change 100644 => 100755 e2sm/headers/ber_decoder.h mode change 100644 => 100755 e2sm/headers/ber_tlv_length.h mode change 100644 => 100755 e2sm/headers/ber_tlv_tag.h mode change 100644 => 100755 e2sm/headers/constr_CHOICE.h mode change 100644 => 100755 e2sm/headers/constr_SEQUENCE.h mode change 100644 => 100755 e2sm/headers/constr_SEQUENCE_OF.h mode change 100644 => 100755 e2sm/headers/constr_SET_OF.h mode change 100644 => 100755 e2sm/headers/constr_TYPE.h mode change 100644 => 100755 e2sm/headers/constraints.h mode change 100644 => 100755 e2sm/headers/der_encoder.h mode change 100644 => 100755 e2sm/headers/oer_decoder.h mode change 100644 => 100755 e2sm/headers/oer_encoder.h mode change 100644 => 100755 e2sm/headers/oer_support.h mode change 100644 => 100755 e2sm/headers/per_decoder.h mode change 100644 => 100755 e2sm/headers/per_encoder.h mode change 100644 => 100755 e2sm/headers/per_opentype.h mode change 100644 => 100755 e2sm/headers/per_support.h create mode 100755 e2sm/headers/tags mode change 100644 => 100755 e2sm/headers/xer_decoder.h mode change 100644 => 100755 e2sm/headers/xer_encoder.h mode change 100644 => 100755 e2sm/headers/xer_support.h create mode 100644 e2sm/lib/AMF-UE-NGAP-ID.c create mode 100644 e2sm/lib/AMFPointer.c create mode 100644 e2sm/lib/AMFRegionID.c create mode 100644 e2sm/lib/AMFSetID.c create mode 100644 e2sm/lib/CGI.c delete mode 100644 e2sm/lib/CSI-RS-Index.c delete mode 100644 e2sm/lib/CUUPMeasurement-Container.c create mode 100644 e2sm/lib/CallProcessBreakpoint-RANParameter-Item.c create mode 100644 e2sm/lib/CellIdentification-RANParameter-Item.c delete mode 100644 e2sm/lib/CellResourceReportListItem.c create mode 100644 e2sm/lib/ControlAction-RANParameter-Item.c create mode 100644 e2sm/lib/ControlOutcome-RANParameter-Item.c create mode 100644 e2sm/lib/CoreCPID.c delete mode 100644 e2sm/lib/Criticality.c rename e2sm/lib/{ProtocolIE-ID.c => E-UTRA-ARFCN.c} (54%) rename e2sm/lib/{SINR-Range.c => E-UTRA-PCI.c} (50%) create mode 100644 e2sm/lib/E-UTRA-TAC.c delete mode 100644 e2sm/lib/E2SM-KPM-ActionDefinition-Format1.c delete mode 100644 e2sm/lib/E2SM-KPM-ActionDefinition.c delete mode 100644 e2sm/lib/E2SM-KPM-EventTriggerDefinition-Format1.c delete mode 100644 e2sm/lib/E2SM-KPM-EventTriggerDefinition.c delete mode 100644 e2sm/lib/E2SM-KPM-IndicationHeader-Format1.c delete mode 100644 e2sm/lib/E2SM-KPM-IndicationHeader.c delete mode 100644 e2sm/lib/E2SM-KPM-IndicationMessage-Format1.c delete mode 100644 e2sm/lib/E2SM-KPM-IndicationMessage.c delete mode 100644 e2sm/lib/E2SM-KPM-RANFunctionDefinition.c create mode 100644 e2sm/lib/E2SM-RC-ActionDefinition-Format1-Item.c create mode 100644 e2sm/lib/E2SM-RC-ActionDefinition-Format1.c create mode 100644 e2sm/lib/E2SM-RC-ActionDefinition-Format2-Item.c create mode 100644 e2sm/lib/E2SM-RC-ActionDefinition-Format2.c create mode 100644 e2sm/lib/E2SM-RC-ActionDefinition-Format3-Item.c create mode 100644 e2sm/lib/E2SM-RC-ActionDefinition-Format3.c create mode 100644 e2sm/lib/E2SM-RC-ActionDefinition.c create mode 100644 e2sm/lib/E2SM-RC-CallProcessID-Format1.c create mode 100644 e2sm/lib/E2SM-RC-CallProcessID.c create mode 100644 e2sm/lib/E2SM-RC-ControlMessage-Format1-Item.c create mode 100644 e2sm/lib/E2SM-RC-ControlOutcome-Format1-Item.c create mode 100644 e2sm/lib/E2SM-RC-ControlOutcome-Format1.c create mode 100644 e2sm/lib/E2SM-RC-ControlOutcome.c create mode 100644 e2sm/lib/E2SM-RC-EventTrigger-Format1-Item.c create mode 100644 e2sm/lib/E2SM-RC-EventTrigger-Format1.c create mode 100644 e2sm/lib/E2SM-RC-EventTrigger-Format2.c create mode 100644 e2sm/lib/E2SM-RC-EventTrigger-Format3-Item.c create mode 100644 e2sm/lib/E2SM-RC-EventTrigger-Format3.c create mode 100644 e2sm/lib/E2SM-RC-EventTrigger-Format4-Item.c create mode 100644 e2sm/lib/E2SM-RC-EventTrigger-Format4.c create mode 100644 e2sm/lib/E2SM-RC-EventTrigger-Format5.c create mode 100644 e2sm/lib/E2SM-RC-EventTrigger.c create mode 100644 e2sm/lib/E2SM-RC-IndicationHeader-Format1.c create mode 100644 e2sm/lib/E2SM-RC-IndicationHeader-Format2.c create mode 100644 e2sm/lib/E2SM-RC-IndicationHeader.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format1-Item.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format1.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format2-Item.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format2-RANParameter-Item.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format2.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format3-Item.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format3.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format4-ItemCell.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format4-ItemUE.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format4.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format5-Item.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage-Format5.c create mode 100644 e2sm/lib/E2SM-RC-IndicationMessage.c rename e2sm/lib/{GNB-ID-Choice.c => EN-GNB-ID.c} (52%) create mode 100644 e2sm/lib/ENB-UE-X2AP-ID-Extension.c create mode 100644 e2sm/lib/ENB-UE-X2AP-ID.c delete mode 100644 e2sm/lib/EPC-CUUP-PM-Format.c delete mode 100644 e2sm/lib/EPC-DU-PM-Container.c create mode 100644 e2sm/lib/EUTRA-CGI.c create mode 100644 e2sm/lib/EUTRACellIdentity.c create mode 100644 e2sm/lib/EventTrigger-Cell-Info-Item-Choice-Group.c create mode 100644 e2sm/lib/EventTrigger-Cell-Info-Item-Choice-Individual.c create mode 100644 e2sm/lib/EventTrigger-Cell-Info-Item.c create mode 100644 e2sm/lib/EventTrigger-Cell-Info.c create mode 100644 e2sm/lib/EventTrigger-UE-Info-Item-Choice-Group.c create mode 100644 e2sm/lib/EventTrigger-UE-Info-Item-Choice-Individual.c create mode 100644 e2sm/lib/EventTrigger-UE-Info-Item.c create mode 100644 e2sm/lib/EventTrigger-UE-Info.c create mode 100644 e2sm/lib/EventTrigger-UEevent-Info-Item.c create mode 100644 e2sm/lib/EventTrigger-UEevent-Info.c delete mode 100644 e2sm/lib/FGC-CUUP-PM-Format.c delete mode 100644 e2sm/lib/FGC-DU-PM-Container.c delete mode 100644 e2sm/lib/FQIPERSlicesPerPlmnListItem.c delete mode 100644 e2sm/lib/FQIPERSlicesPerPlmnPerCellListItem.c rename e2sm/lib/{PLMN-Identity.c => FiveGS-TAC.c} (56%) create mode 100644 e2sm/lib/FreqBandNrItem.c create mode 100644 e2sm/lib/GNB-CU-CP-UE-E1AP-ID.c create mode 100644 e2sm/lib/GNB-CU-UE-F1AP-ID.c rename e2sm/lib/{ENGNB-ID.c => GNB-ID.c} (68%) create mode 100644 e2sm/lib/GUAMI.c create mode 100644 e2sm/lib/GUMMEI.c delete mode 100644 e2sm/lib/GlobalE2node-ID.c delete mode 100644 e2sm/lib/GlobalE2node-eNB-ID.c delete mode 100644 e2sm/lib/GlobalE2node-en-gNB-ID.c delete mode 100644 e2sm/lib/GlobalE2node-gNB-ID.c delete mode 100644 e2sm/lib/GlobalE2node-ng-eNB-ID.c create mode 100644 e2sm/lib/GlobalGNB-ID.c delete mode 100644 e2sm/lib/GlobalKPMnode-ID.c delete mode 100644 e2sm/lib/GlobalKPMnode-eNB-ID.c delete mode 100644 e2sm/lib/GlobalKPMnode-en-gNB-ID.c delete mode 100644 e2sm/lib/GlobalKPMnode-gNB-ID.c delete mode 100644 e2sm/lib/GlobalKPMnode-ng-eNB-ID.c create mode 100644 e2sm/lib/GlobalNGRANNodeID.c create mode 100644 e2sm/lib/GlobalNgENB-ID.c delete mode 100644 e2sm/lib/GlobalgNB-ID.c delete mode 100644 e2sm/lib/GlobalngeNB-ID.c create mode 100644 e2sm/lib/GroupID.c create mode 100644 e2sm/lib/IndexToRFSP.c create mode 100644 e2sm/lib/InsertIndication-RANParameter-Item.c create mode 100644 e2sm/lib/Interface-MessageID.c create mode 100644 e2sm/lib/InterfaceID-E1.c create mode 100644 e2sm/lib/InterfaceID-F1.c create mode 100644 e2sm/lib/InterfaceID-NG.c create mode 100644 e2sm/lib/InterfaceID-S1.c create mode 100644 e2sm/lib/InterfaceID-W1.c create mode 100644 e2sm/lib/InterfaceID-X2.c create mode 100644 e2sm/lib/InterfaceID-Xn.c create mode 100644 e2sm/lib/InterfaceIdentifier.c create mode 100644 e2sm/lib/InterfaceType.c create mode 100644 e2sm/lib/L2Parameters-RANParameter-Item.c delete mode 100644 e2sm/lib/L3-RRC-Measurements.c create mode 100644 e2sm/lib/LogicalOR.c create mode 100644 e2sm/lib/MME-Code.c create mode 100644 e2sm/lib/MME-Group-ID.c create mode 100644 e2sm/lib/MME-UE-S1AP-ID.c create mode 100644 e2sm/lib/Makefile.am.libasncodec delete mode 100644 e2sm/lib/MeasQuantityResults.c delete mode 100644 e2sm/lib/MeasQuantityResultsEUTRA.c delete mode 100644 e2sm/lib/MeasResultEUTRA.c delete mode 100644 e2sm/lib/MeasResultListEUTRA.c delete mode 100644 e2sm/lib/MeasResultListNR.c delete mode 100644 e2sm/lib/MeasResultNR.c delete mode 100644 e2sm/lib/MeasResultNeighCells.c delete mode 100644 e2sm/lib/MeasResultPCell.c delete mode 100644 e2sm/lib/MeasResultServMO.c delete mode 100644 e2sm/lib/MeasResultServMOList.c delete mode 100644 e2sm/lib/MeasurementInfoItem.c delete mode 100644 e2sm/lib/MeasurementInfoList.c delete mode 100644 e2sm/lib/MeasurementType.c delete mode 100644 e2sm/lib/MeasurementValue.c create mode 100644 e2sm/lib/MessageType-Choice-NI.c create mode 100644 e2sm/lib/MessageType-Choice-RRC.c create mode 100644 e2sm/lib/MessageType-Choice.c create mode 100644 e2sm/lib/NG-RANnodeUEXnAPID.c create mode 100644 e2sm/lib/NGENB-CU-UE-W1AP-ID.c create mode 100644 e2sm/lib/NGENB-DU-ID.c delete mode 100644 e2sm/lib/NI-Type.c create mode 100644 e2sm/lib/NR-ARFCN.c create mode 100644 e2sm/lib/NR-CGI.c rename e2sm/lib/{PhysCellId.c => NR-PCI.c} (56%) delete mode 100644 e2sm/lib/NRCGI.c create mode 100644 e2sm/lib/NRFrequencyBand-List.c create mode 100644 e2sm/lib/NRFrequencyBandItem.c create mode 100644 e2sm/lib/NRFrequencyInfo.c create mode 100644 e2sm/lib/NRFrequencyShift7p5khz.c delete mode 100644 e2sm/lib/NULL.c create mode 100644 e2sm/lib/NeighborCell-Item-Choice-E-UTRA.c create mode 100644 e2sm/lib/NeighborCell-Item-Choice-NR.c create mode 100644 e2sm/lib/NeighborCell-Item.c create mode 100644 e2sm/lib/NeighborCell-List.c create mode 100644 e2sm/lib/NeighborRelation-Info.c rename e2sm/lib/{ENB-ID-Choice.c => NgENB-ID.c} (57%) delete mode 100644 e2sm/lib/OCUCP-PF-Container.c delete mode 100644 e2sm/lib/OCUUP-PF-Container.c delete mode 100644 e2sm/lib/ODU-PF-Container.c delete mode 100644 e2sm/lib/PF-Container.c delete mode 100644 e2sm/lib/PF-ContainerListItem.c create mode 100644 e2sm/lib/PLMNIdentity.c delete mode 100644 e2sm/lib/PM-Containers-Item.c delete mode 100644 e2sm/lib/PM-Info-Item.c delete mode 100644 e2sm/lib/PerQCIReportListItem.c delete mode 100644 e2sm/lib/PerQCIReportListItemFormat.c delete mode 100644 e2sm/lib/PerUE-PM-Item.c delete mode 100644 e2sm/lib/PlmnID-Item.c create mode 100644 e2sm/lib/PolicyAction-RANParameter-Item.c create mode 100644 e2sm/lib/PolicyCondition-RANParameter-Item.c delete mode 100644 e2sm/lib/Presence.c create mode 100644 e2sm/lib/QoSID.c create mode 100644 e2sm/lib/QosFlowIdentifier.c create mode 100644 e2sm/lib/RAN-CallProcess-ID.c delete mode 100644 e2sm/lib/RAN-Container.c delete mode 100644 e2sm/lib/RAN-ControlParameter-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-Control-Action-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-Control-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-Control.c create mode 100644 e2sm/lib/RANFunctionDefinition-EventTrigger-Breakpoint-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-EventTrigger-CallProcess-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-EventTrigger-Style-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-EventTrigger.c create mode 100644 e2sm/lib/RANFunctionDefinition-Insert-Indication-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-Insert-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-Insert.c create mode 100644 e2sm/lib/RANFunctionDefinition-Policy-Action-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-Policy-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-Policy.c create mode 100644 e2sm/lib/RANFunctionDefinition-Report-Item.c create mode 100644 e2sm/lib/RANFunctionDefinition-Report.c create mode 100644 e2sm/lib/RANParameter-Definition-Choice-LIST-Item.c create mode 100644 e2sm/lib/RANParameter-Definition-Choice-LIST.c create mode 100644 e2sm/lib/RANParameter-Definition-Choice-STRUCTURE-Item.c create mode 100644 e2sm/lib/RANParameter-Definition-Choice-STRUCTURE.c create mode 100644 e2sm/lib/RANParameter-Definition-Choice.c create mode 100644 e2sm/lib/RANParameter-Definition.c delete mode 100644 e2sm/lib/RANParameter-ELEMENT.c delete mode 100644 e2sm/lib/RANParameter-Item.c create mode 100644 e2sm/lib/RANParameter-STRUCTURE-Item.c create mode 100644 e2sm/lib/RANParameter-Testing-Item-Choice-ElementFalse.c create mode 100644 e2sm/lib/RANParameter-Testing-Item-Choice-ElementTrue.c create mode 100644 e2sm/lib/RANParameter-Testing-Item-Choice-List.c create mode 100644 e2sm/lib/RANParameter-Testing-Item-Choice-Structure.c create mode 100644 e2sm/lib/RANParameter-Testing-Item.c create mode 100644 e2sm/lib/RANParameter-Testing-LIST.c create mode 100644 e2sm/lib/RANParameter-Testing-STRUCTURE.c create mode 100644 e2sm/lib/RANParameter-Testing.c create mode 100644 e2sm/lib/RANParameter-TestingCondition.c create mode 100644 e2sm/lib/RANParameter-ValueType-Choice-ElementFalse.c create mode 100644 e2sm/lib/RANParameter-ValueType-Choice-ElementTrue.c create mode 100644 e2sm/lib/RANParameter-ValueType-Choice-List.c create mode 100644 e2sm/lib/RANParameter-ValueType-Choice-Structure.c rename e2sm/lib/{TimeStamp.c => RANUEID.c} (58%) create mode 100644 e2sm/lib/RIC-CallProcessBreakpoint-ID.c create mode 100644 e2sm/lib/RIC-CallProcessBreakpoint-Name.c create mode 100644 e2sm/lib/RIC-CallProcessType-ID.c rename e2sm/lib/{RANcallProcess-ID-string.c => RIC-CallProcessType-Name.c} (69%) delete mode 100644 e2sm/lib/RIC-ControlAction-Item.c delete mode 100644 e2sm/lib/RIC-ControlStyle-Item.c rename e2sm/lib/{MeasurementTypeID.c => RIC-EventTrigger-Cell-ID.c} (50%) create mode 100644 e2sm/lib/RIC-EventTrigger-UE-ID.c create mode 100644 e2sm/lib/RIC-EventTrigger-UEevent-ID.c create mode 100644 e2sm/lib/RIC-EventTriggerCondition-ID.c delete mode 100644 e2sm/lib/RIC-EventTriggerStyle-Item.c create mode 100644 e2sm/lib/RIC-InsertIndication-ID.c create mode 100644 e2sm/lib/RIC-InsertIndication-Name.c create mode 100644 e2sm/lib/RIC-PolicyAction-RANParameter-Item.c create mode 100644 e2sm/lib/RIC-PolicyAction.c delete mode 100644 e2sm/lib/RIC-ReportStyle-Item.c create mode 100644 e2sm/lib/RRC-MessageID.c create mode 100644 e2sm/lib/RRC-State.c delete mode 100644 e2sm/lib/RRCEvent.c create mode 100644 e2sm/lib/RRCclass-LTE.c create mode 100644 e2sm/lib/RRCclass-NR.c delete mode 100644 e2sm/lib/RSRP-Range.c delete mode 100644 e2sm/lib/RSRP-RangeEUTRA.c delete mode 100644 e2sm/lib/RSRQ-Range.c delete mode 100644 e2sm/lib/RSRQ-RangeEUTRA.c delete mode 100644 e2sm/lib/RT-Period-IE.c create mode 100644 e2sm/lib/Report-RANParameter-Item.c delete mode 100644 e2sm/lib/ResultsPerCSI-RS-Index.c delete mode 100644 e2sm/lib/ResultsPerCSI-RS-IndexList.c delete mode 100644 e2sm/lib/ResultsPerSSB-Index.c delete mode 100644 e2sm/lib/ResultsPerSSB-IndexList.c create mode 100644 e2sm/lib/SD.c delete mode 100644 e2sm/lib/SINR-RangeEUTRA.c delete mode 100644 e2sm/lib/SSB-Index.c create mode 100644 e2sm/lib/SST.c delete mode 100644 e2sm/lib/ServCellIndex.c delete mode 100644 e2sm/lib/ServedPlmnPerCellListItem.c create mode 100644 e2sm/lib/ServingCell-ARFCN.c create mode 100644 e2sm/lib/ServingCell-PCI.c delete mode 100644 e2sm/lib/ServingCellMeasurements.c delete mode 100644 e2sm/lib/SlicePerPlmnPerCellListItem.c delete mode 100644 e2sm/lib/SliceToReportListItem.c create mode 100644 e2sm/lib/SubscriberProfileIDforRFP.c create mode 100644 e2sm/lib/SupportedSULBandList.c create mode 100644 e2sm/lib/SupportedSULFreqBandItem.c delete mode 100644 e2sm/lib/Trigger-ConditionIE-Item.c create mode 100644 e2sm/lib/TriggerType-Choice-L2state.c create mode 100644 e2sm/lib/TriggerType-Choice-RRCstate-Item.c create mode 100644 e2sm/lib/TriggerType-Choice-RRCstate.c create mode 100644 e2sm/lib/TriggerType-Choice-UEID.c create mode 100644 e2sm/lib/TriggerType-Choice.c delete mode 100644 e2sm/lib/TriggeringMessage.c delete mode 100644 e2sm/lib/UE-Identity.c create mode 100644 e2sm/lib/UEID-EN-GNB.c create mode 100644 e2sm/lib/UEID-ENB.c create mode 100644 e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-Item.c create mode 100644 e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-List.c create mode 100644 e2sm/lib/UEID-GNB-CU-CP-F1AP-ID-Item.c create mode 100644 e2sm/lib/UEID-GNB-CU-F1AP-ID-List.c create mode 100644 e2sm/lib/UEID-GNB-CU-UP.c create mode 100644 e2sm/lib/UEID-GNB-DU.c create mode 100644 e2sm/lib/UEID-GNB.c create mode 100644 e2sm/lib/UEID-NG-ENB-DU.c create mode 100644 e2sm/lib/UEID-NG-ENB.c create mode 100644 e2sm/lib/UEID.c create mode 100644 e2sm/lib/UEIdentification-RANParameter-Item.c delete mode 100644 e2sm/lib/pdu_collection.c mode change 100644 => 100755 e2sm/wrapper.c mode change 100644 => 100755 e2sm/wrapper.h diff --git a/Dockerfile b/Dockerfile index 742e3bd..0fd0890 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,7 +8,7 @@ ENV GOPATH /go ENV GOBIN /go/bin ENV CFG_FILE /opt/ric/config/config-file.json -ARG RMRVERSION=4.7.4 +ARG RMRVERSION=4.8.3 ARG RMRLIBURL=https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr_${RMRVERSION}_amd64.deb/download.deb ARG RMRDEVURL=https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr-dev_${RMRVERSION}_amd64.deb/download.deb RUN wget --content-disposition ${RMRLIBURL} && dpkg -i rmr_${RMRVERSION}_amd64.deb diff --git a/control/rcControl.go b/control/rcControl.go index 41cfc92..5bf5994 100644 --- a/control/rcControl.go +++ b/control/rcControl.go @@ -3,13 +3,14 @@ package control import ( "errors" "fmt" - "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" - "gerrit.o-ran-sc.org/r/ric-app/rc/protocol/grpc/ricmsgcommrpc/rc" "log" "os" "strconv" "sync" "time" + + "gerrit.o-ran-sc.org/r/ric-app/rc/protocol/grpc/ricmsgcommrpc/rc" + "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" ) var ( @@ -33,6 +34,12 @@ func NewControl() Control { xapp.Logger.Debug("GRPC Server Port = %v ", xapp.Config.GetString("controls.ricHOControlgRpcServerPort")) xapp.Logger.Debug("Log Level = %d ", xapp.Config.GetInt("controls.logLevel")) + go StartgRPCRCControlCommServerRoutine() + xapp.Logger.Debug("StartgRPCRCControlCommServerRoutine done") + + //To Handle RIC Control Message + go StartHandleControlReqRoutine() + return Control{5, make(chan *xapp.RMRParams, 1000), //Make it configurable make(map[int]bool), @@ -42,17 +49,7 @@ func NewControl() Control { func ReadyCB(i interface{}) { gControlData = i.(*Control) - go controlLoop() - - //Start gRPC Server for Receiving messages - - go StartgRPCRCControlCommServerRoutine() - xapp.Logger.Info("StartgRPCRCControlCommServerRoutine done") - - //To Handle RIC Control Message - go StartHandleControlReqRoutine() - } func (aControlData *Control) Run() { @@ -68,7 +65,7 @@ func (aControlData *Control) Consume(rp *xapp.RMRParams) (err error) { func (aControlData *Control) rmrSend(params *xapp.RMRParams) (err error) { if !xapp.Rmr.Send(params, false) { err = errors.New("rmr.Send() failed") - xapp.Logger.Error("Failed to rmrSend to %v", err) + xapp.Logger.Info("Failed to rmrSend to %v", err) log.Printf("Failed to rmrSend to %v", err) } return @@ -113,21 +110,28 @@ func StartHandleControlReqRoutine() { func HandlegRPCRICControlMsgReq(aPtrRicControlGrpcReq *rc.RicControlGrpcReq) { + xapp.Logger.Debug("HandlegRPCRICControlMsgReq :%v", *aPtrRicControlGrpcReq) lRicHoControlMsg := RicHoControlMsg{} lRicHoControlMsg.RicControlGrpcReqPtr = aPtrRicControlGrpcReq lUEID := lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID - xapp.Logger.Debug("HandlegRPCRICControlMsgReq UEID = %s ", lUEID) - //Mandatory parameters validation - if lRicHoControlMsg.RicControlGrpcReqPtr.E2NodeID == "" || - lRicHoControlMsg.RicControlGrpcReqPtr.RICControlMessageData.TargetCellID == "" || - lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID == "" || - lRicHoControlMsg.RicControlGrpcReqPtr.PlmnID == "" || - lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.ControlActionId < 0 || - lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.ControlStyle < 0 || - lRicHoControlMsg.RicControlGrpcReqPtr.RICControlMessageData.RICControlCellTypeVal < 0 || - lRicHoControlMsg.RicControlGrpcReqPtr.RICE2APHeaderData.RICRequestorID < 0 || - lRicHoControlMsg.RicControlGrpcReqPtr.RICE2APHeaderData.RanFuncId < 0 { + xapp.Logger.Debug("HandlegRPCRICControlMsgReq UEID = %v ", lUEID) + //Mandatory parameters validation + if lRicHoControlMsg.RicControlGrpcReqPtr.E2NodeID == "" || + lRicHoControlMsg.RicControlGrpcReqPtr.RICControlMessageData.TargetCellID == "" || + lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID.GnbUEID.AmfUENGAPID < 0 || + lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID.GnbUEID.Guami.PLMNIdentity == "" || + lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID.GnbUEID.Guami.AMFRegionID == "" || + lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID.GnbUEID.Guami.AMFSetID == "" || + lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID.GnbUEID.Guami.AMFPointer == "" || + len(lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID.GnbUEID.GNBCUUEF1APID) == 0 || + len(lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID.GnbUEID.GNBCUCPUEE1APID) == 0 || + lRicHoControlMsg.RicControlGrpcReqPtr.PlmnID == "" || + lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.ControlActionId < 0 || + lRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.ControlStyle < 0 || + lRicHoControlMsg.RicControlGrpcReqPtr.RICControlMessageData.RICControlCellTypeVal < 0 || + lRicHoControlMsg.RicControlGrpcReqPtr.RICE2APHeaderData.RICRequestorID < 0 || + lRicHoControlMsg.RicControlGrpcReqPtr.RICE2APHeaderData.RanFuncId < 0 { xapp.Logger.Error("Mandaroty parameters missing, dont send control request ") return } @@ -154,8 +158,10 @@ func (aRicHoControlMsg *RicHoControlMsg) setEventRicControlCreateExpiredTimer(aS gControlData.eventRicControlReqExpiredMu.Lock() gControlData.eventRicControlReqExpiredMap[aSeqNum] = false gControlData.eventRicControlReqExpiredMu.Unlock() + controlAckTimer := xapp.Config.GetInt("controls.controlAckTimer") + xapp.Logger.Debug("configured controlAckTimer = %d and controlAckTimer = %d ", xapp.Config.GetInt("controls.controlAckTimer"),controlAckTimer) - timer := time.NewTimer(time.Duration(gControlData.eventRicControlReqTimePeriod) * time.Second) + timer := time.NewTimer(time.Duration(controlAckTimer) * time.Second) go func(t *time.Timer) { defer t.Stop() xapp.Logger.Debug("RIC_CONTROL_REQ[%s]: Waiting for RIC_CONTROL_RESP...", aSeqNum) @@ -204,15 +210,23 @@ func (aRicHoControlMsg *RicHoControlMsg) SendRicControlRequest(aRequestSN int) ( var lRicControlActionID int64 = aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.ControlActionId lUEID := aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID - lUeIdBuf := []byte(aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) + var ueId_data UEid - xapp.Logger.Debug("UEID:%s, lUeIdBuf: %v", aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID, lUeIdBuf) + xapp.Logger.Debug("UEID:%v, ueId_data strct :%v", aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID, + ueId_data) + ueId_data.amf_UE_NGAP_Id = lUEID.GnbUEID.AmfUENGAPID + ueId_data.pLMNIdentitybuf = lUEID.GnbUEID.Guami.PLMNIdentity + ueId_data.aMFRegionIDbuf = lUEID.GnbUEID.Guami.AMFRegionID + ueId_data.aMFSetIDbuf = lUEID.GnbUEID.Guami.AMFSetID + ueId_data.aMFPointerbuf = lUEID.GnbUEID.Guami.AMFPointer + ueId_data.F1AP_id = lUEID.GnbUEID.GNBCUUEF1APID + ueId_data.E1AP_id = lUEID.GnbUEID.GNBCUCPUEE1APID - var lRicControlHeader []byte = make([]byte, 256) //Check the Size - lRicControlHeaderEncoded, err := e2sm.SetRicControlHeader(lRicControlHeader, lUeIdBuf, lRicControlStyleType, lRicControlActionID) + var lRicControlHeader []byte = make([]byte, 1024) //Check the Size + lRicControlHeaderEncoded, err := e2sm.SetRicControlHeader(lRicControlHeader, &ueId_data, lRicControlStyleType, lRicControlActionID) if err != nil { - xapp.Logger.Error("SetRicControlHeader Failed: %v, UEID:%s", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) - log.Printf("SetRicControlHeader Failed: %v, UEID:%s", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) + xapp.Logger.Error("SetRicControlHeader Failed: %v, UEID:%v", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) + log.Printf("SetRicControlHeader Failed: %v, UEID:%v", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) return err } else { xapp.Logger.Info("SetRicControlHeader is success: %x", lRicControlHeaderEncoded) @@ -222,7 +236,6 @@ func (aRicHoControlMsg *RicHoControlMsg) SendRicControlRequest(aRequestSN int) ( } fmt.Fprintf(os.Stderr, "\n") } - var lTargetPrimaryCell int64 = RIC_CONTROL_TARGET_PRIMARY_CELL var lTargetCell int64 = RIC_CONTROL_TARGET_CELL var lNrCGIOrECGI int64 = RIC_CONTROL_CGI_TYPE @@ -230,12 +243,15 @@ func (aRicHoControlMsg *RicHoControlMsg) SendRicControlRequest(aRequestSN int) ( lNrOrEUtraCellType := aRicHoControlMsg.RicControlGrpcReqPtr.RICControlMessageData.RICControlCellTypeVal lTargetCellVal := aRicHoControlMsg.RicControlGrpcReqPtr.RICControlMessageData.TargetCellID lTargetCellValBuf := []byte(lTargetCellVal) + //lNRPlmnId := []byte(aRicHoControlMsg.RicControlGrpcReqPtr.RICControlMessageData.TargetCellID.PlmnID) + //lNRCellId := aRicHoControlMsg.RicControlGrpcReqPtr.RICControlMessageData.TargetCellID.NRCellID + - var lRicControlMessage []byte = make([]byte, 1024) + var lRicControlMessage []byte = make([]byte, 1024) lRicControlMessageEncoded, err := e2sm.SetRicControlMessage(lRicControlMessage, lTargetPrimaryCell, lTargetCell, lNrCGIOrECGI, int64(lNrOrEUtraCellType), lTargetCellValBuf) if err != nil { - xapp.Logger.Error("SetRicControlMessage Failed: %v, UEID:%s", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) - log.Printf("SetRicControlMessage Failed: %v, UEID:%s", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) + xapp.Logger.Error("SetRicControlMessage Failed: %v, UEID:%v", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) + log.Printf("SetRicControlMessage Failed: %v, UEID:%v", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) return err } else { xapp.Logger.Debug("SetRicControlMessage is success: %x", lRicControlMessageEncoded) @@ -257,45 +273,85 @@ func (aRicHoControlMsg *RicHoControlMsg) SendRicControlRequest(aRequestSN int) ( lParams.Payload, err = e2ap.SetRicControlRequestPayload(lParams.Payload, lRequestorId, uint16(aRequestSN), lFuncId, lRicControlHeaderEncoded, lRicControlMessageEncoded) if err != nil { - xapp.Logger.Error("SetRicControlRequestPayload Failed: %v, UEID:%s", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) - log.Printf("SetRicControlRequestPayload Failed: %v, UEID:%s", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) + xapp.Logger.Error("SetRicControlRequestPayload Failed: %v, UEID:%v", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) + log.Printf("SetRicControlRequestPayload Failed: %v, UEID:%v", err, aRicHoControlMsg.RicControlGrpcReqPtr.RICControlHeaderData.UEID) return err } else { - xapp.Logger.Debug("Encoding RicControlRequestPayload is success. UEID: %s, Payload: %x", lUEID, lParams.Payload) + + xapp.Logger.Debug("Encoding RicControlRequestPayload is success. UEID: %v, Payload: %x", lUEID, lParams.Payload) fmt.Fprintf(os.Stderr, "Encoded RIC Control Req PDU:\n") for i := 0; i < len(lParams.Payload); i++ { fmt.Fprintf(os.Stderr, " %02x", lParams.Payload[i]) } fmt.Fprintf(os.Stderr, "\n") } - + lParams.PayloadLen = len(lParams.Payload) valEnbId := aRicHoControlMsg.RicControlGrpcReqPtr.E2NodeID valRanName := aRicHoControlMsg.RicControlGrpcReqPtr.RanName valPlmnId := aRicHoControlMsg.RicControlGrpcReqPtr.PlmnID lParams.Meid = &xapp.RMRMeid{PlmnID: valPlmnId, EnbID: valEnbId, RanName: valRanName} - xapp.Logger.Debug("The RIC Control RMR message to be sent is with MsgType:%d SubId=%d, lParams.Meid: %v, UEID: %s", lParams.Mtype, lParams.SubId, lParams.Meid, lUEID) - - xapp.Logger.Debug("Sending RIC Control message to RanName: %s, UEID: %s ", aRicHoControlMsg.RicControlGrpcReqPtr.RanName, lUEID) + xapp.Logger.Debug("The RIC Control RMR message to be sent is with MsgType:%d SubId=%d, lParams.Meid: %v, UEID: %v", lParams.Mtype, lParams.SubId, lParams.Meid, lUEID) + xapp.Logger.Debug("Sending RIC Control message to RanName: %s, UEID: %v ", aRicHoControlMsg.RicControlGrpcReqPtr.RanName, lUEID) + + xapp.Logger.Info("lParams %v ",lParams) err = gControlData.rmrSend(lParams) if err != nil { xapp.Logger.Error("Failed to send RIC_CONTROL_REQ: %v", err) log.Printf("Failed to send RIC_CONTROL_REQ: %v", err) + xapp.Logger.Info("Failed to send RIC_CONTROL_REQ: %v", err) return err } - xapp.Logger.Info("Sending RIC Control message to RanName: %s, UEID: %s Success", aRicHoControlMsg.RicControlGrpcReqPtr.RanName, lUEID) - + xapp.Logger.Info("Sending RIC Control message to RanName: %s, UEID: %v Success", aRicHoControlMsg.RicControlGrpcReqPtr.RanName, lUEID) + //Start Timer Operation. aRicHoControlMsg.setEventRicControlCreateExpiredTimer(aRequestSN) //TODO check if this is required as we are not expecting Control ACK return nil } func HandleControlResponse(params *xapp.RMRParams) (err error) { + + var e2ap *E2ap + var e2sm *E2sm xapp.Logger.Debug("The SubId in RIC_CONTROL_RESP is %d", params.SubId) log.Printf("The SubId in RIC_CONTROL_RESP is %d", params.SubId) + + + //Decode the RIC Control Ack message + controlAck, err := e2ap.GetControlAckMsg(params.Payload) + if err != nil { + xapp.Logger.Error("Failed to decode RIC Control Ack: %v", err) + log.Println("Failed to decode RIC Control Ack: %v", err) + return + } + log.Println("E2ap RIC RIC Control Ack message decoded \n") + xapp.Logger.Info("E2ap RIC RIC Control Ack message decoded \n") + gControlData.eventRicControlReqExpiredMu.Lock() + _,ok := gControlData.eventRicControlReqExpiredMap[int(controlAck.InstanceId)] + if !ok { + gControlData.eventRicControlReqExpiredMu.Unlock() + xapp.Logger.Debug("RIC_CONTROL_REQ has been deleted!") + log.Printf("RIC_CONTROL_REQ has been deleted!") + return nil + } else { + gControlData.eventRicControlReqExpiredMap[int(controlAck.InstanceId)] = true + gControlData.eventRicControlReqExpiredMu.Unlock() + } + + controlOutcome, err := e2sm.GetControlOutcome(controlAck.ControlOutcome) + if err != nil { + xapp.Logger.Error("Failed to decode RIC Control Outcome: %v", err) + log.Println("Failed to decode RIC Control Outcome: %v", err) + return + } + log.Println("E2SM-RC RIC Control Outcome decoded \n",controlOutcome) + xapp.Logger.Info("E2SM-RC RIC Control Outcome decoded \n",controlOutcome) + + + return nil } diff --git a/control/rcControlUtils.go b/control/rcControlUtils.go new file mode 100644 index 0000000..c0efda1 --- /dev/null +++ b/control/rcControlUtils.go @@ -0,0 +1,58 @@ +package control + +import ( + _ "strconv" + _ "time" +) + +func get_bytepack_plmnId(lInPlmnId []byte) []byte { + +var tmpPlmnId []byte +var bytePackedPlmnId []byte + +tmpPlmnId = make([]byte, 6) +bytePackedPlmnId = make([]byte, 3) + +num_mnc_digits := len(lInPlmnId) + +tmpPlmnId[0] = lInPlmnId[0] +tmpPlmnId[1] = lInPlmnId[1] +tmpPlmnId[2] = lInPlmnId[2] + +if num_mnc_digits == 5 { +tmpPlmnId[3] = 0x0f +tmpPlmnId[4] = lInPlmnId[3] +tmpPlmnId[5] = lInPlmnId[4] +} else { +tmpPlmnId[3] = lInPlmnId[3] +tmpPlmnId[4] = lInPlmnId[4] +tmpPlmnId[5] = lInPlmnId[5] +} +bytePackedPlmnId[0] = ((tmpPlmnId[1] & 0x0F) << 4) | (tmpPlmnId[0] & 0x0F) +bytePackedPlmnId[1] = ((tmpPlmnId[3] & 0x0F) << 4) | (tmpPlmnId[2] & 0x0F) +bytePackedPlmnId[2] = ((tmpPlmnId[5] & 0x0F) << 4) | (tmpPlmnId[4] & 0x0F) + +return bytePackedPlmnId +} + +func ConverIntegerToByte(lIntVar int) []byte { +var rightMost, tempIntVar int +var byteArray []byte +tempIntVar = lIntVar +for { +rightMost = tempIntVar % 10 +byteArray = append(byteArray, byte(rightMost)) // convert single digit to byte +tempIntVar /= 10 +if tempIntVar == 0 { +break +} +} +// need to reverse the order +fixByteArray := []byte{} +for i := range byteArray { +n := byteArray[len(byteArray)-1-i] +fixByteArray = append(fixByteArray, n) +} + +return fixByteArray +} diff --git a/control/rcE2AP.go b/control/rcE2AP.go index ee3db21..e305125 100644 --- a/control/rcE2AP.go +++ b/control/rcE2AP.go @@ -40,3 +40,24 @@ func (c *E2ap) SetRicControlRequestPayload(payload []byte, ricRequestorID uint16 return } + +func (c *E2ap) GetControlAckMsg(payload []byte) (decodedMsg *ControlAckMsg, err error) { + cptr := unsafe.Pointer(&payload[0]) + decodedMsg = &ControlAckMsg{} + decodedCMsg := C.e2ap_decode_ric_control_acknowledge_message(cptr, C.size_t(len(payload))) + if decodedCMsg == nil { + return decodedMsg, errors.New("e2ap wrapper is unable to decode indication message due to wrong or invalid payload") + } + defer C.e2ap_free_decoded_ric_control_ack(decodedCMsg) + + decodedMsg.RequestID = int32(decodedCMsg.requestorID) + decodedMsg.InstanceId = int32(decodedCMsg.instanceID) + decodedMsg.FuncID = int32(decodedCMsg.ranfunctionID) + callproc := unsafe.Pointer(decodedCMsg.callProcessID) + decodedMsg.CallProcessID = C.GoBytes(callproc, C.int(decodedCMsg.callProcessIDSize)) + decodedMsg.CallProcessIDLength = int32(decodedCMsg.callProcessIDSize) + controlOutcome := unsafe.Pointer(decodedCMsg.ricControlOutCome) + decodedMsg.ControlOutcome = C.GoBytes(controlOutcome, C.int(decodedCMsg.ricControlOutComeSize)) + decodedMsg.ControlOutcomeLength = int32(decodedCMsg.ricControlOutComeSize) + return +} diff --git a/control/rcE2SmRc.go b/control/rcE2SmRc.go index 502f017..e2a8498 100644 --- a/control/rcE2SmRc.go +++ b/control/rcE2SmRc.go @@ -11,17 +11,67 @@ import ( "errors" "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" "unsafe" + _ "log" + _"encoding/binary" + "encoding/hex" + "strings" + "strconv" ) type E2sm struct { } -func (c *E2sm) SetRicControlHeader(buffer []byte, ueIDbuf []byte, ricControlStyleType int64, ricControlActionID int64) (newBuffer []byte, err error) { +func (c *E2sm) SetRicControlHeader(buffer []byte, ueIdData *UEid, ricControlStyleType int64, ricControlActionID int64) (newBuffer []byte, err error) { + + xapp.Logger.Info("SetRicControlHeader Enter \n") cptr := unsafe.Pointer(&buffer[0]) - cptr_ueIDbuf := unsafe.Pointer(&ueIDbuf[0]) - size := C.e2sm_encode_ric_control_header(cptr, C.size_t(len(buffer)), cptr_ueIDbuf, C.size_t(len(ueIDbuf)), - C.long(ricControlStyleType), C.long(ricControlActionID)) + //cptr_ueIDbuf := unsafe.Pointer(&ueIDbuf[0]) + + lplmnIdBuf := strings.Join(strings.Fields(ueIdData.pLMNIdentitybuf), "") + lIntvar, _ := strconv.Atoi(lplmnIdBuf) + xapp.Logger.Info("lIntvar = %d\n", lIntvar) + + lIntegerByte := ConverIntegerToByte(lIntvar) + //ml.MavLog(ml.INFO, lTransId, " lIntegerByte = %v\n", lIntegerByte) + xapp.Logger.Info(" lIntegerByte = %v\n", lIntegerByte) + lOutByte := get_bytepack_plmnId(lIntegerByte) + xapp.Logger.Info("lOutByte Len:%d\n", len(lOutByte)) + xapp.Logger.Info("lOutByte = %02X\n", lOutByte) + cptrRanParameterValue := unsafe.Pointer(&lOutByte[0]) + + + pLMNIdentity := C.CString(ueIdData.pLMNIdentitybuf) + defer C.free(unsafe.Pointer(pLMNIdentity)) + pLMNIdentity_size := C.size_t(len(ueIdData.pLMNIdentitybuf)) + aMFRegionID := C.CString(ueIdData.aMFRegionIDbuf) + defer C.free(unsafe.Pointer(aMFRegionID)) + aMFSetID := C.CString(ueIdData.aMFSetIDbuf) + defer C.free(unsafe.Pointer(aMFSetID)) + aMFPointer := C.CString(ueIdData.aMFPointerbuf) + defer C.free(unsafe.Pointer(aMFPointer)) + + uEID_C := C.struct_uEID{ + amf_UE_NGAP_Id: C.long(ueIdData.amf_UE_NGAP_Id), + pLMNIdentity : pLMNIdentity, + pLMNIdentity_size : pLMNIdentity_size, + aMFRegionID : aMFRegionID, + aMFRegionID_size : 1, //AMFRegionID ::= BIT STRING (SIZE(8)) + aMFSetID : aMFSetID, + aMFSetID_size: 2, //BIT STRING (SIZE(10)) + aMFPointer : aMFPointer, + aMFPointer_size : 1, //BIT STRING (SIZE(6)) + } + xapp.Logger.Debug("uEID_C amf_UE_NGAP_Id = %l",uEID_C.amf_UE_NGAP_Id) + xapp.Logger.Debug("uEID_C pLMNIdentity = %s",uEID_C.pLMNIdentity) + xapp.Logger.Debug("uEID_C aMFRegionID %s = ",uEID_C.aMFRegionID) + xapp.Logger.Debug("uEID_C aMFSetID %s = ",uEID_C.aMFSetID) + xapp.Logger.Debug("uEID_C aMFPointer %s = ",uEID_C.aMFPointer) + + size := C.e2sm_encode_ric_control_header(cptr, C.size_t(len(buffer)),&uEID_C ,(*C.long)(&ueIdData.F1AP_id[0]),C.size_t(len(ueIdData.F1AP_id)),(*C.long)(&ueIdData.E1AP_id[0]),C.size_t(len(ueIdData.E1AP_id)),(C.long)(ricControlStyleType), (C.long)(ricControlActionID), cptrRanParameterValue,C.size_t(len(lOutByte))) + + //size := C.e2sm_encode_ric_control_header(cptr, C.size_t(len(buffer)),&uEID_C ,(*C.long)(&ueIdData.F1AP_id[0]),(*C.long)(&ueIdData.E1AP_id[0]),(C.long)(ricControlStyleType), (C.long)(ricControlActionID)) + if size < 0 { return make([]byte, 0), errors.New("e2sm wrapper is unable to set EventTriggerDefinition due to wrong or invalid input") } @@ -31,11 +81,27 @@ func (c *E2sm) SetRicControlHeader(buffer []byte, ueIDbuf []byte, ricControlStyl } func (c *E2sm) SetRicControlMessage(buffer []byte, targetPrimaryCell int64, targetCell int64, nrCGIOrECGI int64, nrOrEUtraCell int64, ranParameterValue []byte) (newBuffer []byte, err error) { + + xapp.Logger.Info("SetRicControlMessagei Enter ") + cptr := unsafe.Pointer(&buffer[0]) cptrRanParameterValue := unsafe.Pointer(&ranParameterValue[0]) + /* + lIntvar, _ := strconv.Atoi(string(ranParameterValue)) + xapp.Logger.Info("lIntvar %d\n", lIntvar) + lIntegerByte := ConverIntegerToByte(lIntvar) + xapp.Logger.Info("lIntegerByte %v\n", lIntegerByte) + lOutByte := get_bytepack_plmnId(lIntegerByte) + xapp.Logger.Info("lOutByte Len:%d\n", len(lOutByte)) + xapp.Logger.Info("lOutByte %02X\n", lOutByte) + cptrRanParameterValue := unsafe.Pointer(&lOutByte[0]) + xapp.Logger.Info("cptrRanParameterValue = %v\n ", cptrRanParameterValue) + */ + size := C.e2sm_encode_ric_control_message(cptr, C.size_t(len(buffer)), C.long(targetPrimaryCell), C.long(targetCell), C.long(nrOrEUtraCell), C.long(nrCGIOrECGI), cptrRanParameterValue, C.size_t(len(ranParameterValue))) + if size < 0 { return make([]byte, 0), errors.New("e2sm wrapper is unable to set RicControlMessage due to wrong or invalid input") } @@ -43,3 +109,82 @@ func (c *E2sm) SetRicControlMessage(buffer []byte, targetPrimaryCell int64, targ xapp.Logger.Info("E2sm SetRicControlMessage is success") return } + +func (c *E2sm) GetControlOutcome(buffer []byte) (controlOutcome *ControlOutcomeMsg, err error) { + cptr := unsafe.Pointer(&buffer[0]) + controlOutcome = &ControlOutcomeMsg{} + //lTransId := gTransIdDefVal + //ml.MavLog(ml.INFO, lTransId, "Decode Control Outcome: ") + xapp.Logger.Info("Decode Control Outcome: ") + decodedMsg := C.e2sm_decode_ric_call_process_outcome(cptr, C.size_t(len(buffer))) + if decodedMsg == nil { + return controlOutcome, errors.New("e2sm wrapper is unable to get ControlOutcome due to wrong or invalid input") + } + defer C.e2sm_free_ric_call_process_outcome(decodedMsg) + //ml.MavLog(ml.INFO, lTransId, "Decoded Control Outcome: ") + controlOutcome.ControlOutcomeType = int32(decodedMsg.ric_controlOutcome_formats.present) + if controlOutcome.ControlOutcomeType == 1 { + controlOutcome := &ControlOutcomeFormat1{} + controlOutcomeFormat1_C := *(**C.E2SM_RC_ControlOutcome_Format1_t)(unsafe.Pointer(&decodedMsg.ric_controlOutcome_formats.choice[0])) + controlOutcome.ControlOutcomeFormat1ItemCount = int(controlOutcomeFormat1_C.ranP_List.list.count) + controlOutcome.ControlOutcomeFormat1Item = make([]ControlOutcomeFormat1ItemType, controlOutcome.ControlOutcomeFormat1ItemCount +1) + //ml.MavLog(ml.INFO, lTransId, "RIC Control Outcome Format1 Item Count = %d ", controlOutcome.ControlOutcomeFormat1ItemCount) + for i := 0; i < controlOutcome.ControlOutcomeFormat1ItemCount; i++ { + ControlOutcomeFormat1Item := &controlOutcome.ControlOutcomeFormat1Item[i] + var sizeof_E2SM_RC_ControlOutcome_Format1_Item_t *C.E2SM_RC_ControlOutcome_Format1_Item_t + ControlOutcomeFormat1Item_C := *(*(**C.E2SM_RC_ControlOutcome_Format1_Item_t)(unsafe.Pointer(uintptr(unsafe.Pointer(controlOutcomeFormat1_C.ranP_List.list.array)) + (uintptr)(i)*unsafe.Sizeof(sizeof_E2SM_RC_ControlOutcome_Format1_Item_t)))) + ControlOutcomeFormat1Item.RanParameterID = int64(ControlOutcomeFormat1Item_C.ranParameter_ID) + ControlOutcomeFormat1Item.RANParameterValueType = int(ControlOutcomeFormat1Item_C.ranParameter_value.present) + ranParameterValue_C := (C.RANParameter_Value_t)(ControlOutcomeFormat1Item_C.ranParameter_value) + if ControlOutcomeFormat1Item.RANParameterValueType == 5 { + //ml.MavLog(ml.INFO, lTransId, "RANParameterValueType is RANParameter_Value_PR_valueOctS") + ranParameterValue := &OctetString{} + ranParameter_C := (*C.OCTET_STRING_t)(unsafe.Pointer(&ranParameterValue_C.choice[0])) + ranParameterValue.Size = int(ranParameter_C.size) + ranParameterValue.Buf = C.GoBytes(unsafe.Pointer(ranParameter_C.buf), C.int(ranParameter_C.size)) + ControlOutcomeFormat1Item.RANParameterValue = ranParameterValue + //ml.MavLog(ml.INFO, lTransId, "RANParameterValue = ", ControlOutcomeFormat1Item.RANParameterValue) + } + } + } else { + return controlOutcome, errors.New("Unknown RIC Control Outcome type") + } + return controlOutcome , err +} + +func (c *E2sm) get_plmn_from_mcc_mnc(plmnIdBuf []byte)(bytePackedPlmnId []uint8) { + //lTransId := gTransIdDefVal + hexResp, _ := hex.DecodeString(string(plmnIdBuf)) + //ml.MavLog(ml.INFO, lTransId, "get_plmn_from_mcc_mnc plmnIdBuf and hexResp = ", plmnIdBuf,hexResp) + var mcc []uint8 = make([]uint8, 3) + var mnc []uint8 = make([]uint8, 3) + + mcc[0] = hexResp[0] >> 4 + mcc[1] = hexResp[0] & 0xf + mcc[2] = hexResp[1] >> 4 + mnc[0] = hexResp[1] & 0xf + mnc[1] = hexResp[2] >> 4 + mnc[2] = hexResp[2] & 0xf + + var tmpPlmnId []uint8 = make([]uint8, 6) + tmpPlmnId[0] = mcc[0] + tmpPlmnId[1] = mcc[1] + tmpPlmnId[2] = mcc[2] + if len(mcc) == 2 { + tmpPlmnId[3] = 0x0f + tmpPlmnId[4] = mnc[0] + tmpPlmnId[5] = mnc[1] + } else { + tmpPlmnId[3] = mnc[0] + tmpPlmnId[4] = mnc[1] + tmpPlmnId[5] = mnc[2] + } + //ml.MavLog(ml.INFO, lTransId, "\n tmpPlmnId " , tmpPlmnId) + bytePackedPlmnId = make([]uint8,3) + bytePackedPlmnId[0] = ((tmpPlmnId[1] & 0x0F) << 4) | (tmpPlmnId[0] & 0x0F) + bytePackedPlmnId[1] = ((tmpPlmnId[3] & 0x0F) << 4) | (tmpPlmnId[2] & 0x0F) + bytePackedPlmnId[2] = ((tmpPlmnId[5] & 0x0F) << 4) | (tmpPlmnId[4] & 0x0F) + //ml.MavLog(ml.INFO, lTransId, "\n bytePackedPlmnId " , bytePackedPlmnId) + return +} + diff --git a/control/rcService.go b/control/rcService.go index 005b742..0523562 100644 --- a/control/rcService.go +++ b/control/rcService.go @@ -6,8 +6,8 @@ import ( _ "strings" "time" - "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" "gerrit.o-ran-sc.org/r/ric-app/rc/protocol/grpc/ricmsgcommrpc/rc" + "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" "golang.org/x/net/context" ) @@ -26,12 +26,13 @@ func (aPtrSendMsgSrv *RCControlServer) SendRICControlReqServiceGrpc(aCtx context }() var lRicControlGrpcRsp rc.RicControlGrpcRsp - lRicControlGrpcRsp.RspCode = GRPC_ERROR + lRicControlGrpcRsp.RspCode = GRPC_ERROR lRicControlGrpcRsp.Description = "The client specified an invalid argument. or some parameters are missing " if aPtrRicControlGrpcReq == nil { xapp.Logger.Error("Received nil data from Send error rsp") } else { - if len(aPtrRicControlGrpcReq.E2NodeID) == 0 || len(aPtrRicControlGrpcReq.RICControlMessageData.TargetCellID) == 0 || len(aPtrRicControlGrpcReq.RICControlHeaderData.UEID) == 0 || len(aPtrRicControlGrpcReq.RanName) == 0 || len(aPtrRicControlGrpcReq.PlmnID) == 0{ + //if len(aPtrRicControlGrpcReq.E2NodeID) == 0 || len(aPtrRicControlGrpcReq.RICControlMessageData.TargetCellID) == 0 || len(aPtrRicControlGrpcReq.RICControlHeaderData.UEID.GnbUEID.Guami.PLMNIdentity) == 0 || len(aPtrRicControlGrpcReq.RICControlHeaderData.UEID.GnbUEID.Guami.AMFRegionID) == 0 || len(aPtrRicControlGrpcReq.RICControlHeaderData.UEID.GnbUEID.Guami.AMFSetID) == 0 || len(aPtrRicControlGrpcReq.RICControlHeaderData.UEID.GnbUEID.Guami.AMFPointer) == 0 || len(aPtrRicControlGrpcReq.RanName) == 0 || len(aPtrRicControlGrpcReq.PlmnID) == 0 { + if len(aPtrRicControlGrpcReq.E2NodeID) == 0 || len(aPtrRicControlGrpcReq.RICControlMessageData.TargetCellID) == 0 || len(aPtrRicControlGrpcReq.RICControlHeaderData.UEID.GnbUEID.Guami.PLMNIdentity) == 0 || len(aPtrRicControlGrpcReq.RICControlHeaderData.UEID.GnbUEID.Guami.AMFRegionID) == 0 || len(aPtrRicControlGrpcReq.RICControlHeaderData.UEID.GnbUEID.Guami.AMFSetID) == 0 || len(aPtrRicControlGrpcReq.RICControlHeaderData.UEID.GnbUEID.Guami.AMFPointer) == 0 || len(aPtrRicControlGrpcReq.RanName) == 0 || len(aPtrRicControlGrpcReq.PlmnID) == 0 { xapp.Logger.Error("Mandatory parameters are not received send Error rsp to client,no control Request will be initiated ") } else { xapp.Logger.Info("GRPC Control request validated, initiate Control Request to RAN") diff --git a/control/rcTypes.go b/control/rcTypes.go index 0204451..e558d02 100644 --- a/control/rcTypes.go +++ b/control/rcTypes.go @@ -1,9 +1,10 @@ package control import ( - "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" - rc "gerrit.o-ran-sc.org/r/ric-app/rc/protocol/grpc/ricmsgcommrpc/rc" "sync" + + rc "gerrit.o-ran-sc.org/r/ric-app/rc/protocol/grpc/ricmsgcommrpc/rc" + "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" ) const MAX_CONTROL_REQ_ATTEMPTS = 2 @@ -22,10 +23,10 @@ const GRPC_SUCCESS = 0 const GRPC_ERROR = -1 type Control struct { - eventRicControlReqTimePeriod int32 //maximum time for the RIC Subscription Request event creation procedure in the E2 Node + eventRicControlReqTimePeriod int32 //maximum time for the RIC Control Request creation procedure in the E2 Node rcChan chan *xapp.RMRParams //channel for receiving rmr message - eventRicControlReqExpiredMap map[int]bool //map for recording the RIC Subscription Request event creation procedure is expired or not - eventRicControlReqExpiredMu *sync.Mutex //mutex for eventCreateExpiredMap + eventRicControlReqExpiredMap map[int]bool //map for recording the RIC Control Request event creation procedure is expired or not + eventRicControlReqExpiredMu *sync.Mutex //mutex for eventCreateExpiredMap ricRequestInstanceID int } @@ -33,3 +34,58 @@ type RicHoControlMsg struct { RicControlGrpcReqPtr *rc.RicControlGrpcReq } + +type UEid struct { + amf_UE_NGAP_Id int64 + pLMNIdentitybuf string + aMFRegionIDbuf string + aMFSetIDbuf string + aMFPointerbuf string + F1AP_id []int64 + E1AP_id []int64 +} + +type ValueInt int64 + +type valueReal float64 + +type Null int32 + +type PrintableString OctetString + +type OctetString struct { + Buf []byte + Size int +} + +type BitString struct { + Buf []byte + Size int + BitsUnused int +} + +type ControlAckMsg struct { + RequestID int32 + InstanceId int32 + FuncID int32 + CallProcessID []byte + CallProcessIDLength int32 + ControlOutcome []byte + ControlOutcomeLength int32 +} + +type ControlOutcomeFormat1ItemType struct { + RanParameterID int64 + RANParameterValueType int + RANParameterValue interface{} +} + +type ControlOutcomeFormat1 struct { + ControlOutcomeFormat1Item []ControlOutcomeFormat1ItemType + ControlOutcomeFormat1ItemCount int +} + +type ControlOutcomeMsg struct { + ControlOutcomeType int32 + ControlOutcome interface{} +} diff --git a/e2ap/e2ap.asn b/e2ap/e2ap.asn new file mode 100644 index 0000000..45f0e7b --- /dev/null +++ b/e2ap/e2ap.asn @@ -0,0 +1,1593 @@ +-- ASN1START +-- ************************************************************** +-- +-- Common definitions +-- Derived from 3GPP 38.413 (NGAP) +-- +-- ************************************************************** + +E2AP-CommonDataTypes { +iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version2 (2) e2ap(1) e2ap-CommonDataTypes (3) } + +DEFINITIONS AUTOMATIC TAGS ::= + +BEGIN + +Criticality ::= ENUMERATED { reject, ignore, notify } + +Presence ::= ENUMERATED { optional, conditional, mandatory } + +ProcedureCode ::= INTEGER (0..255) + +ProtocolIE-ID ::= INTEGER (0..65535) + +TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessfull-outcome } + +-- ************************************************************** +-- +-- Elementary Procedures +-- +-- ************************************************************** +id-E2setup ProcedureCode ::= 1 +id-ErrorIndication ProcedureCode ::= 2 +id-Reset ProcedureCode ::= 3 +id-RICcontrol ProcedureCode ::= 4 +id-RICindication ProcedureCode ::= 5 +id-RICserviceQuery ProcedureCode ::= 6 +id-RICserviceUpdate ProcedureCode ::= 7 +id-RICsubscription ProcedureCode ::= 8 +id-RICsubscriptionDelete ProcedureCode ::= 9 +id-E2nodeConfigurationUpdate ProcedureCode ::= 10 +id-E2connectionUpdate ProcedureCode ::= 11 +id-RICsubscriptionDeleteRequired ProcedureCode ::= 12 +id-E2removal ProcedureCode ::= 13 + +-- ************************************************************** +-- +-- Extension constants +-- +-- ************************************************************** + +maxProtocolIEs INTEGER ::= 65535 + + +-- ************************************************************** +-- +-- Lists +-- +-- ************************************************************** +maxnoofErrors INTEGER ::= 256 +maxofE2nodeComponents INTEGER ::= 1024 +maxofRANfunctionID INTEGER ::= 256 +maxofRICactionID INTEGER ::= 16 +maxofTNLA INTEGER ::= 32 +maxofRICrequestID INTEGER ::= 4294967295 + + +-- ************************************************************** +-- +-- IEs +-- +-- ************************************************************** +id-Cause ProtocolIE-ID ::= 1 +id-CriticalityDiagnostics ProtocolIE-ID ::= 2 +id-GlobalE2node-ID ProtocolIE-ID ::= 3 +id-GlobalRIC-ID ProtocolIE-ID ::= 4 +id-RANfunctionID ProtocolIE-ID ::= 5 +id-RANfunctionID-Item ProtocolIE-ID ::= 6 +id-RANfunctionIEcause-Item ProtocolIE-ID ::= 7 +id-RANfunction-Item ProtocolIE-ID ::= 8 +id-RANfunctionsAccepted ProtocolIE-ID ::= 9 +id-RANfunctionsAdded ProtocolIE-ID ::= 10 +id-RANfunctionsDeleted ProtocolIE-ID ::= 11 +id-RANfunctionsModified ProtocolIE-ID ::= 12 +id-RANfunctionsRejected ProtocolIE-ID ::= 13 +id-RICaction-Admitted-Item ProtocolIE-ID ::= 14 +id-RICactionID ProtocolIE-ID ::= 15 +id-RICaction-NotAdmitted-Item ProtocolIE-ID ::= 16 +id-RICactions-Admitted ProtocolIE-ID ::= 17 +id-RICactions-NotAdmitted ProtocolIE-ID ::= 18 +id-RICaction-ToBeSetup-Item ProtocolIE-ID ::= 19 +id-RICcallProcessID ProtocolIE-ID ::= 20 +id-RICcontrolAckRequest ProtocolIE-ID ::= 21 +id-RICcontrolHeader ProtocolIE-ID ::= 22 +id-RICcontrolMessage ProtocolIE-ID ::= 23 +id-RICcontrolStatus ProtocolIE-ID ::= 24 +id-RICindicationHeader ProtocolIE-ID ::= 25 +id-RICindicationMessage ProtocolIE-ID ::= 26 +id-RICindicationSN ProtocolIE-ID ::= 27 +id-RICindicationType ProtocolIE-ID ::= 28 +id-RICrequestID ProtocolIE-ID ::= 29 +id-RICsubscriptionDetails ProtocolIE-ID ::= 30 +id-TimeToWait ProtocolIE-ID ::= 31 +id-RICcontrolOutcome ProtocolIE-ID ::= 32 +id-E2nodeComponentConfigUpdate ProtocolIE-ID ::= 33 +id-E2nodeComponentConfigUpdate-Item ProtocolIE-ID ::= 34 +id-E2nodeComponentConfigUpdateAck ProtocolIE-ID ::= 35 +id-E2nodeComponentConfigUpdateAck-Item ProtocolIE-ID ::= 36 +id-E2connectionSetup ProtocolIE-ID ::= 39 +id-E2connectionSetupFailed ProtocolIE-ID ::= 40 +id-E2connectionSetupFailed-Item ProtocolIE-ID ::= 41 +id-E2connectionFailed-Item ProtocolIE-ID ::= 42 +id-E2connectionUpdate-Item ProtocolIE-ID ::= 43 +id-E2connectionUpdateAdd ProtocolIE-ID ::= 44 +id-E2connectionUpdateModify ProtocolIE-ID ::= 45 +id-E2connectionUpdateRemove ProtocolIE-ID ::= 46 +id-E2connectionUpdateRemove-Item ProtocolIE-ID ::= 47 +id-TNLinformation ProtocolIE-ID ::= 48 +id-TransactionID ProtocolIE-ID ::= 49 +id-E2nodeComponentConfigAddition ProtocolIE-ID ::= 50 +id-E2nodeComponentConfigAddition-Item ProtocolIE-ID ::= 51 +id-E2nodeComponentConfigAdditionAck ProtocolIE-ID ::= 52 +id-E2nodeComponentConfigAdditionAck-Item ProtocolIE-ID ::= 53 +id-E2nodeComponentConfigRemoval ProtocolIE-ID ::= 54 +id-E2nodeComponentConfigRemoval-Item ProtocolIE-ID ::= 55 +id-E2nodeComponentConfigRemovalAck ProtocolIE-ID ::= 56 +id-E2nodeComponentConfigRemovalAck-Item ProtocolIE-ID ::= 57 +id-E2nodeTNLassociationRemoval ProtocolIE-ID ::= 58 +id-E2nodeTNLassociationRemoval-Item ProtocolIE-ID ::= 59 +id-RICsubscriptionToBeRemoved ProtocolIE-ID ::= 60 +id-RICsubscription-withCause-Item ProtocolIE-ID ::= 61 + +-- ************************************************************** +-- +-- Class Definition for Protocol IEs +-- +-- ************************************************************** + +E2AP-PROTOCOL-IES ::= CLASS { + &id ProtocolIE-ID UNIQUE, + &criticality Criticality, + &Value, + &presence Presence +} +WITH SYNTAX { + ID &id + CRITICALITY &criticality + TYPE &Value + PRESENCE &presence +} + +-- ************************************************************** +-- +-- Class Definition for Protocol IEs +-- +-- ************************************************************** + +E2AP-PROTOCOL-IES-PAIR ::= CLASS { + &id ProtocolIE-ID UNIQUE, + &firstCriticality Criticality, + &FirstValue, + &secondCriticality Criticality, + &SecondValue, + &presence Presence +} +WITH SYNTAX { + ID &id + FIRST CRITICALITY &firstCriticality + FIRST TYPE &FirstValue + SECOND CRITICALITY &secondCriticality + SECOND TYPE &SecondValue + PRESENCE &presence +} + + + + +-- ************************************************************** +-- +-- Container for Protocol IEs +-- +-- ************************************************************** + +ProtocolIE-Container {E2AP-PROTOCOL-IES : IEsSetParam} ::= + SEQUENCE (SIZE (0..maxProtocolIEs)) OF + ProtocolIE-Field {{IEsSetParam}} + +ProtocolIE-SingleContainer {E2AP-PROTOCOL-IES : IEsSetParam} ::= + ProtocolIE-Field {{IEsSetParam}} + +ProtocolIE-Field {E2AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE { + id E2AP-PROTOCOL-IES.&id ({IEsSetParam}), + criticality E2AP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}), + value E2AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id}) +} + +-- ************************************************************** +-- +-- Container for Protocol IE Pairs +-- +-- ************************************************************** + +ProtocolIE-ContainerPair {E2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= + SEQUENCE (SIZE (0..maxProtocolIEs)) OF + ProtocolIE-FieldPair {{IEsSetParam}} + +ProtocolIE-FieldPair {E2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE { + id E2AP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}), + firstCriticality E2AP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}), + firstValue E2AP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}), + secondCriticality E2AP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}), + secondValue E2AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id}) +} + +-- ************************************************************** +-- +-- Container Lists for Protocol IE Containers +-- +-- ************************************************************** + +ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, E2AP-PROTOCOL-IES : IEsSetParam} ::= + SEQUENCE (SIZE (lowerBound..upperBound)) OF + ProtocolIE-SingleContainer {{IEsSetParam}} + +ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, E2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= + SEQUENCE (SIZE (lowerBound..upperBound)) OF + ProtocolIE-ContainerPair {{IEsSetParam}} + +-- A + +-- ************************************************************** +-- [New for E2AP v02.00] copied from 3GPP 38.413 (NGAP) IEs +-- ************************************************************** +AMFName ::= PrintableString (SIZE(1..150, ...)) + +-- B +-- C +Cause ::= CHOICE { + ricRequest CauseRICrequest, + ricService CauseRICservice, + e2Node CauseE2node, + transport CauseTransport, + protocol CauseProtocol, + misc CauseMisc, + ... +} + +CauseE2node ::= ENUMERATED { + e2node-component-unknown, + ... +} + +CauseMisc ::= ENUMERATED { + control-processing-overload, + hardware-failure, + om-intervention, + unspecified, + ... +} + +CauseProtocol ::= ENUMERATED { + transfer-syntax-error, + abstract-syntax-error-reject, + abstract-syntax-error-ignore-and-notify, + message-not-compatible-with-receiver-state, + semantic-error, + abstract-syntax-error-falsely-constructed-message, + unspecified, + ... +} + +CauseRICrequest ::= ENUMERATED { + ran-function-id-invalid, + action-not-supported, + excessive-actions, + duplicate-action, + duplicate-event-trigger, + function-resource-limit, + request-id-unknown, + inconsistent-action-subsequent-action-sequence, + control-message-invalid, + ric-call-process-id-invalid, + control-timer-expired, + control-failed-to-execute, + system-not-ready, + unspecified, + ... +} + +CauseRICservice ::= ENUMERATED{ + ran-function-not-supported, + excessive-functions, + ric-resource-limit, + ... +} +CauseTransport ::= ENUMERATED { + unspecified, + transport-resource-unavailable, + ... +} + +-- ************************************************************** +-- copied from 3GPP 38.413 (NGAP) IEs +-- note: ie-Extensions removed +-- ************************************************************** +CriticalityDiagnostics ::= SEQUENCE { + procedureCode ProcedureCode OPTIONAL, + triggeringMessage TriggeringMessage OPTIONAL, + procedureCriticality Criticality OPTIONAL, + ricRequestorID RICrequestID OPTIONAL, + iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL, + ... +} + +CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE(1..maxnoofErrors)) OF CriticalityDiagnostics-IE-Item + +CriticalityDiagnostics-IE-Item ::= SEQUENCE { + iECriticality Criticality, + iE-ID ProtocolIE-ID, + typeOfError TypeOfError, + ... +} + +-- D +-- E + +-- Following IE used to carry 3GPP defined SETUP and RAN Configuration messages defined in F1AP, E1AP, XnAP, etc. +E2nodeComponentConfiguration ::= SEQUENCE{ + e2nodeComponentRequestPart OCTET STRING, + e2nodeComponentResponsePart OCTET STRING, + ... +} + +E2nodeComponentConfigurationAck ::= SEQUENCE{ + updateOutcome ENUMERATED {success, failure, ...}, + failureCause Cause OPTIONAL, + ... +} + +E2nodeComponentInterfaceType ::= ENUMERATED {ng, xn, e1, f1, w1, s1, x2,...} + +E2nodeComponentID ::= CHOICE{ + e2nodeComponentInterfaceTypeNG E2nodeComponentInterfaceNG, + e2nodeComponentInterfaceTypeXn E2nodeComponentInterfaceXn, + e2nodeComponentInterfaceTypeE1 E2nodeComponentInterfaceE1, + e2nodeComponentInterfaceTypeF1 E2nodeComponentInterfaceF1, + e2nodeComponentInterfaceTypeW1 E2nodeComponentInterfaceW1, + e2nodeComponentInterfaceTypeS1 E2nodeComponentInterfaceS1, + e2nodeComponentInterfaceTypeX2 E2nodeComponentInterfaceX2, + ... +} + +E2nodeComponentInterfaceE1 ::= SEQUENCE{ + gNB-CU-CP-ID GNB-CU-UP-ID, + ... +} + +E2nodeComponentInterfaceF1 ::= SEQUENCE{ + gNB-DU-ID GNB-DU-ID, + ... +} + +E2nodeComponentInterfaceNG ::= SEQUENCE{ + amf-name AMFName, + ... +} + +E2nodeComponentInterfaceS1 ::= SEQUENCE{ + mme-name MMEname, + ... +} + +E2nodeComponentInterfaceX2 ::= SEQUENCE{ + global-eNB-ID GlobalENB-ID OPTIONAL, + global-en-gNB-ID GlobalenGNB-ID OPTIONAL, + ... +} + +E2nodeComponentInterfaceXn ::= SEQUENCE{ + global-NG-RAN-Node-ID GlobalNG-RANNode-ID, + ... +} + +E2nodeComponentInterfaceW1 ::= SEQUENCE{ + ng-eNB-DU-ID NGENB-DU-ID, + ... +} + +-- ************************************************************** +-- copied from 3GPP 36.423 (X2AP) IEs +-- note: ie-Extensions removed +-- ************************************************************** +ENB-ID ::= CHOICE { + macro-eNB-ID BIT STRING (SIZE (20)), + home-eNB-ID BIT STRING (SIZE (28)), + ... , + short-Macro-eNB-ID BIT STRING (SIZE(18)), + long-Macro-eNB-ID BIT STRING (SIZE(21)) +} +-- ************************************************************** +-- copied from 3GPP 38.423 (XnAP) IEs +-- ************************************************************** +ENB-ID-Choice ::= CHOICE { + enb-ID-macro BIT STRING (SIZE(20)), + enb-ID-shortmacro BIT STRING (SIZE(18)), + enb-ID-longmacro BIT STRING (SIZE(21)), + ... +} + +-- ************************************************************** +-- copied from 3GPP 36.423 (X2AP) IEs +-- note: ie-Extensions removed +-- Note: to avoid duplicate names with XnAP, GNB-ID renamed ENGNB-ID, GlobalGNB-ID renamed GlobalenGNB-ID +-- ************************************************************** +ENGNB-ID ::= CHOICE { + gNB-ID BIT STRING (SIZE (22..32)), + ... +} + +-- F +-- G +GlobalE2node-ID ::= CHOICE{ + gNB GlobalE2node-gNB-ID, + en-gNB GlobalE2node-en-gNB-ID, + ng-eNB GlobalE2node-ng-eNB-ID, + eNB GlobalE2node-eNB-ID, + ... +} + +GlobalE2node-en-gNB-ID ::= SEQUENCE{ + global-en-gNB-ID GlobalenGNB-ID, + en-gNB-CU-UP-ID GNB-CU-UP-ID OPTIONAL, + en-gNB-DU-ID GNB-DU-ID OPTIONAL, + ... +} +GlobalE2node-eNB-ID ::= SEQUENCE{ + global-eNB-ID GlobalENB-ID, + ... +} +GlobalE2node-gNB-ID ::= SEQUENCE{ + global-gNB-ID GlobalgNB-ID, + global-en-gNB-ID GlobalenGNB-ID OPTIONAL, + gNB-CU-UP-ID GNB-CU-UP-ID OPTIONAL, + gNB-DU-ID GNB-DU-ID OPTIONAL, + ... +} +GlobalE2node-ng-eNB-ID ::= SEQUENCE{ + global-ng-eNB-ID GlobalngeNB-ID, + global-eNB-ID GlobalENB-ID OPTIONAL, + ngENB-DU-ID NGENB-DU-ID OPTIONAL, + ... +} +-- ************************************************************** +-- copied from 3GPP 36.423 (X2AP) IEs +-- note: ie-Extensions removed +-- ************************************************************** + +GlobalENB-ID ::= SEQUENCE { + pLMN-Identity PLMN-Identity, + eNB-ID ENB-ID, + ... +} +-- ************************************************************** +-- copied from 3GPP 36.423 (X2AP) IEs +-- Note: to avoid duplicate names with XnAP, GNB-ID renamed ENGNB-ID, GlobalGNB-ID renamed GlobalenGNB-ID +-- ************************************************************** +GlobalenGNB-ID ::= SEQUENCE { + pLMN-Identity PLMN-Identity, + gNB-ID ENGNB-ID, + ... +} +-- ************************************************************** +-- copied from 3GPP 38.423 (XnAP) IEs +-- ************************************************************** +GlobalgNB-ID ::= SEQUENCE { + plmn-id PLMN-Identity, + gnb-id GNB-ID-Choice, + ... +} + + +-- ************************************************************** +-- copied from 3GPP 38.423 (XnAP) IEs +-- ************************************************************** +GlobalngeNB-ID ::= SEQUENCE { + plmn-id PLMN-Identity, + enb-id ENB-ID-Choice, + ... +} + +-- ************************************************************** +-- [NEW for E2AP v02.00] copied from 3GPP 38.423 (XnAP) IEs +-- Note: extension field removed +-- ************************************************************** + +GlobalNG-RANNode-ID ::= CHOICE { + gNB GlobalgNB-ID, + ng-eNB GlobalngeNB-ID, + ... +} + +GlobalRIC-ID ::= SEQUENCE{ + pLMN-Identity PLMN-Identity, + ric-ID BIT STRING (SIZE (20)), + ... +} + +-- ************************************************************** +-- copied from 3GPP 38.463 (E1AP) IEs +-- ************************************************************** +GNB-CU-UP-ID::= INTEGER (0..68719476735) +GNB-DU-ID::= INTEGER (0..68719476735) + +-- ************************************************************** +-- copied from 3GPP 38.423 (XnAP) IEs +-- ************************************************************** +GNB-ID-Choice ::= CHOICE { + gnb-ID BIT STRING (SIZE(22..32)), + ... +} +-- H +-- I +-- J +-- K +-- L +-- M + +-- ************************************************************** +-- [New for E2AP v02.00] copied from 3GPP 36.413 (S1AP) IEs +-- ************************************************************** +MMEname ::= PrintableString (SIZE (1..150,...)) + +-- N + +-- ************************************************************** +-- copied from 3GPP 37.473 (W1AP) IEs +-- ************************************************************** +NGENB-DU-ID ::= INTEGER (0..68719476735) + + +-- O +-- P +-- ************************************************************** +-- copied from 3GPP 36.423 (X2AP) IEs +-- ************************************************************** +PLMN-Identity ::= OCTET STRING (SIZE(3)) + +-- Q +-- R +-- ************************************************************** +-- Following IE defined in E2SM +-- ************************************************************** +RANfunctionDefinition ::= OCTET STRING + +RANfunctionID ::= INTEGER (0..4095) + +RANfunctionOID ::= PrintableString(SIZE(1..1000,...)) + +RANfunctionRevision ::= INTEGER (0..4095) + +-- ************************************************************** +-- Following IE defined in E2SM +-- ************************************************************** +RICactionDefinition ::= OCTET STRING + +RICactionID ::= INTEGER (0..255) + +RICactionType ::= ENUMERATED{ + report, + insert, + policy, + ... +} + +-- ************************************************************** +-- Following IE defined in E2SM +-- ************************************************************** +RICcallProcessID ::= OCTET STRING + +RICcontrolAckRequest ::= ENUMERATED{ + noAck, + ack, + ... +} + +-- ************************************************************** +-- Following IE defined in E2SM +-- ************************************************************** +RICcontrolHeader ::= OCTET STRING + +-- ************************************************************** +-- Following IE defined in E2SM +-- ************************************************************** +RICcontrolMessage ::= OCTET STRING + +-- ************************************************************** +-- Following IE defined in E2SM +-- ************************************************************** +RICcontrolOutcome ::= OCTET STRING + +-- ************************************************************** +-- Following IE defined in E2SM +-- ************************************************************** +RICeventTriggerDefinition ::= OCTET STRING + +-- ************************************************************** +-- Following IE defined in E2SM +-- ************************************************************** +RICindicationHeader ::= OCTET STRING + +-- ************************************************************** +-- Following IE defined in E2SM +-- ************************************************************** +RICindicationMessage ::= OCTET STRING + +RICindicationSN ::= INTEGER (0..65535) + +RICindicationType ::= ENUMERATED{ + report, + insert, + ... +} + +RICrequestID ::= SEQUENCE { + ricRequestorID INTEGER (0..65535), + ricInstanceID INTEGER (0..65535), + ... +} + +RICsubsequentAction ::=SEQUENCE{ + ricSubsequentActionType RICsubsequentActionType, + ricTimeToWait RICtimeToWait, + ... +} + +RICsubsequentActionType ::= ENUMERATED{ + continue, + wait, + ... +} + +RICtimeToWait ::= ENUMERATED{ + w1ms, + w2ms, + w5ms, + w10ms, + w20ms, + w30ms, + w40ms, + w50ms, + w100ms, + w200ms, + w500ms, + w1s, + w2s, + w5s, + w10s, + w20s, + w60s, + ... +} +-- S +-- T +-- ************************************************************** +-- copied from 3GPP 38.413 (NGAP) IEs +-- ************************************************************** +TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...} + + +TNLinformation ::= SEQUENCE{ + tnlAddress BIT STRING (SIZE(1..160,...)), + tnlPort BIT STRING (SIZE(16)) OPTIONAL, + ... +} + +TNLusage ::= ENUMERATED{ric-service, support-function, both, ...} + +TransactionID ::= INTEGER (0..255,...) + +-- ************************************************************** +-- copied from 3GPP 38.413 (NGAP) IEs +-- ************************************************************** +TypeOfError ::= ENUMERATED { + not-understood, + missing, + ... +} + +-- U +-- V +-- W +-- X +-- Y +-- Z + +-- ************************************************************** +-- +-- MESSAGES FOR NEAR-RT RIC FUNCTIONAL PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- RIC Subscription Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- RIC SUBSCRIPTION REQUEST +-- +-- ************************************************************** +RICsubscriptionRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICsubscriptionRequest-IEs}}, + ... +} + +RICsubscriptionRequest-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory}| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory}| + { ID id-RICsubscriptionDetails CRITICALITY reject TYPE RICsubscriptionDetails PRESENCE mandatory}, + ... +} + + +RICsubscriptionDetails ::= SEQUENCE { + ricEventTriggerDefinition RICeventTriggerDefinition, + ricAction-ToBeSetup-List RICactions-ToBeSetup-List, + ... +} + +RICactions-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxofRICactionID)) OF ProtocolIE-SingleContainer { {RICaction-ToBeSetup-ItemIEs} } + +RICaction-ToBeSetup-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-RICaction-ToBeSetup-Item CRITICALITY ignore TYPE RICaction-ToBeSetup-Item PRESENCE mandatory }, + ... +} + +RICaction-ToBeSetup-Item ::= SEQUENCE { + ricActionID RICactionID, + ricActionType RICactionType, + ricActionDefinition RICactionDefinition OPTIONAL, + ricSubsequentAction RICsubsequentAction OPTIONAL, + ... +} + +-- ************************************************************** +-- +-- RIC SUBSCRIPTION RESPONSE +-- +-- ************************************************************** +RICsubscriptionResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container{{RICsubscriptionResponse-IEs}}, + ... +} + +RICsubscriptionResponse-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory } | + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory } | + { ID id-RICactions-Admitted CRITICALITY reject TYPE RICaction-Admitted-List PRESENCE mandatory } | + { ID id-RICactions-NotAdmitted CRITICALITY reject TYPE RICaction-NotAdmitted-List PRESENCE optional }, + ... +} + + + +RICaction-Admitted-List ::= SEQUENCE (SIZE(1..maxofRICactionID)) OF ProtocolIE-SingleContainer{{RICaction-Admitted-ItemIEs}} + +RICaction-Admitted-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-RICaction-Admitted-Item CRITICALITY ignore TYPE RICaction-Admitted-Item PRESENCE mandatory }, + ... +} + +RICaction-Admitted-Item ::= SEQUENCE { + ricActionID RICactionID, + ... +} + +RICaction-NotAdmitted-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainer { {RICaction-NotAdmitted-ItemIEs} } + +RICaction-NotAdmitted-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-RICaction-NotAdmitted-Item CRITICALITY ignore TYPE RICaction-NotAdmitted-Item PRESENCE mandatory }, + ... +} + +RICaction-NotAdmitted-Item ::= SEQUENCE { + ricActionID RICactionID, + cause Cause, + ... +} + +-- ************************************************************** +-- +-- RIC SUBSCRIPTION FAILURE +-- +-- ************************************************************** +RICsubscriptionFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICsubscriptionFailure-IEs}}, + ... +} + +RICsubscriptionFailure-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }| + { ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RIC Subscription Delete Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- RIC SUBSCRIPTION DELETE REQUEST +-- +-- ************************************************************** +RICsubscriptionDeleteRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteRequest-IEs}}, + ... +} + +RICsubscriptionDeleteRequest-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- RIC SUBSCRIPTION DELETE RESPONSE +-- +-- ************************************************************** +RICsubscriptionDeleteResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteResponse-IEs}}, + ... +} + +RICsubscriptionDeleteResponse-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }, + ... +} +-- ************************************************************** +-- +-- RIC SUBSCRIPTION DELETE FAILURE +-- +-- ************************************************************** +RICsubscriptionDeleteFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteFailure-IEs}}, + ... +} + +RICsubscriptionDeleteFailure-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RIC Subscription Delete Required Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- RIC SUBSCRIPTION DELETE REQUIRED +-- +-- ************************************************************** + +RICsubscriptionDeleteRequired ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICsubscriptionDeleteRequired-IEs}}, + ... +} + +RICsubscriptionDeleteRequired-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICsubscriptionToBeRemoved CRITICALITY ignore TYPE RICsubscription-List-withCause PRESENCE mandatory }, + ... +} + +RICsubscription-List-withCause ::= SEQUENCE (SIZE(1..maxofRICrequestID)) OF ProtocolIE-SingleContainer { {RICsubscription-withCause-ItemIEs} } + +RICsubscription-withCause-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-RICsubscription-withCause-Item CRITICALITY ignore TYPE RICsubscription-withCause-Item PRESENCE mandatory }, + ... +} + +RICsubscription-withCause-Item ::= SEQUENCE { + ricRequestID RICrequestID, + ranFunctionID RANfunctionID, + cause Cause, + ... +} + +-- ************************************************************** +-- +-- RIC Indication Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- RIC INDICATION +-- +-- ************************************************************** +RICindication ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICindication-IEs}}, + ... +} + +RICindication-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }| + { ID id-RICactionID CRITICALITY reject TYPE RICactionID PRESENCE mandatory }| + { ID id-RICindicationSN CRITICALITY reject TYPE RICindicationSN PRESENCE optional }| + { ID id-RICindicationType CRITICALITY reject TYPE RICindicationType PRESENCE mandatory }| + { ID id-RICindicationHeader CRITICALITY reject TYPE RICindicationHeader PRESENCE mandatory }| + { ID id-RICindicationMessage CRITICALITY reject TYPE RICindicationMessage PRESENCE mandatory }| + { ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- RIC Control Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- RIC CONTROL REQUEST +-- +-- ************************************************************** +RICcontrolRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICcontrolRequest-IEs}}, + ... +} + +RICcontrolRequest-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }| + { ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }| + { ID id-RICcontrolHeader CRITICALITY reject TYPE RICcontrolHeader PRESENCE mandatory }| + { ID id-RICcontrolMessage CRITICALITY reject TYPE RICcontrolMessage PRESENCE mandatory }| + { ID id-RICcontrolAckRequest CRITICALITY reject TYPE RICcontrolAckRequest PRESENCE optional }, + ... +} +-- ************************************************************** +-- +-- RIC CONTROL ACKNOWLEDGE +-- +-- ************************************************************** +RICcontrolAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICcontrolAcknowledge-IEs}}, + ... +} + +RICcontrolAcknowledge-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }| + { ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }| + { ID id-RICcontrolOutcome CRITICALITY reject TYPE RICcontrolOutcome PRESENCE optional }, + ... +} +-- ************************************************************** +-- +-- RIC CONTROL FAILURE +-- +-- ************************************************************** +RICcontrolFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICcontrolFailure-IEs}}, + ... +} + +RICcontrolFailure-IEs E2AP-PROTOCOL-IES ::= { + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE mandatory }| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE mandatory }| + { ID id-RICcallProcessID CRITICALITY reject TYPE RICcallProcessID PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-RICcontrolOutcome CRITICALITY reject TYPE RICcontrolOutcome PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- MESSAGES FOR GLOBAL PROCEDURES +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- Error Indication Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- ERROR INDICATION +-- +-- ************************************************************** +ErrorIndication ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{ErrorIndication-IEs}}, + ... +} + +ErrorIndication-IEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE optional }| + { ID id-RICrequestID CRITICALITY reject TYPE RICrequestID PRESENCE optional }| + { ID id-RANfunctionID CRITICALITY reject TYPE RANfunctionID PRESENCE optional }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- E2 Setup Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- E2 SETUP REQUEST +-- +-- ************************************************************** + +-- E2 Setup Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- E2 SETUP REQUEST +-- +-- ************************************************************** + +E2setupRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {E2setupRequestIEs} }, + ... +} + +E2setupRequestIEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-GlobalE2node-ID CRITICALITY reject TYPE GlobalE2node-ID PRESENCE mandatory }| + { ID id-RANfunctionsAdded CRITICALITY reject TYPE RANfunctions-List PRESENCE mandatory }| + { ID id-E2nodeComponentConfigAddition CRITICALITY reject TYPE E2nodeComponentConfigAddition-List PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- E2 SETUP RESPONSE +-- +-- ************************************************************** + +E2setupResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {E2setupResponseIEs} }, + ... +} + +E2setupResponseIEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-GlobalRIC-ID CRITICALITY reject TYPE GlobalRIC-ID PRESENCE mandatory }| + { ID id-RANfunctionsAccepted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional }| + { ID id-RANfunctionsRejected CRITICALITY reject TYPE RANfunctionsIDcause-List PRESENCE optional }| + { ID id-E2nodeComponentConfigAdditionAck CRITICALITY reject TYPE E2nodeComponentConfigAdditionAck-List PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- E2 SETUP FAILURE +-- +-- ************************************************************** + +E2setupFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {E2setupFailureIEs} }, + ... +} + +E2setupFailureIEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }| + { ID id-TNLinformation CRITICALITY ignore TYPE TNLinformation PRESENCE optional }, + ... +} + + +-- ************************************************************** +-- +-- E2 Node Configuration Update Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- E2 NODE CONFIGURATION UPDATE +-- +-- ************************************************************** +E2nodeConfigurationUpdate ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{E2nodeConfigurationUpdate-IEs}}, + ... +} + +E2nodeConfigurationUpdate-IEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-GlobalE2node-ID CRITICALITY reject TYPE GlobalE2node-ID PRESENCE optional }| + { ID id-E2nodeComponentConfigAddition CRITICALITY reject TYPE E2nodeComponentConfigAddition-List PRESENCE optional }| + { ID id-E2nodeComponentConfigUpdate CRITICALITY reject TYPE E2nodeComponentConfigUpdate-List PRESENCE optional }| + { ID id-E2nodeComponentConfigRemoval CRITICALITY reject TYPE E2nodeComponentConfigRemoval-List PRESENCE optional }| + { ID id-E2nodeTNLassociationRemoval CRITICALITY reject TYPE E2nodeTNLassociationRemoval-List PRESENCE optional }, + ... +} + +E2nodeComponentConfigAddition-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigAddition-ItemIEs} } + +E2nodeComponentConfigAddition-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-E2nodeComponentConfigAddition-Item CRITICALITY reject TYPE E2nodeComponentConfigAddition-Item PRESENCE mandatory }, + ... +} + +E2nodeComponentConfigAddition-Item ::= SEQUENCE { + e2nodeComponentInterfaceType E2nodeComponentInterfaceType, + e2nodeComponentID E2nodeComponentID, + e2nodeComponentConfiguration E2nodeComponentConfiguration, + ... +} + +E2nodeComponentConfigUpdate-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigUpdate-ItemIEs} } + +E2nodeComponentConfigUpdate-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-E2nodeComponentConfigUpdate-Item CRITICALITY reject TYPE E2nodeComponentConfigUpdate-Item PRESENCE mandatory }, + ... +} + +E2nodeComponentConfigUpdate-Item ::= SEQUENCE { + e2nodeComponentInterfaceType E2nodeComponentInterfaceType, + e2nodeComponentID E2nodeComponentID, + e2nodeComponentConfiguration E2nodeComponentConfiguration, + ... +} + +E2nodeComponentConfigRemoval-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigRemoval-ItemIEs} } + +E2nodeComponentConfigRemoval-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-E2nodeComponentConfigRemoval-Item CRITICALITY reject TYPE E2nodeComponentConfigRemoval-Item PRESENCE mandatory }, + ... +} + +E2nodeComponentConfigRemoval-Item ::= SEQUENCE { + e2nodeComponentInterfaceType E2nodeComponentInterfaceType, + e2nodeComponentID E2nodeComponentID, + ... +} + +E2nodeTNLassociationRemoval-List ::= SEQUENCE (SIZE(1..maxofTNLA)) OF ProtocolIE-SingleContainer { {E2nodeTNLassociationRemoval-ItemIEs} } + +E2nodeTNLassociationRemoval-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-E2nodeTNLassociationRemoval-Item CRITICALITY reject TYPE E2nodeTNLassociationRemoval-Item PRESENCE mandatory }, + ... +} + +E2nodeTNLassociationRemoval-Item ::= SEQUENCE { + tnlInformation TNLinformation, + tnlInformationRIC TNLinformation, + ... +} + +-- ************************************************************** +-- +-- E2 NODE CONFIGURATION UPDATE ACKNOWLEDGE +-- +-- ************************************************************** +E2nodeConfigurationUpdateAcknowledge ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{E2nodeConfigurationUpdateAcknowledge-IEs}}, + ... +} + +E2nodeConfigurationUpdateAcknowledge-IEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-E2nodeComponentConfigAdditionAck CRITICALITY reject TYPE E2nodeComponentConfigAdditionAck-List PRESENCE optional }| + { ID id-E2nodeComponentConfigUpdateAck CRITICALITY reject TYPE E2nodeComponentConfigUpdateAck-List PRESENCE optional }| + { ID id-E2nodeComponentConfigRemovalAck CRITICALITY reject TYPE E2nodeComponentConfigRemovalAck-List PRESENCE optional }, + ... +} + +E2nodeComponentConfigAdditionAck-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigAdditionAck-ItemIEs} } + +E2nodeComponentConfigAdditionAck-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-E2nodeComponentConfigAdditionAck-Item CRITICALITY reject TYPE E2nodeComponentConfigAdditionAck-Item PRESENCE mandatory }, + ... +} + +E2nodeComponentConfigAdditionAck-Item ::= SEQUENCE { + e2nodeComponentInterfaceType E2nodeComponentInterfaceType, + e2nodeComponentID E2nodeComponentID, + e2nodeComponentConfigurationAck E2nodeComponentConfigurationAck, + ... +} + +E2nodeComponentConfigUpdateAck-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigUpdateAck-ItemIEs} } + +E2nodeComponentConfigUpdateAck-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-E2nodeComponentConfigUpdateAck-Item CRITICALITY reject TYPE E2nodeComponentConfigUpdateAck-Item PRESENCE mandatory }, + ... +} + +E2nodeComponentConfigUpdateAck-Item ::= SEQUENCE { + e2nodeComponentInterfaceType E2nodeComponentInterfaceType, + e2nodeComponentID E2nodeComponentID, + e2nodeComponentConfigurationAck E2nodeComponentConfigurationAck, + ... +} + +E2nodeComponentConfigRemovalAck-List ::= SEQUENCE (SIZE(1..maxofE2nodeComponents)) OF ProtocolIE-SingleContainer { {E2nodeComponentConfigRemovalAck-ItemIEs} } + +E2nodeComponentConfigRemovalAck-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-E2nodeComponentConfigRemovalAck-Item CRITICALITY reject TYPE E2nodeComponentConfigRemovalAck-Item PRESENCE mandatory }, + ... +} + +E2nodeComponentConfigRemovalAck-Item ::= SEQUENCE { + e2nodeComponentInterfaceType E2nodeComponentInterfaceType, + e2nodeComponentID E2nodeComponentID, + e2nodeComponentConfigurationAck E2nodeComponentConfigurationAck, + ... +} + +-- ************************************************************** +-- +-- E2 NODE CONFIGURATION UPDATE FAILURE +-- +-- ************************************************************** +E2nodeConfigurationUpdateFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{E2nodeConfigurationUpdateFailure-IEs}}, + ... +} + +E2nodeConfigurationUpdateFailure-IEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-TimeToWait CRITICALITY ignore TYPE TimeToWait PRESENCE optional }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Reset Elementary Procedure +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- RESET REQUEST +-- +-- ************************************************************** + +ResetRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {ResetRequestIEs} }, + ... +} + +ResetRequestIEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- RESET RESPONSE +-- +-- ************************************************************** + +ResetResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {ResetResponseIEs} }, + ... +} + +ResetResponseIEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +RANfunctions-List ::= SEQUENCE (SIZE(1..maxofRANfunctionID)) OF ProtocolIE-SingleContainer { {RANfunction-ItemIEs} } + +RANfunction-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-RANfunction-Item CRITICALITY ignore TYPE RANfunction-Item PRESENCE mandatory }, + ... +} + + +RANfunction-Item ::= SEQUENCE { + ranFunctionID RANfunctionID, + ranFunctionDefinition RANfunctionDefinition, + ranFunctionRevision RANfunctionRevision, + ranFunctionOID RANfunctionOID, + ... +} + +RANfunctionsID-List ::= SEQUENCE (SIZE(1..maxofRANfunctionID)) OF ProtocolIE-SingleContainer{{RANfunctionID-ItemIEs}} + +RANfunctionID-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-RANfunctionID-Item CRITICALITY ignore TYPE RANfunctionID-Item PRESENCE mandatory }, + ... +} + +RANfunctionID-Item ::= SEQUENCE { + ranFunctionID RANfunctionID, + ranFunctionRevision RANfunctionRevision, + ... +} + +-- ************************************************************** +-- +-- RIC SERVICE UPDATE ACKNOWLEDGE +-- +-- ************************************************************** + +RANfunctionsIDcause-List ::= SEQUENCE (SIZE(1..maxofRANfunctionID)) OF ProtocolIE-SingleContainer { {RANfunctionIDcause-ItemIEs} } + +RANfunctionIDcause-ItemIEs E2AP-PROTOCOL-IES ::= { + { ID id-RANfunctionIEcause-Item CRITICALITY ignore TYPE RANfunctionIDcause-Item PRESENCE mandatory }, + ... +} + + +RANfunctionIDcause-Item ::= SEQUENCE { + ranFunctionID RANfunctionID, + cause Cause, + ... +} + + +-- ************************************************************** +-- +-- RIC SERVICE UPDATE FAILURE +-- +-- ************************************************************** + +-- ************************************************************** +-- +-- RIC Service Query Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- RIC SERVICE QUERY +-- +-- ************************************************************** +RICserviceQuery ::= SEQUENCE { + protocolIEs ProtocolIE-Container {{RICserviceQuery-IEs}}, + ... +} + +RICserviceQuery-IEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-RANfunctionsAccepted CRITICALITY reject TYPE RANfunctionsID-List PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- E2 Removal Elementary Procedure +-- +-- ************************************************************** +-- ************************************************************** +-- +-- E2 REMOVAL REQUEST +-- +-- ************************************************************** + +E2RemovalRequest ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {E2RemovalRequestIEs} }, + ... +} + +E2RemovalRequestIEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }, + ... +} + +-- ************************************************************** +-- +-- E2 REMOVAL RESPONSE +-- +-- ************************************************************** + +E2RemovalResponse ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {E2RemovalResponseIEs} }, + ... +} + +E2RemovalResponseIEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- E2 REMOVAL FAILURE +-- +-- ************************************************************** + +E2RemovalFailure ::= SEQUENCE { + protocolIEs ProtocolIE-Container { {E2RemovalFailureIEs} }, + ... +} + +E2RemovalFailureIEs E2AP-PROTOCOL-IES ::= { + { ID id-TransactionID CRITICALITY reject TYPE TransactionID PRESENCE mandatory }| + { ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory }| + { ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional }, + ... +} + +-- ************************************************************** +-- +-- Interface Elementary Procedure Class +-- +-- ************************************************************** + +E2AP-ELEMENTARY-PROCEDURE ::= CLASS { + &InitiatingMessage , + &SuccessfulOutcome OPTIONAL , + &UnsuccessfulOutcome OPTIONAL , + &procedureCode ProcedureCode UNIQUE , + &criticality Criticality DEFAULT ignore +} + +WITH SYNTAX { + INITIATING MESSAGE &InitiatingMessage + [SUCCESSFUL OUTCOME &SuccessfulOutcome] + [UNSUCCESSFUL OUTCOME &UnsuccessfulOutcome] + PROCEDURE CODE &procedureCode + [CRITICALITY &criticality] +} + +-- ************************************************************** +-- +-- Interface PDU Definition +-- +-- ************************************************************** + +E2AP-PDU ::= CHOICE { + initiatingMessage InitiatingMessage, + successfulOutcome SuccessfulOutcome, + unsuccessfulOutcome UnsuccessfulOutcome, + ... +} + +InitiatingMessage ::= SEQUENCE { + procedureCode E2AP-ELEMENTARY-PROCEDURE.&procedureCode ({E2AP-ELEMENTARY-PROCEDURES}), + criticality E2AP-ELEMENTARY-PROCEDURE.&criticality ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}), + value E2AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}) +} + +SuccessfulOutcome ::= SEQUENCE { + procedureCode E2AP-ELEMENTARY-PROCEDURE.&procedureCode ({E2AP-ELEMENTARY-PROCEDURES}), + criticality E2AP-ELEMENTARY-PROCEDURE.&criticality ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}), + value E2AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}) +} + +UnsuccessfulOutcome ::= SEQUENCE { + procedureCode E2AP-ELEMENTARY-PROCEDURE.&procedureCode ({E2AP-ELEMENTARY-PROCEDURES}), + criticality E2AP-ELEMENTARY-PROCEDURE.&criticality ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}), + value E2AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}) +} + +-- ************************************************************** +-- +-- Interface Elementary Procedure List +-- +-- ************************************************************** + +E2AP-ELEMENTARY-PROCEDURES E2AP-ELEMENTARY-PROCEDURE ::= { + E2AP-ELEMENTARY-PROCEDURES-CLASS-1 | + E2AP-ELEMENTARY-PROCEDURES-CLASS-2, + ... +} + +E2AP-ELEMENTARY-PROCEDURES-CLASS-1 E2AP-ELEMENTARY-PROCEDURE ::= { + ricSubscription | + ricSubscriptionDelete | + ricControl | + e2setup | + e2nodeConfigurationUpdate | + reset | + e2removal, + ... +} + +E2AP-ELEMENTARY-PROCEDURES-CLASS-2 E2AP-ELEMENTARY-PROCEDURE ::= { + ricIndication | + ricServiceQuery | + errorIndication | + ricSubscriptionDeleteRequired, + ... +} + +-- ************************************************************** +-- +-- Interface Elementary Procedures +-- +-- ************************************************************** + +-- New for v01.01 + +e2nodeConfigurationUpdate E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE E2nodeConfigurationUpdate + SUCCESSFUL OUTCOME E2nodeConfigurationUpdateAcknowledge + UNSUCCESSFUL OUTCOME E2nodeConfigurationUpdateFailure + PROCEDURE CODE id-E2nodeConfigurationUpdate + CRITICALITY reject +} + +-- New for v02.01 +e2removal E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE E2RemovalRequest + SUCCESSFUL OUTCOME E2RemovalResponse + UNSUCCESSFUL OUTCOME E2RemovalFailure + PROCEDURE CODE id-E2removal + CRITICALITY reject +} + +e2setup E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE E2setupRequest + SUCCESSFUL OUTCOME E2setupResponse + UNSUCCESSFUL OUTCOME E2setupFailure + PROCEDURE CODE id-E2setup + CRITICALITY reject +} + +errorIndication E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ErrorIndication + PROCEDURE CODE id-ErrorIndication + CRITICALITY ignore +} + +reset E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE ResetRequest + SUCCESSFUL OUTCOME ResetResponse + PROCEDURE CODE id-Reset + CRITICALITY reject +} + +ricControl E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RICcontrolRequest + SUCCESSFUL OUTCOME RICcontrolAcknowledge + UNSUCCESSFUL OUTCOME RICcontrolFailure + PROCEDURE CODE id-RICcontrol + CRITICALITY reject +} + +ricIndication E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RICindication + PROCEDURE CODE id-RICindication + CRITICALITY ignore +} + +ricServiceQuery E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RICserviceQuery + PROCEDURE CODE id-RICserviceQuery + CRITICALITY ignore +} + +ricSubscription E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RICsubscriptionRequest + SUCCESSFUL OUTCOME RICsubscriptionResponse + UNSUCCESSFUL OUTCOME RICsubscriptionFailure + PROCEDURE CODE id-RICsubscription + CRITICALITY reject +} + +ricSubscriptionDelete E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RICsubscriptionDeleteRequest + SUCCESSFUL OUTCOME RICsubscriptionDeleteResponse + UNSUCCESSFUL OUTCOME RICsubscriptionDeleteFailure + PROCEDURE CODE id-RICsubscriptionDelete + CRITICALITY reject +} + +ricSubscriptionDeleteRequired E2AP-ELEMENTARY-PROCEDURE ::= { + INITIATING MESSAGE RICsubscriptionDeleteRequired + PROCEDURE CODE id-RICsubscriptionDeleteRequired + CRITICALITY ignore +} + +END +-- ASN1STOP + + diff --git a/e2ap/headers/AMFName.h b/e2ap/headers/AMFName.h new file mode 100644 index 0000000..03c8127 --- /dev/null +++ b/e2ap/headers/AMFName.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _AMFName_H_ +#define _AMFName_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AMFName */ +typedef PrintableString_t AMFName_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AMFName_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AMFName; +asn_struct_free_f AMFName_free; +asn_struct_print_f AMFName_print; +asn_constr_check_f AMFName_constraint; +ber_type_decoder_f AMFName_decode_ber; +der_type_encoder_f AMFName_encode_der; +xer_type_decoder_f AMFName_decode_xer; +xer_type_encoder_f AMFName_encode_xer; +oer_type_decoder_f AMFName_decode_oer; +oer_type_encoder_f AMFName_encode_oer; +per_type_decoder_f AMFName_decode_uper; +per_type_encoder_f AMFName_encode_uper; +per_type_decoder_f AMFName_decode_aper; +per_type_encoder_f AMFName_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AMFName_H_ */ +#include diff --git a/e2ap/headers/Cause.h b/e2ap/headers/Cause.h index 7bd7e80..4b56d3b 100644 --- a/e2ap/headers/Cause.h +++ b/e2ap/headers/Cause.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _Cause_H_ @@ -12,8 +12,9 @@ #include /* Including external dependencies */ -#include "CauseRIC.h" +#include "CauseRICrequest.h" #include "CauseRICservice.h" +#include "CauseE2node.h" #include "CauseTransport.h" #include "CauseProtocol.h" #include "CauseMisc.h" @@ -28,6 +29,7 @@ typedef enum Cause_PR { Cause_PR_NOTHING, /* No components present */ Cause_PR_ricRequest, Cause_PR_ricService, + Cause_PR_e2Node, Cause_PR_transport, Cause_PR_protocol, Cause_PR_misc @@ -39,8 +41,9 @@ typedef enum Cause_PR { typedef struct Cause { Cause_PR present; union Cause_u { - CauseRIC_t ricRequest; + CauseRICrequest_t ricRequest; CauseRICservice_t ricService; + CauseE2node_t e2Node; CauseTransport_t transport; CauseProtocol_t protocol; CauseMisc_t misc; @@ -57,7 +60,7 @@ typedef struct Cause { /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_Cause; extern asn_CHOICE_specifics_t asn_SPC_Cause_specs_1; -extern asn_TYPE_member_t asn_MBR_Cause_1[5]; +extern asn_TYPE_member_t asn_MBR_Cause_1[6]; extern asn_per_constraints_t asn_PER_type_Cause_constr_1; #ifdef __cplusplus diff --git a/e2ap/headers/CauseE2node.h b/e2ap/headers/CauseE2node.h new file mode 100644 index 0000000..2efa9a5 --- /dev/null +++ b/e2ap/headers/CauseE2node.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _CauseE2node_H_ +#define _CauseE2node_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum CauseE2node { + CauseE2node_e2node_component_unknown = 0 + /* + * Enumeration is extensible + */ +} e_CauseE2node; + +/* CauseE2node */ +typedef long CauseE2node_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CauseE2node_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CauseE2node; +extern const asn_INTEGER_specifics_t asn_SPC_CauseE2node_specs_1; +asn_struct_free_f CauseE2node_free; +asn_struct_print_f CauseE2node_print; +asn_constr_check_f CauseE2node_constraint; +ber_type_decoder_f CauseE2node_decode_ber; +der_type_encoder_f CauseE2node_encode_der; +xer_type_decoder_f CauseE2node_decode_xer; +xer_type_encoder_f CauseE2node_encode_xer; +oer_type_decoder_f CauseE2node_decode_oer; +oer_type_encoder_f CauseE2node_encode_oer; +per_type_decoder_f CauseE2node_decode_uper; +per_type_encoder_f CauseE2node_encode_uper; +per_type_decoder_f CauseE2node_decode_aper; +per_type_encoder_f CauseE2node_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CauseE2node_H_ */ +#include diff --git a/e2ap/headers/CauseMisc.h b/e2ap/headers/CauseMisc.h index 1b1efcf..fee55a1 100644 --- a/e2ap/headers/CauseMisc.h +++ b/e2ap/headers/CauseMisc.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _CauseMisc_H_ diff --git a/e2ap/headers/CauseProtocol.h b/e2ap/headers/CauseProtocol.h index 8b49178..fc3ac19 100644 --- a/e2ap/headers/CauseProtocol.h +++ b/e2ap/headers/CauseProtocol.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _CauseProtocol_H_ diff --git a/e2ap/headers/CauseRIC.h b/e2ap/headers/CauseRIC.h deleted file mode 100644 index 92cbb95..0000000 --- a/e2ap/headers/CauseRIC.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#ifndef _CauseRIC_H_ -#define _CauseRIC_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum CauseRIC { - CauseRIC_ran_function_id_Invalid = 0, - CauseRIC_action_not_supported = 1, - CauseRIC_excessive_actions = 2, - CauseRIC_duplicate_action = 3, - CauseRIC_duplicate_event = 4, - CauseRIC_function_resource_limit = 5, - CauseRIC_request_id_unknown = 6, - CauseRIC_inconsistent_action_subsequent_action_sequence = 7, - CauseRIC_control_message_invalid = 8, - CauseRIC_call_process_id_invalid = 9, - CauseRIC_unspecified = 10 - /* - * Enumeration is extensible - */ -} e_CauseRIC; - -/* CauseRIC */ -typedef long CauseRIC_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_CauseRIC_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_CauseRIC; -extern const asn_INTEGER_specifics_t asn_SPC_CauseRIC_specs_1; -asn_struct_free_f CauseRIC_free; -asn_struct_print_f CauseRIC_print; -asn_constr_check_f CauseRIC_constraint; -ber_type_decoder_f CauseRIC_decode_ber; -der_type_encoder_f CauseRIC_encode_der; -xer_type_decoder_f CauseRIC_decode_xer; -xer_type_encoder_f CauseRIC_encode_xer; -oer_type_decoder_f CauseRIC_decode_oer; -oer_type_encoder_f CauseRIC_encode_oer; -per_type_decoder_f CauseRIC_decode_uper; -per_type_encoder_f CauseRIC_encode_uper; -per_type_decoder_f CauseRIC_decode_aper; -per_type_encoder_f CauseRIC_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CauseRIC_H_ */ -#include diff --git a/e2ap/headers/CauseRICrequest.h b/e2ap/headers/CauseRICrequest.h new file mode 100644 index 0000000..830b1a0 --- /dev/null +++ b/e2ap/headers/CauseRICrequest.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _CauseRICrequest_H_ +#define _CauseRICrequest_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum CauseRICrequest { + CauseRICrequest_ran_function_id_invalid = 0, + CauseRICrequest_action_not_supported = 1, + CauseRICrequest_excessive_actions = 2, + CauseRICrequest_duplicate_action = 3, + CauseRICrequest_duplicate_event_trigger = 4, + CauseRICrequest_function_resource_limit = 5, + CauseRICrequest_request_id_unknown = 6, + CauseRICrequest_inconsistent_action_subsequent_action_sequence = 7, + CauseRICrequest_control_message_invalid = 8, + CauseRICrequest_ric_call_process_id_invalid = 9, + CauseRICrequest_control_timer_expired = 10, + CauseRICrequest_control_failed_to_execute = 11, + CauseRICrequest_system_not_ready = 12, + CauseRICrequest_unspecified = 13 + /* + * Enumeration is extensible + */ +} e_CauseRICrequest; + +/* CauseRICrequest */ +typedef long CauseRICrequest_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_CauseRICrequest_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_CauseRICrequest; +extern const asn_INTEGER_specifics_t asn_SPC_CauseRICrequest_specs_1; +asn_struct_free_f CauseRICrequest_free; +asn_struct_print_f CauseRICrequest_print; +asn_constr_check_f CauseRICrequest_constraint; +ber_type_decoder_f CauseRICrequest_decode_ber; +der_type_encoder_f CauseRICrequest_encode_der; +xer_type_decoder_f CauseRICrequest_decode_xer; +xer_type_encoder_f CauseRICrequest_encode_xer; +oer_type_decoder_f CauseRICrequest_decode_oer; +oer_type_encoder_f CauseRICrequest_encode_oer; +per_type_decoder_f CauseRICrequest_decode_uper; +per_type_encoder_f CauseRICrequest_encode_uper; +per_type_decoder_f CauseRICrequest_decode_aper; +per_type_encoder_f CauseRICrequest_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _CauseRICrequest_H_ */ +#include diff --git a/e2ap/headers/CauseRICservice.h b/e2ap/headers/CauseRICservice.h index 99ec743..af6e2c4 100644 --- a/e2ap/headers/CauseRICservice.h +++ b/e2ap/headers/CauseRICservice.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _CauseRICservice_H_ @@ -20,7 +20,7 @@ extern "C" { /* Dependencies */ typedef enum CauseRICservice { - CauseRICservice_function_not_required = 0, + CauseRICservice_ran_function_not_supported = 0, CauseRICservice_excessive_functions = 1, CauseRICservice_ric_resource_limit = 2 /* diff --git a/e2ap/headers/CauseTransport.h b/e2ap/headers/CauseTransport.h index 5204d28..4faf1b4 100644 --- a/e2ap/headers/CauseTransport.h +++ b/e2ap/headers/CauseTransport.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _CauseTransport_H_ diff --git a/e2ap/headers/Criticality.h b/e2ap/headers/Criticality.h index 3d32aff..31d6dd9 100644 --- a/e2ap/headers/Criticality.h +++ b/e2ap/headers/Criticality.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _Criticality_H_ diff --git a/e2ap/headers/CriticalityDiagnostics-IE-Item.h b/e2ap/headers/CriticalityDiagnostics-IE-Item.h index 5992ce7..fd3499d 100644 --- a/e2ap/headers/CriticalityDiagnostics-IE-Item.h +++ b/e2ap/headers/CriticalityDiagnostics-IE-Item.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _CriticalityDiagnostics_IE_Item_H_ diff --git a/e2ap/headers/CriticalityDiagnostics-IE-List.h b/e2ap/headers/CriticalityDiagnostics-IE-List.h index b823da4..53f664c 100644 --- a/e2ap/headers/CriticalityDiagnostics-IE-List.h +++ b/e2ap/headers/CriticalityDiagnostics-IE-List.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _CriticalityDiagnostics_IE_List_H_ diff --git a/e2ap/headers/CriticalityDiagnostics.h b/e2ap/headers/CriticalityDiagnostics.h index ae04eef..aed28c9 100644 --- a/e2ap/headers/CriticalityDiagnostics.h +++ b/e2ap/headers/CriticalityDiagnostics.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _CriticalityDiagnostics_H_ diff --git a/e2ap/headers/E2AP-PDU.h b/e2ap/headers/E2AP-PDU.h index 1cf3fc7..c41b6b1 100644 --- a/e2ap/headers/E2AP-PDU.h +++ b/e2ap/headers/E2AP-PDU.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Descriptions" - * found in "E2AP-PDU-Descriptions-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _E2AP_PDU_H_ diff --git a/e2sm/headers/GlobalgNB-ID.h b/e2ap/headers/E2RemovalFailure.h similarity index 53% rename from e2sm/headers/GlobalgNB-ID.h rename to e2ap/headers/E2RemovalFailure.h index 7b0364d..827b07f 100644 --- a/e2sm/headers/GlobalgNB-ID.h +++ b/e2ap/headers/E2RemovalFailure.h @@ -1,29 +1,27 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _GlobalgNB_ID_H_ -#define _GlobalgNB_ID_H_ +#ifndef _E2RemovalFailure_H_ +#define _E2RemovalFailure_H_ #include /* Including external dependencies */ -#include "PLMN-Identity.h" -#include "GNB-ID-Choice.h" +#include "ProtocolIE-Container.h" #include #ifdef __cplusplus extern "C" { #endif -/* GlobalgNB-ID */ -typedef struct GlobalgNB_ID { - PLMN_Identity_t plmn_id; - GNB_ID_Choice_t gnb_id; +/* E2RemovalFailure */ +typedef struct E2RemovalFailure { + ProtocolIE_Container_185P23_t protocolIEs; /* * This type is extensible, * possible extensions are below. @@ -31,16 +29,14 @@ typedef struct GlobalgNB_ID { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} GlobalgNB_ID_t; +} E2RemovalFailure_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalgNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalgNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalgNB_ID_1[2]; +extern asn_TYPE_descriptor_t asn_DEF_E2RemovalFailure; #ifdef __cplusplus } #endif -#endif /* _GlobalgNB_ID_H_ */ +#endif /* _E2RemovalFailure_H_ */ #include diff --git a/e2sm/headers/PM-Info-Item.h b/e2ap/headers/E2RemovalRequest.h similarity index 52% rename from e2sm/headers/PM-Info-Item.h rename to e2ap/headers/E2RemovalRequest.h index 2716d8e..166f7e9 100644 --- a/e2sm/headers/PM-Info-Item.h +++ b/e2ap/headers/E2RemovalRequest.h @@ -1,29 +1,27 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _PM_Info_Item_H_ -#define _PM_Info_Item_H_ +#ifndef _E2RemovalRequest_H_ +#define _E2RemovalRequest_H_ #include /* Including external dependencies */ -#include "MeasurementType.h" -#include "MeasurementValue.h" +#include "ProtocolIE-Container.h" #include #ifdef __cplusplus extern "C" { #endif -/* PM-Info-Item */ -typedef struct PM_Info_Item { - MeasurementType_t pmType; - MeasurementValue_t pmVal; +/* E2RemovalRequest */ +typedef struct E2RemovalRequest { + ProtocolIE_Container_185P21_t protocolIEs; /* * This type is extensible, * possible extensions are below. @@ -31,16 +29,14 @@ typedef struct PM_Info_Item { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} PM_Info_Item_t; +} E2RemovalRequest_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PM_Info_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_PM_Info_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_PM_Info_Item_1[2]; +extern asn_TYPE_descriptor_t asn_DEF_E2RemovalRequest; #ifdef __cplusplus } #endif -#endif /* _PM_Info_Item_H_ */ +#endif /* _E2RemovalRequest_H_ */ #include diff --git a/e2sm/headers/GlobalE2node-eNB-ID.h b/e2ap/headers/E2RemovalResponse.h similarity index 52% rename from e2sm/headers/GlobalE2node-eNB-ID.h rename to e2ap/headers/E2RemovalResponse.h index c38f8e7..a4bffb7 100644 --- a/e2sm/headers/GlobalE2node-eNB-ID.h +++ b/e2ap/headers/E2RemovalResponse.h @@ -1,27 +1,27 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _GlobalE2node_eNB_ID_H_ -#define _GlobalE2node_eNB_ID_H_ +#ifndef _E2RemovalResponse_H_ +#define _E2RemovalResponse_H_ #include /* Including external dependencies */ -#include "GlobalENB-ID.h" +#include "ProtocolIE-Container.h" #include #ifdef __cplusplus extern "C" { #endif -/* GlobalE2node-eNB-ID */ -typedef struct GlobalE2node_eNB_ID { - GlobalENB_ID_t global_eNB_ID; +/* E2RemovalResponse */ +typedef struct E2RemovalResponse { + ProtocolIE_Container_185P22_t protocolIEs; /* * This type is extensible, * possible extensions are below. @@ -29,16 +29,14 @@ typedef struct GlobalE2node_eNB_ID { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} GlobalE2node_eNB_ID_t; +} E2RemovalResponse_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_eNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_eNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalE2node_eNB_ID_1[1]; +extern asn_TYPE_descriptor_t asn_DEF_E2RemovalResponse; #ifdef __cplusplus } #endif -#endif /* _GlobalE2node_eNB_ID_H_ */ +#endif /* _E2RemovalResponse_H_ */ #include diff --git a/e2ap/headers/E2nodeComponentConfigAddition-Item.h b/e2ap/headers/E2nodeComponentConfigAddition-Item.h new file mode 100644 index 0000000..bc9156d --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigAddition-Item.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigAddition_Item_H_ +#define _E2nodeComponentConfigAddition_Item_H_ + + +#include + +/* Including external dependencies */ +#include "E2nodeComponentInterfaceType.h" +#include "E2nodeComponentID.h" +#include "E2nodeComponentConfiguration.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentConfigAddition-Item */ +typedef struct E2nodeComponentConfigAddition_Item { + E2nodeComponentInterfaceType_t e2nodeComponentInterfaceType; + E2nodeComponentID_t e2nodeComponentID; + E2nodeComponentConfiguration_t e2nodeComponentConfiguration; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigAddition_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAddition_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigAddition_Item_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigAddition-List.h b/e2ap/headers/E2nodeComponentConfigAddition-List.h new file mode 100644 index 0000000..808ff13 --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigAddition-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigAddition_List_H_ +#define _E2nodeComponentConfigAddition_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ProtocolIE_SingleContainer; + +/* E2nodeComponentConfigAddition-List */ +typedef struct E2nodeComponentConfigAddition_List { + A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigAddition_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_List; +extern asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigAddition_List_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_List_1[1]; +extern asn_per_constraints_t asn_PER_type_E2nodeComponentConfigAddition_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigAddition_List_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigAdditionAck-Item.h b/e2ap/headers/E2nodeComponentConfigAdditionAck-Item.h new file mode 100644 index 0000000..fde9b45 --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigAdditionAck-Item.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigAdditionAck_Item_H_ +#define _E2nodeComponentConfigAdditionAck_Item_H_ + + +#include + +/* Including external dependencies */ +#include "E2nodeComponentInterfaceType.h" +#include "E2nodeComponentID.h" +#include "E2nodeComponentConfigurationAck.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentConfigAdditionAck-Item */ +typedef struct E2nodeComponentConfigAdditionAck_Item { + E2nodeComponentInterfaceType_t e2nodeComponentInterfaceType; + E2nodeComponentID_t e2nodeComponentID; + E2nodeComponentConfigurationAck_t e2nodeComponentConfigurationAck; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigAdditionAck_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigAdditionAck_Item_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigAdditionAck-List.h b/e2ap/headers/E2nodeComponentConfigAdditionAck-List.h new file mode 100644 index 0000000..faab9bf --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigAdditionAck-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigAdditionAck_List_H_ +#define _E2nodeComponentConfigAdditionAck_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ProtocolIE_SingleContainer; + +/* E2nodeComponentConfigAdditionAck-List */ +typedef struct E2nodeComponentConfigAdditionAck_List { + A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigAdditionAck_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_List; +extern asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_List_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_List_1[1]; +extern asn_per_constraints_t asn_PER_type_E2nodeComponentConfigAdditionAck_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigAdditionAck_List_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigRemoval-Item.h b/e2ap/headers/E2nodeComponentConfigRemoval-Item.h new file mode 100644 index 0000000..f295e0c --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigRemoval-Item.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigRemoval_Item_H_ +#define _E2nodeComponentConfigRemoval_Item_H_ + + +#include + +/* Including external dependencies */ +#include "E2nodeComponentInterfaceType.h" +#include "E2nodeComponentID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentConfigRemoval-Item */ +typedef struct E2nodeComponentConfigRemoval_Item { + E2nodeComponentInterfaceType_t e2nodeComponentInterfaceType; + E2nodeComponentID_t e2nodeComponentID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigRemoval_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemoval_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigRemoval_Item_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigRemoval-List.h b/e2ap/headers/E2nodeComponentConfigRemoval-List.h new file mode 100644 index 0000000..dbc0e74 --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigRemoval-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigRemoval_List_H_ +#define _E2nodeComponentConfigRemoval_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ProtocolIE_SingleContainer; + +/* E2nodeComponentConfigRemoval-List */ +typedef struct E2nodeComponentConfigRemoval_List { + A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigRemoval_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_List; +extern asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigRemoval_List_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_List_1[1]; +extern asn_per_constraints_t asn_PER_type_E2nodeComponentConfigRemoval_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigRemoval_List_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigRemovalAck-Item.h b/e2ap/headers/E2nodeComponentConfigRemovalAck-Item.h new file mode 100644 index 0000000..ae2794b --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigRemovalAck-Item.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigRemovalAck_Item_H_ +#define _E2nodeComponentConfigRemovalAck_Item_H_ + + +#include + +/* Including external dependencies */ +#include "E2nodeComponentInterfaceType.h" +#include "E2nodeComponentID.h" +#include "E2nodeComponentConfigurationAck.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentConfigRemovalAck-Item */ +typedef struct E2nodeComponentConfigRemovalAck_Item { + E2nodeComponentInterfaceType_t e2nodeComponentInterfaceType; + E2nodeComponentID_t e2nodeComponentID; + E2nodeComponentConfigurationAck_t e2nodeComponentConfigurationAck; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigRemovalAck_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigRemovalAck_Item_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigRemovalAck-List.h b/e2ap/headers/E2nodeComponentConfigRemovalAck-List.h new file mode 100644 index 0000000..d9a76e2 --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigRemovalAck-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigRemovalAck_List_H_ +#define _E2nodeComponentConfigRemovalAck_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ProtocolIE_SingleContainer; + +/* E2nodeComponentConfigRemovalAck-List */ +typedef struct E2nodeComponentConfigRemovalAck_List { + A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigRemovalAck_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_List; +extern asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_List_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_List_1[1]; +extern asn_per_constraints_t asn_PER_type_E2nodeComponentConfigRemovalAck_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigRemovalAck_List_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigUpdate-Item.h b/e2ap/headers/E2nodeComponentConfigUpdate-Item.h new file mode 100644 index 0000000..9aa4288 --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigUpdate-Item.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigUpdate_Item_H_ +#define _E2nodeComponentConfigUpdate_Item_H_ + + +#include + +/* Including external dependencies */ +#include "E2nodeComponentInterfaceType.h" +#include "E2nodeComponentID.h" +#include "E2nodeComponentConfiguration.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentConfigUpdate-Item */ +typedef struct E2nodeComponentConfigUpdate_Item { + E2nodeComponentInterfaceType_t e2nodeComponentInterfaceType; + E2nodeComponentID_t e2nodeComponentID; + E2nodeComponentConfiguration_t e2nodeComponentConfiguration; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigUpdate_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigUpdate_Item_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigUpdate-List.h b/e2ap/headers/E2nodeComponentConfigUpdate-List.h new file mode 100644 index 0000000..bd47c4f --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigUpdate-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigUpdate_List_H_ +#define _E2nodeComponentConfigUpdate_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ProtocolIE_SingleContainer; + +/* E2nodeComponentConfigUpdate-List */ +typedef struct E2nodeComponentConfigUpdate_List { + A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigUpdate_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_List; +extern asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdate_List_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_List_1[1]; +extern asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdate_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigUpdate_List_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigUpdateAck-Item.h b/e2ap/headers/E2nodeComponentConfigUpdateAck-Item.h new file mode 100644 index 0000000..b16e7a6 --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigUpdateAck-Item.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigUpdateAck_Item_H_ +#define _E2nodeComponentConfigUpdateAck_Item_H_ + + +#include + +/* Including external dependencies */ +#include "E2nodeComponentInterfaceType.h" +#include "E2nodeComponentID.h" +#include "E2nodeComponentConfigurationAck.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentConfigUpdateAck-Item */ +typedef struct E2nodeComponentConfigUpdateAck_Item { + E2nodeComponentInterfaceType_t e2nodeComponentInterfaceType; + E2nodeComponentID_t e2nodeComponentID; + E2nodeComponentConfigurationAck_t e2nodeComponentConfigurationAck; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigUpdateAck_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigUpdateAck_Item_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigUpdateAck-List.h b/e2ap/headers/E2nodeComponentConfigUpdateAck-List.h new file mode 100644 index 0000000..0d4000d --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigUpdateAck-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigUpdateAck_List_H_ +#define _E2nodeComponentConfigUpdateAck_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ProtocolIE_SingleContainer; + +/* E2nodeComponentConfigUpdateAck-List */ +typedef struct E2nodeComponentConfigUpdateAck_List { + A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigUpdateAck_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_List; +extern asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_List_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_List_1[1]; +extern asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdateAck_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigUpdateAck_List_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfiguration.h b/e2ap/headers/E2nodeComponentConfiguration.h new file mode 100644 index 0000000..4152b24 --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfiguration.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfiguration_H_ +#define _E2nodeComponentConfiguration_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentConfiguration */ +typedef struct E2nodeComponentConfiguration { + OCTET_STRING_t e2nodeComponentRequestPart; + OCTET_STRING_t e2nodeComponentResponsePart; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfiguration_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfiguration; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfiguration_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfiguration_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfiguration_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentConfigurationAck.h b/e2ap/headers/E2nodeComponentConfigurationAck.h new file mode 100644 index 0000000..2020998 --- /dev/null +++ b/e2ap/headers/E2nodeComponentConfigurationAck.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentConfigurationAck_H_ +#define _E2nodeComponentConfigurationAck_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2nodeComponentConfigurationAck__updateOutcome { + E2nodeComponentConfigurationAck__updateOutcome_success = 0, + E2nodeComponentConfigurationAck__updateOutcome_failure = 1 + /* + * Enumeration is extensible + */ +} e_E2nodeComponentConfigurationAck__updateOutcome; + +/* Forward declarations */ +struct Cause; + +/* E2nodeComponentConfigurationAck */ +typedef struct E2nodeComponentConfigurationAck { + long updateOutcome; + struct Cause *failureCause; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigurationAck_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_updateOutcome_2; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigurationAck; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigurationAck_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigurationAck_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentConfigurationAck_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentID.h b/e2ap/headers/E2nodeComponentID.h new file mode 100644 index 0000000..23f3529 --- /dev/null +++ b/e2ap/headers/E2nodeComponentID.h @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentID_H_ +#define _E2nodeComponentID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2nodeComponentID_PR { + E2nodeComponentID_PR_NOTHING, /* No components present */ + E2nodeComponentID_PR_e2nodeComponentInterfaceTypeNG, + E2nodeComponentID_PR_e2nodeComponentInterfaceTypeXn, + E2nodeComponentID_PR_e2nodeComponentInterfaceTypeE1, + E2nodeComponentID_PR_e2nodeComponentInterfaceTypeF1, + E2nodeComponentID_PR_e2nodeComponentInterfaceTypeW1, + E2nodeComponentID_PR_e2nodeComponentInterfaceTypeS1, + E2nodeComponentID_PR_e2nodeComponentInterfaceTypeX2 + /* Extensions may appear below */ + +} E2nodeComponentID_PR; + +/* Forward declarations */ +struct E2nodeComponentInterfaceNG; +struct E2nodeComponentInterfaceXn; +struct E2nodeComponentInterfaceE1; +struct E2nodeComponentInterfaceF1; +struct E2nodeComponentInterfaceW1; +struct E2nodeComponentInterfaceS1; +struct E2nodeComponentInterfaceX2; + +/* E2nodeComponentID */ +typedef struct E2nodeComponentID { + E2nodeComponentID_PR present; + union E2nodeComponentID_u { + struct E2nodeComponentInterfaceNG *e2nodeComponentInterfaceTypeNG; + struct E2nodeComponentInterfaceXn *e2nodeComponentInterfaceTypeXn; + struct E2nodeComponentInterfaceE1 *e2nodeComponentInterfaceTypeE1; + struct E2nodeComponentInterfaceF1 *e2nodeComponentInterfaceTypeF1; + struct E2nodeComponentInterfaceW1 *e2nodeComponentInterfaceTypeW1; + struct E2nodeComponentInterfaceS1 *e2nodeComponentInterfaceTypeS1; + struct E2nodeComponentInterfaceX2 *e2nodeComponentInterfaceTypeX2; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentID; +extern asn_CHOICE_specifics_t asn_SPC_E2nodeComponentID_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentID_1[7]; +extern asn_per_constraints_t asn_PER_type_E2nodeComponentID_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentID_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentInterfaceE1.h b/e2ap/headers/E2nodeComponentInterfaceE1.h new file mode 100644 index 0000000..a8a0a61 --- /dev/null +++ b/e2ap/headers/E2nodeComponentInterfaceE1.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentInterfaceE1_H_ +#define _E2nodeComponentInterfaceE1_H_ + + +#include + +/* Including external dependencies */ +#include "GNB-CU-UP-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentInterfaceE1 */ +typedef struct E2nodeComponentInterfaceE1 { + GNB_CU_UP_ID_t gNB_CU_CP_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentInterfaceE1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceE1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceE1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceE1_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentInterfaceE1_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentInterfaceF1.h b/e2ap/headers/E2nodeComponentInterfaceF1.h new file mode 100644 index 0000000..f2afb8a --- /dev/null +++ b/e2ap/headers/E2nodeComponentInterfaceF1.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentInterfaceF1_H_ +#define _E2nodeComponentInterfaceF1_H_ + + +#include + +/* Including external dependencies */ +#include "GNB-DU-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentInterfaceF1 */ +typedef struct E2nodeComponentInterfaceF1 { + GNB_DU_ID_t gNB_DU_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentInterfaceF1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceF1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceF1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceF1_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentInterfaceF1_H_ */ +#include diff --git a/e2sm/headers/MeasResultEUTRA.h b/e2ap/headers/E2nodeComponentInterfaceNG.h similarity index 50% rename from e2sm/headers/MeasResultEUTRA.h rename to e2ap/headers/E2nodeComponentInterfaceNG.h index 61e8b9a..3bbfdcb 100644 --- a/e2sm/headers/MeasResultEUTRA.h +++ b/e2ap/headers/E2nodeComponentInterfaceNG.h @@ -1,29 +1,27 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _MeasResultEUTRA_H_ -#define _MeasResultEUTRA_H_ +#ifndef _E2nodeComponentInterfaceNG_H_ +#define _E2nodeComponentInterfaceNG_H_ #include /* Including external dependencies */ -#include "PhysCellId.h" -#include "MeasQuantityResultsEUTRA.h" +#include "AMFName.h" #include #ifdef __cplusplus extern "C" { #endif -/* MeasResultEUTRA */ -typedef struct MeasResultEUTRA { - PhysCellId_t eutra_PhysCellId; - MeasQuantityResultsEUTRA_t measResult; +/* E2nodeComponentInterfaceNG */ +typedef struct E2nodeComponentInterfaceNG { + AMFName_t amf_name; /* * This type is extensible, * possible extensions are below. @@ -31,16 +29,16 @@ typedef struct MeasResultEUTRA { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} MeasResultEUTRA_t; +} E2nodeComponentInterfaceNG_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasResultEUTRA; -extern asn_SEQUENCE_specifics_t asn_SPC_MeasResultEUTRA_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasResultEUTRA_1[2]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceNG; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceNG_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceNG_1[1]; #ifdef __cplusplus } #endif -#endif /* _MeasResultEUTRA_H_ */ +#endif /* _E2nodeComponentInterfaceNG_H_ */ #include diff --git a/e2ap/headers/E2nodeComponentInterfaceS1.h b/e2ap/headers/E2nodeComponentInterfaceS1.h new file mode 100644 index 0000000..f3b8c03 --- /dev/null +++ b/e2ap/headers/E2nodeComponentInterfaceS1.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentInterfaceS1_H_ +#define _E2nodeComponentInterfaceS1_H_ + + +#include + +/* Including external dependencies */ +#include "MMEname.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentInterfaceS1 */ +typedef struct E2nodeComponentInterfaceS1 { + MMEname_t mme_name; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentInterfaceS1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceS1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceS1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceS1_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentInterfaceS1_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentInterfaceType.h b/e2ap/headers/E2nodeComponentInterfaceType.h new file mode 100644 index 0000000..da54127 --- /dev/null +++ b/e2ap/headers/E2nodeComponentInterfaceType.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentInterfaceType_H_ +#define _E2nodeComponentInterfaceType_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2nodeComponentInterfaceType { + E2nodeComponentInterfaceType_ng = 0, + E2nodeComponentInterfaceType_xn = 1, + E2nodeComponentInterfaceType_e1 = 2, + E2nodeComponentInterfaceType_f1 = 3, + E2nodeComponentInterfaceType_w1 = 4, + E2nodeComponentInterfaceType_s1 = 5, + E2nodeComponentInterfaceType_x2 = 6 + /* + * Enumeration is extensible + */ +} e_E2nodeComponentInterfaceType; + +/* E2nodeComponentInterfaceType */ +typedef long E2nodeComponentInterfaceType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_E2nodeComponentInterfaceType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceType; +extern const asn_INTEGER_specifics_t asn_SPC_E2nodeComponentInterfaceType_specs_1; +asn_struct_free_f E2nodeComponentInterfaceType_free; +asn_struct_print_f E2nodeComponentInterfaceType_print; +asn_constr_check_f E2nodeComponentInterfaceType_constraint; +ber_type_decoder_f E2nodeComponentInterfaceType_decode_ber; +der_type_encoder_f E2nodeComponentInterfaceType_encode_der; +xer_type_decoder_f E2nodeComponentInterfaceType_decode_xer; +xer_type_encoder_f E2nodeComponentInterfaceType_encode_xer; +oer_type_decoder_f E2nodeComponentInterfaceType_decode_oer; +oer_type_encoder_f E2nodeComponentInterfaceType_encode_oer; +per_type_decoder_f E2nodeComponentInterfaceType_decode_uper; +per_type_encoder_f E2nodeComponentInterfaceType_encode_uper; +per_type_decoder_f E2nodeComponentInterfaceType_decode_aper; +per_type_encoder_f E2nodeComponentInterfaceType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentInterfaceType_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentInterfaceW1.h b/e2ap/headers/E2nodeComponentInterfaceW1.h new file mode 100644 index 0000000..696f18a --- /dev/null +++ b/e2ap/headers/E2nodeComponentInterfaceW1.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentInterfaceW1_H_ +#define _E2nodeComponentInterfaceW1_H_ + + +#include + +/* Including external dependencies */ +#include "NGENB-DU-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentInterfaceW1 */ +typedef struct E2nodeComponentInterfaceW1 { + NGENB_DU_ID_t ng_eNB_DU_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentInterfaceW1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceW1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceW1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceW1_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentInterfaceW1_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentInterfaceX2.h b/e2ap/headers/E2nodeComponentInterfaceX2.h new file mode 100644 index 0000000..43daa1e --- /dev/null +++ b/e2ap/headers/E2nodeComponentInterfaceX2.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentInterfaceX2_H_ +#define _E2nodeComponentInterfaceX2_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct GlobalENB_ID; +struct GlobalenGNB_ID; + +/* E2nodeComponentInterfaceX2 */ +typedef struct E2nodeComponentInterfaceX2 { + struct GlobalENB_ID *global_eNB_ID; /* OPTIONAL */ + struct GlobalenGNB_ID *global_en_gNB_ID; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentInterfaceX2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceX2; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceX2_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceX2_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentInterfaceX2_H_ */ +#include diff --git a/e2ap/headers/E2nodeComponentInterfaceXn.h b/e2ap/headers/E2nodeComponentInterfaceXn.h new file mode 100644 index 0000000..665004a --- /dev/null +++ b/e2ap/headers/E2nodeComponentInterfaceXn.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeComponentInterfaceXn_H_ +#define _E2nodeComponentInterfaceXn_H_ + + +#include + +/* Including external dependencies */ +#include "GlobalNG-RANNode-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeComponentInterfaceXn */ +typedef struct E2nodeComponentInterfaceXn { + GlobalNG_RANNode_ID_t global_NG_RAN_Node_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentInterfaceXn_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceXn; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceXn_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceXn_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeComponentInterfaceXn_H_ */ +#include diff --git a/e2ap/headers/E2nodeConfigurationUpdate.h b/e2ap/headers/E2nodeConfigurationUpdate.h new file mode 100644 index 0000000..2f67d54 --- /dev/null +++ b/e2ap/headers/E2nodeConfigurationUpdate.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeConfigurationUpdate_H_ +#define _E2nodeConfigurationUpdate_H_ + + +#include + +/* Including external dependencies */ +#include "ProtocolIE-Container.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeConfigurationUpdate */ +typedef struct E2nodeConfigurationUpdate { + ProtocolIE_Container_185P15_t protocolIEs; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeConfigurationUpdate_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdate; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeConfigurationUpdate_H_ */ +#include diff --git a/e2ap/headers/E2nodeConfigurationUpdateAcknowledge.h b/e2ap/headers/E2nodeConfigurationUpdateAcknowledge.h new file mode 100644 index 0000000..6a7dbc3 --- /dev/null +++ b/e2ap/headers/E2nodeConfigurationUpdateAcknowledge.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeConfigurationUpdateAcknowledge_H_ +#define _E2nodeConfigurationUpdateAcknowledge_H_ + + +#include + +/* Including external dependencies */ +#include "ProtocolIE-Container.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeConfigurationUpdateAcknowledge */ +typedef struct E2nodeConfigurationUpdateAcknowledge { + ProtocolIE_Container_185P16_t protocolIEs; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeConfigurationUpdateAcknowledge_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateAcknowledge; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeConfigurationUpdateAcknowledge_H_ */ +#include diff --git a/e2ap/headers/E2nodeConfigurationUpdateFailure.h b/e2ap/headers/E2nodeConfigurationUpdateFailure.h new file mode 100644 index 0000000..b44b39a --- /dev/null +++ b/e2ap/headers/E2nodeConfigurationUpdateFailure.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeConfigurationUpdateFailure_H_ +#define _E2nodeConfigurationUpdateFailure_H_ + + +#include + +/* Including external dependencies */ +#include "ProtocolIE-Container.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeConfigurationUpdateFailure */ +typedef struct E2nodeConfigurationUpdateFailure { + ProtocolIE_Container_185P17_t protocolIEs; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeConfigurationUpdateFailure_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateFailure; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeConfigurationUpdateFailure_H_ */ +#include diff --git a/e2ap/headers/E2nodeTNLassociationRemoval-Item.h b/e2ap/headers/E2nodeTNLassociationRemoval-Item.h new file mode 100644 index 0000000..348d6fd --- /dev/null +++ b/e2ap/headers/E2nodeTNLassociationRemoval-Item.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeTNLassociationRemoval_Item_H_ +#define _E2nodeTNLassociationRemoval_Item_H_ + + +#include + +/* Including external dependencies */ +#include "TNLinformation.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2nodeTNLassociationRemoval-Item */ +typedef struct E2nodeTNLassociationRemoval_Item { + TNLinformation_t tnlInformation; + TNLinformation_t tnlInformationRIC; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeTNLassociationRemoval_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeTNLassociationRemoval_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeTNLassociationRemoval_Item_H_ */ +#include diff --git a/e2ap/headers/E2nodeTNLassociationRemoval-List.h b/e2ap/headers/E2nodeTNLassociationRemoval-List.h new file mode 100644 index 0000000..896045f --- /dev/null +++ b/e2ap/headers/E2nodeTNLassociationRemoval-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2nodeTNLassociationRemoval_List_H_ +#define _E2nodeTNLassociationRemoval_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ProtocolIE_SingleContainer; + +/* E2nodeTNLassociationRemoval-List */ +typedef struct E2nodeTNLassociationRemoval_List { + A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeTNLassociationRemoval_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_List; +extern asn_SET_OF_specifics_t asn_SPC_E2nodeTNLassociationRemoval_List_specs_1; +extern asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_List_1[1]; +extern asn_per_constraints_t asn_PER_type_E2nodeTNLassociationRemoval_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2nodeTNLassociationRemoval_List_H_ */ +#include diff --git a/e2ap/headers/E2setupFailure.h b/e2ap/headers/E2setupFailure.h index 9bfcf0b..697d4b3 100644 --- a/e2ap/headers/E2setupFailure.h +++ b/e2ap/headers/E2setupFailure.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _E2setupFailure_H_ @@ -21,7 +21,7 @@ extern "C" { /* E2setupFailure */ typedef struct E2setupFailure { - ProtocolIE_Container_87P13_t protocolIEs; + ProtocolIE_Container_185P14_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/E2setupRequest.h b/e2ap/headers/E2setupRequest.h index c70a6a5..e13ab70 100644 --- a/e2ap/headers/E2setupRequest.h +++ b/e2ap/headers/E2setupRequest.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _E2setupRequest_H_ @@ -21,7 +21,7 @@ extern "C" { /* E2setupRequest */ typedef struct E2setupRequest { - ProtocolIE_Container_87P11_t protocolIEs; + ProtocolIE_Container_185P12_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/E2setupResponse.h b/e2ap/headers/E2setupResponse.h index f8920af..317fa08 100644 --- a/e2ap/headers/E2setupResponse.h +++ b/e2ap/headers/E2setupResponse.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _E2setupResponse_H_ @@ -21,7 +21,7 @@ extern "C" { /* E2setupResponse */ typedef struct E2setupResponse { - ProtocolIE_Container_87P12_t protocolIEs; + ProtocolIE_Container_185P13_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/ENB-ID-Choice.h b/e2ap/headers/ENB-ID-Choice.h index 0ccc3ee..bc0f56e 100644 --- a/e2ap/headers/ENB-ID-Choice.h +++ b/e2ap/headers/ENB-ID-Choice.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ENB_ID_Choice_H_ diff --git a/e2ap/headers/ENB-ID.h b/e2ap/headers/ENB-ID.h index 500a7d2..08bec67 100644 --- a/e2ap/headers/ENB-ID.h +++ b/e2ap/headers/ENB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ENB_ID_H_ diff --git a/e2ap/headers/ENGNB-ID.h b/e2ap/headers/ENGNB-ID.h index 58a8c7c..18a7520 100644 --- a/e2ap/headers/ENGNB-ID.h +++ b/e2ap/headers/ENGNB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ENGNB_ID_H_ diff --git a/e2ap/headers/ErrorIndication.h b/e2ap/headers/ErrorIndication.h index 88e402e..ccd6025 100644 --- a/e2ap/headers/ErrorIndication.h +++ b/e2ap/headers/ErrorIndication.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ErrorIndication_H_ @@ -21,7 +21,7 @@ extern "C" { /* ErrorIndication */ typedef struct ErrorIndication { - ProtocolIE_Container_87P10_t protocolIEs; + ProtocolIE_Container_185P11_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/GNB-CU-UP-ID.h b/e2ap/headers/GNB-CU-UP-ID.h index d7df7d8..1611190 100644 --- a/e2ap/headers/GNB-CU-UP-ID.h +++ b/e2ap/headers/GNB-CU-UP-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GNB_CU_UP_ID_H_ diff --git a/e2ap/headers/GNB-DU-ID.h b/e2ap/headers/GNB-DU-ID.h index b0889fe..d04f249 100644 --- a/e2ap/headers/GNB-DU-ID.h +++ b/e2ap/headers/GNB-DU-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GNB_DU_ID_H_ diff --git a/e2ap/headers/GNB-ID-Choice.h b/e2ap/headers/GNB-ID-Choice.h index ec65f85..920cb80 100644 --- a/e2ap/headers/GNB-ID-Choice.h +++ b/e2ap/headers/GNB-ID-Choice.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GNB_ID_Choice_H_ diff --git a/e2ap/headers/GlobalE2node-ID.h b/e2ap/headers/GlobalE2node-ID.h index 843e1c2..d1f714d 100644 --- a/e2ap/headers/GlobalE2node-ID.h +++ b/e2ap/headers/GlobalE2node-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalE2node_ID_H_ diff --git a/e2ap/headers/GlobalE2node-eNB-ID.h b/e2ap/headers/GlobalE2node-eNB-ID.h index c92e774..3522247 100644 --- a/e2ap/headers/GlobalE2node-eNB-ID.h +++ b/e2ap/headers/GlobalE2node-eNB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalE2node_eNB_ID_H_ diff --git a/e2ap/headers/GlobalE2node-en-gNB-ID.h b/e2ap/headers/GlobalE2node-en-gNB-ID.h index b13588a..081d3dc 100644 --- a/e2ap/headers/GlobalE2node-en-gNB-ID.h +++ b/e2ap/headers/GlobalE2node-en-gNB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalE2node_en_gNB_ID_H_ @@ -13,6 +13,8 @@ /* Including external dependencies */ #include "GlobalenGNB-ID.h" +#include "GNB-CU-UP-ID.h" +#include "GNB-DU-ID.h" #include #ifdef __cplusplus @@ -21,7 +23,9 @@ extern "C" { /* GlobalE2node-en-gNB-ID */ typedef struct GlobalE2node_en_gNB_ID { - GlobalenGNB_ID_t global_gNB_ID; + GlobalenGNB_ID_t global_en_gNB_ID; + GNB_CU_UP_ID_t *en_gNB_CU_UP_ID; /* OPTIONAL */ + GNB_DU_ID_t *en_gNB_DU_ID; /* OPTIONAL */ /* * This type is extensible, * possible extensions are below. @@ -34,7 +38,7 @@ typedef struct GlobalE2node_en_gNB_ID { /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_en_gNB_ID; extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_en_gNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalE2node_en_gNB_ID_1[1]; +extern asn_TYPE_member_t asn_MBR_GlobalE2node_en_gNB_ID_1[3]; #ifdef __cplusplus } diff --git a/e2ap/headers/GlobalE2node-gNB-ID.h b/e2ap/headers/GlobalE2node-gNB-ID.h index a2121b9..12db502 100644 --- a/e2ap/headers/GlobalE2node-gNB-ID.h +++ b/e2ap/headers/GlobalE2node-gNB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalE2node_gNB_ID_H_ @@ -21,9 +21,13 @@ extern "C" { #endif +/* Forward declarations */ +struct GlobalenGNB_ID; + /* GlobalE2node-gNB-ID */ typedef struct GlobalE2node_gNB_ID { GlobalgNB_ID_t global_gNB_ID; + struct GlobalenGNB_ID *global_en_gNB_ID; /* OPTIONAL */ GNB_CU_UP_ID_t *gNB_CU_UP_ID; /* OPTIONAL */ GNB_DU_ID_t *gNB_DU_ID; /* OPTIONAL */ /* @@ -38,7 +42,7 @@ typedef struct GlobalE2node_gNB_ID { /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_gNB_ID; extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_gNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[3]; +extern asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[4]; #ifdef __cplusplus } diff --git a/e2ap/headers/GlobalE2node-ng-eNB-ID.h b/e2ap/headers/GlobalE2node-ng-eNB-ID.h index 7a3e0f5..daba99d 100644 --- a/e2ap/headers/GlobalE2node-ng-eNB-ID.h +++ b/e2ap/headers/GlobalE2node-ng-eNB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalE2node_ng_eNB_ID_H_ @@ -13,15 +13,21 @@ /* Including external dependencies */ #include "GlobalngeNB-ID.h" +#include "NGENB-DU-ID.h" #include #ifdef __cplusplus extern "C" { #endif +/* Forward declarations */ +struct GlobalENB_ID; + /* GlobalE2node-ng-eNB-ID */ typedef struct GlobalE2node_ng_eNB_ID { GlobalngeNB_ID_t global_ng_eNB_ID; + struct GlobalENB_ID *global_eNB_ID; /* OPTIONAL */ + NGENB_DU_ID_t *ngENB_DU_ID; /* OPTIONAL */ /* * This type is extensible, * possible extensions are below. @@ -34,7 +40,7 @@ typedef struct GlobalE2node_ng_eNB_ID { /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ng_eNB_ID; extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_ng_eNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalE2node_ng_eNB_ID_1[1]; +extern asn_TYPE_member_t asn_MBR_GlobalE2node_ng_eNB_ID_1[3]; #ifdef __cplusplus } diff --git a/e2ap/headers/GlobalENB-ID.h b/e2ap/headers/GlobalENB-ID.h index 2b6cf1c..82526d2 100644 --- a/e2ap/headers/GlobalENB-ID.h +++ b/e2ap/headers/GlobalENB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalENB_ID_H_ diff --git a/e2ap/headers/GlobalNG-RANNode-ID.h b/e2ap/headers/GlobalNG-RANNode-ID.h new file mode 100644 index 0000000..933958f --- /dev/null +++ b/e2ap/headers/GlobalNG-RANNode-ID.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _GlobalNG_RANNode_ID_H_ +#define _GlobalNG_RANNode_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GlobalNG_RANNode_ID_PR { + GlobalNG_RANNode_ID_PR_NOTHING, /* No components present */ + GlobalNG_RANNode_ID_PR_gNB, + GlobalNG_RANNode_ID_PR_ng_eNB + /* Extensions may appear below */ + +} GlobalNG_RANNode_ID_PR; + +/* Forward declarations */ +struct GlobalgNB_ID; +struct GlobalngeNB_ID; + +/* GlobalNG-RANNode-ID */ +typedef struct GlobalNG_RANNode_ID { + GlobalNG_RANNode_ID_PR present; + union GlobalNG_RANNode_ID_u { + struct GlobalgNB_ID *gNB; + struct GlobalngeNB_ID *ng_eNB; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GlobalNG_RANNode_ID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GlobalNG_RANNode_ID; +extern asn_CHOICE_specifics_t asn_SPC_GlobalNG_RANNode_ID_specs_1; +extern asn_TYPE_member_t asn_MBR_GlobalNG_RANNode_ID_1[2]; +extern asn_per_constraints_t asn_PER_type_GlobalNG_RANNode_ID_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _GlobalNG_RANNode_ID_H_ */ +#include diff --git a/e2ap/headers/GlobalRIC-ID.h b/e2ap/headers/GlobalRIC-ID.h index ad389c3..a00d235 100644 --- a/e2ap/headers/GlobalRIC-ID.h +++ b/e2ap/headers/GlobalRIC-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalRIC_ID_H_ diff --git a/e2ap/headers/GlobalenGNB-ID.h b/e2ap/headers/GlobalenGNB-ID.h index 7df68b1..c15e591 100644 --- a/e2ap/headers/GlobalenGNB-ID.h +++ b/e2ap/headers/GlobalenGNB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalenGNB_ID_H_ diff --git a/e2ap/headers/GlobalgNB-ID.h b/e2ap/headers/GlobalgNB-ID.h index 242edf2..311a1ee 100644 --- a/e2ap/headers/GlobalgNB-ID.h +++ b/e2ap/headers/GlobalgNB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalgNB_ID_H_ diff --git a/e2ap/headers/GlobalngeNB-ID.h b/e2ap/headers/GlobalngeNB-ID.h index 8aba4cc..b5ac25e 100644 --- a/e2ap/headers/GlobalngeNB-ID.h +++ b/e2ap/headers/GlobalngeNB-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _GlobalngeNB_ID_H_ diff --git a/e2ap/headers/InitiatingMessage.h b/e2ap/headers/InitiatingMessage.h index fd10bc7..7204a1c 100644 --- a/e2ap/headers/InitiatingMessage.h +++ b/e2ap/headers/InitiatingMessage.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Descriptions" - * found in "E2AP-PDU-Descriptions-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _InitiatingMessage_H_ @@ -22,20 +22,24 @@ #include "RICsubscriptionDeleteRequest.h" #include "RICsubscriptionDeleteResponse.h" #include "RICsubscriptionDeleteFailure.h" -#include "RICserviceUpdate.h" -#include "RICserviceUpdateAcknowledge.h" -#include "RICserviceUpdateFailure.h" #include "RICcontrolRequest.h" #include "RICcontrolAcknowledge.h" #include "RICcontrolFailure.h" #include "E2setupRequest.h" #include "E2setupResponse.h" #include "E2setupFailure.h" +#include "E2nodeConfigurationUpdate.h" +#include "E2nodeConfigurationUpdateAcknowledge.h" +#include "E2nodeConfigurationUpdateFailure.h" #include "ResetRequest.h" #include "ResetResponse.h" +#include "E2RemovalRequest.h" +#include "E2RemovalResponse.h" +#include "E2RemovalFailure.h" #include "RICindication.h" #include "RICserviceQuery.h" #include "ErrorIndication.h" +#include "RICsubscriptionDeleteRequired.h" #include #include #include @@ -49,13 +53,15 @@ typedef enum InitiatingMessage__value_PR { InitiatingMessage__value_PR_NOTHING, /* No components present */ InitiatingMessage__value_PR_RICsubscriptionRequest, InitiatingMessage__value_PR_RICsubscriptionDeleteRequest, - InitiatingMessage__value_PR_RICserviceUpdate, InitiatingMessage__value_PR_RICcontrolRequest, InitiatingMessage__value_PR_E2setupRequest, + InitiatingMessage__value_PR_E2nodeConfigurationUpdate, InitiatingMessage__value_PR_ResetRequest, + InitiatingMessage__value_PR_E2RemovalRequest, InitiatingMessage__value_PR_RICindication, InitiatingMessage__value_PR_RICserviceQuery, - InitiatingMessage__value_PR_ErrorIndication + InitiatingMessage__value_PR_ErrorIndication, + InitiatingMessage__value_PR_RICsubscriptionDeleteRequired } InitiatingMessage__value_PR; /* InitiatingMessage */ @@ -67,13 +73,15 @@ typedef struct InitiatingMessage { union InitiatingMessage__value_u { RICsubscriptionRequest_t RICsubscriptionRequest; RICsubscriptionDeleteRequest_t RICsubscriptionDeleteRequest; - RICserviceUpdate_t RICserviceUpdate; RICcontrolRequest_t RICcontrolRequest; E2setupRequest_t E2setupRequest; + E2nodeConfigurationUpdate_t E2nodeConfigurationUpdate; ResetRequest_t ResetRequest; + E2RemovalRequest_t E2RemovalRequest; RICindication_t RICindication; RICserviceQuery_t RICserviceQuery; ErrorIndication_t ErrorIndication; + RICsubscriptionDeleteRequired_t RICsubscriptionDeleteRequired; } choice; /* Context for parsing across buffer boundaries */ diff --git a/e2ap/headers/MMEname.h b/e2ap/headers/MMEname.h new file mode 100644 index 0000000..7b7bfd4 --- /dev/null +++ b/e2ap/headers/MMEname.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _MMEname_H_ +#define _MMEname_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* MMEname */ +typedef PrintableString_t MMEname_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MMEname_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MMEname; +asn_struct_free_f MMEname_free; +asn_struct_print_f MMEname_print; +asn_constr_check_f MMEname_constraint; +ber_type_decoder_f MMEname_decode_ber; +der_type_encoder_f MMEname_encode_der; +xer_type_decoder_f MMEname_decode_xer; +xer_type_encoder_f MMEname_encode_xer; +oer_type_decoder_f MMEname_decode_oer; +oer_type_encoder_f MMEname_encode_oer; +per_type_decoder_f MMEname_decode_uper; +per_type_encoder_f MMEname_encode_uper; +per_type_decoder_f MMEname_decode_aper; +per_type_encoder_f MMEname_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MMEname_H_ */ +#include diff --git a/e2ap/headers/NGENB-DU-ID.h b/e2ap/headers/NGENB-DU-ID.h new file mode 100644 index 0000000..9617b7b --- /dev/null +++ b/e2ap/headers/NGENB-DU-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NGENB_DU_ID_H_ +#define _NGENB_DU_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* NGENB-DU-ID */ +typedef INTEGER_t NGENB_DU_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NGENB_DU_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NGENB_DU_ID; +asn_struct_free_f NGENB_DU_ID_free; +asn_struct_print_f NGENB_DU_ID_print; +asn_constr_check_f NGENB_DU_ID_constraint; +ber_type_decoder_f NGENB_DU_ID_decode_ber; +der_type_encoder_f NGENB_DU_ID_encode_der; +xer_type_decoder_f NGENB_DU_ID_decode_xer; +xer_type_encoder_f NGENB_DU_ID_encode_xer; +oer_type_decoder_f NGENB_DU_ID_decode_oer; +oer_type_encoder_f NGENB_DU_ID_encode_oer; +per_type_decoder_f NGENB_DU_ID_decode_uper; +per_type_encoder_f NGENB_DU_ID_encode_uper; +per_type_decoder_f NGENB_DU_ID_decode_aper; +per_type_encoder_f NGENB_DU_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NGENB_DU_ID_H_ */ +#include diff --git a/e2ap/headers/PLMN-Identity.h b/e2ap/headers/PLMN-Identity.h index 2fb1a85..49aea15 100644 --- a/e2ap/headers/PLMN-Identity.h +++ b/e2ap/headers/PLMN-Identity.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _PLMN_Identity_H_ diff --git a/e2ap/headers/Presence.h b/e2ap/headers/Presence.h index 06713ac..714b803 100644 --- a/e2ap/headers/Presence.h +++ b/e2ap/headers/Presence.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _Presence_H_ diff --git a/e2ap/headers/PrintableString.h b/e2ap/headers/PrintableString.h new file mode 100644 index 0000000..8c2b61a --- /dev/null +++ b/e2ap/headers/PrintableString.h @@ -0,0 +1,37 @@ +/*- + * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#ifndef _PrintableString_H_ +#define _PrintableString_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef OCTET_STRING_t PrintableString_t; /* Implemented via OCTET STRING */ + +extern asn_TYPE_descriptor_t asn_DEF_PrintableString; +extern asn_TYPE_operation_t asn_OP_PrintableString; + +asn_constr_check_f PrintableString_constraint; + +#define PrintableString_free OCTET_STRING_free +#define PrintableString_print OCTET_STRING_print_utf8 +#define PrintableString_compare OCTET_STRING_compare +#define PrintableString_decode_ber OCTET_STRING_decode_ber +#define PrintableString_encode_der OCTET_STRING_encode_der +#define PrintableString_decode_xer OCTET_STRING_decode_xer_utf8 +#define PrintableString_encode_xer OCTET_STRING_encode_xer_utf8 +#define PrintableString_decode_uper OCTET_STRING_decode_uper +#define PrintableString_encode_uper OCTET_STRING_encode_uper +#define PrintableString_decode_aper OCTET_STRING_decode_aper +#define PrintableString_encode_aper OCTET_STRING_encode_aper + +#ifdef __cplusplus +} +#endif + +#endif /* _PrintableString_H_ */ diff --git a/e2ap/headers/ProcedureCode.h b/e2ap/headers/ProcedureCode.h index 2b76e8b..0d97a3a 100644 --- a/e2ap/headers/ProcedureCode.h +++ b/e2ap/headers/ProcedureCode.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ProcedureCode_H_ @@ -46,6 +46,10 @@ per_type_encoder_f ProcedureCode_encode_aper; #define ProcedureCode_id_RICserviceUpdate ((ProcedureCode_t)7) #define ProcedureCode_id_RICsubscription ((ProcedureCode_t)8) #define ProcedureCode_id_RICsubscriptionDelete ((ProcedureCode_t)9) +#define ProcedureCode_id_E2nodeConfigurationUpdate ((ProcedureCode_t)10) +#define ProcedureCode_id_E2connectionUpdate ((ProcedureCode_t)11) +#define ProcedureCode_id_RICsubscriptionDeleteRequired ((ProcedureCode_t)12) +#define ProcedureCode_id_E2removal ((ProcedureCode_t)13) #ifdef __cplusplus } diff --git a/e2ap/headers/ProtocolIE-Container.h b/e2ap/headers/ProtocolIE-Container.h index 361db9c..02009e2 100644 --- a/e2ap/headers/ProtocolIE-Container.h +++ b/e2ap/headers/ProtocolIE-Container.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ProtocolIE_Container_H_ @@ -26,6 +26,7 @@ struct RICsubscriptionFailure_IEs; struct RICsubscriptionDeleteRequest_IEs; struct RICsubscriptionDeleteResponse_IEs; struct RICsubscriptionDeleteFailure_IEs; +struct RICsubscriptionDeleteRequired_IEs; struct RICindication_IEs; struct RICcontrolRequest_IEs; struct RICcontrolAcknowledge_IEs; @@ -34,216 +35,259 @@ struct ErrorIndication_IEs; struct E2setupRequestIEs; struct E2setupResponseIEs; struct E2setupFailureIEs; +struct E2nodeConfigurationUpdate_IEs; +struct E2nodeConfigurationUpdateAcknowledge_IEs; +struct E2nodeConfigurationUpdateFailure_IEs; struct ResetRequestIEs; struct ResetResponseIEs; -struct RICserviceUpdate_IEs; -struct RICserviceUpdateAcknowledge_IEs; -struct RICserviceUpdateFailure_IEs; struct RICserviceQuery_IEs; +struct E2RemovalRequestIEs; +struct E2RemovalResponseIEs; +struct E2RemovalFailureIEs; /* ProtocolIE-Container */ -typedef struct ProtocolIE_Container_87P0 { +typedef struct ProtocolIE_Container_185P0 { A_SEQUENCE_OF(struct RICsubscriptionRequest_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P0_t; -typedef struct ProtocolIE_Container_87P1 { +} ProtocolIE_Container_185P0_t; +typedef struct ProtocolIE_Container_185P1 { A_SEQUENCE_OF(struct RICsubscriptionResponse_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P1_t; -typedef struct ProtocolIE_Container_87P2 { +} ProtocolIE_Container_185P1_t; +typedef struct ProtocolIE_Container_185P2 { A_SEQUENCE_OF(struct RICsubscriptionFailure_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P2_t; -typedef struct ProtocolIE_Container_87P3 { +} ProtocolIE_Container_185P2_t; +typedef struct ProtocolIE_Container_185P3 { A_SEQUENCE_OF(struct RICsubscriptionDeleteRequest_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P3_t; -typedef struct ProtocolIE_Container_87P4 { +} ProtocolIE_Container_185P3_t; +typedef struct ProtocolIE_Container_185P4 { A_SEQUENCE_OF(struct RICsubscriptionDeleteResponse_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P4_t; -typedef struct ProtocolIE_Container_87P5 { +} ProtocolIE_Container_185P4_t; +typedef struct ProtocolIE_Container_185P5 { A_SEQUENCE_OF(struct RICsubscriptionDeleteFailure_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P5_t; -typedef struct ProtocolIE_Container_87P6 { +} ProtocolIE_Container_185P5_t; +typedef struct ProtocolIE_Container_185P6 { + A_SEQUENCE_OF(struct RICsubscriptionDeleteRequired_IEs) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ProtocolIE_Container_185P6_t; +typedef struct ProtocolIE_Container_185P7 { A_SEQUENCE_OF(struct RICindication_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P6_t; -typedef struct ProtocolIE_Container_87P7 { +} ProtocolIE_Container_185P7_t; +typedef struct ProtocolIE_Container_185P8 { A_SEQUENCE_OF(struct RICcontrolRequest_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P7_t; -typedef struct ProtocolIE_Container_87P8 { +} ProtocolIE_Container_185P8_t; +typedef struct ProtocolIE_Container_185P9 { A_SEQUENCE_OF(struct RICcontrolAcknowledge_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P8_t; -typedef struct ProtocolIE_Container_87P9 { +} ProtocolIE_Container_185P9_t; +typedef struct ProtocolIE_Container_185P10 { A_SEQUENCE_OF(struct RICcontrolFailure_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P9_t; -typedef struct ProtocolIE_Container_87P10 { +} ProtocolIE_Container_185P10_t; +typedef struct ProtocolIE_Container_185P11 { A_SEQUENCE_OF(struct ErrorIndication_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P10_t; -typedef struct ProtocolIE_Container_87P11 { +} ProtocolIE_Container_185P11_t; +typedef struct ProtocolIE_Container_185P12 { A_SEQUENCE_OF(struct E2setupRequestIEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P11_t; -typedef struct ProtocolIE_Container_87P12 { +} ProtocolIE_Container_185P12_t; +typedef struct ProtocolIE_Container_185P13 { A_SEQUENCE_OF(struct E2setupResponseIEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P12_t; -typedef struct ProtocolIE_Container_87P13 { +} ProtocolIE_Container_185P13_t; +typedef struct ProtocolIE_Container_185P14 { A_SEQUENCE_OF(struct E2setupFailureIEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P13_t; -typedef struct ProtocolIE_Container_87P14 { +} ProtocolIE_Container_185P14_t; +typedef struct ProtocolIE_Container_185P15 { + A_SEQUENCE_OF(struct E2nodeConfigurationUpdate_IEs) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ProtocolIE_Container_185P15_t; +typedef struct ProtocolIE_Container_185P16 { + A_SEQUENCE_OF(struct E2nodeConfigurationUpdateAcknowledge_IEs) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ProtocolIE_Container_185P16_t; +typedef struct ProtocolIE_Container_185P17 { + A_SEQUENCE_OF(struct E2nodeConfigurationUpdateFailure_IEs) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ProtocolIE_Container_185P17_t; +typedef struct ProtocolIE_Container_185P18 { A_SEQUENCE_OF(struct ResetRequestIEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P14_t; -typedef struct ProtocolIE_Container_87P15 { +} ProtocolIE_Container_185P18_t; +typedef struct ProtocolIE_Container_185P19 { A_SEQUENCE_OF(struct ResetResponseIEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P15_t; -typedef struct ProtocolIE_Container_87P16 { - A_SEQUENCE_OF(struct RICserviceUpdate_IEs) list; +} ProtocolIE_Container_185P19_t; +typedef struct ProtocolIE_Container_185P20 { + A_SEQUENCE_OF(struct RICserviceQuery_IEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P16_t; -typedef struct ProtocolIE_Container_87P17 { - A_SEQUENCE_OF(struct RICserviceUpdateAcknowledge_IEs) list; +} ProtocolIE_Container_185P20_t; +typedef struct ProtocolIE_Container_185P21 { + A_SEQUENCE_OF(struct E2RemovalRequestIEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P17_t; -typedef struct ProtocolIE_Container_87P18 { - A_SEQUENCE_OF(struct RICserviceUpdateFailure_IEs) list; +} ProtocolIE_Container_185P21_t; +typedef struct ProtocolIE_Container_185P22 { + A_SEQUENCE_OF(struct E2RemovalResponseIEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P18_t; -typedef struct ProtocolIE_Container_87P19 { - A_SEQUENCE_OF(struct RICserviceQuery_IEs) list; +} ProtocolIE_Container_185P22_t; +typedef struct ProtocolIE_Container_185P23 { + A_SEQUENCE_OF(struct E2RemovalFailureIEs) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ProtocolIE_Container_87P19_t; +} ProtocolIE_Container_185P23_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P0; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P0_specs_1; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P0_1[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P0_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P1; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P1_specs_3; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P1_3[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P1_constr_3; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P2; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P2_specs_5; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P2_5[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P2_constr_5; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P3; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P3_specs_7; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P3_7[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P3_constr_7; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P4; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P4_specs_9; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P4_9[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P4_constr_9; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P5; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P5_specs_11; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P5_11[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P5_constr_11; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P6; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P6_specs_13; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P6_13[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P6_constr_13; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P7; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P7_specs_15; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P7_15[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P7_constr_15; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P8; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P8_specs_17; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P8_17[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P8_constr_17; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P9; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P9_specs_19; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P9_19[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P9_constr_19; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P10; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P10_specs_21; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P10_21[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P10_constr_21; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P11; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P11_specs_23; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P11_23[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P11_constr_23; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P12; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P12_specs_25; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P12_25[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P12_constr_25; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P13; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P13_specs_27; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P13_27[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P13_constr_27; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P14; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P14_specs_29; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P14_29[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P14_constr_29; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P15; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P15_specs_31; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P15_31[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P15_constr_31; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P16; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P16_specs_33; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P16_33[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P16_constr_33; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P17; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P17_specs_35; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P17_35[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P17_constr_35; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P18; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P18_specs_37; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P18_37[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P18_constr_37; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P19; -extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P19_specs_39; -extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P19_39[1]; -extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P19_constr_39; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P0; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P0_specs_1; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P0_1[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P0_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P1; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P1_specs_3; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P1_3[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P1_constr_3; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P2; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P2_specs_5; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P2_5[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P2_constr_5; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P3; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P3_specs_7; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P3_7[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P3_constr_7; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P4; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P4_specs_9; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P4_9[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P4_constr_9; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P5; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P5_specs_11; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P5_11[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P5_constr_11; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P6; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P6_specs_13; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P6_13[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P6_constr_13; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P7; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P7_specs_15; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P7_15[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P7_constr_15; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P8; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P8_specs_17; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P8_17[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P8_constr_17; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P9; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P9_specs_19; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P9_19[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P9_constr_19; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P10; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P10_specs_21; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P10_21[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P10_constr_21; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P11; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P11_specs_23; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P11_23[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P11_constr_23; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P12; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P12_specs_25; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P12_25[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P12_constr_25; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P13; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P13_specs_27; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P13_27[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P13_constr_27; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P14; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P14_specs_29; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P14_29[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P14_constr_29; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P15; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P15_specs_31; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P15_31[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P15_constr_31; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P16; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P16_specs_33; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P16_33[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P16_constr_33; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P17; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P17_specs_35; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P17_35[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P17_constr_35; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P18; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P18_specs_37; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P18_37[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P18_constr_37; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P19; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P19_specs_39; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P19_39[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P19_constr_39; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P20; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P20_specs_41; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P20_41[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P20_constr_41; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P21; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P21_specs_43; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P21_43[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P21_constr_43; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P22; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P22_specs_45; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P22_45[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P22_constr_45; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P23; +extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P23_specs_47; +extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P23_47[1]; +extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P23_constr_47; #ifdef __cplusplus } diff --git a/e2ap/headers/ProtocolIE-ContainerList.h b/e2ap/headers/ProtocolIE-ContainerList.h index 44b1d2a..3dd26ed 100644 --- a/e2ap/headers/ProtocolIE-ContainerList.h +++ b/e2ap/headers/ProtocolIE-ContainerList.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ProtocolIE_ContainerList_H_ diff --git a/e2ap/headers/ProtocolIE-ContainerPair.h b/e2ap/headers/ProtocolIE-ContainerPair.h index cac7e26..e0afa48 100644 --- a/e2ap/headers/ProtocolIE-ContainerPair.h +++ b/e2ap/headers/ProtocolIE-ContainerPair.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ProtocolIE_ContainerPair_H_ diff --git a/e2ap/headers/ProtocolIE-ContainerPairList.h b/e2ap/headers/ProtocolIE-ContainerPairList.h index 9d6a2d3..80d1ea7 100644 --- a/e2ap/headers/ProtocolIE-ContainerPairList.h +++ b/e2ap/headers/ProtocolIE-ContainerPairList.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ProtocolIE_ContainerPairList_H_ diff --git a/e2ap/headers/ProtocolIE-Field.h b/e2ap/headers/ProtocolIE-Field.h index 8bbef66..46d68ec 100644 --- a/e2ap/headers/ProtocolIE-Field.h +++ b/e2ap/headers/ProtocolIE-Field.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ProtocolIE_Field_H_ @@ -23,6 +23,14 @@ #include #include "RICaction-Admitted-Item.h" #include "RICaction-NotAdmitted-Item.h" +#include "RICsubscription-withCause-Item.h" +#include "E2nodeComponentConfigAddition-Item.h" +#include "E2nodeComponentConfigUpdate-Item.h" +#include "E2nodeComponentConfigRemoval-Item.h" +#include "E2nodeTNLassociationRemoval-Item.h" +#include "E2nodeComponentConfigAdditionAck-Item.h" +#include "E2nodeComponentConfigUpdateAck-Item.h" +#include "E2nodeComponentConfigRemovalAck-Item.h" #include "RANfunction-Item.h" #include "RANfunctionID-Item.h" #include "RANfunctionIDcause-Item.h" @@ -31,8 +39,9 @@ #include "RICsubscriptionDetails.h" #include "RICaction-Admitted-List.h" #include "RICaction-NotAdmitted-List.h" -#include "CriticalityDiagnostics.h" #include "Cause.h" +#include "CriticalityDiagnostics.h" +#include "RICsubscription-List-withCause.h" #include "RICactionID.h" #include "RICindicationSN.h" #include "RICindicationType.h" @@ -42,14 +51,22 @@ #include "RICcontrolHeader.h" #include "RICcontrolMessage.h" #include "RICcontrolAckRequest.h" -#include "RICcontrolStatus.h" #include "RICcontrolOutcome.h" +#include "TransactionID.h" #include "GlobalE2node-ID.h" #include "RANfunctions-List.h" +#include "E2nodeComponentConfigAddition-List.h" #include "GlobalRIC-ID.h" #include "RANfunctionsID-List.h" #include "RANfunctionsIDcause-List.h" +#include "E2nodeComponentConfigAdditionAck-List.h" #include "TimeToWait.h" +#include "TNLinformation.h" +#include "E2nodeComponentConfigUpdate-List.h" +#include "E2nodeComponentConfigRemoval-List.h" +#include "E2nodeTNLassociationRemoval-List.h" +#include "E2nodeComponentConfigUpdateAck-List.h" +#include "E2nodeComponentConfigRemovalAck-List.h" #ifdef __cplusplus extern "C" { @@ -68,6 +85,38 @@ typedef enum RICaction_NotAdmitted_ItemIEs__value_PR { RICaction_NotAdmitted_ItemIEs__value_PR_NOTHING, /* No components present */ RICaction_NotAdmitted_ItemIEs__value_PR_RICaction_NotAdmitted_Item } RICaction_NotAdmitted_ItemIEs__value_PR; +typedef enum RICsubscription_withCause_ItemIEs__value_PR { + RICsubscription_withCause_ItemIEs__value_PR_NOTHING, /* No components present */ + RICsubscription_withCause_ItemIEs__value_PR_RICsubscription_withCause_Item +} RICsubscription_withCause_ItemIEs__value_PR; +typedef enum E2nodeComponentConfigAddition_ItemIEs__value_PR { + E2nodeComponentConfigAddition_ItemIEs__value_PR_NOTHING, /* No components present */ + E2nodeComponentConfigAddition_ItemIEs__value_PR_E2nodeComponentConfigAddition_Item +} E2nodeComponentConfigAddition_ItemIEs__value_PR; +typedef enum E2nodeComponentConfigUpdate_ItemIEs__value_PR { + E2nodeComponentConfigUpdate_ItemIEs__value_PR_NOTHING, /* No components present */ + E2nodeComponentConfigUpdate_ItemIEs__value_PR_E2nodeComponentConfigUpdate_Item +} E2nodeComponentConfigUpdate_ItemIEs__value_PR; +typedef enum E2nodeComponentConfigRemoval_ItemIEs__value_PR { + E2nodeComponentConfigRemoval_ItemIEs__value_PR_NOTHING, /* No components present */ + E2nodeComponentConfigRemoval_ItemIEs__value_PR_E2nodeComponentConfigRemoval_Item +} E2nodeComponentConfigRemoval_ItemIEs__value_PR; +typedef enum E2nodeTNLassociationRemoval_ItemIEs__value_PR { + E2nodeTNLassociationRemoval_ItemIEs__value_PR_NOTHING, /* No components present */ + E2nodeTNLassociationRemoval_ItemIEs__value_PR_E2nodeTNLassociationRemoval_Item +} E2nodeTNLassociationRemoval_ItemIEs__value_PR; +typedef enum E2nodeComponentConfigAdditionAck_ItemIEs__value_PR { + E2nodeComponentConfigAdditionAck_ItemIEs__value_PR_NOTHING, /* No components present */ + E2nodeComponentConfigAdditionAck_ItemIEs__value_PR_E2nodeComponentConfigAdditionAck_Item +} E2nodeComponentConfigAdditionAck_ItemIEs__value_PR; +typedef enum E2nodeComponentConfigUpdateAck_ItemIEs__value_PR { + E2nodeComponentConfigUpdateAck_ItemIEs__value_PR_NOTHING, /* No components present */ + E2nodeComponentConfigUpdateAck_ItemIEs__value_PR_E2nodeComponentConfigUpdateAck_Item +} E2nodeComponentConfigUpdateAck_ItemIEs__value_PR; +typedef enum E2nodeComponentConfigRemovalAck_ItemIEs__value_PR { + E2nodeComponentConfigRemovalAck_ItemIEs__value_PR_NOTHING, /* No components present */ + E2nodeComponentConfigRemovalAck_ItemIEs__value_PR_E2nodeComponentConfigRemovalAck_Item +} E2nodeComponentConfigRemovalAck_ItemIEs__value_PR; typedef enum RANfunction_ItemIEs__value_PR { RANfunction_ItemIEs__value_PR_NOTHING, /* No components present */ RANfunction_ItemIEs__value_PR_RANfunction_Item @@ -97,7 +146,7 @@ typedef enum RICsubscriptionFailure_IEs__value_PR { RICsubscriptionFailure_IEs__value_PR_NOTHING, /* No components present */ RICsubscriptionFailure_IEs__value_PR_RICrequestID, RICsubscriptionFailure_IEs__value_PR_RANfunctionID, - RICsubscriptionFailure_IEs__value_PR_RICaction_NotAdmitted_List, + RICsubscriptionFailure_IEs__value_PR_Cause, RICsubscriptionFailure_IEs__value_PR_CriticalityDiagnostics } RICsubscriptionFailure_IEs__value_PR; typedef enum RICsubscriptionDeleteRequest_IEs__value_PR { @@ -117,6 +166,10 @@ typedef enum RICsubscriptionDeleteFailure_IEs__value_PR { RICsubscriptionDeleteFailure_IEs__value_PR_Cause, RICsubscriptionDeleteFailure_IEs__value_PR_CriticalityDiagnostics } RICsubscriptionDeleteFailure_IEs__value_PR; +typedef enum RICsubscriptionDeleteRequired_IEs__value_PR { + RICsubscriptionDeleteRequired_IEs__value_PR_NOTHING, /* No components present */ + RICsubscriptionDeleteRequired_IEs__value_PR_RICsubscription_List_withCause +} RICsubscriptionDeleteRequired_IEs__value_PR; typedef enum RICindication_IEs__value_PR { RICindication_IEs__value_PR_NOTHING, /* No components present */ RICindication_IEs__value_PR_RICrequestID, @@ -142,7 +195,6 @@ typedef enum RICcontrolAcknowledge_IEs__value_PR { RICcontrolAcknowledge_IEs__value_PR_RICrequestID, RICcontrolAcknowledge_IEs__value_PR_RANfunctionID, RICcontrolAcknowledge_IEs__value_PR_RICcallProcessID, - RICcontrolAcknowledge_IEs__value_PR_RICcontrolStatus, RICcontrolAcknowledge_IEs__value_PR_RICcontrolOutcome } RICcontrolAcknowledge_IEs__value_PR; typedef enum RICcontrolFailure_IEs__value_PR { @@ -155,6 +207,7 @@ typedef enum RICcontrolFailure_IEs__value_PR { } RICcontrolFailure_IEs__value_PR; typedef enum ErrorIndication_IEs__value_PR { ErrorIndication_IEs__value_PR_NOTHING, /* No components present */ + ErrorIndication_IEs__value_PR_TransactionID, ErrorIndication_IEs__value_PR_RICrequestID, ErrorIndication_IEs__value_PR_RANfunctionID, ErrorIndication_IEs__value_PR_Cause, @@ -162,49 +215,80 @@ typedef enum ErrorIndication_IEs__value_PR { } ErrorIndication_IEs__value_PR; typedef enum E2setupRequestIEs__value_PR { E2setupRequestIEs__value_PR_NOTHING, /* No components present */ + E2setupRequestIEs__value_PR_TransactionID, E2setupRequestIEs__value_PR_GlobalE2node_ID, - E2setupRequestIEs__value_PR_RANfunctions_List + E2setupRequestIEs__value_PR_RANfunctions_List, + E2setupRequestIEs__value_PR_E2nodeComponentConfigAddition_List } E2setupRequestIEs__value_PR; typedef enum E2setupResponseIEs__value_PR { E2setupResponseIEs__value_PR_NOTHING, /* No components present */ + E2setupResponseIEs__value_PR_TransactionID, E2setupResponseIEs__value_PR_GlobalRIC_ID, E2setupResponseIEs__value_PR_RANfunctionsID_List, - E2setupResponseIEs__value_PR_RANfunctionsIDcause_List + E2setupResponseIEs__value_PR_RANfunctionsIDcause_List, + E2setupResponseIEs__value_PR_E2nodeComponentConfigAdditionAck_List } E2setupResponseIEs__value_PR; typedef enum E2setupFailureIEs__value_PR { E2setupFailureIEs__value_PR_NOTHING, /* No components present */ + E2setupFailureIEs__value_PR_TransactionID, E2setupFailureIEs__value_PR_Cause, E2setupFailureIEs__value_PR_TimeToWait, - E2setupFailureIEs__value_PR_CriticalityDiagnostics + E2setupFailureIEs__value_PR_CriticalityDiagnostics, + E2setupFailureIEs__value_PR_TNLinformation } E2setupFailureIEs__value_PR; +typedef enum E2nodeConfigurationUpdate_IEs__value_PR { + E2nodeConfigurationUpdate_IEs__value_PR_NOTHING, /* No components present */ + E2nodeConfigurationUpdate_IEs__value_PR_TransactionID, + E2nodeConfigurationUpdate_IEs__value_PR_GlobalE2node_ID, + E2nodeConfigurationUpdate_IEs__value_PR_E2nodeComponentConfigAddition_List, + E2nodeConfigurationUpdate_IEs__value_PR_E2nodeComponentConfigUpdate_List, + E2nodeConfigurationUpdate_IEs__value_PR_E2nodeComponentConfigRemoval_List, + E2nodeConfigurationUpdate_IEs__value_PR_E2nodeTNLassociationRemoval_List +} E2nodeConfigurationUpdate_IEs__value_PR; +typedef enum E2nodeConfigurationUpdateAcknowledge_IEs__value_PR { + E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_NOTHING, /* No components present */ + E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_TransactionID, + E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_E2nodeComponentConfigAdditionAck_List, + E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_E2nodeComponentConfigUpdateAck_List, + E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_E2nodeComponentConfigRemovalAck_List +} E2nodeConfigurationUpdateAcknowledge_IEs__value_PR; +typedef enum E2nodeConfigurationUpdateFailure_IEs__value_PR { + E2nodeConfigurationUpdateFailure_IEs__value_PR_NOTHING, /* No components present */ + E2nodeConfigurationUpdateFailure_IEs__value_PR_TransactionID, + E2nodeConfigurationUpdateFailure_IEs__value_PR_Cause, + E2nodeConfigurationUpdateFailure_IEs__value_PR_TimeToWait, + E2nodeConfigurationUpdateFailure_IEs__value_PR_CriticalityDiagnostics +} E2nodeConfigurationUpdateFailure_IEs__value_PR; typedef enum ResetRequestIEs__value_PR { ResetRequestIEs__value_PR_NOTHING, /* No components present */ + ResetRequestIEs__value_PR_TransactionID, ResetRequestIEs__value_PR_Cause } ResetRequestIEs__value_PR; typedef enum ResetResponseIEs__value_PR { ResetResponseIEs__value_PR_NOTHING, /* No components present */ + ResetResponseIEs__value_PR_TransactionID, ResetResponseIEs__value_PR_CriticalityDiagnostics } ResetResponseIEs__value_PR; -typedef enum RICserviceUpdate_IEs__value_PR { - RICserviceUpdate_IEs__value_PR_NOTHING, /* No components present */ - RICserviceUpdate_IEs__value_PR_RANfunctions_List, - RICserviceUpdate_IEs__value_PR_RANfunctionsID_List -} RICserviceUpdate_IEs__value_PR; -typedef enum RICserviceUpdateAcknowledge_IEs__value_PR { - RICserviceUpdateAcknowledge_IEs__value_PR_NOTHING, /* No components present */ - RICserviceUpdateAcknowledge_IEs__value_PR_RANfunctionsID_List, - RICserviceUpdateAcknowledge_IEs__value_PR_RANfunctionsIDcause_List -} RICserviceUpdateAcknowledge_IEs__value_PR; -typedef enum RICserviceUpdateFailure_IEs__value_PR { - RICserviceUpdateFailure_IEs__value_PR_NOTHING, /* No components present */ - RICserviceUpdateFailure_IEs__value_PR_RANfunctionsIDcause_List, - RICserviceUpdateFailure_IEs__value_PR_TimeToWait, - RICserviceUpdateFailure_IEs__value_PR_CriticalityDiagnostics -} RICserviceUpdateFailure_IEs__value_PR; typedef enum RICserviceQuery_IEs__value_PR { RICserviceQuery_IEs__value_PR_NOTHING, /* No components present */ + RICserviceQuery_IEs__value_PR_TransactionID, RICserviceQuery_IEs__value_PR_RANfunctionsID_List } RICserviceQuery_IEs__value_PR; +typedef enum E2RemovalRequestIEs__value_PR { + E2RemovalRequestIEs__value_PR_NOTHING, /* No components present */ + E2RemovalRequestIEs__value_PR_TransactionID +} E2RemovalRequestIEs__value_PR; +typedef enum E2RemovalResponseIEs__value_PR { + E2RemovalResponseIEs__value_PR_NOTHING, /* No components present */ + E2RemovalResponseIEs__value_PR_TransactionID, + E2RemovalResponseIEs__value_PR_CriticalityDiagnostics +} E2RemovalResponseIEs__value_PR; +typedef enum E2RemovalFailureIEs__value_PR { + E2RemovalFailureIEs__value_PR_NOTHING, /* No components present */ + E2RemovalFailureIEs__value_PR_TransactionID, + E2RemovalFailureIEs__value_PR_Cause, + E2RemovalFailureIEs__value_PR_CriticalityDiagnostics +} E2RemovalFailureIEs__value_PR; /* ProtocolIE-Field */ typedef struct RICaction_ToBeSetup_ItemIEs { @@ -255,6 +339,134 @@ typedef struct RICaction_NotAdmitted_ItemIEs { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } RICaction_NotAdmitted_ItemIEs_t; +typedef struct RICsubscription_withCause_ItemIEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct RICsubscription_withCause_ItemIEs__value { + RICsubscription_withCause_ItemIEs__value_PR present; + union RICsubscription_withCause_ItemIEs__value_u { + RICsubscription_withCause_Item_t RICsubscription_withCause_Item; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RICsubscription_withCause_ItemIEs_t; +typedef struct E2nodeComponentConfigAddition_ItemIEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeComponentConfigAddition_ItemIEs__value { + E2nodeComponentConfigAddition_ItemIEs__value_PR present; + union E2nodeComponentConfigAddition_ItemIEs__value_u { + E2nodeComponentConfigAddition_Item_t E2nodeComponentConfigAddition_Item; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigAddition_ItemIEs_t; +typedef struct E2nodeComponentConfigUpdate_ItemIEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeComponentConfigUpdate_ItemIEs__value { + E2nodeComponentConfigUpdate_ItemIEs__value_PR present; + union E2nodeComponentConfigUpdate_ItemIEs__value_u { + E2nodeComponentConfigUpdate_Item_t E2nodeComponentConfigUpdate_Item; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigUpdate_ItemIEs_t; +typedef struct E2nodeComponentConfigRemoval_ItemIEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeComponentConfigRemoval_ItemIEs__value { + E2nodeComponentConfigRemoval_ItemIEs__value_PR present; + union E2nodeComponentConfigRemoval_ItemIEs__value_u { + E2nodeComponentConfigRemoval_Item_t E2nodeComponentConfigRemoval_Item; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigRemoval_ItemIEs_t; +typedef struct E2nodeTNLassociationRemoval_ItemIEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeTNLassociationRemoval_ItemIEs__value { + E2nodeTNLassociationRemoval_ItemIEs__value_PR present; + union E2nodeTNLassociationRemoval_ItemIEs__value_u { + E2nodeTNLassociationRemoval_Item_t E2nodeTNLassociationRemoval_Item; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeTNLassociationRemoval_ItemIEs_t; +typedef struct E2nodeComponentConfigAdditionAck_ItemIEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeComponentConfigAdditionAck_ItemIEs__value { + E2nodeComponentConfigAdditionAck_ItemIEs__value_PR present; + union E2nodeComponentConfigAdditionAck_ItemIEs__value_u { + E2nodeComponentConfigAdditionAck_Item_t E2nodeComponentConfigAdditionAck_Item; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigAdditionAck_ItemIEs_t; +typedef struct E2nodeComponentConfigUpdateAck_ItemIEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeComponentConfigUpdateAck_ItemIEs__value { + E2nodeComponentConfigUpdateAck_ItemIEs__value_PR present; + union E2nodeComponentConfigUpdateAck_ItemIEs__value_u { + E2nodeComponentConfigUpdateAck_Item_t E2nodeComponentConfigUpdateAck_Item; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigUpdateAck_ItemIEs_t; +typedef struct E2nodeComponentConfigRemovalAck_ItemIEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeComponentConfigRemovalAck_ItemIEs__value { + E2nodeComponentConfigRemovalAck_ItemIEs__value_PR present; + union E2nodeComponentConfigRemovalAck_ItemIEs__value_u { + E2nodeComponentConfigRemovalAck_Item_t E2nodeComponentConfigRemovalAck_Item; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeComponentConfigRemovalAck_ItemIEs_t; typedef struct RANfunction_ItemIEs { ProtocolIE_ID_t id; Criticality_t criticality; @@ -348,7 +560,7 @@ typedef struct RICsubscriptionFailure_IEs { union RICsubscriptionFailure_IEs__value_u { RICrequestID_t RICrequestID; RANfunctionID_t RANfunctionID; - RICaction_NotAdmitted_List_t RICaction_NotAdmitted_List; + Cause_t Cause; CriticalityDiagnostics_t CriticalityDiagnostics; } choice; @@ -412,6 +624,22 @@ typedef struct RICsubscriptionDeleteFailure_IEs { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } RICsubscriptionDeleteFailure_IEs_t; +typedef struct RICsubscriptionDeleteRequired_IEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct RICsubscriptionDeleteRequired_IEs__value { + RICsubscriptionDeleteRequired_IEs__value_PR present; + union RICsubscriptionDeleteRequired_IEs__value_u { + RICsubscription_List_withCause_t RICsubscription_List_withCause; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RICsubscriptionDeleteRequired_IEs_t; typedef struct RICindication_IEs { ProtocolIE_ID_t id; Criticality_t criticality; @@ -465,7 +693,6 @@ typedef struct RICcontrolAcknowledge_IEs { RICrequestID_t RICrequestID; RANfunctionID_t RANfunctionID; RICcallProcessID_t RICcallProcessID; - RICcontrolStatus_t RICcontrolStatus; RICcontrolOutcome_t RICcontrolOutcome; } choice; @@ -502,6 +729,7 @@ typedef struct ErrorIndication_IEs { struct ErrorIndication_IEs__value { ErrorIndication_IEs__value_PR present; union ErrorIndication_IEs__value_u { + TransactionID_t TransactionID; RICrequestID_t RICrequestID; RANfunctionID_t RANfunctionID; Cause_t Cause; @@ -521,8 +749,10 @@ typedef struct E2setupRequestIEs { struct E2setupRequestIEs__value { E2setupRequestIEs__value_PR present; union E2setupRequestIEs__value_u { + TransactionID_t TransactionID; GlobalE2node_ID_t GlobalE2node_ID; RANfunctions_List_t RANfunctions_List; + E2nodeComponentConfigAddition_List_t E2nodeComponentConfigAddition_List; } choice; /* Context for parsing across buffer boundaries */ @@ -538,9 +768,11 @@ typedef struct E2setupResponseIEs { struct E2setupResponseIEs__value { E2setupResponseIEs__value_PR present; union E2setupResponseIEs__value_u { + TransactionID_t TransactionID; GlobalRIC_ID_t GlobalRIC_ID; RANfunctionsID_List_t RANfunctionsID_List; RANfunctionsIDcause_List_t RANfunctionsIDcause_List; + E2nodeComponentConfigAdditionAck_List_t E2nodeComponentConfigAdditionAck_List; } choice; /* Context for parsing across buffer boundaries */ @@ -556,9 +788,11 @@ typedef struct E2setupFailureIEs { struct E2setupFailureIEs__value { E2setupFailureIEs__value_PR present; union E2setupFailureIEs__value_u { + TransactionID_t TransactionID; Cause_t Cause; TimeToWait_t TimeToWait; CriticalityDiagnostics_t CriticalityDiagnostics; + TNLinformation_t TNLinformation; } choice; /* Context for parsing across buffer boundaries */ @@ -568,12 +802,72 @@ typedef struct E2setupFailureIEs { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } E2setupFailureIEs_t; +typedef struct E2nodeConfigurationUpdate_IEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeConfigurationUpdate_IEs__value { + E2nodeConfigurationUpdate_IEs__value_PR present; + union E2nodeConfigurationUpdate_IEs__value_u { + TransactionID_t TransactionID; + GlobalE2node_ID_t GlobalE2node_ID; + E2nodeComponentConfigAddition_List_t E2nodeComponentConfigAddition_List; + E2nodeComponentConfigUpdate_List_t E2nodeComponentConfigUpdate_List; + E2nodeComponentConfigRemoval_List_t E2nodeComponentConfigRemoval_List; + E2nodeTNLassociationRemoval_List_t E2nodeTNLassociationRemoval_List; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeConfigurationUpdate_IEs_t; +typedef struct E2nodeConfigurationUpdateAcknowledge_IEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeConfigurationUpdateAcknowledge_IEs__value { + E2nodeConfigurationUpdateAcknowledge_IEs__value_PR present; + union E2nodeConfigurationUpdateAcknowledge_IEs__value_u { + TransactionID_t TransactionID; + E2nodeComponentConfigAdditionAck_List_t E2nodeComponentConfigAdditionAck_List; + E2nodeComponentConfigUpdateAck_List_t E2nodeComponentConfigUpdateAck_List; + E2nodeComponentConfigRemovalAck_List_t E2nodeComponentConfigRemovalAck_List; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeConfigurationUpdateAcknowledge_IEs_t; +typedef struct E2nodeConfigurationUpdateFailure_IEs { + ProtocolIE_ID_t id; + Criticality_t criticality; + struct E2nodeConfigurationUpdateFailure_IEs__value { + E2nodeConfigurationUpdateFailure_IEs__value_PR present; + union E2nodeConfigurationUpdateFailure_IEs__value_u { + TransactionID_t TransactionID; + Cause_t Cause; + TimeToWait_t TimeToWait; + CriticalityDiagnostics_t CriticalityDiagnostics; + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } value; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2nodeConfigurationUpdateFailure_IEs_t; typedef struct ResetRequestIEs { ProtocolIE_ID_t id; Criticality_t criticality; struct ResetRequestIEs__value { ResetRequestIEs__value_PR present; union ResetRequestIEs__value_u { + TransactionID_t TransactionID; Cause_t Cause; } choice; @@ -590,6 +884,7 @@ typedef struct ResetResponseIEs { struct ResetResponseIEs__value { ResetResponseIEs__value_PR present; union ResetResponseIEs__value_u { + TransactionID_t TransactionID; CriticalityDiagnostics_t CriticalityDiagnostics; } choice; @@ -600,13 +895,13 @@ typedef struct ResetResponseIEs { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; } ResetResponseIEs_t; -typedef struct RICserviceUpdate_IEs { +typedef struct RICserviceQuery_IEs { ProtocolIE_ID_t id; Criticality_t criticality; - struct RICserviceUpdate_IEs__value { - RICserviceUpdate_IEs__value_PR present; - union RICserviceUpdate_IEs__value_u { - RANfunctions_List_t RANfunctions_List; + struct RICserviceQuery_IEs__value { + RICserviceQuery_IEs__value_PR present; + union RICserviceQuery_IEs__value_u { + TransactionID_t TransactionID; RANfunctionsID_List_t RANfunctionsID_List; } choice; @@ -616,15 +911,14 @@ typedef struct RICserviceUpdate_IEs { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} RICserviceUpdate_IEs_t; -typedef struct RICserviceUpdateAcknowledge_IEs { +} RICserviceQuery_IEs_t; +typedef struct E2RemovalRequestIEs { ProtocolIE_ID_t id; Criticality_t criticality; - struct RICserviceUpdateAcknowledge_IEs__value { - RICserviceUpdateAcknowledge_IEs__value_PR present; - union RICserviceUpdateAcknowledge_IEs__value_u { - RANfunctionsID_List_t RANfunctionsID_List; - RANfunctionsIDcause_List_t RANfunctionsIDcause_List; + struct E2RemovalRequestIEs__value { + E2RemovalRequestIEs__value_PR present; + union E2RemovalRequestIEs__value_u { + TransactionID_t TransactionID; } choice; /* Context for parsing across buffer boundaries */ @@ -633,15 +927,14 @@ typedef struct RICserviceUpdateAcknowledge_IEs { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} RICserviceUpdateAcknowledge_IEs_t; -typedef struct RICserviceUpdateFailure_IEs { +} E2RemovalRequestIEs_t; +typedef struct E2RemovalResponseIEs { ProtocolIE_ID_t id; Criticality_t criticality; - struct RICserviceUpdateFailure_IEs__value { - RICserviceUpdateFailure_IEs__value_PR present; - union RICserviceUpdateFailure_IEs__value_u { - RANfunctionsIDcause_List_t RANfunctionsIDcause_List; - TimeToWait_t TimeToWait; + struct E2RemovalResponseIEs__value { + E2RemovalResponseIEs__value_PR present; + union E2RemovalResponseIEs__value_u { + TransactionID_t TransactionID; CriticalityDiagnostics_t CriticalityDiagnostics; } choice; @@ -651,14 +944,16 @@ typedef struct RICserviceUpdateFailure_IEs { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} RICserviceUpdateFailure_IEs_t; -typedef struct RICserviceQuery_IEs { +} E2RemovalResponseIEs_t; +typedef struct E2RemovalFailureIEs { ProtocolIE_ID_t id; Criticality_t criticality; - struct RICserviceQuery_IEs__value { - RICserviceQuery_IEs__value_PR present; - union RICserviceQuery_IEs__value_u { - RANfunctionsID_List_t RANfunctionsID_List; + struct E2RemovalFailureIEs__value { + E2RemovalFailureIEs__value_PR present; + union E2RemovalFailureIEs__value_u { + TransactionID_t TransactionID; + Cause_t Cause; + CriticalityDiagnostics_t CriticalityDiagnostics; } choice; /* Context for parsing across buffer boundaries */ @@ -667,7 +962,7 @@ typedef struct RICserviceQuery_IEs { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} RICserviceQuery_IEs_t; +} E2RemovalFailureIEs_t; /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_RICaction_ToBeSetup_ItemIEs; @@ -679,75 +974,111 @@ extern asn_TYPE_member_t asn_MBR_RICaction_Admitted_ItemIEs_5[3]; extern asn_TYPE_descriptor_t asn_DEF_RICaction_NotAdmitted_ItemIEs; extern asn_SEQUENCE_specifics_t asn_SPC_RICaction_NotAdmitted_ItemIEs_specs_9; extern asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_ItemIEs_9[3]; +extern asn_TYPE_descriptor_t asn_DEF_RICsubscription_withCause_ItemIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscription_withCause_ItemIEs_specs_13; +extern asn_TYPE_member_t asn_MBR_RICsubscription_withCause_ItemIEs_13[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_ItemIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAddition_ItemIEs_specs_17; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_ItemIEs_17[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_ItemIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_21; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_21[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_ItemIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemoval_ItemIEs_specs_25; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_ItemIEs_25[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_ItemIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeTNLassociationRemoval_ItemIEs_specs_29; +extern asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_ItemIEs_29[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_ItemIEs_specs_33; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_ItemIEs_33[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_37; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_37[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_ItemIEs_specs_41; +extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_ItemIEs_41[3]; extern asn_TYPE_descriptor_t asn_DEF_RANfunction_ItemIEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RANfunction_ItemIEs_specs_13; -extern asn_TYPE_member_t asn_MBR_RANfunction_ItemIEs_13[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RANfunction_ItemIEs_specs_45; +extern asn_TYPE_member_t asn_MBR_RANfunction_ItemIEs_45[3]; extern asn_TYPE_descriptor_t asn_DEF_RANfunctionID_ItemIEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_ItemIEs_specs_17; -extern asn_TYPE_member_t asn_MBR_RANfunctionID_ItemIEs_17[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_ItemIEs_specs_49; +extern asn_TYPE_member_t asn_MBR_RANfunctionID_ItemIEs_49[3]; extern asn_TYPE_descriptor_t asn_DEF_RANfunctionIDcause_ItemIEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_ItemIEs_specs_21; -extern asn_TYPE_member_t asn_MBR_RANfunctionIDcause_ItemIEs_21[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_ItemIEs_specs_53; +extern asn_TYPE_member_t asn_MBR_RANfunctionIDcause_ItemIEs_53[3]; extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionRequest_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionRequest_IEs_specs_25; -extern asn_TYPE_member_t asn_MBR_RICsubscriptionRequest_IEs_25[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionRequest_IEs_specs_57; +extern asn_TYPE_member_t asn_MBR_RICsubscriptionRequest_IEs_57[3]; extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionResponse_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionResponse_IEs_specs_29; -extern asn_TYPE_member_t asn_MBR_RICsubscriptionResponse_IEs_29[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionResponse_IEs_specs_61; +extern asn_TYPE_member_t asn_MBR_RICsubscriptionResponse_IEs_61[3]; extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionFailure_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionFailure_IEs_specs_33; -extern asn_TYPE_member_t asn_MBR_RICsubscriptionFailure_IEs_33[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionFailure_IEs_specs_65; +extern asn_TYPE_member_t asn_MBR_RICsubscriptionFailure_IEs_65[3]; extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequest_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_37; -extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequest_IEs_37[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_69; +extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequest_IEs_69[3]; extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteResponse_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_41; -extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteResponse_IEs_41[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_73; +extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteResponse_IEs_73[3]; extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteFailure_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_45; -extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteFailure_IEs_45[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_77; +extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteFailure_IEs_77[3]; +extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequired_IEs; +extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequired_IEs_specs_81; +extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequired_IEs_81[3]; extern asn_TYPE_descriptor_t asn_DEF_RICindication_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICindication_IEs_specs_49; -extern asn_TYPE_member_t asn_MBR_RICindication_IEs_49[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICindication_IEs_specs_85; +extern asn_TYPE_member_t asn_MBR_RICindication_IEs_85[3]; extern asn_TYPE_descriptor_t asn_DEF_RICcontrolRequest_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolRequest_IEs_specs_53; -extern asn_TYPE_member_t asn_MBR_RICcontrolRequest_IEs_53[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolRequest_IEs_specs_89; +extern asn_TYPE_member_t asn_MBR_RICcontrolRequest_IEs_89[3]; extern asn_TYPE_descriptor_t asn_DEF_RICcontrolAcknowledge_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolAcknowledge_IEs_specs_57; -extern asn_TYPE_member_t asn_MBR_RICcontrolAcknowledge_IEs_57[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolAcknowledge_IEs_specs_93; +extern asn_TYPE_member_t asn_MBR_RICcontrolAcknowledge_IEs_93[3]; extern asn_TYPE_descriptor_t asn_DEF_RICcontrolFailure_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolFailure_IEs_specs_61; -extern asn_TYPE_member_t asn_MBR_RICcontrolFailure_IEs_61[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolFailure_IEs_specs_97; +extern asn_TYPE_member_t asn_MBR_RICcontrolFailure_IEs_97[3]; extern asn_TYPE_descriptor_t asn_DEF_ErrorIndication_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_ErrorIndication_IEs_specs_65; -extern asn_TYPE_member_t asn_MBR_ErrorIndication_IEs_65[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_ErrorIndication_IEs_specs_101; +extern asn_TYPE_member_t asn_MBR_ErrorIndication_IEs_101[3]; extern asn_TYPE_descriptor_t asn_DEF_E2setupRequestIEs; -extern asn_SEQUENCE_specifics_t asn_SPC_E2setupRequestIEs_specs_69; -extern asn_TYPE_member_t asn_MBR_E2setupRequestIEs_69[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_E2setupRequestIEs_specs_105; +extern asn_TYPE_member_t asn_MBR_E2setupRequestIEs_105[3]; extern asn_TYPE_descriptor_t asn_DEF_E2setupResponseIEs; -extern asn_SEQUENCE_specifics_t asn_SPC_E2setupResponseIEs_specs_73; -extern asn_TYPE_member_t asn_MBR_E2setupResponseIEs_73[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_E2setupResponseIEs_specs_109; +extern asn_TYPE_member_t asn_MBR_E2setupResponseIEs_109[3]; extern asn_TYPE_descriptor_t asn_DEF_E2setupFailureIEs; -extern asn_SEQUENCE_specifics_t asn_SPC_E2setupFailureIEs_specs_77; -extern asn_TYPE_member_t asn_MBR_E2setupFailureIEs_77[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_E2setupFailureIEs_specs_113; +extern asn_TYPE_member_t asn_MBR_E2setupFailureIEs_113[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdate_IEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdate_IEs_specs_117; +extern asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdate_IEs_117[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateAcknowledge_IEs_specs_121; +extern asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateAcknowledge_IEs_121[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateFailure_IEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateFailure_IEs_specs_125; +extern asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateFailure_IEs_125[3]; extern asn_TYPE_descriptor_t asn_DEF_ResetRequestIEs; -extern asn_SEQUENCE_specifics_t asn_SPC_ResetRequestIEs_specs_81; -extern asn_TYPE_member_t asn_MBR_ResetRequestIEs_81[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_ResetRequestIEs_specs_129; +extern asn_TYPE_member_t asn_MBR_ResetRequestIEs_129[3]; extern asn_TYPE_descriptor_t asn_DEF_ResetResponseIEs; -extern asn_SEQUENCE_specifics_t asn_SPC_ResetResponseIEs_specs_85; -extern asn_TYPE_member_t asn_MBR_ResetResponseIEs_85[3]; -extern asn_TYPE_descriptor_t asn_DEF_RICserviceUpdate_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdate_IEs_specs_89; -extern asn_TYPE_member_t asn_MBR_RICserviceUpdate_IEs_89[3]; -extern asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateAcknowledge_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateAcknowledge_IEs_specs_93; -extern asn_TYPE_member_t asn_MBR_RICserviceUpdateAcknowledge_IEs_93[3]; -extern asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateFailure_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateFailure_IEs_specs_97; -extern asn_TYPE_member_t asn_MBR_RICserviceUpdateFailure_IEs_97[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_ResetResponseIEs_specs_133; +extern asn_TYPE_member_t asn_MBR_ResetResponseIEs_133[3]; extern asn_TYPE_descriptor_t asn_DEF_RICserviceQuery_IEs; -extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceQuery_IEs_specs_101; -extern asn_TYPE_member_t asn_MBR_RICserviceQuery_IEs_101[3]; +extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceQuery_IEs_specs_137; +extern asn_TYPE_member_t asn_MBR_RICserviceQuery_IEs_137[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2RemovalRequestIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2RemovalRequestIEs_specs_141; +extern asn_TYPE_member_t asn_MBR_E2RemovalRequestIEs_141[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2RemovalResponseIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2RemovalResponseIEs_specs_145; +extern asn_TYPE_member_t asn_MBR_E2RemovalResponseIEs_145[3]; +extern asn_TYPE_descriptor_t asn_DEF_E2RemovalFailureIEs; +extern asn_SEQUENCE_specifics_t asn_SPC_E2RemovalFailureIEs_specs_149; +extern asn_TYPE_member_t asn_MBR_E2RemovalFailureIEs_149[3]; #ifdef __cplusplus } diff --git a/e2ap/headers/ProtocolIE-FieldPair.h b/e2ap/headers/ProtocolIE-FieldPair.h index 17a19c7..1770c43 100644 --- a/e2ap/headers/ProtocolIE-FieldPair.h +++ b/e2ap/headers/ProtocolIE-FieldPair.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ProtocolIE_FieldPair_H_ diff --git a/e2ap/headers/ProtocolIE-ID.h b/e2ap/headers/ProtocolIE-ID.h index dc75633..aeb1ffa 100644 --- a/e2ap/headers/ProtocolIE-ID.h +++ b/e2ap/headers/ProtocolIE-ID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ProtocolIE_ID_H_ @@ -69,6 +69,33 @@ per_type_encoder_f ProtocolIE_ID_encode_aper; #define ProtocolIE_ID_id_RICsubscriptionDetails ((ProtocolIE_ID_t)30) #define ProtocolIE_ID_id_TimeToWait ((ProtocolIE_ID_t)31) #define ProtocolIE_ID_id_RICcontrolOutcome ((ProtocolIE_ID_t)32) +#define ProtocolIE_ID_id_E2nodeComponentConfigUpdate ((ProtocolIE_ID_t)33) +#define ProtocolIE_ID_id_E2nodeComponentConfigUpdate_Item ((ProtocolIE_ID_t)34) +#define ProtocolIE_ID_id_E2nodeComponentConfigUpdateAck ((ProtocolIE_ID_t)35) +#define ProtocolIE_ID_id_E2nodeComponentConfigUpdateAck_Item ((ProtocolIE_ID_t)36) +#define ProtocolIE_ID_id_E2connectionSetup ((ProtocolIE_ID_t)39) +#define ProtocolIE_ID_id_E2connectionSetupFailed ((ProtocolIE_ID_t)40) +#define ProtocolIE_ID_id_E2connectionSetupFailed_Item ((ProtocolIE_ID_t)41) +#define ProtocolIE_ID_id_E2connectionFailed_Item ((ProtocolIE_ID_t)42) +#define ProtocolIE_ID_id_E2connectionUpdate_Item ((ProtocolIE_ID_t)43) +#define ProtocolIE_ID_id_E2connectionUpdateAdd ((ProtocolIE_ID_t)44) +#define ProtocolIE_ID_id_E2connectionUpdateModify ((ProtocolIE_ID_t)45) +#define ProtocolIE_ID_id_E2connectionUpdateRemove ((ProtocolIE_ID_t)46) +#define ProtocolIE_ID_id_E2connectionUpdateRemove_Item ((ProtocolIE_ID_t)47) +#define ProtocolIE_ID_id_TNLinformation ((ProtocolIE_ID_t)48) +#define ProtocolIE_ID_id_TransactionID ((ProtocolIE_ID_t)49) +#define ProtocolIE_ID_id_E2nodeComponentConfigAddition ((ProtocolIE_ID_t)50) +#define ProtocolIE_ID_id_E2nodeComponentConfigAddition_Item ((ProtocolIE_ID_t)51) +#define ProtocolIE_ID_id_E2nodeComponentConfigAdditionAck ((ProtocolIE_ID_t)52) +#define ProtocolIE_ID_id_E2nodeComponentConfigAdditionAck_Item ((ProtocolIE_ID_t)53) +#define ProtocolIE_ID_id_E2nodeComponentConfigRemoval ((ProtocolIE_ID_t)54) +#define ProtocolIE_ID_id_E2nodeComponentConfigRemoval_Item ((ProtocolIE_ID_t)55) +#define ProtocolIE_ID_id_E2nodeComponentConfigRemovalAck ((ProtocolIE_ID_t)56) +#define ProtocolIE_ID_id_E2nodeComponentConfigRemovalAck_Item ((ProtocolIE_ID_t)57) +#define ProtocolIE_ID_id_E2nodeTNLassociationRemoval ((ProtocolIE_ID_t)58) +#define ProtocolIE_ID_id_E2nodeTNLassociationRemoval_Item ((ProtocolIE_ID_t)59) +#define ProtocolIE_ID_id_RICsubscriptionToBeRemoved ((ProtocolIE_ID_t)60) +#define ProtocolIE_ID_id_RICsubscription_withCause_Item ((ProtocolIE_ID_t)61) #ifdef __cplusplus } diff --git a/e2ap/headers/ProtocolIE-SingleContainer.h b/e2ap/headers/ProtocolIE-SingleContainer.h index eadd741..49edd27 100644 --- a/e2ap/headers/ProtocolIE-SingleContainer.h +++ b/e2ap/headers/ProtocolIE-SingleContainer.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ProtocolIE_SingleContainer_H_ @@ -19,98 +19,218 @@ extern "C" { #endif /* ProtocolIE-SingleContainer */ -typedef RICaction_ToBeSetup_ItemIEs_t ProtocolIE_SingleContainer_90P0_t; -typedef RICaction_Admitted_ItemIEs_t ProtocolIE_SingleContainer_90P1_t; -typedef RICaction_NotAdmitted_ItemIEs_t ProtocolIE_SingleContainer_90P2_t; -typedef RANfunction_ItemIEs_t ProtocolIE_SingleContainer_90P3_t; -typedef RANfunctionID_ItemIEs_t ProtocolIE_SingleContainer_90P4_t; -typedef RANfunctionIDcause_ItemIEs_t ProtocolIE_SingleContainer_90P5_t; +typedef RICaction_ToBeSetup_ItemIEs_t ProtocolIE_SingleContainer_188P0_t; +typedef RICaction_Admitted_ItemIEs_t ProtocolIE_SingleContainer_188P1_t; +typedef RICaction_NotAdmitted_ItemIEs_t ProtocolIE_SingleContainer_188P2_t; +typedef RICsubscription_withCause_ItemIEs_t ProtocolIE_SingleContainer_188P3_t; +typedef E2nodeComponentConfigAddition_ItemIEs_t ProtocolIE_SingleContainer_188P4_t; +typedef E2nodeComponentConfigUpdate_ItemIEs_t ProtocolIE_SingleContainer_188P5_t; +typedef E2nodeComponentConfigRemoval_ItemIEs_t ProtocolIE_SingleContainer_188P6_t; +typedef E2nodeTNLassociationRemoval_ItemIEs_t ProtocolIE_SingleContainer_188P7_t; +typedef E2nodeComponentConfigAdditionAck_ItemIEs_t ProtocolIE_SingleContainer_188P8_t; +typedef E2nodeComponentConfigUpdateAck_ItemIEs_t ProtocolIE_SingleContainer_188P9_t; +typedef E2nodeComponentConfigRemovalAck_ItemIEs_t ProtocolIE_SingleContainer_188P10_t; +typedef RANfunction_ItemIEs_t ProtocolIE_SingleContainer_188P11_t; +typedef RANfunctionID_ItemIEs_t ProtocolIE_SingleContainer_188P12_t; +typedef RANfunctionIDcause_ItemIEs_t ProtocolIE_SingleContainer_188P13_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P0; -asn_struct_free_f ProtocolIE_SingleContainer_90P0_free; -asn_struct_print_f ProtocolIE_SingleContainer_90P0_print; -asn_constr_check_f ProtocolIE_SingleContainer_90P0_constraint; -ber_type_decoder_f ProtocolIE_SingleContainer_90P0_decode_ber; -der_type_encoder_f ProtocolIE_SingleContainer_90P0_encode_der; -xer_type_decoder_f ProtocolIE_SingleContainer_90P0_decode_xer; -xer_type_encoder_f ProtocolIE_SingleContainer_90P0_encode_xer; -oer_type_decoder_f ProtocolIE_SingleContainer_90P0_decode_oer; -oer_type_encoder_f ProtocolIE_SingleContainer_90P0_encode_oer; -per_type_decoder_f ProtocolIE_SingleContainer_90P0_decode_uper; -per_type_encoder_f ProtocolIE_SingleContainer_90P0_encode_uper; -per_type_decoder_f ProtocolIE_SingleContainer_90P0_decode_aper; -per_type_encoder_f ProtocolIE_SingleContainer_90P0_encode_aper; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P1; -asn_struct_free_f ProtocolIE_SingleContainer_90P1_free; -asn_struct_print_f ProtocolIE_SingleContainer_90P1_print; -asn_constr_check_f ProtocolIE_SingleContainer_90P1_constraint; -ber_type_decoder_f ProtocolIE_SingleContainer_90P1_decode_ber; -der_type_encoder_f ProtocolIE_SingleContainer_90P1_encode_der; -xer_type_decoder_f ProtocolIE_SingleContainer_90P1_decode_xer; -xer_type_encoder_f ProtocolIE_SingleContainer_90P1_encode_xer; -oer_type_decoder_f ProtocolIE_SingleContainer_90P1_decode_oer; -oer_type_encoder_f ProtocolIE_SingleContainer_90P1_encode_oer; -per_type_decoder_f ProtocolIE_SingleContainer_90P1_decode_uper; -per_type_encoder_f ProtocolIE_SingleContainer_90P1_encode_uper; -per_type_decoder_f ProtocolIE_SingleContainer_90P1_decode_aper; -per_type_encoder_f ProtocolIE_SingleContainer_90P1_encode_aper; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P2; -asn_struct_free_f ProtocolIE_SingleContainer_90P2_free; -asn_struct_print_f ProtocolIE_SingleContainer_90P2_print; -asn_constr_check_f ProtocolIE_SingleContainer_90P2_constraint; -ber_type_decoder_f ProtocolIE_SingleContainer_90P2_decode_ber; -der_type_encoder_f ProtocolIE_SingleContainer_90P2_encode_der; -xer_type_decoder_f ProtocolIE_SingleContainer_90P2_decode_xer; -xer_type_encoder_f ProtocolIE_SingleContainer_90P2_encode_xer; -oer_type_decoder_f ProtocolIE_SingleContainer_90P2_decode_oer; -oer_type_encoder_f ProtocolIE_SingleContainer_90P2_encode_oer; -per_type_decoder_f ProtocolIE_SingleContainer_90P2_decode_uper; -per_type_encoder_f ProtocolIE_SingleContainer_90P2_encode_uper; -per_type_decoder_f ProtocolIE_SingleContainer_90P2_decode_aper; -per_type_encoder_f ProtocolIE_SingleContainer_90P2_encode_aper; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P3; -asn_struct_free_f ProtocolIE_SingleContainer_90P3_free; -asn_struct_print_f ProtocolIE_SingleContainer_90P3_print; -asn_constr_check_f ProtocolIE_SingleContainer_90P3_constraint; -ber_type_decoder_f ProtocolIE_SingleContainer_90P3_decode_ber; -der_type_encoder_f ProtocolIE_SingleContainer_90P3_encode_der; -xer_type_decoder_f ProtocolIE_SingleContainer_90P3_decode_xer; -xer_type_encoder_f ProtocolIE_SingleContainer_90P3_encode_xer; -oer_type_decoder_f ProtocolIE_SingleContainer_90P3_decode_oer; -oer_type_encoder_f ProtocolIE_SingleContainer_90P3_encode_oer; -per_type_decoder_f ProtocolIE_SingleContainer_90P3_decode_uper; -per_type_encoder_f ProtocolIE_SingleContainer_90P3_encode_uper; -per_type_decoder_f ProtocolIE_SingleContainer_90P3_decode_aper; -per_type_encoder_f ProtocolIE_SingleContainer_90P3_encode_aper; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P4; -asn_struct_free_f ProtocolIE_SingleContainer_90P4_free; -asn_struct_print_f ProtocolIE_SingleContainer_90P4_print; -asn_constr_check_f ProtocolIE_SingleContainer_90P4_constraint; -ber_type_decoder_f ProtocolIE_SingleContainer_90P4_decode_ber; -der_type_encoder_f ProtocolIE_SingleContainer_90P4_encode_der; -xer_type_decoder_f ProtocolIE_SingleContainer_90P4_decode_xer; -xer_type_encoder_f ProtocolIE_SingleContainer_90P4_encode_xer; -oer_type_decoder_f ProtocolIE_SingleContainer_90P4_decode_oer; -oer_type_encoder_f ProtocolIE_SingleContainer_90P4_encode_oer; -per_type_decoder_f ProtocolIE_SingleContainer_90P4_decode_uper; -per_type_encoder_f ProtocolIE_SingleContainer_90P4_encode_uper; -per_type_decoder_f ProtocolIE_SingleContainer_90P4_decode_aper; -per_type_encoder_f ProtocolIE_SingleContainer_90P4_encode_aper; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P5; -asn_struct_free_f ProtocolIE_SingleContainer_90P5_free; -asn_struct_print_f ProtocolIE_SingleContainer_90P5_print; -asn_constr_check_f ProtocolIE_SingleContainer_90P5_constraint; -ber_type_decoder_f ProtocolIE_SingleContainer_90P5_decode_ber; -der_type_encoder_f ProtocolIE_SingleContainer_90P5_encode_der; -xer_type_decoder_f ProtocolIE_SingleContainer_90P5_decode_xer; -xer_type_encoder_f ProtocolIE_SingleContainer_90P5_encode_xer; -oer_type_decoder_f ProtocolIE_SingleContainer_90P5_decode_oer; -oer_type_encoder_f ProtocolIE_SingleContainer_90P5_encode_oer; -per_type_decoder_f ProtocolIE_SingleContainer_90P5_decode_uper; -per_type_encoder_f ProtocolIE_SingleContainer_90P5_encode_uper; -per_type_decoder_f ProtocolIE_SingleContainer_90P5_decode_aper; -per_type_encoder_f ProtocolIE_SingleContainer_90P5_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P0; +asn_struct_free_f ProtocolIE_SingleContainer_188P0_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P0_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P0_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P0_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P0_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P0_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P0_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P0_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P0_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P0_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P0_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P0_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P0_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P1; +asn_struct_free_f ProtocolIE_SingleContainer_188P1_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P1_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P1_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P1_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P1_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P1_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P1_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P1_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P1_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P1_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P1_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P1_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P1_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P2; +asn_struct_free_f ProtocolIE_SingleContainer_188P2_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P2_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P2_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P2_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P2_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P2_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P2_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P2_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P2_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P2_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P2_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P2_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P2_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P3; +asn_struct_free_f ProtocolIE_SingleContainer_188P3_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P3_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P3_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P3_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P3_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P3_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P3_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P3_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P3_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P3_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P3_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P3_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P3_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P4; +asn_struct_free_f ProtocolIE_SingleContainer_188P4_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P4_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P4_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P4_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P4_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P4_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P4_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P4_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P4_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P4_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P4_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P4_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P4_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P5; +asn_struct_free_f ProtocolIE_SingleContainer_188P5_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P5_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P5_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P5_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P5_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P5_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P5_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P5_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P5_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P5_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P5_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P5_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P5_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P6; +asn_struct_free_f ProtocolIE_SingleContainer_188P6_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P6_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P6_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P6_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P6_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P6_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P6_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P6_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P6_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P6_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P6_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P6_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P6_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P7; +asn_struct_free_f ProtocolIE_SingleContainer_188P7_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P7_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P7_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P7_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P7_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P7_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P7_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P7_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P7_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P7_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P7_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P7_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P7_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P8; +asn_struct_free_f ProtocolIE_SingleContainer_188P8_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P8_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P8_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P8_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P8_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P8_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P8_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P8_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P8_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P8_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P8_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P8_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P8_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P9; +asn_struct_free_f ProtocolIE_SingleContainer_188P9_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P9_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P9_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P9_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P9_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P9_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P9_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P9_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P9_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P9_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P9_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P9_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P9_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P10; +asn_struct_free_f ProtocolIE_SingleContainer_188P10_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P10_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P10_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P10_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P10_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P10_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P10_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P10_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P10_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P10_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P10_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P10_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P10_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P11; +asn_struct_free_f ProtocolIE_SingleContainer_188P11_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P11_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P11_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P11_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P11_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P11_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P11_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P11_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P11_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P11_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P11_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P11_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P11_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P12; +asn_struct_free_f ProtocolIE_SingleContainer_188P12_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P12_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P12_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P12_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P12_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P12_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P12_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P12_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P12_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P12_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P12_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P12_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P12_encode_aper; +extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P13; +asn_struct_free_f ProtocolIE_SingleContainer_188P13_free; +asn_struct_print_f ProtocolIE_SingleContainer_188P13_print; +asn_constr_check_f ProtocolIE_SingleContainer_188P13_constraint; +ber_type_decoder_f ProtocolIE_SingleContainer_188P13_decode_ber; +der_type_encoder_f ProtocolIE_SingleContainer_188P13_encode_der; +xer_type_decoder_f ProtocolIE_SingleContainer_188P13_decode_xer; +xer_type_encoder_f ProtocolIE_SingleContainer_188P13_encode_xer; +oer_type_decoder_f ProtocolIE_SingleContainer_188P13_decode_oer; +oer_type_encoder_f ProtocolIE_SingleContainer_188P13_encode_oer; +per_type_decoder_f ProtocolIE_SingleContainer_188P13_decode_uper; +per_type_encoder_f ProtocolIE_SingleContainer_188P13_encode_uper; +per_type_decoder_f ProtocolIE_SingleContainer_188P13_decode_aper; +per_type_encoder_f ProtocolIE_SingleContainer_188P13_encode_aper; #ifdef __cplusplus } diff --git a/e2ap/headers/RANfunction-Item.h b/e2ap/headers/RANfunction-Item.h index 38b5e97..20154c8 100644 --- a/e2ap/headers/RANfunction-Item.h +++ b/e2ap/headers/RANfunction-Item.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RANfunction_Item_H_ @@ -15,6 +15,7 @@ #include "RANfunctionID.h" #include "RANfunctionDefinition.h" #include "RANfunctionRevision.h" +#include "RANfunctionOID.h" #include #ifdef __cplusplus @@ -26,6 +27,7 @@ typedef struct RANfunction_Item { RANfunctionID_t ranFunctionID; RANfunctionDefinition_t ranFunctionDefinition; RANfunctionRevision_t ranFunctionRevision; + RANfunctionOID_t ranFunctionOID; /* * This type is extensible, * possible extensions are below. @@ -38,7 +40,7 @@ typedef struct RANfunction_Item { /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_RANfunction_Item; extern asn_SEQUENCE_specifics_t asn_SPC_RANfunction_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_RANfunction_Item_1[3]; +extern asn_TYPE_member_t asn_MBR_RANfunction_Item_1[4]; #ifdef __cplusplus } diff --git a/e2ap/headers/RANfunctionDefinition.h b/e2ap/headers/RANfunctionDefinition.h index 3676c45..13aed72 100644 --- a/e2ap/headers/RANfunctionDefinition.h +++ b/e2ap/headers/RANfunctionDefinition.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RANfunctionDefinition_H_ diff --git a/e2ap/headers/RANfunctionID-Item.h b/e2ap/headers/RANfunctionID-Item.h index f4a643d..29c19a7 100644 --- a/e2ap/headers/RANfunctionID-Item.h +++ b/e2ap/headers/RANfunctionID-Item.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RANfunctionID_Item_H_ diff --git a/e2ap/headers/RANfunctionID.h b/e2ap/headers/RANfunctionID.h index 00c4765..6a519ff 100644 --- a/e2ap/headers/RANfunctionID.h +++ b/e2ap/headers/RANfunctionID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RANfunctionID_H_ diff --git a/e2ap/headers/RANfunctionIDcause-Item.h b/e2ap/headers/RANfunctionIDcause-Item.h index 65d1d16..8bc5f30 100644 --- a/e2ap/headers/RANfunctionIDcause-Item.h +++ b/e2ap/headers/RANfunctionIDcause-Item.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RANfunctionIDcause_Item_H_ diff --git a/e2ap/headers/RANfunctionOID.h b/e2ap/headers/RANfunctionOID.h new file mode 100644 index 0000000..b513722 --- /dev/null +++ b/e2ap/headers/RANfunctionOID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANfunctionOID_H_ +#define _RANfunctionOID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RANfunctionOID */ +typedef PrintableString_t RANfunctionOID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RANfunctionOID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RANfunctionOID; +asn_struct_free_f RANfunctionOID_free; +asn_struct_print_f RANfunctionOID_print; +asn_constr_check_f RANfunctionOID_constraint; +ber_type_decoder_f RANfunctionOID_decode_ber; +der_type_encoder_f RANfunctionOID_encode_der; +xer_type_decoder_f RANfunctionOID_decode_xer; +xer_type_encoder_f RANfunctionOID_encode_xer; +oer_type_decoder_f RANfunctionOID_decode_oer; +oer_type_encoder_f RANfunctionOID_encode_oer; +per_type_decoder_f RANfunctionOID_decode_uper; +per_type_encoder_f RANfunctionOID_encode_uper; +per_type_decoder_f RANfunctionOID_decode_aper; +per_type_encoder_f RANfunctionOID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANfunctionOID_H_ */ +#include diff --git a/e2ap/headers/RANfunctionRevision.h b/e2ap/headers/RANfunctionRevision.h index 76f500a..7515423 100644 --- a/e2ap/headers/RANfunctionRevision.h +++ b/e2ap/headers/RANfunctionRevision.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RANfunctionRevision_H_ diff --git a/e2ap/headers/RANfunctions-List.h b/e2ap/headers/RANfunctions-List.h index c3fd3e3..14430bf 100644 --- a/e2ap/headers/RANfunctions-List.h +++ b/e2ap/headers/RANfunctions-List.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RANfunctions_List_H_ diff --git a/e2ap/headers/RANfunctionsID-List.h b/e2ap/headers/RANfunctionsID-List.h index 1a77d70..73d1e46 100644 --- a/e2ap/headers/RANfunctionsID-List.h +++ b/e2ap/headers/RANfunctionsID-List.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RANfunctionsID_List_H_ diff --git a/e2ap/headers/RANfunctionsIDcause-List.h b/e2ap/headers/RANfunctionsIDcause-List.h index 3fd51d1..99cd189 100644 --- a/e2ap/headers/RANfunctionsIDcause-List.h +++ b/e2ap/headers/RANfunctionsIDcause-List.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RANfunctionsIDcause_List_H_ diff --git a/e2ap/headers/RICaction-Admitted-Item.h b/e2ap/headers/RICaction-Admitted-Item.h index 5031b7d..7939290 100644 --- a/e2ap/headers/RICaction-Admitted-Item.h +++ b/e2ap/headers/RICaction-Admitted-Item.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICaction_Admitted_Item_H_ diff --git a/e2ap/headers/RICaction-Admitted-List.h b/e2ap/headers/RICaction-Admitted-List.h index 9464982..9ede04f 100644 --- a/e2ap/headers/RICaction-Admitted-List.h +++ b/e2ap/headers/RICaction-Admitted-List.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICaction_Admitted_List_H_ diff --git a/e2ap/headers/RICaction-NotAdmitted-Item.h b/e2ap/headers/RICaction-NotAdmitted-Item.h index b94f69c..df416f9 100644 --- a/e2ap/headers/RICaction-NotAdmitted-Item.h +++ b/e2ap/headers/RICaction-NotAdmitted-Item.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICaction_NotAdmitted_Item_H_ diff --git a/e2ap/headers/RICaction-NotAdmitted-List.h b/e2ap/headers/RICaction-NotAdmitted-List.h index 642683d..2a7c50c 100644 --- a/e2ap/headers/RICaction-NotAdmitted-List.h +++ b/e2ap/headers/RICaction-NotAdmitted-List.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICaction_NotAdmitted_List_H_ diff --git a/e2ap/headers/RICaction-ToBeSetup-Item.h b/e2ap/headers/RICaction-ToBeSetup-Item.h index a616014..8f8498a 100644 --- a/e2ap/headers/RICaction-ToBeSetup-Item.h +++ b/e2ap/headers/RICaction-ToBeSetup-Item.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICaction_ToBeSetup_Item_H_ diff --git a/e2ap/headers/RICactionDefinition.h b/e2ap/headers/RICactionDefinition.h index 349e2a8..8317299 100644 --- a/e2ap/headers/RICactionDefinition.h +++ b/e2ap/headers/RICactionDefinition.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICactionDefinition_H_ diff --git a/e2ap/headers/RICactionID.h b/e2ap/headers/RICactionID.h index b8f6447..f270c8f 100644 --- a/e2ap/headers/RICactionID.h +++ b/e2ap/headers/RICactionID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICactionID_H_ diff --git a/e2ap/headers/RICactionType.h b/e2ap/headers/RICactionType.h index e4349fd..2a6742f 100644 --- a/e2ap/headers/RICactionType.h +++ b/e2ap/headers/RICactionType.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICactionType_H_ diff --git a/e2ap/headers/RICactions-ToBeSetup-List.h b/e2ap/headers/RICactions-ToBeSetup-List.h index 632b420..e5f5e97 100644 --- a/e2ap/headers/RICactions-ToBeSetup-List.h +++ b/e2ap/headers/RICactions-ToBeSetup-List.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICactions_ToBeSetup_List_H_ diff --git a/e2ap/headers/RICcallProcessID.h b/e2ap/headers/RICcallProcessID.h index a1a4983..6818b2c 100644 --- a/e2ap/headers/RICcallProcessID.h +++ b/e2ap/headers/RICcallProcessID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICcallProcessID_H_ diff --git a/e2ap/headers/RICcontrolAckRequest.h b/e2ap/headers/RICcontrolAckRequest.h index abb9553..14f8dcd 100644 --- a/e2ap/headers/RICcontrolAckRequest.h +++ b/e2ap/headers/RICcontrolAckRequest.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICcontrolAckRequest_H_ @@ -21,8 +21,7 @@ extern "C" { /* Dependencies */ typedef enum RICcontrolAckRequest { RICcontrolAckRequest_noAck = 0, - RICcontrolAckRequest_ack = 1, - RICcontrolAckRequest_nAck = 2 + RICcontrolAckRequest_ack = 1 /* * Enumeration is extensible */ diff --git a/e2ap/headers/RICcontrolAcknowledge.h b/e2ap/headers/RICcontrolAcknowledge.h index 361f3d6..377e17e 100644 --- a/e2ap/headers/RICcontrolAcknowledge.h +++ b/e2ap/headers/RICcontrolAcknowledge.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICcontrolAcknowledge_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICcontrolAcknowledge */ typedef struct RICcontrolAcknowledge { - ProtocolIE_Container_87P8_t protocolIEs; + ProtocolIE_Container_185P9_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICcontrolFailure.h b/e2ap/headers/RICcontrolFailure.h index 6eb6a04..42da749 100644 --- a/e2ap/headers/RICcontrolFailure.h +++ b/e2ap/headers/RICcontrolFailure.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICcontrolFailure_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICcontrolFailure */ typedef struct RICcontrolFailure { - ProtocolIE_Container_87P9_t protocolIEs; + ProtocolIE_Container_185P10_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICcontrolHeader.h b/e2ap/headers/RICcontrolHeader.h index d7cad7d..d7257ef 100644 --- a/e2ap/headers/RICcontrolHeader.h +++ b/e2ap/headers/RICcontrolHeader.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICcontrolHeader_H_ diff --git a/e2ap/headers/RICcontrolMessage.h b/e2ap/headers/RICcontrolMessage.h index 08fdf4a..3e75dc0 100644 --- a/e2ap/headers/RICcontrolMessage.h +++ b/e2ap/headers/RICcontrolMessage.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICcontrolMessage_H_ diff --git a/e2ap/headers/RICcontrolOutcome.h b/e2ap/headers/RICcontrolOutcome.h index d70b5a5..c5ec501 100644 --- a/e2ap/headers/RICcontrolOutcome.h +++ b/e2ap/headers/RICcontrolOutcome.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICcontrolOutcome_H_ diff --git a/e2ap/headers/RICcontrolRequest.h b/e2ap/headers/RICcontrolRequest.h index db5ba24..9696f5d 100644 --- a/e2ap/headers/RICcontrolRequest.h +++ b/e2ap/headers/RICcontrolRequest.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICcontrolRequest_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICcontrolRequest */ typedef struct RICcontrolRequest { - ProtocolIE_Container_87P7_t protocolIEs; + ProtocolIE_Container_185P8_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICcontrolStatus.h b/e2ap/headers/RICcontrolStatus.h deleted file mode 100644 index 033f5a9..0000000 --- a/e2ap/headers/RICcontrolStatus.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#ifndef _RICcontrolStatus_H_ -#define _RICcontrolStatus_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RICcontrolStatus { - RICcontrolStatus_success = 0, - RICcontrolStatus_rejected = 1, - RICcontrolStatus_failed = 2 - /* - * Enumeration is extensible - */ -} e_RICcontrolStatus; - -/* RICcontrolStatus */ -typedef long RICcontrolStatus_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RICcontrolStatus_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RICcontrolStatus; -extern const asn_INTEGER_specifics_t asn_SPC_RICcontrolStatus_specs_1; -asn_struct_free_f RICcontrolStatus_free; -asn_struct_print_f RICcontrolStatus_print; -asn_constr_check_f RICcontrolStatus_constraint; -ber_type_decoder_f RICcontrolStatus_decode_ber; -der_type_encoder_f RICcontrolStatus_encode_der; -xer_type_decoder_f RICcontrolStatus_decode_xer; -xer_type_encoder_f RICcontrolStatus_encode_xer; -oer_type_decoder_f RICcontrolStatus_decode_oer; -oer_type_encoder_f RICcontrolStatus_encode_oer; -per_type_decoder_f RICcontrolStatus_decode_uper; -per_type_encoder_f RICcontrolStatus_encode_uper; -per_type_decoder_f RICcontrolStatus_decode_aper; -per_type_encoder_f RICcontrolStatus_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RICcontrolStatus_H_ */ -#include diff --git a/e2ap/headers/RICeventTriggerDefinition.h b/e2ap/headers/RICeventTriggerDefinition.h index 58ec4d2..d680d08 100644 --- a/e2ap/headers/RICeventTriggerDefinition.h +++ b/e2ap/headers/RICeventTriggerDefinition.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICeventTriggerDefinition_H_ diff --git a/e2ap/headers/RICindication.h b/e2ap/headers/RICindication.h index c984ab6..713ee5b 100644 --- a/e2ap/headers/RICindication.h +++ b/e2ap/headers/RICindication.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICindication_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICindication */ typedef struct RICindication { - ProtocolIE_Container_87P6_t protocolIEs; + ProtocolIE_Container_185P7_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICindicationHeader.h b/e2ap/headers/RICindicationHeader.h index 3220602..6bc08a4 100644 --- a/e2ap/headers/RICindicationHeader.h +++ b/e2ap/headers/RICindicationHeader.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICindicationHeader_H_ diff --git a/e2ap/headers/RICindicationMessage.h b/e2ap/headers/RICindicationMessage.h index f00ebe7..8f18de7 100644 --- a/e2ap/headers/RICindicationMessage.h +++ b/e2ap/headers/RICindicationMessage.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICindicationMessage_H_ diff --git a/e2ap/headers/RICindicationSN.h b/e2ap/headers/RICindicationSN.h index 498aaef..ad5af57 100644 --- a/e2ap/headers/RICindicationSN.h +++ b/e2ap/headers/RICindicationSN.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICindicationSN_H_ diff --git a/e2ap/headers/RICindicationType.h b/e2ap/headers/RICindicationType.h index ffc0335..1551fe5 100644 --- a/e2ap/headers/RICindicationType.h +++ b/e2ap/headers/RICindicationType.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICindicationType_H_ diff --git a/e2ap/headers/RICrequestID.h b/e2ap/headers/RICrequestID.h index b76c37c..4fc3746 100644 --- a/e2ap/headers/RICrequestID.h +++ b/e2ap/headers/RICrequestID.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICrequestID_H_ diff --git a/e2ap/headers/RICserviceQuery.h b/e2ap/headers/RICserviceQuery.h index 3b2c4ee..ac3bef4 100644 --- a/e2ap/headers/RICserviceQuery.h +++ b/e2ap/headers/RICserviceQuery.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICserviceQuery_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICserviceQuery */ typedef struct RICserviceQuery { - ProtocolIE_Container_87P19_t protocolIEs; + ProtocolIE_Container_185P20_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICserviceUpdate.h b/e2ap/headers/RICserviceUpdate.h deleted file mode 100644 index 9ade74f..0000000 --- a/e2ap/headers/RICserviceUpdate.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#ifndef _RICserviceUpdate_H_ -#define _RICserviceUpdate_H_ - - -#include - -/* Including external dependencies */ -#include "ProtocolIE-Container.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RICserviceUpdate */ -typedef struct RICserviceUpdate { - ProtocolIE_Container_87P16_t protocolIEs; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RICserviceUpdate_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RICserviceUpdate; - -#ifdef __cplusplus -} -#endif - -#endif /* _RICserviceUpdate_H_ */ -#include diff --git a/e2ap/headers/RICserviceUpdateAcknowledge.h b/e2ap/headers/RICserviceUpdateAcknowledge.h deleted file mode 100644 index 4b08d1a..0000000 --- a/e2ap/headers/RICserviceUpdateAcknowledge.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#ifndef _RICserviceUpdateAcknowledge_H_ -#define _RICserviceUpdateAcknowledge_H_ - - -#include - -/* Including external dependencies */ -#include "ProtocolIE-Container.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RICserviceUpdateAcknowledge */ -typedef struct RICserviceUpdateAcknowledge { - ProtocolIE_Container_87P17_t protocolIEs; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RICserviceUpdateAcknowledge_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateAcknowledge; - -#ifdef __cplusplus -} -#endif - -#endif /* _RICserviceUpdateAcknowledge_H_ */ -#include diff --git a/e2ap/headers/RICserviceUpdateFailure.h b/e2ap/headers/RICserviceUpdateFailure.h deleted file mode 100644 index c00559e..0000000 --- a/e2ap/headers/RICserviceUpdateFailure.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#ifndef _RICserviceUpdateFailure_H_ -#define _RICserviceUpdateFailure_H_ - - -#include - -/* Including external dependencies */ -#include "ProtocolIE-Container.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RICserviceUpdateFailure */ -typedef struct RICserviceUpdateFailure { - ProtocolIE_Container_87P18_t protocolIEs; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RICserviceUpdateFailure_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateFailure; - -#ifdef __cplusplus -} -#endif - -#endif /* _RICserviceUpdateFailure_H_ */ -#include diff --git a/e2ap/headers/RICsubscription-List-withCause.h b/e2ap/headers/RICsubscription-List-withCause.h new file mode 100644 index 0000000..324020f --- /dev/null +++ b/e2ap/headers/RICsubscription-List-withCause.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RICsubscription_List_withCause_H_ +#define _RICsubscription_List_withCause_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct ProtocolIE_SingleContainer; + +/* RICsubscription-List-withCause */ +typedef struct RICsubscription_List_withCause { + A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RICsubscription_List_withCause_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RICsubscription_List_withCause; +extern asn_SET_OF_specifics_t asn_SPC_RICsubscription_List_withCause_specs_1; +extern asn_TYPE_member_t asn_MBR_RICsubscription_List_withCause_1[1]; +extern asn_per_constraints_t asn_PER_type_RICsubscription_List_withCause_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RICsubscription_List_withCause_H_ */ +#include diff --git a/e2ap/headers/RICsubscription-withCause-Item.h b/e2ap/headers/RICsubscription-withCause-Item.h new file mode 100644 index 0000000..5037c89 --- /dev/null +++ b/e2ap/headers/RICsubscription-withCause-Item.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RICsubscription_withCause_Item_H_ +#define _RICsubscription_withCause_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RICrequestID.h" +#include "RANfunctionID.h" +#include "Cause.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RICsubscription-withCause-Item */ +typedef struct RICsubscription_withCause_Item { + RICrequestID_t ricRequestID; + RANfunctionID_t ranFunctionID; + Cause_t cause; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RICsubscription_withCause_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RICsubscription_withCause_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscription_withCause_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RICsubscription_withCause_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RICsubscription_withCause_Item_H_ */ +#include diff --git a/e2ap/headers/RICsubscriptionDeleteFailure.h b/e2ap/headers/RICsubscriptionDeleteFailure.h index 59bb7d4..f21f842 100644 --- a/e2ap/headers/RICsubscriptionDeleteFailure.h +++ b/e2ap/headers/RICsubscriptionDeleteFailure.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICsubscriptionDeleteFailure_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICsubscriptionDeleteFailure */ typedef struct RICsubscriptionDeleteFailure { - ProtocolIE_Container_87P5_t protocolIEs; + ProtocolIE_Container_185P5_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICsubscriptionDeleteRequest.h b/e2ap/headers/RICsubscriptionDeleteRequest.h index 5019dab..6b7047d 100644 --- a/e2ap/headers/RICsubscriptionDeleteRequest.h +++ b/e2ap/headers/RICsubscriptionDeleteRequest.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICsubscriptionDeleteRequest_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICsubscriptionDeleteRequest */ typedef struct RICsubscriptionDeleteRequest { - ProtocolIE_Container_87P3_t protocolIEs; + ProtocolIE_Container_185P3_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICsubscriptionDeleteRequired.h b/e2ap/headers/RICsubscriptionDeleteRequired.h new file mode 100644 index 0000000..62d3e8f --- /dev/null +++ b/e2ap/headers/RICsubscriptionDeleteRequired.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RICsubscriptionDeleteRequired_H_ +#define _RICsubscriptionDeleteRequired_H_ + + +#include + +/* Including external dependencies */ +#include "ProtocolIE-Container.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RICsubscriptionDeleteRequired */ +typedef struct RICsubscriptionDeleteRequired { + ProtocolIE_Container_185P6_t protocolIEs; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RICsubscriptionDeleteRequired_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequired; + +#ifdef __cplusplus +} +#endif + +#endif /* _RICsubscriptionDeleteRequired_H_ */ +#include diff --git a/e2ap/headers/RICsubscriptionDeleteResponse.h b/e2ap/headers/RICsubscriptionDeleteResponse.h index b1aeba6..be52d46 100644 --- a/e2ap/headers/RICsubscriptionDeleteResponse.h +++ b/e2ap/headers/RICsubscriptionDeleteResponse.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICsubscriptionDeleteResponse_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICsubscriptionDeleteResponse */ typedef struct RICsubscriptionDeleteResponse { - ProtocolIE_Container_87P4_t protocolIEs; + ProtocolIE_Container_185P4_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICsubscriptionDetails.h b/e2ap/headers/RICsubscriptionDetails.h index 9b0a03e..6b28b40 100644 --- a/e2ap/headers/RICsubscriptionDetails.h +++ b/e2ap/headers/RICsubscriptionDetails.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICsubscriptionDetails_H_ diff --git a/e2ap/headers/RICsubscriptionFailure.h b/e2ap/headers/RICsubscriptionFailure.h index c8c4a77..8d2a101 100644 --- a/e2ap/headers/RICsubscriptionFailure.h +++ b/e2ap/headers/RICsubscriptionFailure.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICsubscriptionFailure_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICsubscriptionFailure */ typedef struct RICsubscriptionFailure { - ProtocolIE_Container_87P2_t protocolIEs; + ProtocolIE_Container_185P2_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICsubscriptionRequest.h b/e2ap/headers/RICsubscriptionRequest.h index 9e9e0bb..7f1abc4 100644 --- a/e2ap/headers/RICsubscriptionRequest.h +++ b/e2ap/headers/RICsubscriptionRequest.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICsubscriptionRequest_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICsubscriptionRequest */ typedef struct RICsubscriptionRequest { - ProtocolIE_Container_87P0_t protocolIEs; + ProtocolIE_Container_185P0_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICsubscriptionResponse.h b/e2ap/headers/RICsubscriptionResponse.h index 9b8bb17..3df4866 100644 --- a/e2ap/headers/RICsubscriptionResponse.h +++ b/e2ap/headers/RICsubscriptionResponse.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICsubscriptionResponse_H_ @@ -21,7 +21,7 @@ extern "C" { /* RICsubscriptionResponse */ typedef struct RICsubscriptionResponse { - ProtocolIE_Container_87P1_t protocolIEs; + ProtocolIE_Container_185P1_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/RICsubsequentAction.h b/e2ap/headers/RICsubsequentAction.h index fffdc21..c91a14e 100644 --- a/e2ap/headers/RICsubsequentAction.h +++ b/e2ap/headers/RICsubsequentAction.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICsubsequentAction_H_ diff --git a/e2ap/headers/RICsubsequentActionType.h b/e2ap/headers/RICsubsequentActionType.h index 1dea790..eedf0dc 100644 --- a/e2ap/headers/RICsubsequentActionType.h +++ b/e2ap/headers/RICsubsequentActionType.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICsubsequentActionType_H_ diff --git a/e2ap/headers/RICtimeToWait.h b/e2ap/headers/RICtimeToWait.h index efe9b2a..62c01b5 100644 --- a/e2ap/headers/RICtimeToWait.h +++ b/e2ap/headers/RICtimeToWait.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _RICtimeToWait_H_ @@ -20,24 +20,23 @@ extern "C" { /* Dependencies */ typedef enum RICtimeToWait { - RICtimeToWait_zero = 0, - RICtimeToWait_w1ms = 1, - RICtimeToWait_w2ms = 2, - RICtimeToWait_w5ms = 3, - RICtimeToWait_w10ms = 4, - RICtimeToWait_w20ms = 5, - RICtimeToWait_w30ms = 6, - RICtimeToWait_w40ms = 7, - RICtimeToWait_w50ms = 8, - RICtimeToWait_w100ms = 9, - RICtimeToWait_w200ms = 10, - RICtimeToWait_w500ms = 11, - RICtimeToWait_w1s = 12, - RICtimeToWait_w2s = 13, - RICtimeToWait_w5s = 14, - RICtimeToWait_w10s = 15, - RICtimeToWait_w20s = 16, - RICtimeToWait_w60s = 17 + RICtimeToWait_w1ms = 0, + RICtimeToWait_w2ms = 1, + RICtimeToWait_w5ms = 2, + RICtimeToWait_w10ms = 3, + RICtimeToWait_w20ms = 4, + RICtimeToWait_w30ms = 5, + RICtimeToWait_w40ms = 6, + RICtimeToWait_w50ms = 7, + RICtimeToWait_w100ms = 8, + RICtimeToWait_w200ms = 9, + RICtimeToWait_w500ms = 10, + RICtimeToWait_w1s = 11, + RICtimeToWait_w2s = 12, + RICtimeToWait_w5s = 13, + RICtimeToWait_w10s = 14, + RICtimeToWait_w20s = 15, + RICtimeToWait_w60s = 16 /* * Enumeration is extensible */ diff --git a/e2ap/headers/ResetRequest.h b/e2ap/headers/ResetRequest.h index b8ccee4..ecced95 100644 --- a/e2ap/headers/ResetRequest.h +++ b/e2ap/headers/ResetRequest.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ResetRequest_H_ @@ -21,7 +21,7 @@ extern "C" { /* ResetRequest */ typedef struct ResetRequest { - ProtocolIE_Container_87P14_t protocolIEs; + ProtocolIE_Container_185P18_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/ResetResponse.h b/e2ap/headers/ResetResponse.h index cfd7a3c..b96d348 100644 --- a/e2ap/headers/ResetResponse.h +++ b/e2ap/headers/ResetResponse.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _ResetResponse_H_ @@ -21,7 +21,7 @@ extern "C" { /* ResetResponse */ typedef struct ResetResponse { - ProtocolIE_Container_87P15_t protocolIEs; + ProtocolIE_Container_185P19_t protocolIEs; /* * This type is extensible, * possible extensions are below. diff --git a/e2ap/headers/SuccessfulOutcome.h b/e2ap/headers/SuccessfulOutcome.h index 734bd7e..a21ecf7 100644 --- a/e2ap/headers/SuccessfulOutcome.h +++ b/e2ap/headers/SuccessfulOutcome.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Descriptions" - * found in "E2AP-PDU-Descriptions-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _SuccessfulOutcome_H_ @@ -22,20 +22,24 @@ #include "RICsubscriptionDeleteRequest.h" #include "RICsubscriptionDeleteResponse.h" #include "RICsubscriptionDeleteFailure.h" -#include "RICserviceUpdate.h" -#include "RICserviceUpdateAcknowledge.h" -#include "RICserviceUpdateFailure.h" #include "RICcontrolRequest.h" #include "RICcontrolAcknowledge.h" #include "RICcontrolFailure.h" #include "E2setupRequest.h" #include "E2setupResponse.h" #include "E2setupFailure.h" +#include "E2nodeConfigurationUpdate.h" +#include "E2nodeConfigurationUpdateAcknowledge.h" +#include "E2nodeConfigurationUpdateFailure.h" #include "ResetRequest.h" #include "ResetResponse.h" +#include "E2RemovalRequest.h" +#include "E2RemovalResponse.h" +#include "E2RemovalFailure.h" #include "RICindication.h" #include "RICserviceQuery.h" #include "ErrorIndication.h" +#include "RICsubscriptionDeleteRequired.h" #include #include #include @@ -49,10 +53,11 @@ typedef enum SuccessfulOutcome__value_PR { SuccessfulOutcome__value_PR_NOTHING, /* No components present */ SuccessfulOutcome__value_PR_RICsubscriptionResponse, SuccessfulOutcome__value_PR_RICsubscriptionDeleteResponse, - SuccessfulOutcome__value_PR_RICserviceUpdateAcknowledge, SuccessfulOutcome__value_PR_RICcontrolAcknowledge, SuccessfulOutcome__value_PR_E2setupResponse, - SuccessfulOutcome__value_PR_ResetResponse + SuccessfulOutcome__value_PR_E2nodeConfigurationUpdateAcknowledge, + SuccessfulOutcome__value_PR_ResetResponse, + SuccessfulOutcome__value_PR_E2RemovalResponse } SuccessfulOutcome__value_PR; /* SuccessfulOutcome */ @@ -64,10 +69,11 @@ typedef struct SuccessfulOutcome { union SuccessfulOutcome__value_u { RICsubscriptionResponse_t RICsubscriptionResponse; RICsubscriptionDeleteResponse_t RICsubscriptionDeleteResponse; - RICserviceUpdateAcknowledge_t RICserviceUpdateAcknowledge; RICcontrolAcknowledge_t RICcontrolAcknowledge; E2setupResponse_t E2setupResponse; + E2nodeConfigurationUpdateAcknowledge_t E2nodeConfigurationUpdateAcknowledge; ResetResponse_t ResetResponse; + E2RemovalResponse_t E2RemovalResponse; } choice; /* Context for parsing across buffer boundaries */ diff --git a/e2ap/headers/TNLinformation.h b/e2ap/headers/TNLinformation.h new file mode 100644 index 0000000..b34bd58 --- /dev/null +++ b/e2ap/headers/TNLinformation.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _TNLinformation_H_ +#define _TNLinformation_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* TNLinformation */ +typedef struct TNLinformation { + BIT_STRING_t tnlAddress; + BIT_STRING_t *tnlPort; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TNLinformation_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TNLinformation; +extern asn_SEQUENCE_specifics_t asn_SPC_TNLinformation_specs_1; +extern asn_TYPE_member_t asn_MBR_TNLinformation_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TNLinformation_H_ */ +#include diff --git a/e2ap/headers/TNLusage.h b/e2ap/headers/TNLusage.h new file mode 100644 index 0000000..958e09a --- /dev/null +++ b/e2ap/headers/TNLusage.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _TNLusage_H_ +#define _TNLusage_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TNLusage { + TNLusage_ric_service = 0, + TNLusage_support_function = 1, + TNLusage_both = 2 + /* + * Enumeration is extensible + */ +} e_TNLusage; + +/* TNLusage */ +typedef long TNLusage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TNLusage; +asn_struct_free_f TNLusage_free; +asn_struct_print_f TNLusage_print; +asn_constr_check_f TNLusage_constraint; +ber_type_decoder_f TNLusage_decode_ber; +der_type_encoder_f TNLusage_encode_der; +xer_type_decoder_f TNLusage_decode_xer; +xer_type_encoder_f TNLusage_encode_xer; +oer_type_decoder_f TNLusage_decode_oer; +oer_type_encoder_f TNLusage_encode_oer; +per_type_decoder_f TNLusage_decode_uper; +per_type_encoder_f TNLusage_encode_uper; +per_type_decoder_f TNLusage_decode_aper; +per_type_encoder_f TNLusage_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TNLusage_H_ */ +#include diff --git a/e2ap/headers/TimeToWait.h b/e2ap/headers/TimeToWait.h index 9627535..753e318 100644 --- a/e2ap/headers/TimeToWait.h +++ b/e2ap/headers/TimeToWait.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _TimeToWait_H_ diff --git a/e2ap/headers/TransactionID.h b/e2ap/headers/TransactionID.h new file mode 100644 index 0000000..371cb9d --- /dev/null +++ b/e2ap/headers/TransactionID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _TransactionID_H_ +#define _TransactionID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* TransactionID */ +typedef long TransactionID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_TransactionID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_TransactionID; +asn_struct_free_f TransactionID_free; +asn_struct_print_f TransactionID_print; +asn_constr_check_f TransactionID_constraint; +ber_type_decoder_f TransactionID_decode_ber; +der_type_encoder_f TransactionID_encode_der; +xer_type_decoder_f TransactionID_decode_xer; +xer_type_encoder_f TransactionID_encode_xer; +oer_type_decoder_f TransactionID_decode_oer; +oer_type_encoder_f TransactionID_encode_oer; +per_type_decoder_f TransactionID_decode_uper; +per_type_encoder_f TransactionID_encode_uper; +per_type_decoder_f TransactionID_decode_aper; +per_type_encoder_f TransactionID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _TransactionID_H_ */ +#include diff --git a/e2ap/headers/TriggeringMessage.h b/e2ap/headers/TriggeringMessage.h index 6f9f42e..769df9b 100644 --- a/e2ap/headers/TriggeringMessage.h +++ b/e2ap/headers/TriggeringMessage.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _TriggeringMessage_H_ diff --git a/e2ap/headers/TypeOfError.h b/e2ap/headers/TypeOfError.h index aec2d63..789f819 100644 --- a/e2ap/headers/TypeOfError.h +++ b/e2ap/headers/TypeOfError.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _TypeOfError_H_ diff --git a/e2ap/headers/UnsuccessfulOutcome.h b/e2ap/headers/UnsuccessfulOutcome.h index baf8838..258f70f 100644 --- a/e2ap/headers/UnsuccessfulOutcome.h +++ b/e2ap/headers/UnsuccessfulOutcome.h @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Descriptions" - * found in "E2AP-PDU-Descriptions-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #ifndef _UnsuccessfulOutcome_H_ @@ -22,20 +22,24 @@ #include "RICsubscriptionDeleteRequest.h" #include "RICsubscriptionDeleteResponse.h" #include "RICsubscriptionDeleteFailure.h" -#include "RICserviceUpdate.h" -#include "RICserviceUpdateAcknowledge.h" -#include "RICserviceUpdateFailure.h" #include "RICcontrolRequest.h" #include "RICcontrolAcknowledge.h" #include "RICcontrolFailure.h" #include "E2setupRequest.h" #include "E2setupResponse.h" #include "E2setupFailure.h" +#include "E2nodeConfigurationUpdate.h" +#include "E2nodeConfigurationUpdateAcknowledge.h" +#include "E2nodeConfigurationUpdateFailure.h" #include "ResetRequest.h" #include "ResetResponse.h" +#include "E2RemovalRequest.h" +#include "E2RemovalResponse.h" +#include "E2RemovalFailure.h" #include "RICindication.h" #include "RICserviceQuery.h" #include "ErrorIndication.h" +#include "RICsubscriptionDeleteRequired.h" #include #include #include @@ -49,9 +53,10 @@ typedef enum UnsuccessfulOutcome__value_PR { UnsuccessfulOutcome__value_PR_NOTHING, /* No components present */ UnsuccessfulOutcome__value_PR_RICsubscriptionFailure, UnsuccessfulOutcome__value_PR_RICsubscriptionDeleteFailure, - UnsuccessfulOutcome__value_PR_RICserviceUpdateFailure, UnsuccessfulOutcome__value_PR_RICcontrolFailure, - UnsuccessfulOutcome__value_PR_E2setupFailure + UnsuccessfulOutcome__value_PR_E2setupFailure, + UnsuccessfulOutcome__value_PR_E2nodeConfigurationUpdateFailure, + UnsuccessfulOutcome__value_PR_E2RemovalFailure } UnsuccessfulOutcome__value_PR; /* UnsuccessfulOutcome */ @@ -63,9 +68,10 @@ typedef struct UnsuccessfulOutcome { union UnsuccessfulOutcome__value_u { RICsubscriptionFailure_t RICsubscriptionFailure; RICsubscriptionDeleteFailure_t RICsubscriptionDeleteFailure; - RICserviceUpdateFailure_t RICserviceUpdateFailure; RICcontrolFailure_t RICcontrolFailure; E2setupFailure_t E2setupFailure; + E2nodeConfigurationUpdateFailure_t E2nodeConfigurationUpdateFailure; + E2RemovalFailure_t E2RemovalFailure; } choice; /* Context for parsing across buffer boundaries */ diff --git a/e2ap/headers/asn_constant.h b/e2ap/headers/asn_constant.h index a6f348c..b850c56 100644 --- a/e2ap/headers/asn_constant.h +++ b/e2ap/headers/asn_constant.h @@ -11,8 +11,11 @@ extern "C" { #define maxProtocolIEs (65535) #define maxnoofErrors (256) +#define maxofE2nodeComponents (1024) #define maxofRANfunctionID (256) #define maxofRICactionID (16) +#define maxofTNLA (32) +#define maxofRICrequestID (4294967295) #ifdef __cplusplus diff --git a/e2ap/headers/asn_system.h b/e2ap/headers/asn_system.h index cc5cead..fa8cf11 100644 --- a/e2ap/headers/asn_system.h +++ b/e2ap/headers/asn_system.h @@ -63,11 +63,7 @@ typedef unsigned int uint32_t; #define isnan _isnan #define finite _finite #define copysign _copysign -#ifdef WIN32 //MCHECK - #define ilogb ilogb -#else - #define ilogb _logb -#endif +#define ilogb _logb #else /* !_MSC_VER */ #include #endif /* _MSC_VER */ diff --git a/e2sm/lib/MeasurementTypeName.c b/e2ap/lib/AMFName.c similarity index 69% rename from e2sm/lib/MeasurementTypeName.c rename to e2ap/lib/AMFName.c index 1b5fd5a..ed2a6e7 100644 --- a/e2sm/lib/MeasurementTypeName.c +++ b/e2ap/lib/AMFName.c @@ -1,11 +1,11 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "MeasurementTypeName.h" +#include "AMFName.h" static const int permitted_alphabet_table_1[256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ @@ -40,7 +40,7 @@ static int check_permitted_alphabet_1(const void *sptr) { } int -MeasurementTypeName_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +AMFName_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const PrintableString_t *st = (const PrintableString_t *)sptr; size_t size; @@ -66,12 +66,12 @@ MeasurementTypeName_constraint(const asn_TYPE_descriptor_t *td, const void *sptr } } -static int asn_PER_MAP_MeasurementTypeName_1_v2c(unsigned int value) { +static int asn_PER_MAP_AMFName_1_v2c(unsigned int value) { if(value >= sizeof(permitted_alphabet_table_1)/sizeof(permitted_alphabet_table_1[0])) return -1; return permitted_alphabet_table_1[value] - 1; } -static int asn_PER_MAP_MeasurementTypeName_1_c2v(unsigned int code) { +static int asn_PER_MAP_AMFName_1_c2v(unsigned int code) { if(code >= sizeof(permitted_alphabet_code2value_1)/sizeof(permitted_alphabet_code2value_1[0])) return -1; return permitted_alphabet_code2value_1[code]; @@ -80,29 +80,29 @@ static int asn_PER_MAP_MeasurementTypeName_1_c2v(unsigned int code) { * This type is implemented using PrintableString, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_MeasurementTypeName_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_AMFName_constr_1 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_MeasurementTypeName_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_AMFName_constr_1 CC_NOTUSED = { { APC_CONSTRAINED, 7, 7, 32, 122 } /* (32..122) */, { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 1, 150 } /* (SIZE(1..150,...)) */, - asn_PER_MAP_MeasurementTypeName_1_v2c, /* Value to PER code map */ - asn_PER_MAP_MeasurementTypeName_1_c2v /* PER code to value map */ + asn_PER_MAP_AMFName_1_v2c, /* Value to PER code map */ + asn_PER_MAP_AMFName_1_c2v /* PER code to value map */ }; -static const ber_tlv_tag_t asn_DEF_MeasurementTypeName_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_AMFName_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (19 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_MeasurementTypeName = { - "MeasurementTypeName", - "MeasurementTypeName", +asn_TYPE_descriptor_t asn_DEF_AMFName = { + "AMFName", + "AMFName", &asn_OP_PrintableString, - asn_DEF_MeasurementTypeName_tags_1, - sizeof(asn_DEF_MeasurementTypeName_tags_1) - /sizeof(asn_DEF_MeasurementTypeName_tags_1[0]), /* 1 */ - asn_DEF_MeasurementTypeName_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasurementTypeName_tags_1) - /sizeof(asn_DEF_MeasurementTypeName_tags_1[0]), /* 1 */ - { &asn_OER_type_MeasurementTypeName_constr_1, &asn_PER_type_MeasurementTypeName_constr_1, MeasurementTypeName_constraint }, + asn_DEF_AMFName_tags_1, + sizeof(asn_DEF_AMFName_tags_1) + /sizeof(asn_DEF_AMFName_tags_1[0]), /* 1 */ + asn_DEF_AMFName_tags_1, /* Same as above */ + sizeof(asn_DEF_AMFName_tags_1) + /sizeof(asn_DEF_AMFName_tags_1[0]), /* 1 */ + { &asn_OER_type_AMFName_constr_1, &asn_PER_type_AMFName_constr_1, AMFName_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/e2ap/lib/Cause.c b/e2ap/lib/Cause.c index bdb51be..15a29de 100644 --- a/e2ap/lib/Cause.c +++ b/e2ap/lib/Cause.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "Cause.h" @@ -11,7 +11,7 @@ static asn_oer_constraints_t asn_OER_type_Cause_constr_1 CC_NOTUSED = { { 0, 0 }, -1}; asn_per_constraints_t asn_PER_type_Cause_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; @@ -19,7 +19,7 @@ asn_TYPE_member_t asn_MBR_Cause_1[] = { { ATF_NOFLAGS, 0, offsetof(struct Cause, choice.ricRequest), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_CauseRIC, + &asn_DEF_CauseRICrequest, 0, { 0, 0, 0 }, 0, 0, /* No default value */ @@ -34,9 +34,18 @@ asn_TYPE_member_t asn_MBR_Cause_1[] = { 0, 0, /* No default value */ "ricService" }, - { ATF_NOFLAGS, 0, offsetof(struct Cause, choice.transport), + { ATF_NOFLAGS, 0, offsetof(struct Cause, choice.e2Node), (ASN_TAG_CLASS_CONTEXT | (2 << 2)), -1, /* IMPLICIT tag at current level */ + &asn_DEF_CauseE2node, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2Node" + }, + { ATF_NOFLAGS, 0, offsetof(struct Cause, choice.transport), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_CauseTransport, 0, { 0, 0, 0 }, @@ -44,7 +53,7 @@ asn_TYPE_member_t asn_MBR_Cause_1[] = { "transport" }, { ATF_NOFLAGS, 0, offsetof(struct Cause, choice.protocol), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_CauseProtocol, 0, @@ -53,7 +62,7 @@ asn_TYPE_member_t asn_MBR_Cause_1[] = { "protocol" }, { ATF_NOFLAGS, 0, offsetof(struct Cause, choice.misc), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_CauseMisc, 0, @@ -65,9 +74,10 @@ asn_TYPE_member_t asn_MBR_Cause_1[] = { static const asn_TYPE_tag2member_t asn_MAP_Cause_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequest */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* transport */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* protocol */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* misc */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e2Node */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* misc */ }; asn_CHOICE_specifics_t asn_SPC_Cause_specs_1 = { sizeof(struct Cause), @@ -75,9 +85,9 @@ asn_CHOICE_specifics_t asn_SPC_Cause_specs_1 = { offsetof(struct Cause, present), sizeof(((struct Cause *)0)->present), asn_MAP_Cause_tag2el_1, - 5, /* Count of tags in the map */ + 6, /* Count of tags in the map */ 0, 0, - 5 /* Extensions start */ + 6 /* Extensions start */ }; asn_TYPE_descriptor_t asn_DEF_Cause = { "Cause", @@ -89,7 +99,7 @@ asn_TYPE_descriptor_t asn_DEF_Cause = { 0, /* No tags (count) */ { &asn_OER_type_Cause_constr_1, &asn_PER_type_Cause_constr_1, CHOICE_constraint }, asn_MBR_Cause_1, - 5, /* Elements count */ + 6, /* Elements count */ &asn_SPC_Cause_specs_1 /* Additional specs */ }; diff --git a/e2ap/lib/CauseE2node.c b/e2ap/lib/CauseE2node.c new file mode 100644 index 0000000..72b7840 --- /dev/null +++ b/e2ap/lib/CauseE2node.c @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "CauseE2node.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_CauseE2node_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_CauseE2node_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_CauseE2node_value2enum_1[] = { + { 0, 24, "e2node-component-unknown" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_CauseE2node_enum2value_1[] = { + 0 /* e2node-component-unknown(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_CauseE2node_specs_1 = { + asn_MAP_CauseE2node_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_CauseE2node_enum2value_1, /* N => "tag"; sorted by N */ + 1, /* Number of elements in the maps */ + 2, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_CauseE2node_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CauseE2node = { + "CauseE2node", + "CauseE2node", + &asn_OP_NativeEnumerated, + asn_DEF_CauseE2node_tags_1, + sizeof(asn_DEF_CauseE2node_tags_1) + /sizeof(asn_DEF_CauseE2node_tags_1[0]), /* 1 */ + asn_DEF_CauseE2node_tags_1, /* Same as above */ + sizeof(asn_DEF_CauseE2node_tags_1) + /sizeof(asn_DEF_CauseE2node_tags_1[0]), /* 1 */ + { &asn_OER_type_CauseE2node_constr_1, &asn_PER_type_CauseE2node_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_CauseE2node_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/CauseMisc.c b/e2ap/lib/CauseMisc.c index e09c0b1..fbd8599 100644 --- a/e2ap/lib/CauseMisc.c +++ b/e2ap/lib/CauseMisc.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "CauseMisc.h" diff --git a/e2ap/lib/CauseProtocol.c b/e2ap/lib/CauseProtocol.c index 66bb383..f2e200b 100644 --- a/e2ap/lib/CauseProtocol.c +++ b/e2ap/lib/CauseProtocol.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "CauseProtocol.h" diff --git a/e2ap/lib/CauseRIC.c b/e2ap/lib/CauseRIC.c deleted file mode 100644 index 7d94696..0000000 --- a/e2ap/lib/CauseRIC.c +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#include "CauseRIC.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_CauseRIC_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_CauseRIC_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 10 } /* (0..10,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_CauseRIC_value2enum_1[] = { - { 0, 23, "ran-function-id-Invalid" }, - { 1, 20, "action-not-supported" }, - { 2, 17, "excessive-actions" }, - { 3, 16, "duplicate-action" }, - { 4, 15, "duplicate-event" }, - { 5, 23, "function-resource-limit" }, - { 6, 18, "request-id-unknown" }, - { 7, 46, "inconsistent-action-subsequent-action-sequence" }, - { 8, 23, "control-message-invalid" }, - { 9, 23, "call-process-id-invalid" }, - { 10, 11, "unspecified" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_CauseRIC_enum2value_1[] = { - 1, /* action-not-supported(1) */ - 9, /* call-process-id-invalid(9) */ - 8, /* control-message-invalid(8) */ - 3, /* duplicate-action(3) */ - 4, /* duplicate-event(4) */ - 2, /* excessive-actions(2) */ - 5, /* function-resource-limit(5) */ - 7, /* inconsistent-action-subsequent-action-sequence(7) */ - 0, /* ran-function-id-Invalid(0) */ - 6, /* request-id-unknown(6) */ - 10 /* unspecified(10) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_CauseRIC_specs_1 = { - asn_MAP_CauseRIC_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_CauseRIC_enum2value_1, /* N => "tag"; sorted by N */ - 11, /* Number of elements in the maps */ - 12, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_CauseRIC_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CauseRIC = { - "CauseRIC", - "CauseRIC", - &asn_OP_NativeEnumerated, - asn_DEF_CauseRIC_tags_1, - sizeof(asn_DEF_CauseRIC_tags_1) - /sizeof(asn_DEF_CauseRIC_tags_1[0]), /* 1 */ - asn_DEF_CauseRIC_tags_1, /* Same as above */ - sizeof(asn_DEF_CauseRIC_tags_1) - /sizeof(asn_DEF_CauseRIC_tags_1[0]), /* 1 */ - { &asn_OER_type_CauseRIC_constr_1, &asn_PER_type_CauseRIC_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_CauseRIC_specs_1 /* Additional specs */ -}; - diff --git a/e2ap/lib/CauseRICrequest.c b/e2ap/lib/CauseRICrequest.c new file mode 100644 index 0000000..2b0257a --- /dev/null +++ b/e2ap/lib/CauseRICrequest.c @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "CauseRICrequest.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_CauseRICrequest_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_CauseRICrequest_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 13 } /* (0..13,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_CauseRICrequest_value2enum_1[] = { + { 0, 23, "ran-function-id-invalid" }, + { 1, 20, "action-not-supported" }, + { 2, 17, "excessive-actions" }, + { 3, 16, "duplicate-action" }, + { 4, 23, "duplicate-event-trigger" }, + { 5, 23, "function-resource-limit" }, + { 6, 18, "request-id-unknown" }, + { 7, 46, "inconsistent-action-subsequent-action-sequence" }, + { 8, 23, "control-message-invalid" }, + { 9, 27, "ric-call-process-id-invalid" }, + { 10, 21, "control-timer-expired" }, + { 11, 25, "control-failed-to-execute" }, + { 12, 16, "system-not-ready" }, + { 13, 11, "unspecified" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_CauseRICrequest_enum2value_1[] = { + 1, /* action-not-supported(1) */ + 11, /* control-failed-to-execute(11) */ + 8, /* control-message-invalid(8) */ + 10, /* control-timer-expired(10) */ + 3, /* duplicate-action(3) */ + 4, /* duplicate-event-trigger(4) */ + 2, /* excessive-actions(2) */ + 5, /* function-resource-limit(5) */ + 7, /* inconsistent-action-subsequent-action-sequence(7) */ + 0, /* ran-function-id-invalid(0) */ + 6, /* request-id-unknown(6) */ + 9, /* ric-call-process-id-invalid(9) */ + 12, /* system-not-ready(12) */ + 13 /* unspecified(13) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_CauseRICrequest_specs_1 = { + asn_MAP_CauseRICrequest_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_CauseRICrequest_enum2value_1, /* N => "tag"; sorted by N */ + 14, /* Number of elements in the maps */ + 15, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_CauseRICrequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_CauseRICrequest = { + "CauseRICrequest", + "CauseRICrequest", + &asn_OP_NativeEnumerated, + asn_DEF_CauseRICrequest_tags_1, + sizeof(asn_DEF_CauseRICrequest_tags_1) + /sizeof(asn_DEF_CauseRICrequest_tags_1[0]), /* 1 */ + asn_DEF_CauseRICrequest_tags_1, /* Same as above */ + sizeof(asn_DEF_CauseRICrequest_tags_1) + /sizeof(asn_DEF_CauseRICrequest_tags_1[0]), /* 1 */ + { &asn_OER_type_CauseRICrequest_constr_1, &asn_PER_type_CauseRICrequest_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_CauseRICrequest_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/CauseRICservice.c b/e2ap/lib/CauseRICservice.c index c2cbccb..a09c74d 100644 --- a/e2ap/lib/CauseRICservice.c +++ b/e2ap/lib/CauseRICservice.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "CauseRICservice.h" @@ -20,14 +20,14 @@ asn_per_constraints_t asn_PER_type_CauseRICservice_constr_1 CC_NOTUSED = { 0, 0 /* No PER value map */ }; static const asn_INTEGER_enum_map_t asn_MAP_CauseRICservice_value2enum_1[] = { - { 0, 21, "function-not-required" }, + { 0, 26, "ran-function-not-supported" }, { 1, 19, "excessive-functions" }, { 2, 18, "ric-resource-limit" } /* This list is extensible */ }; static const unsigned int asn_MAP_CauseRICservice_enum2value_1[] = { 1, /* excessive-functions(1) */ - 0, /* function-not-required(0) */ + 0, /* ran-function-not-supported(0) */ 2 /* ric-resource-limit(2) */ /* This list is extensible */ }; diff --git a/e2ap/lib/CauseTransport.c b/e2ap/lib/CauseTransport.c index a0a5f38..bada442 100644 --- a/e2ap/lib/CauseTransport.c +++ b/e2ap/lib/CauseTransport.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "CauseTransport.h" diff --git a/e2ap/lib/Criticality.c b/e2ap/lib/Criticality.c index 9bfe1ca..3b33c9c 100644 --- a/e2ap/lib/Criticality.c +++ b/e2ap/lib/Criticality.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "Criticality.h" diff --git a/e2ap/lib/CriticalityDiagnostics-IE-Item.c b/e2ap/lib/CriticalityDiagnostics-IE-Item.c index d950a0c..8a17bfc 100644 --- a/e2ap/lib/CriticalityDiagnostics-IE-Item.c +++ b/e2ap/lib/CriticalityDiagnostics-IE-Item.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "CriticalityDiagnostics-IE-Item.h" diff --git a/e2ap/lib/CriticalityDiagnostics-IE-List.c b/e2ap/lib/CriticalityDiagnostics-IE-List.c index 29ae2dd..85b0d23 100644 --- a/e2ap/lib/CriticalityDiagnostics-IE-List.c +++ b/e2ap/lib/CriticalityDiagnostics-IE-List.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "CriticalityDiagnostics-IE-List.h" diff --git a/e2ap/lib/CriticalityDiagnostics.c b/e2ap/lib/CriticalityDiagnostics.c index c07926c..54b7bc4 100644 --- a/e2ap/lib/CriticalityDiagnostics.c +++ b/e2ap/lib/CriticalityDiagnostics.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "CriticalityDiagnostics.h" diff --git a/e2ap/lib/E2AP-PDU.c b/e2ap/lib/E2AP-PDU.c index c8386c2..81aabdb 100644 --- a/e2ap/lib/E2AP-PDU.c +++ b/e2ap/lib/E2AP-PDU.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Descriptions" - * found in "E2AP-PDU-Descriptions-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "E2AP-PDU.h" diff --git a/e2ap/lib/E2RemovalFailure.c b/e2ap/lib/E2RemovalFailure.c new file mode 100644 index 0000000..ecae6f5 --- /dev/null +++ b/e2ap/lib/E2RemovalFailure.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2RemovalFailure.h" + +static asn_TYPE_member_t asn_MBR_E2RemovalFailure_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalFailure, protocolIEs), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_Container_185P23, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "protocolIEs" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2RemovalFailure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2RemovalFailure_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2RemovalFailure_specs_1 = { + sizeof(struct E2RemovalFailure), + offsetof(struct E2RemovalFailure, _asn_ctx), + asn_MAP_E2RemovalFailure_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2RemovalFailure = { + "E2RemovalFailure", + "E2RemovalFailure", + &asn_OP_SEQUENCE, + asn_DEF_E2RemovalFailure_tags_1, + sizeof(asn_DEF_E2RemovalFailure_tags_1) + /sizeof(asn_DEF_E2RemovalFailure_tags_1[0]), /* 1 */ + asn_DEF_E2RemovalFailure_tags_1, /* Same as above */ + sizeof(asn_DEF_E2RemovalFailure_tags_1) + /sizeof(asn_DEF_E2RemovalFailure_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2RemovalFailure_1, + 1, /* Elements count */ + &asn_SPC_E2RemovalFailure_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2RemovalRequest.c b/e2ap/lib/E2RemovalRequest.c new file mode 100644 index 0000000..7c505c7 --- /dev/null +++ b/e2ap/lib/E2RemovalRequest.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2RemovalRequest.h" + +static asn_TYPE_member_t asn_MBR_E2RemovalRequest_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalRequest, protocolIEs), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_Container_185P21, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "protocolIEs" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2RemovalRequest_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2RemovalRequest_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2RemovalRequest_specs_1 = { + sizeof(struct E2RemovalRequest), + offsetof(struct E2RemovalRequest, _asn_ctx), + asn_MAP_E2RemovalRequest_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2RemovalRequest = { + "E2RemovalRequest", + "E2RemovalRequest", + &asn_OP_SEQUENCE, + asn_DEF_E2RemovalRequest_tags_1, + sizeof(asn_DEF_E2RemovalRequest_tags_1) + /sizeof(asn_DEF_E2RemovalRequest_tags_1[0]), /* 1 */ + asn_DEF_E2RemovalRequest_tags_1, /* Same as above */ + sizeof(asn_DEF_E2RemovalRequest_tags_1) + /sizeof(asn_DEF_E2RemovalRequest_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2RemovalRequest_1, + 1, /* Elements count */ + &asn_SPC_E2RemovalRequest_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2RemovalResponse.c b/e2ap/lib/E2RemovalResponse.c new file mode 100644 index 0000000..4e72a81 --- /dev/null +++ b/e2ap/lib/E2RemovalResponse.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2RemovalResponse.h" + +static asn_TYPE_member_t asn_MBR_E2RemovalResponse_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalResponse, protocolIEs), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_Container_185P22, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "protocolIEs" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2RemovalResponse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2RemovalResponse_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2RemovalResponse_specs_1 = { + sizeof(struct E2RemovalResponse), + offsetof(struct E2RemovalResponse, _asn_ctx), + asn_MAP_E2RemovalResponse_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2RemovalResponse = { + "E2RemovalResponse", + "E2RemovalResponse", + &asn_OP_SEQUENCE, + asn_DEF_E2RemovalResponse_tags_1, + sizeof(asn_DEF_E2RemovalResponse_tags_1) + /sizeof(asn_DEF_E2RemovalResponse_tags_1[0]), /* 1 */ + asn_DEF_E2RemovalResponse_tags_1, /* Same as above */ + sizeof(asn_DEF_E2RemovalResponse_tags_1) + /sizeof(asn_DEF_E2RemovalResponse_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2RemovalResponse_1, + 1, /* Elements count */ + &asn_SPC_E2RemovalResponse_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigAddition-Item.c b/e2ap/lib/E2nodeComponentConfigAddition-Item.c new file mode 100644 index 0000000..4672c3c --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigAddition-Item.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigAddition-Item.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_Item, e2nodeComponentInterfaceType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceType" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_Item, e2nodeComponentID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2nodeComponentID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_Item, e2nodeComponentConfiguration), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentConfiguration, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentConfiguration" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAddition_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigAddition_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfiguration */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAddition_Item_specs_1 = { + sizeof(struct E2nodeComponentConfigAddition_Item), + offsetof(struct E2nodeComponentConfigAddition_Item, _asn_ctx), + asn_MAP_E2nodeComponentConfigAddition_Item_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_Item = { + "E2nodeComponentConfigAddition-Item", + "E2nodeComponentConfigAddition-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigAddition_Item_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigAddition_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigAddition_Item_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigAddition_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigAddition_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigAddition_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigAddition_Item_1, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigAddition_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigAddition-List.c b/e2ap/lib/E2nodeComponentConfigAddition-List.c new file mode 100644 index 0000000..471d6af --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigAddition-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigAddition-List.h" + +#include "ProtocolIE-SingleContainer.h" +static asn_oer_constraints_t asn_OER_type_E2nodeComponentConfigAddition_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1024)) */}; +asn_per_constraints_t asn_PER_type_E2nodeComponentConfigAddition_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProtocolIE_SingleContainer_188P4, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAddition_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigAddition_List_specs_1 = { + sizeof(struct E2nodeComponentConfigAddition_List), + offsetof(struct E2nodeComponentConfigAddition_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_List = { + "E2nodeComponentConfigAddition-List", + "E2nodeComponentConfigAddition-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_E2nodeComponentConfigAddition_List_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigAddition_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigAddition_List_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigAddition_List_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigAddition_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigAddition_List_tags_1[0]), /* 1 */ + { &asn_OER_type_E2nodeComponentConfigAddition_List_constr_1, &asn_PER_type_E2nodeComponentConfigAddition_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_E2nodeComponentConfigAddition_List_1, + 1, /* Single element */ + &asn_SPC_E2nodeComponentConfigAddition_List_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigAdditionAck-Item.c b/e2ap/lib/E2nodeComponentConfigAdditionAck-Item.c new file mode 100644 index 0000000..48b9f39 --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigAdditionAck-Item.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigAdditionAck-Item.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_Item, e2nodeComponentInterfaceType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceType" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_Item, e2nodeComponentID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2nodeComponentID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_Item, e2nodeComponentConfigurationAck), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentConfigurationAck, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentConfigurationAck" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigAdditionAck_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfigurationAck */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_Item_specs_1 = { + sizeof(struct E2nodeComponentConfigAdditionAck_Item), + offsetof(struct E2nodeComponentConfigAdditionAck_Item, _asn_ctx), + asn_MAP_E2nodeComponentConfigAdditionAck_Item_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_Item = { + "E2nodeComponentConfigAdditionAck-Item", + "E2nodeComponentConfigAdditionAck-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigAdditionAck_Item_1, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigAdditionAck_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigAdditionAck-List.c b/e2ap/lib/E2nodeComponentConfigAdditionAck-List.c new file mode 100644 index 0000000..11327e1 --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigAdditionAck-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigAdditionAck-List.h" + +#include "ProtocolIE-SingleContainer.h" +static asn_oer_constraints_t asn_OER_type_E2nodeComponentConfigAdditionAck_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1024)) */}; +asn_per_constraints_t asn_PER_type_E2nodeComponentConfigAdditionAck_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProtocolIE_SingleContainer_188P8, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_List_specs_1 = { + sizeof(struct E2nodeComponentConfigAdditionAck_List), + offsetof(struct E2nodeComponentConfigAdditionAck_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_List = { + "E2nodeComponentConfigAdditionAck-List", + "E2nodeComponentConfigAdditionAck-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1[0]), /* 1 */ + { &asn_OER_type_E2nodeComponentConfigAdditionAck_List_constr_1, &asn_PER_type_E2nodeComponentConfigAdditionAck_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_E2nodeComponentConfigAdditionAck_List_1, + 1, /* Single element */ + &asn_SPC_E2nodeComponentConfigAdditionAck_List_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigRemoval-Item.c b/e2ap/lib/E2nodeComponentConfigRemoval-Item.c new file mode 100644 index 0000000..12a7605 --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigRemoval-Item.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigRemoval-Item.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_Item, e2nodeComponentInterfaceType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceType" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_Item, e2nodeComponentID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2nodeComponentID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentID" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigRemoval_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* e2nodeComponentID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemoval_Item_specs_1 = { + sizeof(struct E2nodeComponentConfigRemoval_Item), + offsetof(struct E2nodeComponentConfigRemoval_Item, _asn_ctx), + asn_MAP_E2nodeComponentConfigRemoval_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_Item = { + "E2nodeComponentConfigRemoval-Item", + "E2nodeComponentConfigRemoval-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigRemoval_Item_1, + 2, /* Elements count */ + &asn_SPC_E2nodeComponentConfigRemoval_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigRemoval-List.c b/e2ap/lib/E2nodeComponentConfigRemoval-List.c new file mode 100644 index 0000000..3e3ba53 --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigRemoval-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigRemoval-List.h" + +#include "ProtocolIE-SingleContainer.h" +static asn_oer_constraints_t asn_OER_type_E2nodeComponentConfigRemoval_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1024)) */}; +asn_per_constraints_t asn_PER_type_E2nodeComponentConfigRemoval_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProtocolIE_SingleContainer_188P6, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemoval_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigRemoval_List_specs_1 = { + sizeof(struct E2nodeComponentConfigRemoval_List), + offsetof(struct E2nodeComponentConfigRemoval_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_List = { + "E2nodeComponentConfigRemoval-List", + "E2nodeComponentConfigRemoval-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_E2nodeComponentConfigRemoval_List_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigRemoval_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigRemoval_List_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigRemoval_List_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigRemoval_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigRemoval_List_tags_1[0]), /* 1 */ + { &asn_OER_type_E2nodeComponentConfigRemoval_List_constr_1, &asn_PER_type_E2nodeComponentConfigRemoval_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_E2nodeComponentConfigRemoval_List_1, + 1, /* Single element */ + &asn_SPC_E2nodeComponentConfigRemoval_List_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigRemovalAck-Item.c b/e2ap/lib/E2nodeComponentConfigRemovalAck-Item.c new file mode 100644 index 0000000..ea853cd --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigRemovalAck-Item.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigRemovalAck-Item.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_Item, e2nodeComponentInterfaceType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceType" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_Item, e2nodeComponentID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2nodeComponentID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_Item, e2nodeComponentConfigurationAck), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentConfigurationAck, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentConfigurationAck" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigRemovalAck_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfigurationAck */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_Item_specs_1 = { + sizeof(struct E2nodeComponentConfigRemovalAck_Item), + offsetof(struct E2nodeComponentConfigRemovalAck_Item, _asn_ctx), + asn_MAP_E2nodeComponentConfigRemovalAck_Item_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_Item = { + "E2nodeComponentConfigRemovalAck-Item", + "E2nodeComponentConfigRemovalAck-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigRemovalAck_Item_1, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigRemovalAck_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigRemovalAck-List.c b/e2ap/lib/E2nodeComponentConfigRemovalAck-List.c new file mode 100644 index 0000000..ec6dba3 --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigRemovalAck-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigRemovalAck-List.h" + +#include "ProtocolIE-SingleContainer.h" +static asn_oer_constraints_t asn_OER_type_E2nodeComponentConfigRemovalAck_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1024)) */}; +asn_per_constraints_t asn_PER_type_E2nodeComponentConfigRemovalAck_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProtocolIE_SingleContainer_188P10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_List_specs_1 = { + sizeof(struct E2nodeComponentConfigRemovalAck_List), + offsetof(struct E2nodeComponentConfigRemovalAck_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_List = { + "E2nodeComponentConfigRemovalAck-List", + "E2nodeComponentConfigRemovalAck-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1[0]), /* 1 */ + { &asn_OER_type_E2nodeComponentConfigRemovalAck_List_constr_1, &asn_PER_type_E2nodeComponentConfigRemovalAck_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_E2nodeComponentConfigRemovalAck_List_1, + 1, /* Single element */ + &asn_SPC_E2nodeComponentConfigRemovalAck_List_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigUpdate-Item.c b/e2ap/lib/E2nodeComponentConfigUpdate-Item.c new file mode 100644 index 0000000..e56ec2b --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigUpdate-Item.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigUpdate-Item.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_Item, e2nodeComponentInterfaceType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceType" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_Item, e2nodeComponentID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2nodeComponentID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_Item, e2nodeComponentConfiguration), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentConfiguration, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentConfiguration" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdate_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdate_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfiguration */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_Item_specs_1 = { + sizeof(struct E2nodeComponentConfigUpdate_Item), + offsetof(struct E2nodeComponentConfigUpdate_Item, _asn_ctx), + asn_MAP_E2nodeComponentConfigUpdate_Item_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_Item = { + "E2nodeComponentConfigUpdate-Item", + "E2nodeComponentConfigUpdate-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigUpdate_Item_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigUpdate_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigUpdate_Item_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigUpdate_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigUpdate_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigUpdate_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigUpdate_Item_1, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigUpdate_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigUpdate-List.c b/e2ap/lib/E2nodeComponentConfigUpdate-List.c new file mode 100644 index 0000000..24474c2 --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigUpdate-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigUpdate-List.h" + +#include "ProtocolIE-SingleContainer.h" +static asn_oer_constraints_t asn_OER_type_E2nodeComponentConfigUpdate_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1024)) */}; +asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdate_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProtocolIE_SingleContainer_188P5, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdate_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdate_List_specs_1 = { + sizeof(struct E2nodeComponentConfigUpdate_List), + offsetof(struct E2nodeComponentConfigUpdate_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_List = { + "E2nodeComponentConfigUpdate-List", + "E2nodeComponentConfigUpdate-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_E2nodeComponentConfigUpdate_List_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigUpdate_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigUpdate_List_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigUpdate_List_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigUpdate_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigUpdate_List_tags_1[0]), /* 1 */ + { &asn_OER_type_E2nodeComponentConfigUpdate_List_constr_1, &asn_PER_type_E2nodeComponentConfigUpdate_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_E2nodeComponentConfigUpdate_List_1, + 1, /* Single element */ + &asn_SPC_E2nodeComponentConfigUpdate_List_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigUpdateAck-Item.c b/e2ap/lib/E2nodeComponentConfigUpdateAck-Item.c new file mode 100644 index 0000000..839cb6e --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigUpdateAck-Item.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigUpdateAck-Item.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_Item, e2nodeComponentInterfaceType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceType" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_Item, e2nodeComponentID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2nodeComponentID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_Item, e2nodeComponentConfigurationAck), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentConfigurationAck, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentConfigurationAck" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateAck_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateAck_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfigurationAck */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_Item_specs_1 = { + sizeof(struct E2nodeComponentConfigUpdateAck_Item), + offsetof(struct E2nodeComponentConfigUpdateAck_Item, _asn_ctx), + asn_MAP_E2nodeComponentConfigUpdateAck_Item_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_Item = { + "E2nodeComponentConfigUpdateAck-Item", + "E2nodeComponentConfigUpdateAck-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigUpdateAck_Item_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_Item_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigUpdateAck_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_Item_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigUpdateAck_Item_1, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigUpdateAck_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigUpdateAck-List.c b/e2ap/lib/E2nodeComponentConfigUpdateAck-List.c new file mode 100644 index 0000000..9d119ca --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigUpdateAck-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigUpdateAck-List.h" + +#include "ProtocolIE-SingleContainer.h" +static asn_oer_constraints_t asn_OER_type_E2nodeComponentConfigUpdateAck_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..1024)) */}; +asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdateAck_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProtocolIE_SingleContainer_188P9, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateAck_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_List_specs_1 = { + sizeof(struct E2nodeComponentConfigUpdateAck_List), + offsetof(struct E2nodeComponentConfigUpdateAck_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_List = { + "E2nodeComponentConfigUpdateAck-List", + "E2nodeComponentConfigUpdateAck-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_E2nodeComponentConfigUpdateAck_List_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_List_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigUpdateAck_List_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_List_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_List_tags_1[0]), /* 1 */ + { &asn_OER_type_E2nodeComponentConfigUpdateAck_List_constr_1, &asn_PER_type_E2nodeComponentConfigUpdateAck_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_E2nodeComponentConfigUpdateAck_List_1, + 1, /* Single element */ + &asn_SPC_E2nodeComponentConfigUpdateAck_List_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfiguration.c b/e2ap/lib/E2nodeComponentConfiguration.c new file mode 100644 index 0000000..f109080 --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfiguration.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfiguration.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfiguration_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfiguration, e2nodeComponentRequestPart), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentRequestPart" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfiguration, e2nodeComponentResponsePart), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentResponsePart" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfiguration_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfiguration_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentRequestPart */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* e2nodeComponentResponsePart */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfiguration_specs_1 = { + sizeof(struct E2nodeComponentConfiguration), + offsetof(struct E2nodeComponentConfiguration, _asn_ctx), + asn_MAP_E2nodeComponentConfiguration_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfiguration = { + "E2nodeComponentConfiguration", + "E2nodeComponentConfiguration", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfiguration_tags_1, + sizeof(asn_DEF_E2nodeComponentConfiguration_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfiguration_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfiguration_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfiguration_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfiguration_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfiguration_1, + 2, /* Elements count */ + &asn_SPC_E2nodeComponentConfiguration_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentConfigurationAck.c b/e2ap/lib/E2nodeComponentConfigurationAck.c new file mode 100644 index 0000000..f562dee --- /dev/null +++ b/e2ap/lib/E2nodeComponentConfigurationAck.c @@ -0,0 +1,114 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentConfigurationAck.h" + +#include "Cause.h" +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_updateOutcome_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_updateOutcome_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_updateOutcome_value2enum_2[] = { + { 0, 7, "success" }, + { 1, 7, "failure" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_updateOutcome_enum2value_2[] = { + 1, /* failure(1) */ + 0 /* success(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_updateOutcome_specs_2 = { + asn_MAP_updateOutcome_value2enum_2, /* "tag" => N; sorted by tag */ + asn_MAP_updateOutcome_enum2value_2, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_updateOutcome_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_updateOutcome_2 = { + "updateOutcome", + "updateOutcome", + &asn_OP_NativeEnumerated, + asn_DEF_updateOutcome_tags_2, + sizeof(asn_DEF_updateOutcome_tags_2) + /sizeof(asn_DEF_updateOutcome_tags_2[0]) - 1, /* 1 */ + asn_DEF_updateOutcome_tags_2, /* Same as above */ + sizeof(asn_DEF_updateOutcome_tags_2) + /sizeof(asn_DEF_updateOutcome_tags_2[0]), /* 2 */ + { &asn_OER_type_updateOutcome_constr_2, &asn_PER_type_updateOutcome_constr_2, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_updateOutcome_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigurationAck_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigurationAck, updateOutcome), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_updateOutcome_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "updateOutcome" + }, + { ATF_POINTER, 1, offsetof(struct E2nodeComponentConfigurationAck, failureCause), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_Cause, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "failureCause" + }, +}; +static const int asn_MAP_E2nodeComponentConfigurationAck_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigurationAck_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigurationAck_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* updateOutcome */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* failureCause */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigurationAck_specs_1 = { + sizeof(struct E2nodeComponentConfigurationAck), + offsetof(struct E2nodeComponentConfigurationAck, _asn_ctx), + asn_MAP_E2nodeComponentConfigurationAck_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_E2nodeComponentConfigurationAck_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigurationAck = { + "E2nodeComponentConfigurationAck", + "E2nodeComponentConfigurationAck", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigurationAck_tags_1, + sizeof(asn_DEF_E2nodeComponentConfigurationAck_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigurationAck_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigurationAck_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigurationAck_tags_1) + /sizeof(asn_DEF_E2nodeComponentConfigurationAck_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigurationAck_1, + 2, /* Elements count */ + &asn_SPC_E2nodeComponentConfigurationAck_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentID.c b/e2ap/lib/E2nodeComponentID.c new file mode 100644 index 0000000..9aff2ad --- /dev/null +++ b/e2ap/lib/E2nodeComponentID.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentID.h" + +#include "E2nodeComponentInterfaceNG.h" +#include "E2nodeComponentInterfaceXn.h" +#include "E2nodeComponentInterfaceE1.h" +#include "E2nodeComponentInterfaceF1.h" +#include "E2nodeComponentInterfaceW1.h" +#include "E2nodeComponentInterfaceS1.h" +#include "E2nodeComponentInterfaceX2.h" +static asn_oer_constraints_t asn_OER_type_E2nodeComponentID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_E2nodeComponentID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_E2nodeComponentID_1[] = { + { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeNG), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceNG, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceTypeNG" + }, + { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeXn), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceXn, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceTypeXn" + }, + { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeE1), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceE1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceTypeE1" + }, + { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeF1), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceF1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceTypeF1" + }, + { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeW1), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceW1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceTypeW1" + }, + { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeS1), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceS1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceTypeS1" + }, + { ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeX2), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2nodeComponentInterfaceX2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e2nodeComponentInterfaceTypeX2" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceTypeNG */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentInterfaceTypeXn */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e2nodeComponentInterfaceTypeE1 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* e2nodeComponentInterfaceTypeF1 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* e2nodeComponentInterfaceTypeW1 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* e2nodeComponentInterfaceTypeS1 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* e2nodeComponentInterfaceTypeX2 */ +}; +asn_CHOICE_specifics_t asn_SPC_E2nodeComponentID_specs_1 = { + sizeof(struct E2nodeComponentID), + offsetof(struct E2nodeComponentID, _asn_ctx), + offsetof(struct E2nodeComponentID, present), + sizeof(((struct E2nodeComponentID *)0)->present), + asn_MAP_E2nodeComponentID_tag2el_1, + 7, /* Count of tags in the map */ + 0, 0, + 7 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentID = { + "E2nodeComponentID", + "E2nodeComponentID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_E2nodeComponentID_constr_1, &asn_PER_type_E2nodeComponentID_constr_1, CHOICE_constraint }, + asn_MBR_E2nodeComponentID_1, + 7, /* Elements count */ + &asn_SPC_E2nodeComponentID_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentInterfaceE1.c b/e2ap/lib/E2nodeComponentInterfaceE1.c new file mode 100644 index 0000000..6df3636 --- /dev/null +++ b/e2ap/lib/E2nodeComponentInterfaceE1.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentInterfaceE1.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceE1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceE1, gNB_CU_CP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_CU_UP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-CP-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceE1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceE1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gNB-CU-CP-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceE1_specs_1 = { + sizeof(struct E2nodeComponentInterfaceE1), + offsetof(struct E2nodeComponentInterfaceE1, _asn_ctx), + asn_MAP_E2nodeComponentInterfaceE1_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceE1 = { + "E2nodeComponentInterfaceE1", + "E2nodeComponentInterfaceE1", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentInterfaceE1_tags_1, + sizeof(asn_DEF_E2nodeComponentInterfaceE1_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceE1_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentInterfaceE1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentInterfaceE1_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceE1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentInterfaceE1_1, + 1, /* Elements count */ + &asn_SPC_E2nodeComponentInterfaceE1_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentInterfaceF1.c b/e2ap/lib/E2nodeComponentInterfaceF1.c new file mode 100644 index 0000000..6c5f81a --- /dev/null +++ b/e2ap/lib/E2nodeComponentInterfaceF1.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentInterfaceF1.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceF1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceF1, gNB_DU_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_DU_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-DU-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceF1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceF1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gNB-DU-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceF1_specs_1 = { + sizeof(struct E2nodeComponentInterfaceF1), + offsetof(struct E2nodeComponentInterfaceF1, _asn_ctx), + asn_MAP_E2nodeComponentInterfaceF1_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceF1 = { + "E2nodeComponentInterfaceF1", + "E2nodeComponentInterfaceF1", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentInterfaceF1_tags_1, + sizeof(asn_DEF_E2nodeComponentInterfaceF1_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceF1_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentInterfaceF1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentInterfaceF1_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceF1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentInterfaceF1_1, + 1, /* Elements count */ + &asn_SPC_E2nodeComponentInterfaceF1_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentInterfaceNG.c b/e2ap/lib/E2nodeComponentInterfaceNG.c new file mode 100644 index 0000000..636076d --- /dev/null +++ b/e2ap/lib/E2nodeComponentInterfaceNG.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentInterfaceNG.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceNG_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceNG, amf_name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AMFName, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "amf-name" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceNG_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceNG_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* amf-name */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceNG_specs_1 = { + sizeof(struct E2nodeComponentInterfaceNG), + offsetof(struct E2nodeComponentInterfaceNG, _asn_ctx), + asn_MAP_E2nodeComponentInterfaceNG_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceNG = { + "E2nodeComponentInterfaceNG", + "E2nodeComponentInterfaceNG", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentInterfaceNG_tags_1, + sizeof(asn_DEF_E2nodeComponentInterfaceNG_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceNG_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentInterfaceNG_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentInterfaceNG_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceNG_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentInterfaceNG_1, + 1, /* Elements count */ + &asn_SPC_E2nodeComponentInterfaceNG_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentInterfaceS1.c b/e2ap/lib/E2nodeComponentInterfaceS1.c new file mode 100644 index 0000000..984e22d --- /dev/null +++ b/e2ap/lib/E2nodeComponentInterfaceS1.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentInterfaceS1.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceS1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceS1, mme_name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MMEname, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "mme-name" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceS1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceS1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* mme-name */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceS1_specs_1 = { + sizeof(struct E2nodeComponentInterfaceS1), + offsetof(struct E2nodeComponentInterfaceS1, _asn_ctx), + asn_MAP_E2nodeComponentInterfaceS1_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceS1 = { + "E2nodeComponentInterfaceS1", + "E2nodeComponentInterfaceS1", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentInterfaceS1_tags_1, + sizeof(asn_DEF_E2nodeComponentInterfaceS1_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceS1_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentInterfaceS1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentInterfaceS1_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceS1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentInterfaceS1_1, + 1, /* Elements count */ + &asn_SPC_E2nodeComponentInterfaceS1_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentInterfaceType.c b/e2ap/lib/E2nodeComponentInterfaceType.c new file mode 100644 index 0000000..fec6a6a --- /dev/null +++ b/e2ap/lib/E2nodeComponentInterfaceType.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentInterfaceType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_E2nodeComponentInterfaceType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_E2nodeComponentInterfaceType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_E2nodeComponentInterfaceType_value2enum_1[] = { + { 0, 2, "ng" }, + { 1, 2, "xn" }, + { 2, 2, "e1" }, + { 3, 2, "f1" }, + { 4, 2, "w1" }, + { 5, 2, "s1" }, + { 6, 2, "x2" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_E2nodeComponentInterfaceType_enum2value_1[] = { + 2, /* e1(2) */ + 3, /* f1(3) */ + 0, /* ng(0) */ + 5, /* s1(5) */ + 4, /* w1(4) */ + 6, /* x2(6) */ + 1 /* xn(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_E2nodeComponentInterfaceType_specs_1 = { + asn_MAP_E2nodeComponentInterfaceType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_E2nodeComponentInterfaceType_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceType = { + "E2nodeComponentInterfaceType", + "E2nodeComponentInterfaceType", + &asn_OP_NativeEnumerated, + asn_DEF_E2nodeComponentInterfaceType_tags_1, + sizeof(asn_DEF_E2nodeComponentInterfaceType_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceType_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentInterfaceType_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentInterfaceType_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceType_tags_1[0]), /* 1 */ + { &asn_OER_type_E2nodeComponentInterfaceType_constr_1, &asn_PER_type_E2nodeComponentInterfaceType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_E2nodeComponentInterfaceType_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentInterfaceW1.c b/e2ap/lib/E2nodeComponentInterfaceW1.c new file mode 100644 index 0000000..056d9fa --- /dev/null +++ b/e2ap/lib/E2nodeComponentInterfaceW1.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentInterfaceW1.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceW1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceW1, ng_eNB_DU_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NGENB_DU_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ng-eNB-DU-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceW1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceW1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ng-eNB-DU-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceW1_specs_1 = { + sizeof(struct E2nodeComponentInterfaceW1), + offsetof(struct E2nodeComponentInterfaceW1, _asn_ctx), + asn_MAP_E2nodeComponentInterfaceW1_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceW1 = { + "E2nodeComponentInterfaceW1", + "E2nodeComponentInterfaceW1", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentInterfaceW1_tags_1, + sizeof(asn_DEF_E2nodeComponentInterfaceW1_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceW1_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentInterfaceW1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentInterfaceW1_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceW1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentInterfaceW1_1, + 1, /* Elements count */ + &asn_SPC_E2nodeComponentInterfaceW1_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentInterfaceX2.c b/e2ap/lib/E2nodeComponentInterfaceX2.c new file mode 100644 index 0000000..e7372c4 --- /dev/null +++ b/e2ap/lib/E2nodeComponentInterfaceX2.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentInterfaceX2.h" + +#include "GlobalENB-ID.h" +#include "GlobalenGNB-ID.h" +asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceX2_1[] = { + { ATF_POINTER, 2, offsetof(struct E2nodeComponentInterfaceX2, global_eNB_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalENB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "global-eNB-ID" + }, + { ATF_POINTER, 1, offsetof(struct E2nodeComponentInterfaceX2, global_en_gNB_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalenGNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "global-en-gNB-ID" + }, +}; +static const int asn_MAP_E2nodeComponentInterfaceX2_oms_1[] = { 0, 1 }; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceX2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceX2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-eNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* global-en-gNB-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceX2_specs_1 = { + sizeof(struct E2nodeComponentInterfaceX2), + offsetof(struct E2nodeComponentInterfaceX2, _asn_ctx), + asn_MAP_E2nodeComponentInterfaceX2_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_E2nodeComponentInterfaceX2_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceX2 = { + "E2nodeComponentInterfaceX2", + "E2nodeComponentInterfaceX2", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentInterfaceX2_tags_1, + sizeof(asn_DEF_E2nodeComponentInterfaceX2_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceX2_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentInterfaceX2_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentInterfaceX2_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceX2_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentInterfaceX2_1, + 2, /* Elements count */ + &asn_SPC_E2nodeComponentInterfaceX2_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeComponentInterfaceXn.c b/e2ap/lib/E2nodeComponentInterfaceXn.c new file mode 100644 index 0000000..92b3af5 --- /dev/null +++ b/e2ap/lib/E2nodeComponentInterfaceXn.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeComponentInterfaceXn.h" + +asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceXn_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceXn, global_NG_RAN_Node_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_GlobalNG_RANNode_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "global-NG-RAN-Node-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceXn_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceXn_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-NG-RAN-Node-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceXn_specs_1 = { + sizeof(struct E2nodeComponentInterfaceXn), + offsetof(struct E2nodeComponentInterfaceXn, _asn_ctx), + asn_MAP_E2nodeComponentInterfaceXn_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceXn = { + "E2nodeComponentInterfaceXn", + "E2nodeComponentInterfaceXn", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentInterfaceXn_tags_1, + sizeof(asn_DEF_E2nodeComponentInterfaceXn_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceXn_tags_1[0]), /* 1 */ + asn_DEF_E2nodeComponentInterfaceXn_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentInterfaceXn_tags_1) + /sizeof(asn_DEF_E2nodeComponentInterfaceXn_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentInterfaceXn_1, + 1, /* Elements count */ + &asn_SPC_E2nodeComponentInterfaceXn_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeConfigurationUpdate.c b/e2ap/lib/E2nodeConfigurationUpdate.c new file mode 100644 index 0000000..34992aa --- /dev/null +++ b/e2ap/lib/E2nodeConfigurationUpdate.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeConfigurationUpdate.h" + +static asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdate_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate, protocolIEs), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_Container_185P15, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "protocolIEs" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdate_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdate_specs_1 = { + sizeof(struct E2nodeConfigurationUpdate), + offsetof(struct E2nodeConfigurationUpdate, _asn_ctx), + asn_MAP_E2nodeConfigurationUpdate_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdate = { + "E2nodeConfigurationUpdate", + "E2nodeConfigurationUpdate", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeConfigurationUpdate_tags_1, + sizeof(asn_DEF_E2nodeConfigurationUpdate_tags_1) + /sizeof(asn_DEF_E2nodeConfigurationUpdate_tags_1[0]), /* 1 */ + asn_DEF_E2nodeConfigurationUpdate_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeConfigurationUpdate_tags_1) + /sizeof(asn_DEF_E2nodeConfigurationUpdate_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeConfigurationUpdate_1, + 1, /* Elements count */ + &asn_SPC_E2nodeConfigurationUpdate_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeConfigurationUpdateAcknowledge.c b/e2ap/lib/E2nodeConfigurationUpdateAcknowledge.c new file mode 100644 index 0000000..e2d2171 --- /dev/null +++ b/e2ap/lib/E2nodeConfigurationUpdateAcknowledge.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeConfigurationUpdateAcknowledge.h" + +static asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateAcknowledge_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge, protocolIEs), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_Container_185P16, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "protocolIEs" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdateAcknowledge_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdateAcknowledge_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateAcknowledge_specs_1 = { + sizeof(struct E2nodeConfigurationUpdateAcknowledge), + offsetof(struct E2nodeConfigurationUpdateAcknowledge, _asn_ctx), + asn_MAP_E2nodeConfigurationUpdateAcknowledge_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateAcknowledge = { + "E2nodeConfigurationUpdateAcknowledge", + "E2nodeConfigurationUpdateAcknowledge", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeConfigurationUpdateAcknowledge_tags_1, + sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_tags_1) + /sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_tags_1[0]), /* 1 */ + asn_DEF_E2nodeConfigurationUpdateAcknowledge_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_tags_1) + /sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeConfigurationUpdateAcknowledge_1, + 1, /* Elements count */ + &asn_SPC_E2nodeConfigurationUpdateAcknowledge_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeConfigurationUpdateFailure.c b/e2ap/lib/E2nodeConfigurationUpdateFailure.c new file mode 100644 index 0000000..913c107 --- /dev/null +++ b/e2ap/lib/E2nodeConfigurationUpdateFailure.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeConfigurationUpdateFailure.h" + +static asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateFailure_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure, protocolIEs), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_Container_185P17, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "protocolIEs" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdateFailure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdateFailure_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateFailure_specs_1 = { + sizeof(struct E2nodeConfigurationUpdateFailure), + offsetof(struct E2nodeConfigurationUpdateFailure, _asn_ctx), + asn_MAP_E2nodeConfigurationUpdateFailure_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateFailure = { + "E2nodeConfigurationUpdateFailure", + "E2nodeConfigurationUpdateFailure", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeConfigurationUpdateFailure_tags_1, + sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_tags_1) + /sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_tags_1[0]), /* 1 */ + asn_DEF_E2nodeConfigurationUpdateFailure_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_tags_1) + /sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeConfigurationUpdateFailure_1, + 1, /* Elements count */ + &asn_SPC_E2nodeConfigurationUpdateFailure_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeTNLassociationRemoval-Item.c b/e2ap/lib/E2nodeTNLassociationRemoval-Item.c new file mode 100644 index 0000000..4044aec --- /dev/null +++ b/e2ap/lib/E2nodeTNLassociationRemoval-Item.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeTNLassociationRemoval-Item.h" + +asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_Item, tnlInformation), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TNLinformation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "tnlInformation" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_Item, tnlInformationRIC), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TNLinformation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "tnlInformationRIC" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeTNLassociationRemoval_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tnlInformation */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tnlInformationRIC */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeTNLassociationRemoval_Item_specs_1 = { + sizeof(struct E2nodeTNLassociationRemoval_Item), + offsetof(struct E2nodeTNLassociationRemoval_Item, _asn_ctx), + asn_MAP_E2nodeTNLassociationRemoval_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_Item = { + "E2nodeTNLassociationRemoval-Item", + "E2nodeTNLassociationRemoval-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1, + sizeof(asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1) + /sizeof(asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1[0]), /* 1 */ + asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1) + /sizeof(asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeTNLassociationRemoval_Item_1, + 2, /* Elements count */ + &asn_SPC_E2nodeTNLassociationRemoval_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2nodeTNLassociationRemoval-List.c b/e2ap/lib/E2nodeTNLassociationRemoval-List.c new file mode 100644 index 0000000..a729c78 --- /dev/null +++ b/e2ap/lib/E2nodeTNLassociationRemoval-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2nodeTNLassociationRemoval-List.h" + +#include "ProtocolIE-SingleContainer.h" +static asn_oer_constraints_t asn_OER_type_E2nodeTNLassociationRemoval_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_E2nodeTNLassociationRemoval_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProtocolIE_SingleContainer_188P7, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeTNLassociationRemoval_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_E2nodeTNLassociationRemoval_List_specs_1 = { + sizeof(struct E2nodeTNLassociationRemoval_List), + offsetof(struct E2nodeTNLassociationRemoval_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_List = { + "E2nodeTNLassociationRemoval-List", + "E2nodeTNLassociationRemoval-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_E2nodeTNLassociationRemoval_List_tags_1, + sizeof(asn_DEF_E2nodeTNLassociationRemoval_List_tags_1) + /sizeof(asn_DEF_E2nodeTNLassociationRemoval_List_tags_1[0]), /* 1 */ + asn_DEF_E2nodeTNLassociationRemoval_List_tags_1, /* Same as above */ + sizeof(asn_DEF_E2nodeTNLassociationRemoval_List_tags_1) + /sizeof(asn_DEF_E2nodeTNLassociationRemoval_List_tags_1[0]), /* 1 */ + { &asn_OER_type_E2nodeTNLassociationRemoval_List_constr_1, &asn_PER_type_E2nodeTNLassociationRemoval_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_E2nodeTNLassociationRemoval_List_1, + 1, /* Single element */ + &asn_SPC_E2nodeTNLassociationRemoval_List_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/E2setupFailure.c b/e2ap/lib/E2setupFailure.c index 1b0bd35..81f9ac9 100644 --- a/e2ap/lib/E2setupFailure.c +++ b/e2ap/lib/E2setupFailure.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "E2setupFailure.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_E2setupFailure_1[] = { { ATF_NOFLAGS, 0, offsetof(struct E2setupFailure, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P13, + &asn_DEF_ProtocolIE_Container_185P14, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/E2setupRequest.c b/e2ap/lib/E2setupRequest.c index 92fd09b..8a4e4c0 100644 --- a/e2ap/lib/E2setupRequest.c +++ b/e2ap/lib/E2setupRequest.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "E2setupRequest.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_E2setupRequest_1[] = { { ATF_NOFLAGS, 0, offsetof(struct E2setupRequest, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P11, + &asn_DEF_ProtocolIE_Container_185P12, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/E2setupResponse.c b/e2ap/lib/E2setupResponse.c index b08bc06..e14d0e1 100644 --- a/e2ap/lib/E2setupResponse.c +++ b/e2ap/lib/E2setupResponse.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "E2setupResponse.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_E2setupResponse_1[] = { { ATF_NOFLAGS, 0, offsetof(struct E2setupResponse, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P12, + &asn_DEF_ProtocolIE_Container_185P13, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/ENB-ID-Choice.c b/e2ap/lib/ENB-ID-Choice.c index b95e5eb..f51f6b2 100644 --- a/e2ap/lib/ENB-ID-Choice.c +++ b/e2ap/lib/ENB-ID-Choice.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ENB-ID-Choice.h" diff --git a/e2ap/lib/ENB-ID.c b/e2ap/lib/ENB-ID.c index 96b8cb5..c9a1c74 100644 --- a/e2ap/lib/ENB-ID.c +++ b/e2ap/lib/ENB-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ENB-ID.h" diff --git a/e2ap/lib/ENGNB-ID.c b/e2ap/lib/ENGNB-ID.c index 4bfdbd8..82cd43b 100644 --- a/e2ap/lib/ENGNB-ID.c +++ b/e2ap/lib/ENGNB-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ENGNB-ID.h" diff --git a/e2ap/lib/ErrorIndication.c b/e2ap/lib/ErrorIndication.c index a47c6e0..1c18bc7 100644 --- a/e2ap/lib/ErrorIndication.c +++ b/e2ap/lib/ErrorIndication.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ErrorIndication.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_ErrorIndication_1[] = { { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P10, + &asn_DEF_ProtocolIE_Container_185P11, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/GNB-CU-UP-ID.c b/e2ap/lib/GNB-CU-UP-ID.c index 8f960e2..0505ab3 100644 --- a/e2ap/lib/GNB-CU-UP-ID.c +++ b/e2ap/lib/GNB-CU-UP-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GNB-CU-UP-ID.h" diff --git a/e2ap/lib/GNB-DU-ID.c b/e2ap/lib/GNB-DU-ID.c index 6c0940d..8b1a66a 100644 --- a/e2ap/lib/GNB-DU-ID.c +++ b/e2ap/lib/GNB-DU-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GNB-DU-ID.h" diff --git a/e2ap/lib/GNB-ID-Choice.c b/e2ap/lib/GNB-ID-Choice.c index 085a942..1dda293 100644 --- a/e2ap/lib/GNB-ID-Choice.c +++ b/e2ap/lib/GNB-ID-Choice.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GNB-ID-Choice.h" diff --git a/e2ap/lib/GlobalE2node-ID.c b/e2ap/lib/GlobalE2node-ID.c index 13a8295..2a86c0a 100644 --- a/e2ap/lib/GlobalE2node-ID.c +++ b/e2ap/lib/GlobalE2node-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalE2node-ID.h" diff --git a/e2ap/lib/GlobalE2node-eNB-ID.c b/e2ap/lib/GlobalE2node-eNB-ID.c index 7cb93f1..e7aacf0 100644 --- a/e2ap/lib/GlobalE2node-eNB-ID.c +++ b/e2ap/lib/GlobalE2node-eNB-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalE2node-eNB-ID.h" diff --git a/e2ap/lib/GlobalE2node-en-gNB-ID.c b/e2ap/lib/GlobalE2node-en-gNB-ID.c index 6444325..46ddfa2 100644 --- a/e2ap/lib/GlobalE2node-en-gNB-ID.c +++ b/e2ap/lib/GlobalE2node-en-gNB-ID.c @@ -1,36 +1,58 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalE2node-en-gNB-ID.h" asn_TYPE_member_t asn_MBR_GlobalE2node_en_gNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_en_gNB_ID, global_gNB_ID), + { ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_en_gNB_ID, global_en_gNB_ID), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_GlobalenGNB_ID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "global-gNB-ID" + "global-en-gNB-ID" + }, + { ATF_POINTER, 2, offsetof(struct GlobalE2node_en_gNB_ID, en_gNB_CU_UP_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_CU_UP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "en-gNB-CU-UP-ID" + }, + { ATF_POINTER, 1, offsetof(struct GlobalE2node_en_gNB_ID, en_gNB_DU_ID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_DU_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "en-gNB-DU-ID" }, }; +static const int asn_MAP_GlobalE2node_en_gNB_ID_oms_1[] = { 1, 2 }; static const ber_tlv_tag_t asn_DEF_GlobalE2node_en_gNB_ID_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_en_gNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-gNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-en-gNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* en-gNB-CU-UP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* en-gNB-DU-ID */ }; asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_en_gNB_ID_specs_1 = { sizeof(struct GlobalE2node_en_gNB_ID), offsetof(struct GlobalE2node_en_gNB_ID, _asn_ctx), asn_MAP_GlobalE2node_en_gNB_ID_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ + 3, /* Count of tags in the map */ + asn_MAP_GlobalE2node_en_gNB_ID_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_GlobalE2node_en_gNB_ID = { "GlobalE2node-en-gNB-ID", @@ -44,7 +66,7 @@ asn_TYPE_descriptor_t asn_DEF_GlobalE2node_en_gNB_ID = { /sizeof(asn_DEF_GlobalE2node_en_gNB_ID_tags_1[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_GlobalE2node_en_gNB_ID_1, - 1, /* Elements count */ + 3, /* Elements count */ &asn_SPC_GlobalE2node_en_gNB_ID_specs_1 /* Additional specs */ }; diff --git a/e2ap/lib/GlobalE2node-gNB-ID.c b/e2ap/lib/GlobalE2node-gNB-ID.c index 31bf024..039fb59 100644 --- a/e2ap/lib/GlobalE2node-gNB-ID.c +++ b/e2ap/lib/GlobalE2node-gNB-ID.c @@ -1,12 +1,13 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalE2node-gNB-ID.h" +#include "GlobalenGNB-ID.h" asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[] = { { ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_gNB_ID, global_gNB_ID), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), @@ -17,9 +18,18 @@ asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[] = { 0, 0, /* No default value */ "global-gNB-ID" }, - { ATF_POINTER, 2, offsetof(struct GlobalE2node_gNB_ID, gNB_CU_UP_ID), + { ATF_POINTER, 3, offsetof(struct GlobalE2node_gNB_ID, global_en_gNB_ID), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalenGNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "global-en-gNB-ID" + }, + { ATF_POINTER, 2, offsetof(struct GlobalE2node_gNB_ID, gNB_CU_UP_ID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_GNB_CU_UP_ID, 0, { 0, 0, 0 }, @@ -27,7 +37,7 @@ asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[] = { "gNB-CU-UP-ID" }, { ATF_POINTER, 1, offsetof(struct GlobalE2node_gNB_ID, gNB_DU_ID), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_GNB_DU_ID, 0, @@ -36,23 +46,24 @@ asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[] = { "gNB-DU-ID" }, }; -static const int asn_MAP_GlobalE2node_gNB_ID_oms_1[] = { 1, 2 }; +static const int asn_MAP_GlobalE2node_gNB_ID_oms_1[] = { 1, 2, 3 }; static const ber_tlv_tag_t asn_DEF_GlobalE2node_gNB_ID_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_gNB_ID_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-gNB-ID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* gNB-CU-UP-ID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* gNB-DU-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* global-en-gNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* gNB-CU-UP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* gNB-DU-ID */ }; asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_gNB_ID_specs_1 = { sizeof(struct GlobalE2node_gNB_ID), offsetof(struct GlobalE2node_gNB_ID, _asn_ctx), asn_MAP_GlobalE2node_gNB_ID_tag2el_1, - 3, /* Count of tags in the map */ + 4, /* Count of tags in the map */ asn_MAP_GlobalE2node_gNB_ID_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_GlobalE2node_gNB_ID = { "GlobalE2node-gNB-ID", @@ -66,7 +77,7 @@ asn_TYPE_descriptor_t asn_DEF_GlobalE2node_gNB_ID = { /sizeof(asn_DEF_GlobalE2node_gNB_ID_tags_1[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_GlobalE2node_gNB_ID_1, - 3, /* Elements count */ + 4, /* Elements count */ &asn_SPC_GlobalE2node_gNB_ID_specs_1 /* Additional specs */ }; diff --git a/e2ap/lib/GlobalE2node-ng-eNB-ID.c b/e2ap/lib/GlobalE2node-ng-eNB-ID.c index b3bb491..cbd82d0 100644 --- a/e2ap/lib/GlobalE2node-ng-eNB-ID.c +++ b/e2ap/lib/GlobalE2node-ng-eNB-ID.c @@ -1,12 +1,13 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalE2node-ng-eNB-ID.h" +#include "GlobalENB-ID.h" asn_TYPE_member_t asn_MBR_GlobalE2node_ng_eNB_ID_1[] = { { ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_ng_eNB_ID, global_ng_eNB_ID), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), @@ -17,20 +18,42 @@ asn_TYPE_member_t asn_MBR_GlobalE2node_ng_eNB_ID_1[] = { 0, 0, /* No default value */ "global-ng-eNB-ID" }, + { ATF_POINTER, 2, offsetof(struct GlobalE2node_ng_eNB_ID, global_eNB_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalENB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "global-eNB-ID" + }, + { ATF_POINTER, 1, offsetof(struct GlobalE2node_ng_eNB_ID, ngENB_DU_ID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NGENB_DU_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ngENB-DU-ID" + }, }; +static const int asn_MAP_GlobalE2node_ng_eNB_ID_oms_1[] = { 1, 2 }; static const ber_tlv_tag_t asn_DEF_GlobalE2node_ng_eNB_ID_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_ng_eNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-ng-eNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-ng-eNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* global-eNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ngENB-DU-ID */ }; asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_ng_eNB_ID_specs_1 = { sizeof(struct GlobalE2node_ng_eNB_ID), offsetof(struct GlobalE2node_ng_eNB_ID, _asn_ctx), asn_MAP_GlobalE2node_ng_eNB_ID_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ + 3, /* Count of tags in the map */ + asn_MAP_GlobalE2node_ng_eNB_ID_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ng_eNB_ID = { "GlobalE2node-ng-eNB-ID", @@ -44,7 +67,7 @@ asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ng_eNB_ID = { /sizeof(asn_DEF_GlobalE2node_ng_eNB_ID_tags_1[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_GlobalE2node_ng_eNB_ID_1, - 1, /* Elements count */ + 3, /* Elements count */ &asn_SPC_GlobalE2node_ng_eNB_ID_specs_1 /* Additional specs */ }; diff --git a/e2ap/lib/GlobalENB-ID.c b/e2ap/lib/GlobalENB-ID.c index 9c34820..5da3873 100644 --- a/e2ap/lib/GlobalENB-ID.c +++ b/e2ap/lib/GlobalENB-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalENB-ID.h" diff --git a/e2ap/lib/GlobalNG-RANNode-ID.c b/e2ap/lib/GlobalNG-RANNode-ID.c new file mode 100644 index 0000000..fab4c83 --- /dev/null +++ b/e2ap/lib/GlobalNG-RANNode-ID.c @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "GlobalNG-RANNode-ID.h" + +#include "GlobalgNB-ID.h" +#include "GlobalngeNB-ID.h" +static asn_oer_constraints_t asn_OER_type_GlobalNG_RANNode_ID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_GlobalNG_RANNode_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_GlobalNG_RANNode_ID_1[] = { + { ATF_POINTER, 0, offsetof(struct GlobalNG_RANNode_ID, choice.gNB), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalgNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB" + }, + { ATF_POINTER, 0, offsetof(struct GlobalNG_RANNode_ID, choice.ng_eNB), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalngeNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ng-eNB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_GlobalNG_RANNode_ID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ng-eNB */ +}; +asn_CHOICE_specifics_t asn_SPC_GlobalNG_RANNode_ID_specs_1 = { + sizeof(struct GlobalNG_RANNode_ID), + offsetof(struct GlobalNG_RANNode_ID, _asn_ctx), + offsetof(struct GlobalNG_RANNode_ID, present), + sizeof(((struct GlobalNG_RANNode_ID *)0)->present), + asn_MAP_GlobalNG_RANNode_ID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_GlobalNG_RANNode_ID = { + "GlobalNG-RANNode-ID", + "GlobalNG-RANNode-ID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_GlobalNG_RANNode_ID_constr_1, &asn_PER_type_GlobalNG_RANNode_ID_constr_1, CHOICE_constraint }, + asn_MBR_GlobalNG_RANNode_ID_1, + 2, /* Elements count */ + &asn_SPC_GlobalNG_RANNode_ID_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/GlobalRIC-ID.c b/e2ap/lib/GlobalRIC-ID.c index c027c79..3e4ecd1 100644 --- a/e2ap/lib/GlobalRIC-ID.c +++ b/e2ap/lib/GlobalRIC-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalRIC-ID.h" diff --git a/e2ap/lib/GlobalenGNB-ID.c b/e2ap/lib/GlobalenGNB-ID.c index 2599aae..56e2ebb 100644 --- a/e2ap/lib/GlobalenGNB-ID.c +++ b/e2ap/lib/GlobalenGNB-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalenGNB-ID.h" diff --git a/e2ap/lib/GlobalgNB-ID.c b/e2ap/lib/GlobalgNB-ID.c index 2150089..cb49630 100644 --- a/e2ap/lib/GlobalgNB-ID.c +++ b/e2ap/lib/GlobalgNB-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalgNB-ID.h" diff --git a/e2ap/lib/GlobalngeNB-ID.c b/e2ap/lib/GlobalngeNB-ID.c index 97d1f41..59c4874 100644 --- a/e2ap/lib/GlobalngeNB-ID.c +++ b/e2ap/lib/GlobalngeNB-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalngeNB-ID.h" diff --git a/e2ap/lib/InitiatingMessage.c b/e2ap/lib/InitiatingMessage.c index 6a6bfdb..7b86826 100644 --- a/e2ap/lib/InitiatingMessage.c +++ b/e2ap/lib/InitiatingMessage.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Descriptions" - * found in "E2AP-PDU-Descriptions-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "InitiatingMessage.h" @@ -11,20 +11,24 @@ static const long asn_VAL_1_id_RICsubscription = 8; static const long asn_VAL_1_reject = 0; static const long asn_VAL_2_id_RICsubscriptionDelete = 9; static const long asn_VAL_2_reject = 0; -static const long asn_VAL_3_id_RICserviceUpdate = 7; +static const long asn_VAL_3_id_RICcontrol = 4; static const long asn_VAL_3_reject = 0; -static const long asn_VAL_4_id_RICcontrol = 4; +static const long asn_VAL_4_id_E2setup = 1; static const long asn_VAL_4_reject = 0; -static const long asn_VAL_5_id_E2setup = 1; +static const long asn_VAL_5_id_E2nodeConfigurationUpdate = 10; static const long asn_VAL_5_reject = 0; static const long asn_VAL_6_id_Reset = 3; static const long asn_VAL_6_reject = 0; -static const long asn_VAL_7_id_RICindication = 5; -static const long asn_VAL_7_ignore = 1; -static const long asn_VAL_8_id_RICserviceQuery = 6; +static const long asn_VAL_7_id_E2removal = 13; +static const long asn_VAL_7_reject = 0; +static const long asn_VAL_8_id_RICindication = 5; static const long asn_VAL_8_ignore = 1; -static const long asn_VAL_9_id_ErrorIndication = 2; +static const long asn_VAL_9_id_RICserviceQuery = 6; static const long asn_VAL_9_ignore = 1; +static const long asn_VAL_10_id_ErrorIndication = 2; +static const long asn_VAL_10_ignore = 1; +static const long asn_VAL_11_id_RICsubscriptionDeleteRequired = 12; +static const long asn_VAL_11_ignore = 1; static const asn_ioc_cell_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows[] = { { "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_RICsubscriptionResponse }, @@ -36,44 +40,54 @@ static const asn_ioc_cell_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows[] = { { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_RICsubscriptionDeleteFailure }, { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_2_id_RICsubscriptionDelete }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_2_reject }, - { "&InitiatingMessage", aioc__type, &asn_DEF_RICserviceUpdate }, - { "&SuccessfulOutcome", aioc__type, &asn_DEF_RICserviceUpdateAcknowledge }, - { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_RICserviceUpdateFailure }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_3_id_RICserviceUpdate }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_3_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_RICcontrolRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_RICcontrolAcknowledge }, { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_RICcontrolFailure }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_4_id_RICcontrol }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_4_reject }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_3_id_RICcontrol }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_3_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_E2setupRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_E2setupResponse }, { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_E2setupFailure }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_5_id_E2setup }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_4_id_E2setup }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_4_reject }, + { "&InitiatingMessage", aioc__type, &asn_DEF_E2nodeConfigurationUpdate }, + { "&SuccessfulOutcome", aioc__type, &asn_DEF_E2nodeConfigurationUpdateAcknowledge }, + { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_E2nodeConfigurationUpdateFailure }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_5_id_E2nodeConfigurationUpdate }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_5_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_ResetRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_ResetResponse }, { "&UnsuccessfulOutcome", }, { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_6_id_Reset }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_6_reject }, + { "&InitiatingMessage", aioc__type, &asn_DEF_E2RemovalRequest }, + { "&SuccessfulOutcome", aioc__type, &asn_DEF_E2RemovalResponse }, + { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_E2RemovalFailure }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_7_id_E2removal }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_7_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_RICindication }, { "&SuccessfulOutcome", }, { "&UnsuccessfulOutcome", }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_7_id_RICindication }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_7_ignore }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_8_id_RICindication }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_8_ignore }, { "&InitiatingMessage", aioc__type, &asn_DEF_RICserviceQuery }, { "&SuccessfulOutcome", }, { "&UnsuccessfulOutcome", }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_8_id_RICserviceQuery }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_8_ignore }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_9_id_RICserviceQuery }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_9_ignore }, { "&InitiatingMessage", aioc__type, &asn_DEF_ErrorIndication }, { "&SuccessfulOutcome", }, { "&UnsuccessfulOutcome", }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_9_id_ErrorIndication }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_9_ignore } + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_10_id_ErrorIndication }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_10_ignore }, + { "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionDeleteRequired }, + { "&SuccessfulOutcome", }, + { "&UnsuccessfulOutcome", }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_11_id_RICsubscriptionDeleteRequired }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_11_ignore } }; static const asn_ioc_set_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1[] = { - { 9, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows } + { 11, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows } }; static int memb_procedureCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, @@ -235,15 +249,6 @@ static asn_TYPE_member_t asn_MBR_value_4[] = { 0, 0, /* No default value */ "RICsubscriptionDeleteRequest" }, - { ATF_NOFLAGS, 0, offsetof(struct InitiatingMessage__value, choice.RICserviceUpdate), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RICserviceUpdate, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICserviceUpdate" - }, { ATF_NOFLAGS, 0, offsetof(struct InitiatingMessage__value, choice.RICcontrolRequest), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -262,6 +267,15 @@ static asn_TYPE_member_t asn_MBR_value_4[] = { 0, 0, /* No default value */ "E2setupRequest" }, + { ATF_NOFLAGS, 0, offsetof(struct InitiatingMessage__value, choice.E2nodeConfigurationUpdate), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeConfigurationUpdate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeConfigurationUpdate" + }, { ATF_NOFLAGS, 0, offsetof(struct InitiatingMessage__value, choice.ResetRequest), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -271,6 +285,15 @@ static asn_TYPE_member_t asn_MBR_value_4[] = { 0, 0, /* No default value */ "ResetRequest" }, + { ATF_NOFLAGS, 0, offsetof(struct InitiatingMessage__value, choice.E2RemovalRequest), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2RemovalRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2RemovalRequest" + }, { ATF_NOFLAGS, 0, offsetof(struct InitiatingMessage__value, choice.RICindication), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -298,17 +321,28 @@ static asn_TYPE_member_t asn_MBR_value_4[] = { 0, 0, /* No default value */ "ErrorIndication" }, + { ATF_NOFLAGS, 0, offsetof(struct InitiatingMessage__value, choice.RICsubscriptionDeleteRequired), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RICsubscriptionDeleteRequired, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICsubscriptionDeleteRequired" + }, }; static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_4[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 8 }, /* RICsubscriptionRequest */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 7 }, /* RICsubscriptionDeleteRequest */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 6 }, /* RICserviceUpdate */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 5 }, /* RICcontrolRequest */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 4 }, /* E2setupRequest */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 3 }, /* ResetRequest */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 2 }, /* RICindication */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 1 }, /* RICserviceQuery */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 0 } /* ErrorIndication */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 10 }, /* RICsubscriptionRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 9 }, /* RICsubscriptionDeleteRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 8 }, /* RICcontrolRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 7 }, /* E2setupRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 6 }, /* E2nodeConfigurationUpdate */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 5 }, /* ResetRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 4 }, /* E2RemovalRequest */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 3 }, /* RICindication */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 2 }, /* RICserviceQuery */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 1 }, /* ErrorIndication */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 0 } /* RICsubscriptionDeleteRequired */ }; static asn_CHOICE_specifics_t asn_SPC_value_specs_4 = { sizeof(struct InitiatingMessage__value), @@ -316,7 +350,7 @@ static asn_CHOICE_specifics_t asn_SPC_value_specs_4 = { offsetof(struct InitiatingMessage__value, present), sizeof(((struct InitiatingMessage__value *)0)->present), asn_MAP_value_tag2el_4, - 9, /* Count of tags in the map */ + 11, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; @@ -331,7 +365,7 @@ asn_TYPE_descriptor_t asn_DEF_value_4 = { 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, asn_MBR_value_4, - 9, /* Elements count */ + 11, /* Elements count */ &asn_SPC_value_specs_4 /* Additional specs */ }; diff --git a/e2sm/lib/CellObjectID.c b/e2ap/lib/MMEname.c similarity index 69% rename from e2sm/lib/CellObjectID.c rename to e2ap/lib/MMEname.c index b6da12b..3218642 100644 --- a/e2sm/lib/CellObjectID.c +++ b/e2ap/lib/MMEname.c @@ -1,11 +1,11 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "CellObjectID.h" +#include "MMEname.h" static const int permitted_alphabet_table_1[256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ @@ -40,7 +40,7 @@ static int check_permitted_alphabet_1(const void *sptr) { } int -CellObjectID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +MMEname_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const PrintableString_t *st = (const PrintableString_t *)sptr; size_t size; @@ -54,7 +54,7 @@ CellObjectID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, size = st->size; - if((size <= 400) + if((size >= 1 && size <= 150) && !check_permitted_alphabet_1(st)) { /* Constraint check succeeded */ return 0; @@ -66,12 +66,12 @@ CellObjectID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, } } -static int asn_PER_MAP_CellObjectID_1_v2c(unsigned int value) { +static int asn_PER_MAP_MMEname_1_v2c(unsigned int value) { if(value >= sizeof(permitted_alphabet_table_1)/sizeof(permitted_alphabet_table_1[0])) return -1; return permitted_alphabet_table_1[value] - 1; } -static int asn_PER_MAP_CellObjectID_1_c2v(unsigned int code) { +static int asn_PER_MAP_MMEname_1_c2v(unsigned int code) { if(code >= sizeof(permitted_alphabet_code2value_1)/sizeof(permitted_alphabet_code2value_1[0])) return -1; return permitted_alphabet_code2value_1[code]; @@ -80,29 +80,29 @@ static int asn_PER_MAP_CellObjectID_1_c2v(unsigned int code) { * This type is implemented using PrintableString, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_CellObjectID_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_MMEname_constr_1 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..MAX)) */}; -asn_per_constraints_t asn_PER_type_CellObjectID_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_MMEname_constr_1 CC_NOTUSED = { { APC_CONSTRAINED, 7, 7, 32, 122 } /* (32..122) */, - { APC_CONSTRAINED | APC_EXTENSIBLE, 9, 9, 0, 400 } /* (SIZE(0..400,...)) */, - asn_PER_MAP_CellObjectID_1_v2c, /* Value to PER code map */ - asn_PER_MAP_CellObjectID_1_c2v /* PER code to value map */ + { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 1, 150 } /* (SIZE(1..150,...)) */, + asn_PER_MAP_MMEname_1_v2c, /* Value to PER code map */ + asn_PER_MAP_MMEname_1_c2v /* PER code to value map */ }; -static const ber_tlv_tag_t asn_DEF_CellObjectID_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_MMEname_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (19 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_CellObjectID = { - "CellObjectID", - "CellObjectID", +asn_TYPE_descriptor_t asn_DEF_MMEname = { + "MMEname", + "MMEname", &asn_OP_PrintableString, - asn_DEF_CellObjectID_tags_1, - sizeof(asn_DEF_CellObjectID_tags_1) - /sizeof(asn_DEF_CellObjectID_tags_1[0]), /* 1 */ - asn_DEF_CellObjectID_tags_1, /* Same as above */ - sizeof(asn_DEF_CellObjectID_tags_1) - /sizeof(asn_DEF_CellObjectID_tags_1[0]), /* 1 */ - { &asn_OER_type_CellObjectID_constr_1, &asn_PER_type_CellObjectID_constr_1, CellObjectID_constraint }, + asn_DEF_MMEname_tags_1, + sizeof(asn_DEF_MMEname_tags_1) + /sizeof(asn_DEF_MMEname_tags_1[0]), /* 1 */ + asn_DEF_MMEname_tags_1, /* Same as above */ + sizeof(asn_DEF_MMEname_tags_1) + /sizeof(asn_DEF_MMEname_tags_1[0]), /* 1 */ + { &asn_OER_type_MMEname_constr_1, &asn_PER_type_MMEname_constr_1, MMEname_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/e2ap/lib/NGENB-DU-ID.c b/e2ap/lib/NGENB-DU-ID.c new file mode 100644 index 0000000..1a8f48a --- /dev/null +++ b/e2ap/lib/NGENB-DU-ID.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NGENB-DU-ID.h" + +int +NGENB_DU_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 68719476735)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using INTEGER, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NGENB_DU_ID_constr_1 CC_NOTUSED = { + { 8, 1 } /* (0..68719476735) */, + -1}; +asn_per_constraints_t asn_PER_type_NGENB_DU_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 36, -1, 0, 68719476735 } /* (0..68719476735) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_NGENB_DU_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NGENB_DU_ID = { + "NGENB-DU-ID", + "NGENB-DU-ID", + &asn_OP_INTEGER, + asn_DEF_NGENB_DU_ID_tags_1, + sizeof(asn_DEF_NGENB_DU_ID_tags_1) + /sizeof(asn_DEF_NGENB_DU_ID_tags_1[0]), /* 1 */ + asn_DEF_NGENB_DU_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_NGENB_DU_ID_tags_1) + /sizeof(asn_DEF_NGENB_DU_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_NGENB_DU_ID_constr_1, &asn_PER_type_NGENB_DU_ID_constr_1, NGENB_DU_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2ap/lib/PLMN-Identity.c b/e2ap/lib/PLMN-Identity.c index 24f3043..8be1dc8 100644 --- a/e2ap/lib/PLMN-Identity.c +++ b/e2ap/lib/PLMN-Identity.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "PLMN-Identity.h" diff --git a/e2ap/lib/Presence.c b/e2ap/lib/Presence.c index c32f9e0..3377b10 100644 --- a/e2ap/lib/Presence.c +++ b/e2ap/lib/Presence.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "Presence.h" diff --git a/e2ap/lib/PrintableString.c b/e2ap/lib/PrintableString.c new file mode 100644 index 0000000..8fc3939 --- /dev/null +++ b/e2ap/lib/PrintableString.c @@ -0,0 +1,130 @@ +/*- + * Copyright (c) 2003, 2004, 2006 Lev Walkin . + * All rights reserved. + * Redistribution and modifications are permitted subject to BSD license. + */ +#include +#include + +/* + * ASN.1:1984 (X.409) + */ +static const int _PrintableString_alphabet[256] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ + 1, 0, 0, 0, 0, 0, 0, 2, 3, 4, 0, 5, 6, 7, 8, 9, /* . '() +,-./ */ +10,11,12,13,14,15,16,17,18,19,20, 0, 0,21, 0,22, /* 0123456789: = ? */ + 0,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37, /* ABCDEFGHIJKLMNO */ +38,39,40,41,42,43,44,45,46,47,48, 0, 0, 0, 0, 0, /* PQRSTUVWXYZ */ + 0,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63, /* abcdefghijklmno */ +64,65,66,67,68,69,70,71,72,73,74, 0, 0, 0, 0, 0, /* pqrstuvwxyz */ +}; +static const int _PrintableString_code2value[74] = { +32,39,40,41,43,44,45,46,47,48,49,50,51,52,53,54, +55,56,57,58,61,63,65,66,67,68,69,70,71,72,73,74, +75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90, +97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112, +113,114,115,116,117,118,119,120,121,122}; + +/* + * PrintableString basic type description. + */ +static const ber_tlv_tag_t asn_DEF_PrintableString_tags[] = { + (ASN_TAG_CLASS_UNIVERSAL | (19 << 2)), /* [UNIVERSAL 19] IMPLICIT ...*/ + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */ +}; +static int asn_DEF_PrintableString_v2c(unsigned int value) { + return _PrintableString_alphabet[value > 255 ? 0 : value] - 1; +} +static int asn_DEF_PrintableString_c2v(unsigned int code) { + if(code < 74) + return _PrintableString_code2value[code]; + return -1; +} +static asn_per_constraints_t asn_DEF_PrintableString_per_constraints = { + { APC_CONSTRAINED, 4, 4, 0x20, 0x39 }, /* Value */ + { APC_SEMI_CONSTRAINED, -1, -1, 0, 0 }, /* Size */ + asn_DEF_PrintableString_v2c, + asn_DEF_PrintableString_c2v +}; +asn_TYPE_operation_t asn_OP_PrintableString = { + OCTET_STRING_free, + OCTET_STRING_print_utf8, /* ASCII subset */ + OCTET_STRING_compare, + OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */ + OCTET_STRING_encode_der, + OCTET_STRING_decode_xer_utf8, + OCTET_STRING_encode_xer_utf8, +#ifdef ASN_DISABLE_OER_SUPPORT + 0, + 0, +#else + OCTET_STRING_decode_oer, + OCTET_STRING_encode_oer, +#endif /* ASN_DISABLE_OER_SUPPORT */ +#ifdef ASN_DISABLE_PER_SUPPORT + 0, + 0, + 0, + 0, +#else + OCTET_STRING_decode_uper, + OCTET_STRING_encode_uper, + OCTET_STRING_decode_aper, + OCTET_STRING_encode_aper, +#endif /* ASN_DISABLE_PER_SUPPORT */ + OCTET_STRING_random_fill, + 0 /* Use generic outmost tag fetcher */ +}; +asn_TYPE_descriptor_t asn_DEF_PrintableString = { + "PrintableString", + "PrintableString", + &asn_OP_PrintableString, + asn_DEF_PrintableString_tags, + sizeof(asn_DEF_PrintableString_tags) + / sizeof(asn_DEF_PrintableString_tags[0]) - 1, + asn_DEF_PrintableString_tags, + sizeof(asn_DEF_PrintableString_tags) + / sizeof(asn_DEF_PrintableString_tags[0]), + { 0, &asn_DEF_PrintableString_per_constraints, PrintableString_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + + +int +PrintableString_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, + void *app_key) { + const PrintableString_t *st = (const PrintableString_t *)sptr; + + if(st && st->buf) { + uint8_t *buf = st->buf; + uint8_t *end = buf + st->size; + + /* + * Check the alphabet of the PrintableString. + * ASN.1:1984 (X.409) + */ + for(; buf < end; buf++) { + if(!_PrintableString_alphabet[*buf]) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value byte %ld (%d) " + "not in PrintableString alphabet " + "(%s:%d)", + td->name, + (long)((buf - st->buf) + 1), + *buf, + __FILE__, __LINE__); + return -1; + } + } + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + return 0; +} diff --git a/e2ap/lib/ProcedureCode.c b/e2ap/lib/ProcedureCode.c index 8678080..ba5d14d 100644 --- a/e2ap/lib/ProcedureCode.c +++ b/e2ap/lib/ProcedureCode.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ProcedureCode.h" diff --git a/e2ap/lib/ProtocolIE-Container.c b/e2ap/lib/ProtocolIE-Container.c index 05014c6..e39d798 100644 --- a/e2ap/lib/ProtocolIE-Container.c +++ b/e2ap/lib/ProtocolIE-Container.c @@ -1,174 +1,206 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ProtocolIE-Container.h" #include "ProtocolIE-Field.h" -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P0_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P0_constr_1 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P0_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P0_constr_1 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P1_constr_3 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P1_constr_3 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P1_constr_3 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P1_constr_3 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P2_constr_5 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P2_constr_5 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P2_constr_5 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P2_constr_5 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P3_constr_7 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P3_constr_7 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P3_constr_7 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P3_constr_7 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P4_constr_9 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P4_constr_9 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P4_constr_9 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P4_constr_9 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P5_constr_11 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P5_constr_11 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P5_constr_11 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P5_constr_11 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P6_constr_13 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P6_constr_13 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P6_constr_13 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P6_constr_13 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P7_constr_15 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P7_constr_15 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P7_constr_15 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P7_constr_15 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P8_constr_17 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P8_constr_17 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P8_constr_17 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P8_constr_17 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P9_constr_19 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P9_constr_19 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P9_constr_19 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P9_constr_19 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P10_constr_21 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P10_constr_21 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P10_constr_21 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P10_constr_21 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P11_constr_23 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P11_constr_23 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P11_constr_23 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P11_constr_23 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P12_constr_25 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P12_constr_25 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P12_constr_25 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P12_constr_25 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P13_constr_27 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P13_constr_27 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P13_constr_27 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P13_constr_27 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P14_constr_29 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P14_constr_29 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P14_constr_29 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P14_constr_29 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P15_constr_31 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P15_constr_31 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P15_constr_31 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P15_constr_31 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P16_constr_33 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P16_constr_33 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P16_constr_33 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P16_constr_33 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P17_constr_35 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P17_constr_35 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P17_constr_35 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P17_constr_35 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P18_constr_37 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P18_constr_37 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P18_constr_37 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P18_constr_37 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_87P19_constr_39 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P19_constr_39 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..65535)) */}; -asn_per_constraints_t asn_PER_type_ProtocolIE_Container_87P19_constr_39 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P19_constr_39 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P0_1[] = { +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P20_constr_41 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P20_constr_41 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P21_constr_43 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P21_constr_43 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P22_constr_45 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P22_constr_45 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ProtocolIE_Container_185P23_constr_47 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +asn_per_constraints_t asn_PER_type_ProtocolIE_Container_185P23_constr_47 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P0_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -179,31 +211,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P0_1[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P0_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P0_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P0_specs_1 = { - sizeof(struct ProtocolIE_Container_87P0), - offsetof(struct ProtocolIE_Container_87P0, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P0_specs_1 = { + sizeof(struct ProtocolIE_Container_185P0), + offsetof(struct ProtocolIE_Container_185P0, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P0 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P0 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P0_tags_1, - sizeof(asn_DEF_ProtocolIE_Container_87P0_tags_1) - /sizeof(asn_DEF_ProtocolIE_Container_87P0_tags_1[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P0_tags_1, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P0_tags_1) - /sizeof(asn_DEF_ProtocolIE_Container_87P0_tags_1[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P0_constr_1, &asn_PER_type_ProtocolIE_Container_87P0_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P0_1, + asn_DEF_ProtocolIE_Container_185P0_tags_1, + sizeof(asn_DEF_ProtocolIE_Container_185P0_tags_1) + /sizeof(asn_DEF_ProtocolIE_Container_185P0_tags_1[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P0_tags_1, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P0_tags_1) + /sizeof(asn_DEF_ProtocolIE_Container_185P0_tags_1[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P0_constr_1, &asn_PER_type_ProtocolIE_Container_185P0_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P0_1, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P0_specs_1 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P0_specs_1 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P1_3[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P1_3[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -214,31 +246,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P1_3[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P1_tags_3[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P1_tags_3[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P1_specs_3 = { - sizeof(struct ProtocolIE_Container_87P1), - offsetof(struct ProtocolIE_Container_87P1, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P1_specs_3 = { + sizeof(struct ProtocolIE_Container_185P1), + offsetof(struct ProtocolIE_Container_185P1, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P1 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P1 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P1_tags_3, - sizeof(asn_DEF_ProtocolIE_Container_87P1_tags_3) - /sizeof(asn_DEF_ProtocolIE_Container_87P1_tags_3[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P1_tags_3, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P1_tags_3) - /sizeof(asn_DEF_ProtocolIE_Container_87P1_tags_3[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P1_constr_3, &asn_PER_type_ProtocolIE_Container_87P1_constr_3, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P1_3, + asn_DEF_ProtocolIE_Container_185P1_tags_3, + sizeof(asn_DEF_ProtocolIE_Container_185P1_tags_3) + /sizeof(asn_DEF_ProtocolIE_Container_185P1_tags_3[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P1_tags_3, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P1_tags_3) + /sizeof(asn_DEF_ProtocolIE_Container_185P1_tags_3[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P1_constr_3, &asn_PER_type_ProtocolIE_Container_185P1_constr_3, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P1_3, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P1_specs_3 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P1_specs_3 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P2_5[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P2_5[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -249,31 +281,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P2_5[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P2_tags_5[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P2_tags_5[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P2_specs_5 = { - sizeof(struct ProtocolIE_Container_87P2), - offsetof(struct ProtocolIE_Container_87P2, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P2_specs_5 = { + sizeof(struct ProtocolIE_Container_185P2), + offsetof(struct ProtocolIE_Container_185P2, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P2 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P2 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P2_tags_5, - sizeof(asn_DEF_ProtocolIE_Container_87P2_tags_5) - /sizeof(asn_DEF_ProtocolIE_Container_87P2_tags_5[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P2_tags_5, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P2_tags_5) - /sizeof(asn_DEF_ProtocolIE_Container_87P2_tags_5[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P2_constr_5, &asn_PER_type_ProtocolIE_Container_87P2_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P2_5, + asn_DEF_ProtocolIE_Container_185P2_tags_5, + sizeof(asn_DEF_ProtocolIE_Container_185P2_tags_5) + /sizeof(asn_DEF_ProtocolIE_Container_185P2_tags_5[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P2_tags_5, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P2_tags_5) + /sizeof(asn_DEF_ProtocolIE_Container_185P2_tags_5[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P2_constr_5, &asn_PER_type_ProtocolIE_Container_185P2_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P2_5, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P2_specs_5 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P2_specs_5 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P3_7[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P3_7[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -284,31 +316,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P3_7[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P3_tags_7[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P3_tags_7[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P3_specs_7 = { - sizeof(struct ProtocolIE_Container_87P3), - offsetof(struct ProtocolIE_Container_87P3, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P3_specs_7 = { + sizeof(struct ProtocolIE_Container_185P3), + offsetof(struct ProtocolIE_Container_185P3, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P3 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P3 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P3_tags_7, - sizeof(asn_DEF_ProtocolIE_Container_87P3_tags_7) - /sizeof(asn_DEF_ProtocolIE_Container_87P3_tags_7[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P3_tags_7, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P3_tags_7) - /sizeof(asn_DEF_ProtocolIE_Container_87P3_tags_7[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P3_constr_7, &asn_PER_type_ProtocolIE_Container_87P3_constr_7, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P3_7, + asn_DEF_ProtocolIE_Container_185P3_tags_7, + sizeof(asn_DEF_ProtocolIE_Container_185P3_tags_7) + /sizeof(asn_DEF_ProtocolIE_Container_185P3_tags_7[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P3_tags_7, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P3_tags_7) + /sizeof(asn_DEF_ProtocolIE_Container_185P3_tags_7[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P3_constr_7, &asn_PER_type_ProtocolIE_Container_185P3_constr_7, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P3_7, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P3_specs_7 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P3_specs_7 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P4_9[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P4_9[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -319,31 +351,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P4_9[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P4_tags_9[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P4_tags_9[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P4_specs_9 = { - sizeof(struct ProtocolIE_Container_87P4), - offsetof(struct ProtocolIE_Container_87P4, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P4_specs_9 = { + sizeof(struct ProtocolIE_Container_185P4), + offsetof(struct ProtocolIE_Container_185P4, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P4 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P4 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P4_tags_9, - sizeof(asn_DEF_ProtocolIE_Container_87P4_tags_9) - /sizeof(asn_DEF_ProtocolIE_Container_87P4_tags_9[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P4_tags_9, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P4_tags_9) - /sizeof(asn_DEF_ProtocolIE_Container_87P4_tags_9[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P4_constr_9, &asn_PER_type_ProtocolIE_Container_87P4_constr_9, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P4_9, + asn_DEF_ProtocolIE_Container_185P4_tags_9, + sizeof(asn_DEF_ProtocolIE_Container_185P4_tags_9) + /sizeof(asn_DEF_ProtocolIE_Container_185P4_tags_9[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P4_tags_9, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P4_tags_9) + /sizeof(asn_DEF_ProtocolIE_Container_185P4_tags_9[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P4_constr_9, &asn_PER_type_ProtocolIE_Container_185P4_constr_9, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P4_9, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P4_specs_9 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P4_specs_9 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P5_11[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P5_11[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -354,31 +386,66 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P5_11[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P5_tags_11[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P5_tags_11[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P5_specs_11 = { - sizeof(struct ProtocolIE_Container_87P5), - offsetof(struct ProtocolIE_Container_87P5, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P5_specs_11 = { + sizeof(struct ProtocolIE_Container_185P5), + offsetof(struct ProtocolIE_Container_185P5, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P5 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P5 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P5_tags_11, - sizeof(asn_DEF_ProtocolIE_Container_87P5_tags_11) - /sizeof(asn_DEF_ProtocolIE_Container_87P5_tags_11[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P5_tags_11, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P5_tags_11) - /sizeof(asn_DEF_ProtocolIE_Container_87P5_tags_11[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P5_constr_11, &asn_PER_type_ProtocolIE_Container_87P5_constr_11, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P5_11, + asn_DEF_ProtocolIE_Container_185P5_tags_11, + sizeof(asn_DEF_ProtocolIE_Container_185P5_tags_11) + /sizeof(asn_DEF_ProtocolIE_Container_185P5_tags_11[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P5_tags_11, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P5_tags_11) + /sizeof(asn_DEF_ProtocolIE_Container_185P5_tags_11[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P5_constr_11, &asn_PER_type_ProtocolIE_Container_185P5_constr_11, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P5_11, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P5_specs_11 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P5_specs_11 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P6_13[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P6_13[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RICsubscriptionDeleteRequired_IEs, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P6_tags_13[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P6_specs_13 = { + sizeof(struct ProtocolIE_Container_185P6), + offsetof(struct ProtocolIE_Container_185P6, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P6 = { + "ProtocolIE-Container", + "ProtocolIE-Container", + &asn_OP_SEQUENCE_OF, + asn_DEF_ProtocolIE_Container_185P6_tags_13, + sizeof(asn_DEF_ProtocolIE_Container_185P6_tags_13) + /sizeof(asn_DEF_ProtocolIE_Container_185P6_tags_13[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P6_tags_13, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P6_tags_13) + /sizeof(asn_DEF_ProtocolIE_Container_185P6_tags_13[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P6_constr_13, &asn_PER_type_ProtocolIE_Container_185P6_constr_13, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P6_13, + 1, /* Single element */ + &asn_SPC_ProtocolIE_Container_185P6_specs_13 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P7_15[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -389,31 +456,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P6_13[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P6_tags_13[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P7_tags_15[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P6_specs_13 = { - sizeof(struct ProtocolIE_Container_87P6), - offsetof(struct ProtocolIE_Container_87P6, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P7_specs_15 = { + sizeof(struct ProtocolIE_Container_185P7), + offsetof(struct ProtocolIE_Container_185P7, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P6 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P7 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P6_tags_13, - sizeof(asn_DEF_ProtocolIE_Container_87P6_tags_13) - /sizeof(asn_DEF_ProtocolIE_Container_87P6_tags_13[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P6_tags_13, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P6_tags_13) - /sizeof(asn_DEF_ProtocolIE_Container_87P6_tags_13[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P6_constr_13, &asn_PER_type_ProtocolIE_Container_87P6_constr_13, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P6_13, + asn_DEF_ProtocolIE_Container_185P7_tags_15, + sizeof(asn_DEF_ProtocolIE_Container_185P7_tags_15) + /sizeof(asn_DEF_ProtocolIE_Container_185P7_tags_15[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P7_tags_15, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P7_tags_15) + /sizeof(asn_DEF_ProtocolIE_Container_185P7_tags_15[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P7_constr_15, &asn_PER_type_ProtocolIE_Container_185P7_constr_15, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P7_15, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P6_specs_13 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P7_specs_15 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P7_15[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P8_17[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -424,31 +491,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P7_15[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P7_tags_15[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P8_tags_17[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P7_specs_15 = { - sizeof(struct ProtocolIE_Container_87P7), - offsetof(struct ProtocolIE_Container_87P7, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P8_specs_17 = { + sizeof(struct ProtocolIE_Container_185P8), + offsetof(struct ProtocolIE_Container_185P8, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P7 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P8 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P7_tags_15, - sizeof(asn_DEF_ProtocolIE_Container_87P7_tags_15) - /sizeof(asn_DEF_ProtocolIE_Container_87P7_tags_15[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P7_tags_15, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P7_tags_15) - /sizeof(asn_DEF_ProtocolIE_Container_87P7_tags_15[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P7_constr_15, &asn_PER_type_ProtocolIE_Container_87P7_constr_15, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P7_15, + asn_DEF_ProtocolIE_Container_185P8_tags_17, + sizeof(asn_DEF_ProtocolIE_Container_185P8_tags_17) + /sizeof(asn_DEF_ProtocolIE_Container_185P8_tags_17[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P8_tags_17, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P8_tags_17) + /sizeof(asn_DEF_ProtocolIE_Container_185P8_tags_17[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P8_constr_17, &asn_PER_type_ProtocolIE_Container_185P8_constr_17, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P8_17, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P7_specs_15 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P8_specs_17 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P8_17[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P9_19[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -459,31 +526,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P8_17[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P8_tags_17[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P9_tags_19[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P8_specs_17 = { - sizeof(struct ProtocolIE_Container_87P8), - offsetof(struct ProtocolIE_Container_87P8, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P9_specs_19 = { + sizeof(struct ProtocolIE_Container_185P9), + offsetof(struct ProtocolIE_Container_185P9, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P8 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P9 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P8_tags_17, - sizeof(asn_DEF_ProtocolIE_Container_87P8_tags_17) - /sizeof(asn_DEF_ProtocolIE_Container_87P8_tags_17[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P8_tags_17, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P8_tags_17) - /sizeof(asn_DEF_ProtocolIE_Container_87P8_tags_17[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P8_constr_17, &asn_PER_type_ProtocolIE_Container_87P8_constr_17, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P8_17, + asn_DEF_ProtocolIE_Container_185P9_tags_19, + sizeof(asn_DEF_ProtocolIE_Container_185P9_tags_19) + /sizeof(asn_DEF_ProtocolIE_Container_185P9_tags_19[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P9_tags_19, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P9_tags_19) + /sizeof(asn_DEF_ProtocolIE_Container_185P9_tags_19[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P9_constr_19, &asn_PER_type_ProtocolIE_Container_185P9_constr_19, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P9_19, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P8_specs_17 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P9_specs_19 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P9_19[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P10_21[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -494,31 +561,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P9_19[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P9_tags_19[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P10_tags_21[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P9_specs_19 = { - sizeof(struct ProtocolIE_Container_87P9), - offsetof(struct ProtocolIE_Container_87P9, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P10_specs_21 = { + sizeof(struct ProtocolIE_Container_185P10), + offsetof(struct ProtocolIE_Container_185P10, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P9 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P10 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P9_tags_19, - sizeof(asn_DEF_ProtocolIE_Container_87P9_tags_19) - /sizeof(asn_DEF_ProtocolIE_Container_87P9_tags_19[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P9_tags_19, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P9_tags_19) - /sizeof(asn_DEF_ProtocolIE_Container_87P9_tags_19[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P9_constr_19, &asn_PER_type_ProtocolIE_Container_87P9_constr_19, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P9_19, + asn_DEF_ProtocolIE_Container_185P10_tags_21, + sizeof(asn_DEF_ProtocolIE_Container_185P10_tags_21) + /sizeof(asn_DEF_ProtocolIE_Container_185P10_tags_21[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P10_tags_21, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P10_tags_21) + /sizeof(asn_DEF_ProtocolIE_Container_185P10_tags_21[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P10_constr_21, &asn_PER_type_ProtocolIE_Container_185P10_constr_21, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P10_21, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P9_specs_19 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P10_specs_21 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P10_21[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P11_23[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -529,31 +596,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P10_21[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P10_tags_21[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P11_tags_23[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P10_specs_21 = { - sizeof(struct ProtocolIE_Container_87P10), - offsetof(struct ProtocolIE_Container_87P10, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P11_specs_23 = { + sizeof(struct ProtocolIE_Container_185P11), + offsetof(struct ProtocolIE_Container_185P11, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P10 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P11 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P10_tags_21, - sizeof(asn_DEF_ProtocolIE_Container_87P10_tags_21) - /sizeof(asn_DEF_ProtocolIE_Container_87P10_tags_21[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P10_tags_21, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P10_tags_21) - /sizeof(asn_DEF_ProtocolIE_Container_87P10_tags_21[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P10_constr_21, &asn_PER_type_ProtocolIE_Container_87P10_constr_21, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P10_21, + asn_DEF_ProtocolIE_Container_185P11_tags_23, + sizeof(asn_DEF_ProtocolIE_Container_185P11_tags_23) + /sizeof(asn_DEF_ProtocolIE_Container_185P11_tags_23[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P11_tags_23, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P11_tags_23) + /sizeof(asn_DEF_ProtocolIE_Container_185P11_tags_23[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P11_constr_23, &asn_PER_type_ProtocolIE_Container_185P11_constr_23, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P11_23, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P10_specs_21 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P11_specs_23 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P11_23[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P12_25[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -564,31 +631,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P11_23[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P11_tags_23[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P12_tags_25[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P11_specs_23 = { - sizeof(struct ProtocolIE_Container_87P11), - offsetof(struct ProtocolIE_Container_87P11, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P12_specs_25 = { + sizeof(struct ProtocolIE_Container_185P12), + offsetof(struct ProtocolIE_Container_185P12, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P11 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P12 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P11_tags_23, - sizeof(asn_DEF_ProtocolIE_Container_87P11_tags_23) - /sizeof(asn_DEF_ProtocolIE_Container_87P11_tags_23[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P11_tags_23, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P11_tags_23) - /sizeof(asn_DEF_ProtocolIE_Container_87P11_tags_23[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P11_constr_23, &asn_PER_type_ProtocolIE_Container_87P11_constr_23, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P11_23, + asn_DEF_ProtocolIE_Container_185P12_tags_25, + sizeof(asn_DEF_ProtocolIE_Container_185P12_tags_25) + /sizeof(asn_DEF_ProtocolIE_Container_185P12_tags_25[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P12_tags_25, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P12_tags_25) + /sizeof(asn_DEF_ProtocolIE_Container_185P12_tags_25[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P12_constr_25, &asn_PER_type_ProtocolIE_Container_185P12_constr_25, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P12_25, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P11_specs_23 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P12_specs_25 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P12_25[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P13_27[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -599,31 +666,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P12_25[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P12_tags_25[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P13_tags_27[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P12_specs_25 = { - sizeof(struct ProtocolIE_Container_87P12), - offsetof(struct ProtocolIE_Container_87P12, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P13_specs_27 = { + sizeof(struct ProtocolIE_Container_185P13), + offsetof(struct ProtocolIE_Container_185P13, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P12 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P13 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P12_tags_25, - sizeof(asn_DEF_ProtocolIE_Container_87P12_tags_25) - /sizeof(asn_DEF_ProtocolIE_Container_87P12_tags_25[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P12_tags_25, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P12_tags_25) - /sizeof(asn_DEF_ProtocolIE_Container_87P12_tags_25[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P12_constr_25, &asn_PER_type_ProtocolIE_Container_87P12_constr_25, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P12_25, + asn_DEF_ProtocolIE_Container_185P13_tags_27, + sizeof(asn_DEF_ProtocolIE_Container_185P13_tags_27) + /sizeof(asn_DEF_ProtocolIE_Container_185P13_tags_27[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P13_tags_27, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P13_tags_27) + /sizeof(asn_DEF_ProtocolIE_Container_185P13_tags_27[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P13_constr_27, &asn_PER_type_ProtocolIE_Container_185P13_constr_27, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P13_27, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P12_specs_25 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P13_specs_27 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P13_27[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P14_29[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -634,31 +701,136 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P13_27[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P13_tags_27[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P14_tags_29[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P14_specs_29 = { + sizeof(struct ProtocolIE_Container_185P14), + offsetof(struct ProtocolIE_Container_185P14, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P14 = { + "ProtocolIE-Container", + "ProtocolIE-Container", + &asn_OP_SEQUENCE_OF, + asn_DEF_ProtocolIE_Container_185P14_tags_29, + sizeof(asn_DEF_ProtocolIE_Container_185P14_tags_29) + /sizeof(asn_DEF_ProtocolIE_Container_185P14_tags_29[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P14_tags_29, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P14_tags_29) + /sizeof(asn_DEF_ProtocolIE_Container_185P14_tags_29[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P14_constr_29, &asn_PER_type_ProtocolIE_Container_185P14_constr_29, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P14_29, + 1, /* Single element */ + &asn_SPC_ProtocolIE_Container_185P14_specs_29 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P15_31[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeConfigurationUpdate_IEs, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P15_tags_31[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P13_specs_27 = { - sizeof(struct ProtocolIE_Container_87P13), - offsetof(struct ProtocolIE_Container_87P13, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P15_specs_31 = { + sizeof(struct ProtocolIE_Container_185P15), + offsetof(struct ProtocolIE_Container_185P15, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P13 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P15 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P13_tags_27, - sizeof(asn_DEF_ProtocolIE_Container_87P13_tags_27) - /sizeof(asn_DEF_ProtocolIE_Container_87P13_tags_27[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P13_tags_27, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P13_tags_27) - /sizeof(asn_DEF_ProtocolIE_Container_87P13_tags_27[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P13_constr_27, &asn_PER_type_ProtocolIE_Container_87P13_constr_27, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P13_27, + asn_DEF_ProtocolIE_Container_185P15_tags_31, + sizeof(asn_DEF_ProtocolIE_Container_185P15_tags_31) + /sizeof(asn_DEF_ProtocolIE_Container_185P15_tags_31[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P15_tags_31, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P15_tags_31) + /sizeof(asn_DEF_ProtocolIE_Container_185P15_tags_31[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P15_constr_31, &asn_PER_type_ProtocolIE_Container_185P15_constr_31, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P15_31, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P13_specs_27 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P15_specs_31 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P14_29[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P16_33[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P16_tags_33[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P16_specs_33 = { + sizeof(struct ProtocolIE_Container_185P16), + offsetof(struct ProtocolIE_Container_185P16, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P16 = { + "ProtocolIE-Container", + "ProtocolIE-Container", + &asn_OP_SEQUENCE_OF, + asn_DEF_ProtocolIE_Container_185P16_tags_33, + sizeof(asn_DEF_ProtocolIE_Container_185P16_tags_33) + /sizeof(asn_DEF_ProtocolIE_Container_185P16_tags_33[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P16_tags_33, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P16_tags_33) + /sizeof(asn_DEF_ProtocolIE_Container_185P16_tags_33[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P16_constr_33, &asn_PER_type_ProtocolIE_Container_185P16_constr_33, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P16_33, + 1, /* Single element */ + &asn_SPC_ProtocolIE_Container_185P16_specs_33 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P17_35[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeConfigurationUpdateFailure_IEs, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P17_tags_35[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P17_specs_35 = { + sizeof(struct ProtocolIE_Container_185P17), + offsetof(struct ProtocolIE_Container_185P17, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P17 = { + "ProtocolIE-Container", + "ProtocolIE-Container", + &asn_OP_SEQUENCE_OF, + asn_DEF_ProtocolIE_Container_185P17_tags_35, + sizeof(asn_DEF_ProtocolIE_Container_185P17_tags_35) + /sizeof(asn_DEF_ProtocolIE_Container_185P17_tags_35[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P17_tags_35, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P17_tags_35) + /sizeof(asn_DEF_ProtocolIE_Container_185P17_tags_35[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P17_constr_35, &asn_PER_type_ProtocolIE_Container_185P17_constr_35, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P17_35, + 1, /* Single element */ + &asn_SPC_ProtocolIE_Container_185P17_specs_35 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P18_37[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -669,31 +841,31 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P14_29[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P14_tags_29[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P18_tags_37[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P14_specs_29 = { - sizeof(struct ProtocolIE_Container_87P14), - offsetof(struct ProtocolIE_Container_87P14, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P18_specs_37 = { + sizeof(struct ProtocolIE_Container_185P18), + offsetof(struct ProtocolIE_Container_185P18, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P14 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P18 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P14_tags_29, - sizeof(asn_DEF_ProtocolIE_Container_87P14_tags_29) - /sizeof(asn_DEF_ProtocolIE_Container_87P14_tags_29[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P14_tags_29, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P14_tags_29) - /sizeof(asn_DEF_ProtocolIE_Container_87P14_tags_29[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P14_constr_29, &asn_PER_type_ProtocolIE_Container_87P14_constr_29, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P14_29, + asn_DEF_ProtocolIE_Container_185P18_tags_37, + sizeof(asn_DEF_ProtocolIE_Container_185P18_tags_37) + /sizeof(asn_DEF_ProtocolIE_Container_185P18_tags_37[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P18_tags_37, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P18_tags_37) + /sizeof(asn_DEF_ProtocolIE_Container_185P18_tags_37[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P18_constr_37, &asn_PER_type_ProtocolIE_Container_185P18_constr_37, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P18_37, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P14_specs_29 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P18_specs_37 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P15_31[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P19_39[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -704,167 +876,167 @@ asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P15_31[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P15_tags_31[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P19_tags_39[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P15_specs_31 = { - sizeof(struct ProtocolIE_Container_87P15), - offsetof(struct ProtocolIE_Container_87P15, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P19_specs_39 = { + sizeof(struct ProtocolIE_Container_185P19), + offsetof(struct ProtocolIE_Container_185P19, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P15 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P19 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P15_tags_31, - sizeof(asn_DEF_ProtocolIE_Container_87P15_tags_31) - /sizeof(asn_DEF_ProtocolIE_Container_87P15_tags_31[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P15_tags_31, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P15_tags_31) - /sizeof(asn_DEF_ProtocolIE_Container_87P15_tags_31[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P15_constr_31, &asn_PER_type_ProtocolIE_Container_87P15_constr_31, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P15_31, + asn_DEF_ProtocolIE_Container_185P19_tags_39, + sizeof(asn_DEF_ProtocolIE_Container_185P19_tags_39) + /sizeof(asn_DEF_ProtocolIE_Container_185P19_tags_39[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P19_tags_39, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P19_tags_39) + /sizeof(asn_DEF_ProtocolIE_Container_185P19_tags_39[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P19_constr_39, &asn_PER_type_ProtocolIE_Container_185P19_constr_39, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P19_39, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P15_specs_31 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P19_specs_39 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P16_33[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P20_41[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICserviceUpdate_IEs, + &asn_DEF_RICserviceQuery_IEs, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P16_tags_33[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P20_tags_41[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P16_specs_33 = { - sizeof(struct ProtocolIE_Container_87P16), - offsetof(struct ProtocolIE_Container_87P16, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P20_specs_41 = { + sizeof(struct ProtocolIE_Container_185P20), + offsetof(struct ProtocolIE_Container_185P20, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P16 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P20 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P16_tags_33, - sizeof(asn_DEF_ProtocolIE_Container_87P16_tags_33) - /sizeof(asn_DEF_ProtocolIE_Container_87P16_tags_33[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P16_tags_33, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P16_tags_33) - /sizeof(asn_DEF_ProtocolIE_Container_87P16_tags_33[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P16_constr_33, &asn_PER_type_ProtocolIE_Container_87P16_constr_33, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P16_33, + asn_DEF_ProtocolIE_Container_185P20_tags_41, + sizeof(asn_DEF_ProtocolIE_Container_185P20_tags_41) + /sizeof(asn_DEF_ProtocolIE_Container_185P20_tags_41[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P20_tags_41, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P20_tags_41) + /sizeof(asn_DEF_ProtocolIE_Container_185P20_tags_41[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P20_constr_41, &asn_PER_type_ProtocolIE_Container_185P20_constr_41, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P20_41, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P16_specs_33 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P20_specs_41 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P17_35[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P21_43[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICserviceUpdateAcknowledge_IEs, + &asn_DEF_E2RemovalRequestIEs, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P17_tags_35[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P21_tags_43[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P17_specs_35 = { - sizeof(struct ProtocolIE_Container_87P17), - offsetof(struct ProtocolIE_Container_87P17, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P21_specs_43 = { + sizeof(struct ProtocolIE_Container_185P21), + offsetof(struct ProtocolIE_Container_185P21, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P17 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P21 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P17_tags_35, - sizeof(asn_DEF_ProtocolIE_Container_87P17_tags_35) - /sizeof(asn_DEF_ProtocolIE_Container_87P17_tags_35[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P17_tags_35, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P17_tags_35) - /sizeof(asn_DEF_ProtocolIE_Container_87P17_tags_35[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P17_constr_35, &asn_PER_type_ProtocolIE_Container_87P17_constr_35, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P17_35, + asn_DEF_ProtocolIE_Container_185P21_tags_43, + sizeof(asn_DEF_ProtocolIE_Container_185P21_tags_43) + /sizeof(asn_DEF_ProtocolIE_Container_185P21_tags_43[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P21_tags_43, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P21_tags_43) + /sizeof(asn_DEF_ProtocolIE_Container_185P21_tags_43[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P21_constr_43, &asn_PER_type_ProtocolIE_Container_185P21_constr_43, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P21_43, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P17_specs_35 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P21_specs_43 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P18_37[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P22_45[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICserviceUpdateFailure_IEs, + &asn_DEF_E2RemovalResponseIEs, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P18_tags_37[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P22_tags_45[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P18_specs_37 = { - sizeof(struct ProtocolIE_Container_87P18), - offsetof(struct ProtocolIE_Container_87P18, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P22_specs_45 = { + sizeof(struct ProtocolIE_Container_185P22), + offsetof(struct ProtocolIE_Container_185P22, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P18 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P22 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P18_tags_37, - sizeof(asn_DEF_ProtocolIE_Container_87P18_tags_37) - /sizeof(asn_DEF_ProtocolIE_Container_87P18_tags_37[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P18_tags_37, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P18_tags_37) - /sizeof(asn_DEF_ProtocolIE_Container_87P18_tags_37[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P18_constr_37, &asn_PER_type_ProtocolIE_Container_87P18_constr_37, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P18_37, + asn_DEF_ProtocolIE_Container_185P22_tags_45, + sizeof(asn_DEF_ProtocolIE_Container_185P22_tags_45) + /sizeof(asn_DEF_ProtocolIE_Container_185P22_tags_45[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P22_tags_45, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P22_tags_45) + /sizeof(asn_DEF_ProtocolIE_Container_185P22_tags_45[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P22_constr_45, &asn_PER_type_ProtocolIE_Container_185P22_constr_45, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P22_45, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P18_specs_37 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P22_specs_45 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ProtocolIE_Container_87P19_39[] = { +asn_TYPE_member_t asn_MBR_ProtocolIE_Container_185P23_47[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICserviceQuery_IEs, + &asn_DEF_E2RemovalFailureIEs, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "" }, }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_87P19_tags_39[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_185P23_tags_47[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_87P19_specs_39 = { - sizeof(struct ProtocolIE_Container_87P19), - offsetof(struct ProtocolIE_Container_87P19, _asn_ctx), +asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_185P23_specs_47 = { + sizeof(struct ProtocolIE_Container_185P23), + offsetof(struct ProtocolIE_Container_185P23, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_87P19 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_185P23 = { "ProtocolIE-Container", "ProtocolIE-Container", &asn_OP_SEQUENCE_OF, - asn_DEF_ProtocolIE_Container_87P19_tags_39, - sizeof(asn_DEF_ProtocolIE_Container_87P19_tags_39) - /sizeof(asn_DEF_ProtocolIE_Container_87P19_tags_39[0]), /* 1 */ - asn_DEF_ProtocolIE_Container_87P19_tags_39, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_Container_87P19_tags_39) - /sizeof(asn_DEF_ProtocolIE_Container_87P19_tags_39[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_Container_87P19_constr_39, &asn_PER_type_ProtocolIE_Container_87P19_constr_39, SEQUENCE_OF_constraint }, - asn_MBR_ProtocolIE_Container_87P19_39, + asn_DEF_ProtocolIE_Container_185P23_tags_47, + sizeof(asn_DEF_ProtocolIE_Container_185P23_tags_47) + /sizeof(asn_DEF_ProtocolIE_Container_185P23_tags_47[0]), /* 1 */ + asn_DEF_ProtocolIE_Container_185P23_tags_47, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_Container_185P23_tags_47) + /sizeof(asn_DEF_ProtocolIE_Container_185P23_tags_47[0]), /* 1 */ + { &asn_OER_type_ProtocolIE_Container_185P23_constr_47, &asn_PER_type_ProtocolIE_Container_185P23_constr_47, SEQUENCE_OF_constraint }, + asn_MBR_ProtocolIE_Container_185P23_47, 1, /* Single element */ - &asn_SPC_ProtocolIE_Container_87P19_specs_39 /* Additional specs */ + &asn_SPC_ProtocolIE_Container_185P23_specs_47 /* Additional specs */ }; diff --git a/e2ap/lib/ProtocolIE-ContainerList.c b/e2ap/lib/ProtocolIE-ContainerList.c index b43b010..366ff28 100644 --- a/e2ap/lib/ProtocolIE-ContainerList.c +++ b/e2ap/lib/ProtocolIE-ContainerList.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ProtocolIE-ContainerList.h" diff --git a/e2ap/lib/ProtocolIE-ContainerPair.c b/e2ap/lib/ProtocolIE-ContainerPair.c index 0bf1a47..06ee11d 100644 --- a/e2ap/lib/ProtocolIE-ContainerPair.c +++ b/e2ap/lib/ProtocolIE-ContainerPair.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ProtocolIE-ContainerPair.h" diff --git a/e2ap/lib/ProtocolIE-ContainerPairList.c b/e2ap/lib/ProtocolIE-ContainerPairList.c index dba4ec4..3b2f08c 100644 --- a/e2ap/lib/ProtocolIE-ContainerPairList.c +++ b/e2ap/lib/ProtocolIE-ContainerPairList.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ProtocolIE-ContainerPairList.h" diff --git a/e2ap/lib/ProtocolIE-Field.c b/e2ap/lib/ProtocolIE-Field.c index 80336e8..5dcb025 100644 --- a/e2ap/lib/ProtocolIE-Field.c +++ b/e2ap/lib/ProtocolIE-Field.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ProtocolIE-Field.h" @@ -43,38 +43,134 @@ static const asn_ioc_cell_t asn_IOS_RICaction_NotAdmitted_ItemIEs_1_rows[] = { static const asn_ioc_set_t asn_IOS_RICaction_NotAdmitted_ItemIEs_1[] = { { 1, 4, asn_IOS_RICaction_NotAdmitted_ItemIEs_1_rows } }; -static const long asn_VAL_64_id_RANfunction_Item = 8; -static const long asn_VAL_64_ignore = 1; -static const long asn_VAL_64_mandatory = 2; +static const long asn_VAL_24_id_RICsubscription_withCause_Item = 61; +static const long asn_VAL_24_ignore = 1; +static const long asn_VAL_24_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_RICsubscription_withCause_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_24_id_RICsubscription_withCause_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_24_ignore }, + { "&Value", aioc__type, &asn_DEF_RICsubscription_withCause_Item }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_24_mandatory } +}; +static const asn_ioc_set_t asn_IOS_RICsubscription_withCause_ItemIEs_1[] = { + { 1, 4, asn_IOS_RICsubscription_withCause_ItemIEs_1_rows } +}; +static const long asn_VAL_73_id_E2nodeComponentConfigAddition_Item = 51; +static const long asn_VAL_73_reject = 0; +static const long asn_VAL_73_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_73_id_E2nodeComponentConfigAddition_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_73_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAddition_Item }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_73_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1_rows } +}; +static const long asn_VAL_74_id_E2nodeComponentConfigUpdate_Item = 34; +static const long asn_VAL_74_reject = 0; +static const long asn_VAL_74_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_74_id_E2nodeComponentConfigUpdate_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_74_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdate_Item }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_74_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1_rows } +}; +static const long asn_VAL_75_id_E2nodeComponentConfigRemoval_Item = 55; +static const long asn_VAL_75_reject = 0; +static const long asn_VAL_75_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_75_id_E2nodeComponentConfigRemoval_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_75_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigRemoval_Item }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_75_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1_rows } +}; +static const long asn_VAL_76_id_E2nodeTNLassociationRemoval_Item = 59; +static const long asn_VAL_76_reject = 0; +static const long asn_VAL_76_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_76_id_E2nodeTNLassociationRemoval_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_76_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeTNLassociationRemoval_Item }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_76_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1_rows } +}; +static const long asn_VAL_81_id_E2nodeComponentConfigAdditionAck_Item = 53; +static const long asn_VAL_81_reject = 0; +static const long asn_VAL_81_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_81_id_E2nodeComponentConfigAdditionAck_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_81_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAdditionAck_Item }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_81_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1_rows } +}; +static const long asn_VAL_82_id_E2nodeComponentConfigUpdateAck_Item = 36; +static const long asn_VAL_82_reject = 0; +static const long asn_VAL_82_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_82_id_E2nodeComponentConfigUpdateAck_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_82_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdateAck_Item }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_82_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1_rows } +}; +static const long asn_VAL_83_id_E2nodeComponentConfigRemovalAck_Item = 57; +static const long asn_VAL_83_reject = 0; +static const long asn_VAL_83_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_83_id_E2nodeComponentConfigRemovalAck_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_83_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigRemovalAck_Item }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_83_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1_rows } +}; +static const long asn_VAL_92_id_RANfunction_Item = 8; +static const long asn_VAL_92_ignore = 1; +static const long asn_VAL_92_mandatory = 2; static const asn_ioc_cell_t asn_IOS_RANfunction_ItemIEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_64_id_RANfunction_Item }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_64_ignore }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_92_id_RANfunction_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_92_ignore }, { "&Value", aioc__type, &asn_DEF_RANfunction_Item }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_64_mandatory } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_92_mandatory } }; static const asn_ioc_set_t asn_IOS_RANfunction_ItemIEs_1[] = { { 1, 4, asn_IOS_RANfunction_ItemIEs_1_rows } }; -static const long asn_VAL_65_id_RANfunctionID_Item = 6; -static const long asn_VAL_65_ignore = 1; -static const long asn_VAL_65_mandatory = 2; +static const long asn_VAL_93_id_RANfunctionID_Item = 6; +static const long asn_VAL_93_ignore = 1; +static const long asn_VAL_93_mandatory = 2; static const asn_ioc_cell_t asn_IOS_RANfunctionID_ItemIEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_65_id_RANfunctionID_Item }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_65_ignore }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_93_id_RANfunctionID_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_93_ignore }, { "&Value", aioc__type, &asn_DEF_RANfunctionID_Item }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_65_mandatory } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_93_mandatory } }; static const asn_ioc_set_t asn_IOS_RANfunctionID_ItemIEs_1[] = { { 1, 4, asn_IOS_RANfunctionID_ItemIEs_1_rows } }; -static const long asn_VAL_68_id_RANfunctionIEcause_Item = 7; -static const long asn_VAL_68_ignore = 1; -static const long asn_VAL_68_mandatory = 2; +static const long asn_VAL_94_id_RANfunctionIEcause_Item = 7; +static const long asn_VAL_94_ignore = 1; +static const long asn_VAL_94_mandatory = 2; static const asn_ioc_cell_t asn_IOS_RANfunctionIDcause_ItemIEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_68_id_RANfunctionIEcause_Item }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_68_ignore }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_94_id_RANfunctionIEcause_Item }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_94_ignore }, { "&Value", aioc__type, &asn_DEF_RANfunctionIDcause_Item }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_68_mandatory } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_94_mandatory } }; static const asn_ioc_set_t asn_IOS_RANfunctionIDcause_ItemIEs_1[] = { { 1, 4, asn_IOS_RANfunctionIDcause_ItemIEs_1_rows } @@ -144,7 +240,7 @@ static const long asn_VAL_11_mandatory = 2; static const long asn_VAL_12_id_RANfunctionID = 5; static const long asn_VAL_12_reject = 0; static const long asn_VAL_12_mandatory = 2; -static const long asn_VAL_13_id_RICactions_NotAdmitted = 18; +static const long asn_VAL_13_id_Cause = 1; static const long asn_VAL_13_reject = 0; static const long asn_VAL_13_mandatory = 2; static const long asn_VAL_14_id_CriticalityDiagnostics = 2; @@ -159,9 +255,9 @@ static const asn_ioc_cell_t asn_IOS_RICsubscriptionFailure_IEs_1_rows[] = { { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_12_reject }, { "&Value", aioc__type, &asn_DEF_RANfunctionID }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_12_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_13_id_RICactions_NotAdmitted }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_13_id_Cause }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_13_reject }, - { "&Value", aioc__type, &asn_DEF_RICaction_NotAdmitted_List }, + { "&Value", aioc__type, &asn_DEF_Cause }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_13_mandatory }, { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_14_id_CriticalityDiagnostics }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_14_ignore }, @@ -242,404 +338,578 @@ static const asn_ioc_cell_t asn_IOS_RICsubscriptionDeleteFailure_IEs_1_rows[] = static const asn_ioc_set_t asn_IOS_RICsubscriptionDeleteFailure_IEs_1[] = { { 4, 4, asn_IOS_RICsubscriptionDeleteFailure_IEs_1_rows } }; -static const long asn_VAL_23_id_RICrequestID = 29; -static const long asn_VAL_23_reject = 0; +static const long asn_VAL_23_id_RICsubscriptionToBeRemoved = 60; +static const long asn_VAL_23_ignore = 1; static const long asn_VAL_23_mandatory = 2; -static const long asn_VAL_24_id_RANfunctionID = 5; -static const long asn_VAL_24_reject = 0; -static const long asn_VAL_24_mandatory = 2; -static const long asn_VAL_25_id_RICactionID = 15; +static const asn_ioc_cell_t asn_IOS_RICsubscriptionDeleteRequired_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_23_id_RICsubscriptionToBeRemoved }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_23_ignore }, + { "&Value", aioc__type, &asn_DEF_RICsubscription_List_withCause }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_23_mandatory } +}; +static const asn_ioc_set_t asn_IOS_RICsubscriptionDeleteRequired_IEs_1[] = { + { 1, 4, asn_IOS_RICsubscriptionDeleteRequired_IEs_1_rows } +}; +static const long asn_VAL_25_id_RICrequestID = 29; static const long asn_VAL_25_reject = 0; static const long asn_VAL_25_mandatory = 2; -static const long asn_VAL_26_id_RICindicationSN = 27; +static const long asn_VAL_26_id_RANfunctionID = 5; static const long asn_VAL_26_reject = 0; -static const long asn_VAL_26_optional = 0; -static const long asn_VAL_27_id_RICindicationType = 28; +static const long asn_VAL_26_mandatory = 2; +static const long asn_VAL_27_id_RICactionID = 15; static const long asn_VAL_27_reject = 0; static const long asn_VAL_27_mandatory = 2; -static const long asn_VAL_28_id_RICindicationHeader = 25; +static const long asn_VAL_28_id_RICindicationSN = 27; static const long asn_VAL_28_reject = 0; -static const long asn_VAL_28_mandatory = 2; -static const long asn_VAL_29_id_RICindicationMessage = 26; +static const long asn_VAL_28_optional = 0; +static const long asn_VAL_29_id_RICindicationType = 28; static const long asn_VAL_29_reject = 0; static const long asn_VAL_29_mandatory = 2; -static const long asn_VAL_30_id_RICcallProcessID = 20; +static const long asn_VAL_30_id_RICindicationHeader = 25; static const long asn_VAL_30_reject = 0; -static const long asn_VAL_30_optional = 0; +static const long asn_VAL_30_mandatory = 2; +static const long asn_VAL_31_id_RICindicationMessage = 26; +static const long asn_VAL_31_reject = 0; +static const long asn_VAL_31_mandatory = 2; +static const long asn_VAL_32_id_RICcallProcessID = 20; +static const long asn_VAL_32_reject = 0; +static const long asn_VAL_32_optional = 0; static const asn_ioc_cell_t asn_IOS_RICindication_IEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_23_id_RICrequestID }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_23_reject }, - { "&Value", aioc__type, &asn_DEF_RICrequestID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_23_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_24_id_RANfunctionID }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_24_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctionID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_24_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_25_id_RICactionID }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_25_id_RICrequestID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_25_reject }, - { "&Value", aioc__type, &asn_DEF_RICactionID }, + { "&Value", aioc__type, &asn_DEF_RICrequestID }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_25_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_26_id_RICindicationSN }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_26_id_RANfunctionID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_26_reject }, - { "&Value", aioc__type, &asn_DEF_RICindicationSN }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_26_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_27_id_RICindicationType }, + { "&Value", aioc__type, &asn_DEF_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_26_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_27_id_RICactionID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_27_reject }, - { "&Value", aioc__type, &asn_DEF_RICindicationType }, + { "&Value", aioc__type, &asn_DEF_RICactionID }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_27_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_28_id_RICindicationHeader }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_28_id_RICindicationSN }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_28_reject }, - { "&Value", aioc__type, &asn_DEF_RICindicationHeader }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_28_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_29_id_RICindicationMessage }, + { "&Value", aioc__type, &asn_DEF_RICindicationSN }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_28_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_29_id_RICindicationType }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_29_reject }, - { "&Value", aioc__type, &asn_DEF_RICindicationMessage }, + { "&Value", aioc__type, &asn_DEF_RICindicationType }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_29_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_30_id_RICcallProcessID }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_30_id_RICindicationHeader }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_30_reject }, + { "&Value", aioc__type, &asn_DEF_RICindicationHeader }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_30_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_31_id_RICindicationMessage }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_31_reject }, + { "&Value", aioc__type, &asn_DEF_RICindicationMessage }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_31_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_32_id_RICcallProcessID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_32_reject }, { "&Value", aioc__type, &asn_DEF_RICcallProcessID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_30_optional } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_32_optional } }; static const asn_ioc_set_t asn_IOS_RICindication_IEs_1[] = { { 8, 4, asn_IOS_RICindication_IEs_1_rows } }; -static const long asn_VAL_31_id_RICrequestID = 29; -static const long asn_VAL_31_reject = 0; -static const long asn_VAL_31_mandatory = 2; -static const long asn_VAL_32_id_RANfunctionID = 5; -static const long asn_VAL_32_reject = 0; -static const long asn_VAL_32_mandatory = 2; -static const long asn_VAL_33_id_RICcallProcessID = 20; +static const long asn_VAL_33_id_RICrequestID = 29; static const long asn_VAL_33_reject = 0; -static const long asn_VAL_33_optional = 0; -static const long asn_VAL_34_id_RICcontrolHeader = 22; +static const long asn_VAL_33_mandatory = 2; +static const long asn_VAL_34_id_RANfunctionID = 5; static const long asn_VAL_34_reject = 0; static const long asn_VAL_34_mandatory = 2; -static const long asn_VAL_35_id_RICcontrolMessage = 23; +static const long asn_VAL_35_id_RICcallProcessID = 20; static const long asn_VAL_35_reject = 0; -static const long asn_VAL_35_mandatory = 2; -static const long asn_VAL_36_id_RICcontrolAckRequest = 21; +static const long asn_VAL_35_optional = 0; +static const long asn_VAL_36_id_RICcontrolHeader = 22; static const long asn_VAL_36_reject = 0; -static const long asn_VAL_36_optional = 0; +static const long asn_VAL_36_mandatory = 2; +static const long asn_VAL_37_id_RICcontrolMessage = 23; +static const long asn_VAL_37_reject = 0; +static const long asn_VAL_37_mandatory = 2; +static const long asn_VAL_38_id_RICcontrolAckRequest = 21; +static const long asn_VAL_38_reject = 0; +static const long asn_VAL_38_optional = 0; static const asn_ioc_cell_t asn_IOS_RICcontrolRequest_IEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_31_id_RICrequestID }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_31_reject }, - { "&Value", aioc__type, &asn_DEF_RICrequestID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_31_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_32_id_RANfunctionID }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_32_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctionID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_32_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_33_id_RICcallProcessID }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_33_id_RICrequestID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_33_reject }, - { "&Value", aioc__type, &asn_DEF_RICcallProcessID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_33_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_34_id_RICcontrolHeader }, + { "&Value", aioc__type, &asn_DEF_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_33_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_34_id_RANfunctionID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_34_reject }, - { "&Value", aioc__type, &asn_DEF_RICcontrolHeader }, + { "&Value", aioc__type, &asn_DEF_RANfunctionID }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_34_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_35_id_RICcontrolMessage }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_35_id_RICcallProcessID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_35_reject }, - { "&Value", aioc__type, &asn_DEF_RICcontrolMessage }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_35_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_36_id_RICcontrolAckRequest }, + { "&Value", aioc__type, &asn_DEF_RICcallProcessID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_35_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_36_id_RICcontrolHeader }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_36_reject }, + { "&Value", aioc__type, &asn_DEF_RICcontrolHeader }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_36_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_37_id_RICcontrolMessage }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_37_reject }, + { "&Value", aioc__type, &asn_DEF_RICcontrolMessage }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_37_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_38_id_RICcontrolAckRequest }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_38_reject }, { "&Value", aioc__type, &asn_DEF_RICcontrolAckRequest }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_36_optional } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_38_optional } }; static const asn_ioc_set_t asn_IOS_RICcontrolRequest_IEs_1[] = { { 6, 4, asn_IOS_RICcontrolRequest_IEs_1_rows } }; -static const long asn_VAL_37_id_RICrequestID = 29; -static const long asn_VAL_37_reject = 0; -static const long asn_VAL_37_mandatory = 2; -static const long asn_VAL_38_id_RANfunctionID = 5; -static const long asn_VAL_38_reject = 0; -static const long asn_VAL_38_mandatory = 2; -static const long asn_VAL_39_id_RICcallProcessID = 20; +static const long asn_VAL_39_id_RICrequestID = 29; static const long asn_VAL_39_reject = 0; -static const long asn_VAL_39_optional = 0; -static const long asn_VAL_40_id_RICcontrolStatus = 24; +static const long asn_VAL_39_mandatory = 2; +static const long asn_VAL_40_id_RANfunctionID = 5; static const long asn_VAL_40_reject = 0; static const long asn_VAL_40_mandatory = 2; -static const long asn_VAL_41_id_RICcontrolOutcome = 32; +static const long asn_VAL_41_id_RICcallProcessID = 20; static const long asn_VAL_41_reject = 0; static const long asn_VAL_41_optional = 0; +static const long asn_VAL_42_id_RICcontrolOutcome = 32; +static const long asn_VAL_42_reject = 0; +static const long asn_VAL_42_optional = 0; static const asn_ioc_cell_t asn_IOS_RICcontrolAcknowledge_IEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_37_id_RICrequestID }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_37_reject }, - { "&Value", aioc__type, &asn_DEF_RICrequestID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_37_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_38_id_RANfunctionID }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_38_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctionID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_38_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_39_id_RICcallProcessID }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_39_id_RICrequestID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_39_reject }, - { "&Value", aioc__type, &asn_DEF_RICcallProcessID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_39_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_40_id_RICcontrolStatus }, + { "&Value", aioc__type, &asn_DEF_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_39_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_40_id_RANfunctionID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_40_reject }, - { "&Value", aioc__type, &asn_DEF_RICcontrolStatus }, + { "&Value", aioc__type, &asn_DEF_RANfunctionID }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_40_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_41_id_RICcontrolOutcome }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_41_id_RICcallProcessID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_41_reject }, + { "&Value", aioc__type, &asn_DEF_RICcallProcessID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_41_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_42_id_RICcontrolOutcome }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_42_reject }, { "&Value", aioc__type, &asn_DEF_RICcontrolOutcome }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_41_optional } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_42_optional } }; static const asn_ioc_set_t asn_IOS_RICcontrolAcknowledge_IEs_1[] = { - { 5, 4, asn_IOS_RICcontrolAcknowledge_IEs_1_rows } + { 4, 4, asn_IOS_RICcontrolAcknowledge_IEs_1_rows } }; -static const long asn_VAL_42_id_RICrequestID = 29; -static const long asn_VAL_42_reject = 0; -static const long asn_VAL_42_mandatory = 2; -static const long asn_VAL_43_id_RANfunctionID = 5; +static const long asn_VAL_43_id_RICrequestID = 29; static const long asn_VAL_43_reject = 0; static const long asn_VAL_43_mandatory = 2; -static const long asn_VAL_44_id_RICcallProcessID = 20; +static const long asn_VAL_44_id_RANfunctionID = 5; static const long asn_VAL_44_reject = 0; -static const long asn_VAL_44_optional = 0; -static const long asn_VAL_45_id_Cause = 1; -static const long asn_VAL_45_ignore = 1; -static const long asn_VAL_45_mandatory = 2; -static const long asn_VAL_46_id_RICcontrolOutcome = 32; -static const long asn_VAL_46_reject = 0; -static const long asn_VAL_46_optional = 0; +static const long asn_VAL_44_mandatory = 2; +static const long asn_VAL_45_id_RICcallProcessID = 20; +static const long asn_VAL_45_reject = 0; +static const long asn_VAL_45_optional = 0; +static const long asn_VAL_46_id_Cause = 1; +static const long asn_VAL_46_ignore = 1; +static const long asn_VAL_46_mandatory = 2; +static const long asn_VAL_47_id_RICcontrolOutcome = 32; +static const long asn_VAL_47_reject = 0; +static const long asn_VAL_47_optional = 0; static const asn_ioc_cell_t asn_IOS_RICcontrolFailure_IEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_42_id_RICrequestID }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_42_reject }, - { "&Value", aioc__type, &asn_DEF_RICrequestID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_42_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_43_id_RANfunctionID }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_43_id_RICrequestID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_43_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctionID }, + { "&Value", aioc__type, &asn_DEF_RICrequestID }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_43_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_44_id_RICcallProcessID }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_44_id_RANfunctionID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_44_reject }, + { "&Value", aioc__type, &asn_DEF_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_44_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_45_id_RICcallProcessID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_45_reject }, { "&Value", aioc__type, &asn_DEF_RICcallProcessID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_44_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_45_id_Cause }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_45_ignore }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_45_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_46_id_Cause }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_46_ignore }, { "&Value", aioc__type, &asn_DEF_Cause }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_45_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_46_id_RICcontrolOutcome }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_46_reject }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_46_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_47_id_RICcontrolOutcome }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_47_reject }, { "&Value", aioc__type, &asn_DEF_RICcontrolOutcome }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_46_optional } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_47_optional } }; static const asn_ioc_set_t asn_IOS_RICcontrolFailure_IEs_1[] = { { 5, 4, asn_IOS_RICcontrolFailure_IEs_1_rows } }; -static const long asn_VAL_47_id_RICrequestID = 29; -static const long asn_VAL_47_reject = 0; -static const long asn_VAL_47_optional = 0; -static const long asn_VAL_48_id_RANfunctionID = 5; +static const long asn_VAL_48_id_TransactionID = 49; static const long asn_VAL_48_reject = 0; static const long asn_VAL_48_optional = 0; -static const long asn_VAL_49_id_Cause = 1; -static const long asn_VAL_49_ignore = 1; +static const long asn_VAL_49_id_RICrequestID = 29; +static const long asn_VAL_49_reject = 0; static const long asn_VAL_49_optional = 0; -static const long asn_VAL_50_id_CriticalityDiagnostics = 2; -static const long asn_VAL_50_ignore = 1; +static const long asn_VAL_50_id_RANfunctionID = 5; +static const long asn_VAL_50_reject = 0; static const long asn_VAL_50_optional = 0; +static const long asn_VAL_51_id_Cause = 1; +static const long asn_VAL_51_ignore = 1; +static const long asn_VAL_51_optional = 0; +static const long asn_VAL_52_id_CriticalityDiagnostics = 2; +static const long asn_VAL_52_ignore = 1; +static const long asn_VAL_52_optional = 0; static const asn_ioc_cell_t asn_IOS_ErrorIndication_IEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_47_id_RICrequestID }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_47_reject }, - { "&Value", aioc__type, &asn_DEF_RICrequestID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_47_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_48_id_RANfunctionID }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_48_id_TransactionID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_48_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctionID }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_48_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_49_id_Cause }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_49_ignore }, - { "&Value", aioc__type, &asn_DEF_Cause }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_49_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_49_reject }, + { "&Value", aioc__type, &asn_DEF_RICrequestID }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_49_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_50_id_CriticalityDiagnostics }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_50_ignore }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_50_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_50_reject }, + { "&Value", aioc__type, &asn_DEF_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_50_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_51_id_Cause }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_51_ignore }, + { "&Value", aioc__type, &asn_DEF_Cause }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_51_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_52_id_CriticalityDiagnostics }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_52_ignore }, { "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_50_optional } -}; -static const asn_ioc_set_t asn_IOS_ErrorIndication_IEs_1[] = { - { 4, 4, asn_IOS_ErrorIndication_IEs_1_rows } -}; -static const long asn_VAL_51_id_GlobalE2node_ID = 3; -static const long asn_VAL_51_reject = 0; -static const long asn_VAL_51_mandatory = 2; -static const long asn_VAL_52_id_RANfunctionsAdded = 10; -static const long asn_VAL_52_reject = 0; -static const long asn_VAL_52_optional = 0; -static const asn_ioc_cell_t asn_IOS_E2setupRequestIEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_51_id_GlobalE2node_ID }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_51_reject }, - { "&Value", aioc__type, &asn_DEF_GlobalE2node_ID }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_51_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_52_id_RANfunctionsAdded }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_52_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctions_List }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_52_optional } }; -static const asn_ioc_set_t asn_IOS_E2setupRequestIEs_1[] = { - { 2, 4, asn_IOS_E2setupRequestIEs_1_rows } +static const asn_ioc_set_t asn_IOS_ErrorIndication_IEs_1[] = { + { 5, 4, asn_IOS_ErrorIndication_IEs_1_rows } }; -static const long asn_VAL_53_id_GlobalRIC_ID = 4; +static const long asn_VAL_53_id_TransactionID = 49; static const long asn_VAL_53_reject = 0; static const long asn_VAL_53_mandatory = 2; -static const long asn_VAL_54_id_RANfunctionsAccepted = 9; +static const long asn_VAL_54_id_GlobalE2node_ID = 3; static const long asn_VAL_54_reject = 0; -static const long asn_VAL_54_optional = 0; -static const long asn_VAL_55_id_RANfunctionsRejected = 13; +static const long asn_VAL_54_mandatory = 2; +static const long asn_VAL_55_id_RANfunctionsAdded = 10; static const long asn_VAL_55_reject = 0; -static const long asn_VAL_55_optional = 0; -static const asn_ioc_cell_t asn_IOS_E2setupResponseIEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_53_id_GlobalRIC_ID }, +static const long asn_VAL_55_mandatory = 2; +static const long asn_VAL_56_id_E2nodeComponentConfigAddition = 50; +static const long asn_VAL_56_reject = 0; +static const long asn_VAL_56_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2setupRequestIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_53_id_TransactionID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_53_reject }, - { "&Value", aioc__type, &asn_DEF_GlobalRIC_ID }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_53_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_54_id_RANfunctionsAccepted }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_54_id_GlobalE2node_ID }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_54_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctionsID_List }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_54_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_55_id_RANfunctionsRejected }, + { "&Value", aioc__type, &asn_DEF_GlobalE2node_ID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_54_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_55_id_RANfunctionsAdded }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_55_reject }, + { "&Value", aioc__type, &asn_DEF_RANfunctions_List }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_55_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_56_id_E2nodeComponentConfigAddition }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_56_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAddition_List }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_56_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2setupRequestIEs_1[] = { + { 4, 4, asn_IOS_E2setupRequestIEs_1_rows } +}; +static const long asn_VAL_57_id_TransactionID = 49; +static const long asn_VAL_57_reject = 0; +static const long asn_VAL_57_mandatory = 2; +static const long asn_VAL_58_id_GlobalRIC_ID = 4; +static const long asn_VAL_58_reject = 0; +static const long asn_VAL_58_mandatory = 2; +static const long asn_VAL_59_id_RANfunctionsAccepted = 9; +static const long asn_VAL_59_reject = 0; +static const long asn_VAL_59_optional = 0; +static const long asn_VAL_60_id_RANfunctionsRejected = 13; +static const long asn_VAL_60_reject = 0; +static const long asn_VAL_60_optional = 0; +static const long asn_VAL_61_id_E2nodeComponentConfigAdditionAck = 52; +static const long asn_VAL_61_reject = 0; +static const long asn_VAL_61_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2setupResponseIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_57_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_57_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_57_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_58_id_GlobalRIC_ID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_58_reject }, + { "&Value", aioc__type, &asn_DEF_GlobalRIC_ID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_58_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_59_id_RANfunctionsAccepted }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_59_reject }, + { "&Value", aioc__type, &asn_DEF_RANfunctionsID_List }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_59_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_60_id_RANfunctionsRejected }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_60_reject }, { "&Value", aioc__type, &asn_DEF_RANfunctionsIDcause_List }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_55_optional } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_60_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_61_id_E2nodeComponentConfigAdditionAck }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_61_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAdditionAck_List }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_61_mandatory } }; static const asn_ioc_set_t asn_IOS_E2setupResponseIEs_1[] = { - { 3, 4, asn_IOS_E2setupResponseIEs_1_rows } + { 5, 4, asn_IOS_E2setupResponseIEs_1_rows } }; -static const long asn_VAL_56_id_Cause = 1; -static const long asn_VAL_56_ignore = 1; -static const long asn_VAL_56_mandatory = 2; -static const long asn_VAL_57_id_TimeToWait = 31; -static const long asn_VAL_57_ignore = 1; -static const long asn_VAL_57_optional = 0; -static const long asn_VAL_58_id_CriticalityDiagnostics = 2; -static const long asn_VAL_58_ignore = 1; -static const long asn_VAL_58_optional = 0; +static const long asn_VAL_62_id_TransactionID = 49; +static const long asn_VAL_62_reject = 0; +static const long asn_VAL_62_mandatory = 2; +static const long asn_VAL_63_id_Cause = 1; +static const long asn_VAL_63_ignore = 1; +static const long asn_VAL_63_mandatory = 2; +static const long asn_VAL_64_id_TimeToWait = 31; +static const long asn_VAL_64_ignore = 1; +static const long asn_VAL_64_optional = 0; +static const long asn_VAL_65_id_CriticalityDiagnostics = 2; +static const long asn_VAL_65_ignore = 1; +static const long asn_VAL_65_optional = 0; +static const long asn_VAL_66_id_TNLinformation = 48; +static const long asn_VAL_66_ignore = 1; +static const long asn_VAL_66_optional = 0; static const asn_ioc_cell_t asn_IOS_E2setupFailureIEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_56_id_Cause }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_56_ignore }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_62_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_62_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_62_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_63_id_Cause }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_63_ignore }, { "&Value", aioc__type, &asn_DEF_Cause }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_56_mandatory }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_57_id_TimeToWait }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_57_ignore }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_63_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_64_id_TimeToWait }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_64_ignore }, { "&Value", aioc__type, &asn_DEF_TimeToWait }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_57_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_58_id_CriticalityDiagnostics }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_58_ignore }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_64_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_65_id_CriticalityDiagnostics }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_65_ignore }, { "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_58_optional } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_65_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_66_id_TNLinformation }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_66_ignore }, + { "&Value", aioc__type, &asn_DEF_TNLinformation }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_66_optional } }; static const asn_ioc_set_t asn_IOS_E2setupFailureIEs_1[] = { - { 3, 4, asn_IOS_E2setupFailureIEs_1_rows } -}; -static const long asn_VAL_59_id_Cause = 1; -static const long asn_VAL_59_ignore = 1; -static const long asn_VAL_59_mandatory = 2; -static const asn_ioc_cell_t asn_IOS_ResetRequestIEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_59_id_Cause }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_59_ignore }, - { "&Value", aioc__type, &asn_DEF_Cause }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_59_mandatory } -}; -static const asn_ioc_set_t asn_IOS_ResetRequestIEs_1[] = { - { 1, 4, asn_IOS_ResetRequestIEs_1_rows } -}; -static const long asn_VAL_60_id_CriticalityDiagnostics = 2; -static const long asn_VAL_60_ignore = 1; -static const long asn_VAL_60_optional = 0; -static const asn_ioc_cell_t asn_IOS_ResetResponseIEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_60_id_CriticalityDiagnostics }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_60_ignore }, - { "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_60_optional } -}; -static const asn_ioc_set_t asn_IOS_ResetResponseIEs_1[] = { - { 1, 4, asn_IOS_ResetResponseIEs_1_rows } + { 5, 4, asn_IOS_E2setupFailureIEs_1_rows } }; -static const long asn_VAL_61_id_RANfunctionsAdded = 10; -static const long asn_VAL_61_reject = 0; -static const long asn_VAL_61_optional = 0; -static const long asn_VAL_62_id_RANfunctionsModified = 12; -static const long asn_VAL_62_reject = 0; -static const long asn_VAL_62_optional = 0; -static const long asn_VAL_63_id_RANfunctionsDeleted = 11; -static const long asn_VAL_63_reject = 0; -static const long asn_VAL_63_optional = 0; -static const asn_ioc_cell_t asn_IOS_RICserviceUpdate_IEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_61_id_RANfunctionsAdded }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_61_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctions_List }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_61_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_62_id_RANfunctionsModified }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_62_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctions_List }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_62_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_63_id_RANfunctionsDeleted }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_63_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctionsID_List }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_63_optional } -}; -static const asn_ioc_set_t asn_IOS_RICserviceUpdate_IEs_1[] = { - { 3, 4, asn_IOS_RICserviceUpdate_IEs_1_rows } -}; -static const long asn_VAL_66_id_RANfunctionsAccepted = 9; -static const long asn_VAL_66_reject = 0; -static const long asn_VAL_66_optional = 0; -static const long asn_VAL_67_id_RANfunctionsRejected = 13; +static const long asn_VAL_67_id_TransactionID = 49; static const long asn_VAL_67_reject = 0; -static const long asn_VAL_67_optional = 0; -static const asn_ioc_cell_t asn_IOS_RICserviceUpdateAcknowledge_IEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_66_id_RANfunctionsAccepted }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_66_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctionsID_List }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_66_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_67_id_RANfunctionsRejected }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_67_reject }, - { "&Value", aioc__type, &asn_DEF_RANfunctionsIDcause_List }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_67_optional } -}; -static const asn_ioc_set_t asn_IOS_RICserviceUpdateAcknowledge_IEs_1[] = { - { 2, 4, asn_IOS_RICserviceUpdateAcknowledge_IEs_1_rows } -}; -static const long asn_VAL_69_id_RANfunctionsRejected = 13; -static const long asn_VAL_69_ignore = 1; +static const long asn_VAL_67_mandatory = 2; +static const long asn_VAL_68_id_GlobalE2node_ID = 3; +static const long asn_VAL_68_reject = 0; +static const long asn_VAL_68_optional = 0; +static const long asn_VAL_69_id_E2nodeComponentConfigAddition = 50; +static const long asn_VAL_69_reject = 0; static const long asn_VAL_69_optional = 0; -static const long asn_VAL_70_id_TimeToWait = 31; -static const long asn_VAL_70_ignore = 1; +static const long asn_VAL_70_id_E2nodeComponentConfigUpdate = 33; +static const long asn_VAL_70_reject = 0; static const long asn_VAL_70_optional = 0; -static const long asn_VAL_71_id_CriticalityDiagnostics = 2; -static const long asn_VAL_71_ignore = 1; +static const long asn_VAL_71_id_E2nodeComponentConfigRemoval = 54; +static const long asn_VAL_71_reject = 0; static const long asn_VAL_71_optional = 0; -static const asn_ioc_cell_t asn_IOS_RICserviceUpdateFailure_IEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_69_id_RANfunctionsRejected }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_69_ignore }, - { "&Value", aioc__type, &asn_DEF_RANfunctionsIDcause_List }, +static const long asn_VAL_72_id_E2nodeTNLassociationRemoval = 58; +static const long asn_VAL_72_reject = 0; +static const long asn_VAL_72_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2nodeConfigurationUpdate_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_67_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_67_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_67_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_68_id_GlobalE2node_ID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_68_reject }, + { "&Value", aioc__type, &asn_DEF_GlobalE2node_ID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_68_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_69_id_E2nodeComponentConfigAddition }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_69_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAddition_List }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_69_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_70_id_TimeToWait }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_70_ignore }, - { "&Value", aioc__type, &asn_DEF_TimeToWait }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_70_id_E2nodeComponentConfigUpdate }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_70_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdate_List }, { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_70_optional }, - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_71_id_CriticalityDiagnostics }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_71_ignore }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_71_id_E2nodeComponentConfigRemoval }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_71_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigRemoval_List }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_71_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_72_id_E2nodeTNLassociationRemoval }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_72_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeTNLassociationRemoval_List }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_72_optional } +}; +static const asn_ioc_set_t asn_IOS_E2nodeConfigurationUpdate_IEs_1[] = { + { 6, 4, asn_IOS_E2nodeConfigurationUpdate_IEs_1_rows } +}; +static const long asn_VAL_77_id_TransactionID = 49; +static const long asn_VAL_77_reject = 0; +static const long asn_VAL_77_mandatory = 2; +static const long asn_VAL_78_id_E2nodeComponentConfigAdditionAck = 52; +static const long asn_VAL_78_reject = 0; +static const long asn_VAL_78_optional = 0; +static const long asn_VAL_79_id_E2nodeComponentConfigUpdateAck = 35; +static const long asn_VAL_79_reject = 0; +static const long asn_VAL_79_optional = 0; +static const long asn_VAL_80_id_E2nodeComponentConfigRemovalAck = 56; +static const long asn_VAL_80_reject = 0; +static const long asn_VAL_80_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_77_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_77_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_77_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_78_id_E2nodeComponentConfigAdditionAck }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_78_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAdditionAck_List }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_78_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_79_id_E2nodeComponentConfigUpdateAck }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_79_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdateAck_List }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_79_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_80_id_E2nodeComponentConfigRemovalAck }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_80_reject }, + { "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigRemovalAck_List }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_80_optional } +}; +static const asn_ioc_set_t asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1[] = { + { 4, 4, asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1_rows } +}; +static const long asn_VAL_84_id_TransactionID = 49; +static const long asn_VAL_84_reject = 0; +static const long asn_VAL_84_mandatory = 2; +static const long asn_VAL_85_id_Cause = 1; +static const long asn_VAL_85_ignore = 1; +static const long asn_VAL_85_mandatory = 2; +static const long asn_VAL_86_id_TimeToWait = 31; +static const long asn_VAL_86_ignore = 1; +static const long asn_VAL_86_optional = 0; +static const long asn_VAL_87_id_CriticalityDiagnostics = 2; +static const long asn_VAL_87_ignore = 1; +static const long asn_VAL_87_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_84_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_84_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_84_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_85_id_Cause }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_85_ignore }, + { "&Value", aioc__type, &asn_DEF_Cause }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_85_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_86_id_TimeToWait }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_86_ignore }, + { "&Value", aioc__type, &asn_DEF_TimeToWait }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_86_optional }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_87_id_CriticalityDiagnostics }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_87_ignore }, { "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_71_optional } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_87_optional } }; -static const asn_ioc_set_t asn_IOS_RICserviceUpdateFailure_IEs_1[] = { - { 3, 4, asn_IOS_RICserviceUpdateFailure_IEs_1_rows } +static const asn_ioc_set_t asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1[] = { + { 4, 4, asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1_rows } }; -static const long asn_VAL_72_id_RANfunctionsAccepted = 9; -static const long asn_VAL_72_reject = 0; -static const long asn_VAL_72_optional = 0; +static const long asn_VAL_88_id_TransactionID = 49; +static const long asn_VAL_88_reject = 0; +static const long asn_VAL_88_mandatory = 2; +static const long asn_VAL_89_id_Cause = 1; +static const long asn_VAL_89_ignore = 1; +static const long asn_VAL_89_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_ResetRequestIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_88_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_88_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_88_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_89_id_Cause }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_89_ignore }, + { "&Value", aioc__type, &asn_DEF_Cause }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_89_mandatory } +}; +static const asn_ioc_set_t asn_IOS_ResetRequestIEs_1[] = { + { 2, 4, asn_IOS_ResetRequestIEs_1_rows } +}; +static const long asn_VAL_90_id_TransactionID = 49; +static const long asn_VAL_90_reject = 0; +static const long asn_VAL_90_mandatory = 2; +static const long asn_VAL_91_id_CriticalityDiagnostics = 2; +static const long asn_VAL_91_ignore = 1; +static const long asn_VAL_91_optional = 0; +static const asn_ioc_cell_t asn_IOS_ResetResponseIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_90_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_90_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_90_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_91_id_CriticalityDiagnostics }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_91_ignore }, + { "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_91_optional } +}; +static const asn_ioc_set_t asn_IOS_ResetResponseIEs_1[] = { + { 2, 4, asn_IOS_ResetResponseIEs_1_rows } +}; +static const long asn_VAL_95_id_TransactionID = 49; +static const long asn_VAL_95_reject = 0; +static const long asn_VAL_95_mandatory = 2; +static const long asn_VAL_96_id_RANfunctionsAccepted = 9; +static const long asn_VAL_96_reject = 0; +static const long asn_VAL_96_optional = 0; static const asn_ioc_cell_t asn_IOS_RICserviceQuery_IEs_1_rows[] = { - { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_72_id_RANfunctionsAccepted }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_72_reject }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_95_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_95_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_95_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_96_id_RANfunctionsAccepted }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_96_reject }, { "&Value", aioc__type, &asn_DEF_RANfunctionsID_List }, - { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_72_optional } + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_96_optional } }; static const asn_ioc_set_t asn_IOS_RICserviceQuery_IEs_1[] = { - { 1, 4, asn_IOS_RICserviceQuery_IEs_1_rows } + { 2, 4, asn_IOS_RICserviceQuery_IEs_1_rows } +}; +static const long asn_VAL_97_id_TransactionID = 49; +static const long asn_VAL_97_reject = 0; +static const long asn_VAL_97_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2RemovalRequestIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_97_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_97_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_97_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2RemovalRequestIEs_1[] = { + { 1, 4, asn_IOS_E2RemovalRequestIEs_1_rows } +}; +static const long asn_VAL_98_id_TransactionID = 49; +static const long asn_VAL_98_reject = 0; +static const long asn_VAL_98_mandatory = 2; +static const long asn_VAL_99_id_CriticalityDiagnostics = 2; +static const long asn_VAL_99_ignore = 1; +static const long asn_VAL_99_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2RemovalResponseIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_98_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_98_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_98_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_99_id_CriticalityDiagnostics }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_99_ignore }, + { "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_99_optional } +}; +static const asn_ioc_set_t asn_IOS_E2RemovalResponseIEs_1[] = { + { 2, 4, asn_IOS_E2RemovalResponseIEs_1_rows } +}; +static const long asn_VAL_100_id_TransactionID = 49; +static const long asn_VAL_100_reject = 0; +static const long asn_VAL_100_mandatory = 2; +static const long asn_VAL_101_id_Cause = 1; +static const long asn_VAL_101_ignore = 1; +static const long asn_VAL_101_mandatory = 2; +static const long asn_VAL_102_id_CriticalityDiagnostics = 2; +static const long asn_VAL_102_ignore = 1; +static const long asn_VAL_102_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2RemovalFailureIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_100_id_TransactionID }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_100_reject }, + { "&Value", aioc__type, &asn_DEF_TransactionID }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_100_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_101_id_Cause }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_101_ignore }, + { "&Value", aioc__type, &asn_DEF_Cause }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_101_mandatory }, + { "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_102_id_CriticalityDiagnostics }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_102_ignore }, + { "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics }, + { "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_102_optional } +}; +static const asn_ioc_set_t asn_IOS_E2RemovalFailureIEs_1[] = { + { 3, 4, asn_IOS_E2RemovalFailureIEs_1_rows } }; static int memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, @@ -1018,13 +1288,13 @@ memb_id_constraint_13(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RANfunction_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscription_withCause_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RANfunction_ItemIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscription_withCause_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunction_ItemIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscription_withCause_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1064,13 +1334,13 @@ memb_criticality_constraint_13(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RANfunction_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscription_withCause_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RANfunction_ItemIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscription_withCause_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunction_ItemIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscription_withCause_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1135,13 +1405,13 @@ memb_id_constraint_17(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RANfunctionID_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigAddition_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RANfunctionID_ItemIEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionID_ItemIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigAddition_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1181,13 +1451,13 @@ memb_criticality_constraint_17(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RANfunctionID_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigAddition_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RANfunctionID_ItemIEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionID_ItemIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigAddition_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1252,13 +1522,13 @@ memb_id_constraint_21(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RANfunctionIDcause_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigUpdate_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RANfunctionIDcause_ItemIEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionIDcause_ItemIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1298,13 +1568,13 @@ memb_criticality_constraint_21(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RANfunctionIDcause_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigUpdate_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RANfunctionIDcause_ItemIEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionIDcause_ItemIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1369,13 +1639,13 @@ memb_id_constraint_25(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICsubscriptionRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigRemoval_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionRequest_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionRequest_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1415,13 +1685,13 @@ memb_criticality_constraint_25(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICsubscriptionRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigRemoval_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionRequest_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionRequest_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1486,13 +1756,13 @@ memb_id_constraint_29(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICsubscriptionResponse_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeTNLassociationRemoval_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionResponse_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionResponse_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1532,13 +1802,13 @@ memb_criticality_constraint_29(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICsubscriptionResponse_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeTNLassociationRemoval_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionResponse_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionResponse_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1603,13 +1873,13 @@ memb_id_constraint_33(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICsubscriptionFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigAdditionAck_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionFailure_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionFailure_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1649,13 +1919,13 @@ memb_criticality_constraint_33(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICsubscriptionFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigAdditionAck_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionFailure_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionFailure_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1720,13 +1990,13 @@ memb_id_constraint_37(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICsubscriptionDeleteRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigUpdateAck_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequest_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequest_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1766,13 +2036,13 @@ memb_criticality_constraint_37(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICsubscriptionDeleteRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigUpdateAck_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequest_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequest_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1837,13 +2107,13 @@ memb_id_constraint_41(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICsubscriptionDeleteResponse_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigRemovalAck_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteResponse_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteResponse_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1883,13 +2153,13 @@ memb_criticality_constraint_41(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICsubscriptionDeleteResponse_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_E2nodeComponentConfigRemovalAck_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteResponse_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteResponse_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -1954,13 +2224,13 @@ memb_id_constraint_45(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICsubscriptionDeleteFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RANfunction_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteFailure_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RANfunction_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteFailure_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunction_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2000,13 +2270,13 @@ memb_criticality_constraint_45(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICsubscriptionDeleteFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RANfunction_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteFailure_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RANfunction_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteFailure_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunction_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2071,13 +2341,13 @@ memb_id_constraint_49(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICindication_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RANfunctionID_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICindication_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RANfunctionID_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICindication_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionID_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2117,13 +2387,13 @@ memb_criticality_constraint_49(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICindication_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RANfunctionID_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICindication_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RANfunctionID_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICindication_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionID_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2188,13 +2458,13 @@ memb_id_constraint_53(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICcontrolRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RANfunctionIDcause_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICcontrolRequest_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RANfunctionIDcause_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolRequest_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionIDcause_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2234,13 +2504,13 @@ memb_criticality_constraint_53(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICcontrolRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RANfunctionIDcause_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICcontrolRequest_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RANfunctionIDcause_ItemIEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolRequest_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionIDcause_ItemIEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2305,13 +2575,13 @@ memb_id_constraint_57(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICcontrolAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICcontrolAcknowledge_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionRequest_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolAcknowledge_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionRequest_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2351,13 +2621,13 @@ memb_criticality_constraint_57(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICcontrolAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICcontrolAcknowledge_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionRequest_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolAcknowledge_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionRequest_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2422,13 +2692,13 @@ memb_id_constraint_61(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICcontrolFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionResponse_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICcontrolFailure_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionResponse_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolFailure_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionResponse_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2468,13 +2738,13 @@ memb_criticality_constraint_61(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICcontrolFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionResponse_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICcontrolFailure_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionResponse_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolFailure_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionResponse_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2539,13 +2809,13 @@ memb_id_constraint_65(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_ErrorIndication_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_ErrorIndication_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionFailure_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ErrorIndication_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionFailure_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2585,13 +2855,13 @@ memb_criticality_constraint_65(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_ErrorIndication_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_ErrorIndication_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionFailure_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ErrorIndication_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionFailure_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2656,13 +2926,13 @@ memb_id_constraint_69(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_E2setupRequestIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionDeleteRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_E2setupRequestIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequest_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupRequestIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequest_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2702,13 +2972,13 @@ memb_criticality_constraint_69(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_E2setupRequestIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionDeleteRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_E2setupRequestIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequest_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupRequestIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequest_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2773,13 +3043,13 @@ memb_id_constraint_73(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_E2setupResponseIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionDeleteResponse_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_E2setupResponseIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteResponse_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupResponseIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteResponse_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2819,13 +3089,13 @@ memb_criticality_constraint_73(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_E2setupResponseIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionDeleteResponse_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_E2setupResponseIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteResponse_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupResponseIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteResponse_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2890,13 +3160,13 @@ memb_id_constraint_77(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_E2setupFailureIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionDeleteFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_E2setupFailureIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteFailure_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupFailureIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteFailure_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -2936,13 +3206,13 @@ memb_criticality_constraint_77(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_E2setupFailureIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionDeleteFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_E2setupFailureIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteFailure_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupFailureIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteFailure_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3007,13 +3277,13 @@ memb_id_constraint_81(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_ResetRequestIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionDeleteRequired_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_ResetRequestIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequired_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetRequestIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequired_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3053,13 +3323,13 @@ memb_criticality_constraint_81(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_ResetRequestIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICsubscriptionDeleteRequired_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_ResetRequestIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequired_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetRequestIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequired_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3124,13 +3394,13 @@ memb_id_constraint_85(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_ResetResponseIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICindication_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_ResetResponseIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICindication_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetResponseIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICindication_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3170,13 +3440,13 @@ memb_criticality_constraint_85(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_ResetResponseIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICindication_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_ResetResponseIEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICindication_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetResponseIEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICindication_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3241,13 +3511,13 @@ memb_id_constraint_89(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICserviceUpdate_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICcontrolRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdate_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICcontrolRequest_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdate_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolRequest_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3287,13 +3557,13 @@ memb_criticality_constraint_89(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICserviceUpdate_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICcontrolRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdate_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICcontrolRequest_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdate_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolRequest_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3358,13 +3628,13 @@ memb_id_constraint_93(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICserviceUpdateAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICcontrolAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateAcknowledge_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICcontrolAcknowledge_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateAcknowledge_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolAcknowledge_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3404,13 +3674,13 @@ memb_criticality_constraint_93(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICserviceUpdateAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICcontrolAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateAcknowledge_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICcontrolAcknowledge_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateAcknowledge_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolAcknowledge_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3475,13 +3745,13 @@ memb_id_constraint_97(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICserviceUpdateFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICcontrolFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateFailure_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICcontrolFailure_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateFailure_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolFailure_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3521,13 +3791,13 @@ memb_criticality_constraint_97(const asn_TYPE_descriptor_t *td, const void *sptr } static asn_type_selector_result_t -select_RICserviceUpdateFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_RICcontrolFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateFailure_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_RICcontrolFailure_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateFailure_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolFailure_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3592,13 +3862,13 @@ memb_id_constraint_101(const asn_TYPE_descriptor_t *td, const void *sptr, } static asn_type_selector_result_t -select_RICserviceQuery_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_ErrorIndication_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICserviceQuery_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_ErrorIndication_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 1; /* &criticality */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceQuery_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ErrorIndication_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3638,13 +3908,13 @@ memb_criticality_constraint_101(const asn_TYPE_descriptor_t *td, const void *spt } static asn_type_selector_result_t -select_RICserviceQuery_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { +select_ErrorIndication_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { asn_type_selector_result_t result = {0, 0}; - const asn_ioc_set_t *itable = asn_IOS_RICserviceQuery_IEs_1; + const asn_ioc_set_t *itable = asn_IOS_ErrorIndication_IEs_1; size_t constraining_column = 0; /* &id */ size_t for_column = 2; /* &Value */ size_t row, presence_index = 0; - const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceQuery_IEs, id)); + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ErrorIndication_IEs, id)); for(row=0; row < itable->rows_count; row++) { const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; @@ -3683,656 +3953,3548 @@ memb_value_constraint_101(const asn_TYPE_descriptor_t *td, const void *sptr, return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); } -static asn_oer_constraints_t asn_OER_memb_id_constr_2 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_2 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_value_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_4 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_id_constr_6 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_6 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_7 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_value_constr_8 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_8 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_id_constr_10 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_10 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_11 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_11 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_value_constr_12 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_12 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_id_constr_14 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_14 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_15 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_15 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_value_constr_16 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_16 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_id_constr_18 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_18 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_19 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_19 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_value_constr_20 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_20 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_id_constr_22 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_22 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_23 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_23 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_value_constr_24 CC_NOTUSED = { - { 0, 0 }, +static int +memb_id_constraint_105(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_E2setupRequestIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2setupRequestIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupRequestIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_105(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_E2setupRequestIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2setupRequestIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupRequestIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_105(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_109(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_E2setupResponseIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2setupResponseIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupResponseIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_109(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_E2setupResponseIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2setupResponseIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupResponseIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_109(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_113(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_E2setupFailureIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2setupFailureIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupFailureIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_113(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_E2setupFailureIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2setupFailureIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupFailureIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_113(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_117(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_E2nodeConfigurationUpdate_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdate_IEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdate_IEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_117(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_E2nodeConfigurationUpdate_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdate_IEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdate_IEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_117(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_121(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_E2nodeConfigurationUpdateAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_121(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_E2nodeConfigurationUpdateAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_121(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_125(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_E2nodeConfigurationUpdateFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateFailure_IEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_125(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_E2nodeConfigurationUpdateFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateFailure_IEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_125(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_129(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_ResetRequestIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_ResetRequestIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetRequestIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_129(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_ResetRequestIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_ResetRequestIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetRequestIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_129(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_133(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_ResetResponseIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_ResetResponseIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetResponseIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_133(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_ResetResponseIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_ResetResponseIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetResponseIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_133(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_137(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_RICserviceQuery_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_RICserviceQuery_IEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceQuery_IEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_137(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_RICserviceQuery_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_RICserviceQuery_IEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceQuery_IEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_137(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_141(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_E2RemovalRequestIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2RemovalRequestIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2RemovalRequestIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_141(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_E2RemovalRequestIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2RemovalRequestIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2RemovalRequestIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_141(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_E2RemovalResponseIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2RemovalResponseIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2RemovalResponseIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_E2RemovalResponseIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2RemovalResponseIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2RemovalResponseIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static int +memb_id_constraint_149(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_type_selector_result_t +select_E2RemovalFailureIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2RemovalFailureIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 1; /* &criticality */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2RemovalFailureIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_criticality_constraint_149(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_type_selector_result_t +select_E2RemovalFailureIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) { + asn_type_selector_result_t result = {0, 0}; + const asn_ioc_set_t *itable = asn_IOS_E2RemovalFailureIEs_1; + size_t constraining_column = 0; /* &id */ + size_t for_column = 2; /* &Value */ + size_t row, presence_index = 0; + const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2RemovalFailureIEs, id)); + + for(row=0; row < itable->rows_count; row++) { + const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column]; + const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column]; + + if(type_cell->cell_kind == aioc__undefined) + continue; + + presence_index++; + if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) { + result.type_descriptor = type_cell->type_descriptor; + result.presence_index = presence_index; + break; + } + } + + return result; +} + +static int +memb_value_constraint_149(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); +} + +static asn_oer_constraints_t asn_OER_memb_id_constr_2 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_6 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_6 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_7 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_10 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_10 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_11 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_11 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_12 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_12 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_14 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_14 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_15 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_15 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_16 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_16 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_18 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_18 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_19 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_19 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_20 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_20 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_22 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_22 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_23 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_23 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_24 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_24 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_26 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_26 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_27 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_27 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_28 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_28 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_30 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_30 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_31 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_31 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_32 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_32 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_34 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_34 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_35 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_35 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_36 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_36 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_38 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_38 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_39 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_39 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_40 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_40 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_42 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_42 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_43 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_43 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_44 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_44 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_46 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_46 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_47 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_47 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_48 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_48 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_50 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_50 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_51 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_51 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_52 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_52 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_54 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_54 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_55 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_55 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_56 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_56 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_58 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_58 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_59 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_59 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_60 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_60 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_62 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_62 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_63 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_63 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_64 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_64 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_66 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_66 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_67 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_67 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_68 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_68 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_70 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_70 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_71 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_71 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_72 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_72 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_74 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_74 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_75 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_75 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_76 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_76 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_78 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_78 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_79 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_79 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_80 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_80 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_82 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_82 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_83 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_83 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_84 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_84 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_86 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_86 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_87 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_87 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_88 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_88 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_90 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_90 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_91 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_91 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_92 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_92 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_94 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_94 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_95 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_95 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_96 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_96 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_98 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_98 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_99 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_99 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_100 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_100 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_102 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_102 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_103 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_103 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_104 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_104 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_106 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_106 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_107 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_107 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_108 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_108 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_110 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_110 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_111 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_111 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_112 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_112 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_114 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_114 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_115 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_115 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_116 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_116 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_118 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_118 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_119 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_119 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_120 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_120 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_122 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_122 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_123 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_123 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_124 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_124 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_126 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_126 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_127 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_127 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_128 CC_NOTUSED = { + { 0, 0 }, -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_24 CC_NOTUSED = { +static asn_per_constraints_t asn_PER_memb_value_constr_128 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_130 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_130 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_131 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_131 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_132 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_132 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_134 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_134 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_135 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_135 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_136 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_136 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_138 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_138 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_139 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_139 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_140 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_140 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_142 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_142 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_143 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_143 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_144 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_144 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_146 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_146 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_147 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_147 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_148 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_148 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_id_constr_150 CC_NOTUSED = { + { 2, 1 } /* (0..65535) */, + -1}; +static asn_per_constraints_t asn_PER_memb_id_constr_150 CC_NOTUSED = { + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_criticality_constr_151 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_criticality_constr_151 CC_NOTUSED = { + { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_value_constr_152 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_value_constr_152 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_26 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_26 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static asn_TYPE_member_t asn_MBR_value_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs__value, choice.RICaction_ToBeSetup_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RICaction_ToBeSetup_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-ToBeSetup-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_4[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICaction-ToBeSetup-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_4 = { + sizeof(struct RICaction_ToBeSetup_ItemIEs__value), + offsetof(struct RICaction_ToBeSetup_ItemIEs__value, _asn_ctx), + offsetof(struct RICaction_ToBeSetup_ItemIEs__value, present), + sizeof(((struct RICaction_ToBeSetup_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_4, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_4 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_4, + 1, /* Elements count */ + &asn_SPC_value_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RICaction_ToBeSetup_ItemIEs_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_2, &asn_PER_memb_id_constr_2, memb_id_constraint_1 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_RICaction_ToBeSetup_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_3, &asn_PER_memb_criticality_constr_3, memb_criticality_constraint_1 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_4, + select_RICaction_ToBeSetup_ItemIEs_value_type, + { &asn_OER_memb_value_constr_4, &asn_PER_memb_value_constr_4, memb_value_constraint_1 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RICaction_ToBeSetup_ItemIEs_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RICaction_ToBeSetup_ItemIEs_specs_1 = { + sizeof(struct RICaction_ToBeSetup_ItemIEs), + offsetof(struct RICaction_ToBeSetup_ItemIEs, _asn_ctx), + asn_MAP_RICaction_ToBeSetup_ItemIEs_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RICaction_ToBeSetup_ItemIEs = { + "RICaction-ToBeSetup-ItemIEs", + "RICaction-ToBeSetup-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1, + sizeof(asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1) + /sizeof(asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1[0]), /* 1 */ + asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1, /* Same as above */ + sizeof(asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1) + /sizeof(asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RICaction_ToBeSetup_ItemIEs_1, + 3, /* Elements count */ + &asn_SPC_RICaction_ToBeSetup_ItemIEs_specs_1 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_value_8[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs__value, choice.RICaction_Admitted_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RICaction_Admitted_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-Admitted-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_8[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICaction-Admitted-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_8 = { + sizeof(struct RICaction_Admitted_ItemIEs__value), + offsetof(struct RICaction_Admitted_ItemIEs__value, _asn_ctx), + offsetof(struct RICaction_Admitted_ItemIEs__value, present), + sizeof(((struct RICaction_Admitted_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_8, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_8 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_8, + 1, /* Elements count */ + &asn_SPC_value_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RICaction_Admitted_ItemIEs_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_6, &asn_PER_memb_id_constr_6, memb_id_constraint_5 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_RICaction_Admitted_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_7, &asn_PER_memb_criticality_constr_7, memb_criticality_constraint_5 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_8, + select_RICaction_Admitted_ItemIEs_value_type, + { &asn_OER_memb_value_constr_8, &asn_PER_memb_value_constr_8, memb_value_constraint_5 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_RICaction_Admitted_ItemIEs_tags_5[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RICaction_Admitted_ItemIEs_tag2el_5[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RICaction_Admitted_ItemIEs_specs_5 = { + sizeof(struct RICaction_Admitted_ItemIEs), + offsetof(struct RICaction_Admitted_ItemIEs, _asn_ctx), + asn_MAP_RICaction_Admitted_ItemIEs_tag2el_5, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RICaction_Admitted_ItemIEs = { + "RICaction-Admitted-ItemIEs", + "RICaction-Admitted-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_RICaction_Admitted_ItemIEs_tags_5, + sizeof(asn_DEF_RICaction_Admitted_ItemIEs_tags_5) + /sizeof(asn_DEF_RICaction_Admitted_ItemIEs_tags_5[0]), /* 1 */ + asn_DEF_RICaction_Admitted_ItemIEs_tags_5, /* Same as above */ + sizeof(asn_DEF_RICaction_Admitted_ItemIEs_tags_5) + /sizeof(asn_DEF_RICaction_Admitted_ItemIEs_tags_5[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RICaction_Admitted_ItemIEs_5, + 3, /* Elements count */ + &asn_SPC_RICaction_Admitted_ItemIEs_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_value_12[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs__value, choice.RICaction_NotAdmitted_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RICaction_NotAdmitted_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-NotAdmitted-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_12[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICaction-NotAdmitted-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_12 = { + sizeof(struct RICaction_NotAdmitted_ItemIEs__value), + offsetof(struct RICaction_NotAdmitted_ItemIEs__value, _asn_ctx), + offsetof(struct RICaction_NotAdmitted_ItemIEs__value, present), + sizeof(((struct RICaction_NotAdmitted_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_12, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_12 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_12, + 1, /* Elements count */ + &asn_SPC_value_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_ItemIEs_9[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_10, &asn_PER_memb_id_constr_10, memb_id_constraint_9 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_RICaction_NotAdmitted_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_11, &asn_PER_memb_criticality_constr_11, memb_criticality_constraint_9 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_12, + select_RICaction_NotAdmitted_ItemIEs_value_type, + { &asn_OER_memb_value_constr_12, &asn_PER_memb_value_constr_12, memb_value_constraint_9 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RICaction_NotAdmitted_ItemIEs_tag2el_9[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RICaction_NotAdmitted_ItemIEs_specs_9 = { + sizeof(struct RICaction_NotAdmitted_ItemIEs), + offsetof(struct RICaction_NotAdmitted_ItemIEs, _asn_ctx), + asn_MAP_RICaction_NotAdmitted_ItemIEs_tag2el_9, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RICaction_NotAdmitted_ItemIEs = { + "RICaction-NotAdmitted-ItemIEs", + "RICaction-NotAdmitted-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9, + sizeof(asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9) + /sizeof(asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9[0]), /* 1 */ + asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9, /* Same as above */ + sizeof(asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9) + /sizeof(asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RICaction_NotAdmitted_ItemIEs_9, + 3, /* Elements count */ + &asn_SPC_RICaction_NotAdmitted_ItemIEs_specs_9 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_value_16[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_ItemIEs__value, choice.RICsubscription_withCause_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RICsubscription_withCause_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICsubscription-withCause-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_16[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICsubscription-withCause-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_16 = { + sizeof(struct RICsubscription_withCause_ItemIEs__value), + offsetof(struct RICsubscription_withCause_ItemIEs__value, _asn_ctx), + offsetof(struct RICsubscription_withCause_ItemIEs__value, present), + sizeof(((struct RICsubscription_withCause_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_16, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_16 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_16, + 1, /* Elements count */ + &asn_SPC_value_specs_16 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RICsubscription_withCause_ItemIEs_13[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_14, &asn_PER_memb_id_constr_14, memb_id_constraint_13 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_RICsubscription_withCause_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_15, &asn_PER_memb_criticality_constr_15, memb_criticality_constraint_13 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_16, + select_RICsubscription_withCause_ItemIEs_value_type, + { &asn_OER_memb_value_constr_16, &asn_PER_memb_value_constr_16, memb_value_constraint_13 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_RICsubscription_withCause_ItemIEs_tags_13[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RICsubscription_withCause_ItemIEs_tag2el_13[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RICsubscription_withCause_ItemIEs_specs_13 = { + sizeof(struct RICsubscription_withCause_ItemIEs), + offsetof(struct RICsubscription_withCause_ItemIEs, _asn_ctx), + asn_MAP_RICsubscription_withCause_ItemIEs_tag2el_13, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RICsubscription_withCause_ItemIEs = { + "RICsubscription-withCause-ItemIEs", + "RICsubscription-withCause-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_RICsubscription_withCause_ItemIEs_tags_13, + sizeof(asn_DEF_RICsubscription_withCause_ItemIEs_tags_13) + /sizeof(asn_DEF_RICsubscription_withCause_ItemIEs_tags_13[0]), /* 1 */ + asn_DEF_RICsubscription_withCause_ItemIEs_tags_13, /* Same as above */ + sizeof(asn_DEF_RICsubscription_withCause_ItemIEs_tags_13) + /sizeof(asn_DEF_RICsubscription_withCause_ItemIEs_tags_13[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RICsubscription_withCause_ItemIEs_13, + 3, /* Elements count */ + &asn_SPC_RICsubscription_withCause_ItemIEs_specs_13 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_value_20[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_ItemIEs__value, choice.E2nodeComponentConfigAddition_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeComponentConfigAddition_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeComponentConfigAddition-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_20[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigAddition-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_20 = { + sizeof(struct E2nodeComponentConfigAddition_ItemIEs__value), + offsetof(struct E2nodeComponentConfigAddition_ItemIEs__value, _asn_ctx), + offsetof(struct E2nodeComponentConfigAddition_ItemIEs__value, present), + sizeof(((struct E2nodeComponentConfigAddition_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_20, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_20 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_20, + 1, /* Elements count */ + &asn_SPC_value_specs_20 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_ItemIEs_17[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_18, &asn_PER_memb_id_constr_18, memb_id_constraint_17 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_E2nodeComponentConfigAddition_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_19, &asn_PER_memb_criticality_constr_19, memb_criticality_constraint_17 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_20, + select_E2nodeComponentConfigAddition_ItemIEs_value_type, + { &asn_OER_memb_value_constr_20, &asn_PER_memb_value_constr_20, memb_value_constraint_17 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_17[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigAddition_ItemIEs_tag2el_17[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAddition_ItemIEs_specs_17 = { + sizeof(struct E2nodeComponentConfigAddition_ItemIEs), + offsetof(struct E2nodeComponentConfigAddition_ItemIEs, _asn_ctx), + asn_MAP_E2nodeComponentConfigAddition_ItemIEs_tag2el_17, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_ItemIEs = { + "E2nodeComponentConfigAddition-ItemIEs", + "E2nodeComponentConfigAddition-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_17, + sizeof(asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_17) + /sizeof(asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_17[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_17, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_17) + /sizeof(asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_17[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigAddition_ItemIEs_17, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigAddition_ItemIEs_specs_17 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_value_24[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs__value, choice.E2nodeComponentConfigUpdate_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeComponentConfigUpdate_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeComponentConfigUpdate-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_24[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigUpdate-Item */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_27 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_27 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static asn_CHOICE_specifics_t asn_SPC_value_specs_24 = { + sizeof(struct E2nodeComponentConfigUpdate_ItemIEs__value), + offsetof(struct E2nodeComponentConfigUpdate_ItemIEs__value, _asn_ctx), + offsetof(struct E2nodeComponentConfigUpdate_ItemIEs__value, present), + sizeof(((struct E2nodeComponentConfigUpdate_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_24, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_28 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_28 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_24 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_24, + 1, /* Elements count */ + &asn_SPC_value_specs_24 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_30 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_30 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_21[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_22, &asn_PER_memb_id_constr_22, memb_id_constraint_21 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_E2nodeComponentConfigUpdate_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_23, &asn_PER_memb_criticality_constr_23, memb_criticality_constraint_21 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_24, + select_E2nodeComponentConfigUpdate_ItemIEs_value_type, + { &asn_OER_memb_value_constr_24, &asn_PER_memb_value_constr_24, memb_value_constraint_21 }, + 0, 0, /* No default value */ + "value" + }, }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_31 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_31 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_21[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static asn_oer_constraints_t asn_OER_memb_value_constr_32 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_32 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdate_ItemIEs_tag2el_21[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_34 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_34 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_21 = { + sizeof(struct E2nodeComponentConfigUpdate_ItemIEs), + offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, _asn_ctx), + asn_MAP_E2nodeComponentConfigUpdate_ItemIEs_tag2el_21, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_35 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_35 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_ItemIEs = { + "E2nodeComponentConfigUpdate-ItemIEs", + "E2nodeComponentConfigUpdate-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_21, + sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_21) + /sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_21[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_21, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_21) + /sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_21[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_21, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_21 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_36 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_36 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +static asn_TYPE_member_t asn_MBR_value_28[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_ItemIEs__value, choice.E2nodeComponentConfigRemoval_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeComponentConfigRemoval_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeComponentConfigRemoval-Item" + }, }; -static asn_oer_constraints_t asn_OER_memb_id_constr_38 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_38 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_28[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigRemoval-Item */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_39 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_39 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static asn_CHOICE_specifics_t asn_SPC_value_specs_28 = { + sizeof(struct E2nodeComponentConfigRemoval_ItemIEs__value), + offsetof(struct E2nodeComponentConfigRemoval_ItemIEs__value, _asn_ctx), + offsetof(struct E2nodeComponentConfigRemoval_ItemIEs__value, present), + sizeof(((struct E2nodeComponentConfigRemoval_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_28, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_40 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_40 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_28 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_28, + 1, /* Elements count */ + &asn_SPC_value_specs_28 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_42 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_42 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_ItemIEs_25[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_26, &asn_PER_memb_id_constr_26, memb_id_constraint_25 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_E2nodeComponentConfigRemoval_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_27, &asn_PER_memb_criticality_constr_27, memb_criticality_constraint_25 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_28, + select_E2nodeComponentConfigRemoval_ItemIEs_value_type, + { &asn_OER_memb_value_constr_28, &asn_PER_memb_value_constr_28, memb_value_constraint_25 }, + 0, 0, /* No default value */ + "value" + }, }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_43 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_43 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_25[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static asn_oer_constraints_t asn_OER_memb_value_constr_44 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_44 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigRemoval_ItemIEs_tag2el_25[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_46 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_46 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemoval_ItemIEs_specs_25 = { + sizeof(struct E2nodeComponentConfigRemoval_ItemIEs), + offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, _asn_ctx), + asn_MAP_E2nodeComponentConfigRemoval_ItemIEs_tag2el_25, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_47 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_47 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_ItemIEs = { + "E2nodeComponentConfigRemoval-ItemIEs", + "E2nodeComponentConfigRemoval-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_25, + sizeof(asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_25) + /sizeof(asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_25[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_25, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_25) + /sizeof(asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_25[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigRemoval_ItemIEs_25, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigRemoval_ItemIEs_specs_25 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_48 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_48 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +static asn_TYPE_member_t asn_MBR_value_32[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_ItemIEs__value, choice.E2nodeTNLassociationRemoval_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeTNLassociationRemoval_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeTNLassociationRemoval-Item" + }, }; -static asn_oer_constraints_t asn_OER_memb_id_constr_50 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_50 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_32[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeTNLassociationRemoval-Item */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_51 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_51 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static asn_CHOICE_specifics_t asn_SPC_value_specs_32 = { + sizeof(struct E2nodeTNLassociationRemoval_ItemIEs__value), + offsetof(struct E2nodeTNLassociationRemoval_ItemIEs__value, _asn_ctx), + offsetof(struct E2nodeTNLassociationRemoval_ItemIEs__value, present), + sizeof(((struct E2nodeTNLassociationRemoval_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_32, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_52 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_52 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_32 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_32, + 1, /* Elements count */ + &asn_SPC_value_specs_32 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_54 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_54 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_ItemIEs_29[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_30, &asn_PER_memb_id_constr_30, memb_id_constraint_29 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_E2nodeTNLassociationRemoval_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_31, &asn_PER_memb_criticality_constr_31, memb_criticality_constraint_29 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_32, + select_E2nodeTNLassociationRemoval_ItemIEs_value_type, + { &asn_OER_memb_value_constr_32, &asn_PER_memb_value_constr_32, memb_value_constraint_29 }, + 0, 0, /* No default value */ + "value" + }, }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_55 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_55 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const ber_tlv_tag_t asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_29[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static asn_oer_constraints_t asn_OER_memb_value_constr_56 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_56 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_E2nodeTNLassociationRemoval_ItemIEs_tag2el_29[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_58 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_58 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_SEQUENCE_specifics_t asn_SPC_E2nodeTNLassociationRemoval_ItemIEs_specs_29 = { + sizeof(struct E2nodeTNLassociationRemoval_ItemIEs), + offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, _asn_ctx), + asn_MAP_E2nodeTNLassociationRemoval_ItemIEs_tag2el_29, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_59 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_59 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_ItemIEs = { + "E2nodeTNLassociationRemoval-ItemIEs", + "E2nodeTNLassociationRemoval-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_29, + sizeof(asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_29) + /sizeof(asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_29[0]), /* 1 */ + asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_29, /* Same as above */ + sizeof(asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_29) + /sizeof(asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_29[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeTNLassociationRemoval_ItemIEs_29, + 3, /* Elements count */ + &asn_SPC_E2nodeTNLassociationRemoval_ItemIEs_specs_29 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_60 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_60 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +static asn_TYPE_member_t asn_MBR_value_36[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs__value, choice.E2nodeComponentConfigAdditionAck_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeComponentConfigAdditionAck_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeComponentConfigAdditionAck-Item" + }, }; -static asn_oer_constraints_t asn_OER_memb_id_constr_62 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_62 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_36[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigAdditionAck-Item */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_63 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_63 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static asn_CHOICE_specifics_t asn_SPC_value_specs_36 = { + sizeof(struct E2nodeComponentConfigAdditionAck_ItemIEs__value), + offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs__value, _asn_ctx), + offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs__value, present), + sizeof(((struct E2nodeComponentConfigAdditionAck_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_36, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_64 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_64 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_36 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_36, + 1, /* Elements count */ + &asn_SPC_value_specs_36 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_66 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_66 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_ItemIEs_33[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_34, &asn_PER_memb_id_constr_34, memb_id_constraint_33 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_E2nodeComponentConfigAdditionAck_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_35, &asn_PER_memb_criticality_constr_35, memb_criticality_constraint_33 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_36, + select_E2nodeComponentConfigAdditionAck_ItemIEs_value_type, + { &asn_OER_memb_value_constr_36, &asn_PER_memb_value_constr_36, memb_value_constraint_33 }, + 0, 0, /* No default value */ + "value" + }, }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_67 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_67 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_33[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static asn_oer_constraints_t asn_OER_memb_value_constr_68 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_68 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigAdditionAck_ItemIEs_tag2el_33[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_70 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_70 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_ItemIEs_specs_33 = { + sizeof(struct E2nodeComponentConfigAdditionAck_ItemIEs), + offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, _asn_ctx), + asn_MAP_E2nodeComponentConfigAdditionAck_ItemIEs_tag2el_33, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_71 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_71 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs = { + "E2nodeComponentConfigAdditionAck-ItemIEs", + "E2nodeComponentConfigAdditionAck-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_33, + sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_33) + /sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_33[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_33, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_33) + /sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_33[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigAdditionAck_ItemIEs_33, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigAdditionAck_ItemIEs_specs_33 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_72 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_72 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +static asn_TYPE_member_t asn_MBR_value_40[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value, choice.E2nodeComponentConfigUpdateAck_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeComponentConfigUpdateAck_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeComponentConfigUpdateAck-Item" + }, }; -static asn_oer_constraints_t asn_OER_memb_id_constr_74 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_74 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_40[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigUpdateAck-Item */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_75 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_75 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static asn_CHOICE_specifics_t asn_SPC_value_specs_40 = { + sizeof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value), + offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value, _asn_ctx), + offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value, present), + sizeof(((struct E2nodeComponentConfigUpdateAck_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_40, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_76 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_76 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_40 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_40, + 1, /* Elements count */ + &asn_SPC_value_specs_40 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_78 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_78 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_37[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_38, &asn_PER_memb_id_constr_38, memb_id_constraint_37 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_E2nodeComponentConfigUpdateAck_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_39, &asn_PER_memb_criticality_constr_39, memb_criticality_constraint_37 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_40, + select_E2nodeComponentConfigUpdateAck_ItemIEs_value_type, + { &asn_OER_memb_value_constr_40, &asn_PER_memb_value_constr_40, memb_value_constraint_37 }, + 0, 0, /* No default value */ + "value" + }, }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_79 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_79 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_37[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static asn_oer_constraints_t asn_OER_memb_value_constr_80 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_80 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateAck_ItemIEs_tag2el_37[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_82 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_82 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_37 = { + sizeof(struct E2nodeComponentConfigUpdateAck_ItemIEs), + offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, _asn_ctx), + asn_MAP_E2nodeComponentConfigUpdateAck_ItemIEs_tag2el_37, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_83 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_83 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs = { + "E2nodeComponentConfigUpdateAck-ItemIEs", + "E2nodeComponentConfigUpdateAck-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_37, + sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_37) + /sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_37[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_37, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_37) + /sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_37[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_37, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_37 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_84 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_84 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +static asn_TYPE_member_t asn_MBR_value_44[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs__value, choice.E2nodeComponentConfigRemovalAck_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeComponentConfigRemovalAck_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeComponentConfigRemovalAck-Item" + }, }; -static asn_oer_constraints_t asn_OER_memb_id_constr_86 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_86 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_44[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigRemovalAck-Item */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_87 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_87 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static asn_CHOICE_specifics_t asn_SPC_value_specs_44 = { + sizeof(struct E2nodeComponentConfigRemovalAck_ItemIEs__value), + offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs__value, _asn_ctx), + offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs__value, present), + sizeof(((struct E2nodeComponentConfigRemovalAck_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_44, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_88 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_88 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_44 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_44, + 1, /* Elements count */ + &asn_SPC_value_specs_44 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_90 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_90 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_ItemIEs_41[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_42, &asn_PER_memb_id_constr_42, memb_id_constraint_41 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_E2nodeComponentConfigRemovalAck_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_43, &asn_PER_memb_criticality_constr_43, memb_criticality_constraint_41 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_44, + select_E2nodeComponentConfigRemovalAck_ItemIEs_value_type, + { &asn_OER_memb_value_constr_44, &asn_PER_memb_value_constr_44, memb_value_constraint_41 }, + 0, 0, /* No default value */ + "value" + }, }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_91 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_91 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_41[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static asn_oer_constraints_t asn_OER_memb_value_constr_92 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_92 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigRemovalAck_ItemIEs_tag2el_41[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_94 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_94 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_ItemIEs_specs_41 = { + sizeof(struct E2nodeComponentConfigRemovalAck_ItemIEs), + offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, _asn_ctx), + asn_MAP_E2nodeComponentConfigRemovalAck_ItemIEs_tag2el_41, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_95 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_95 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs = { + "E2nodeComponentConfigRemovalAck-ItemIEs", + "E2nodeComponentConfigRemovalAck-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_41, + sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_41) + /sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_41[0]), /* 1 */ + asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_41, /* Same as above */ + sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_41) + /sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_41[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigRemovalAck_ItemIEs_41, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigRemovalAck_ItemIEs_specs_41 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_96 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_96 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +static asn_TYPE_member_t asn_MBR_value_48[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs__value, choice.RANfunction_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANfunction_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunction-Item" + }, }; -static asn_oer_constraints_t asn_OER_memb_id_constr_98 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_98 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_48[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunction-Item */ }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_99 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_99 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static asn_CHOICE_specifics_t asn_SPC_value_specs_48 = { + sizeof(struct RANfunction_ItemIEs__value), + offsetof(struct RANfunction_ItemIEs__value, _asn_ctx), + offsetof(struct RANfunction_ItemIEs__value, present), + sizeof(((struct RANfunction_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_48, + 1, /* Count of tags in the map */ + 0, 0, + -1 /* Extensions start */ }; -static asn_oer_constraints_t asn_OER_memb_value_constr_100 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_100 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_value_48 = { + "value", + "value", + &asn_OP_OPEN_TYPE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { 0, 0, OPEN_TYPE_constraint }, + asn_MBR_value_48, + 1, /* Elements count */ + &asn_SPC_value_specs_48 /* Additional specs */ }; -static asn_oer_constraints_t asn_OER_memb_id_constr_102 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, - -1}; -static asn_per_constraints_t asn_PER_memb_id_constr_102 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ + +asn_TYPE_member_t asn_MBR_RANfunction_ItemIEs_45[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_ID, + 0, + { &asn_OER_memb_id_constr_46, &asn_PER_memb_id_constr_46, memb_id_constraint_45 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Criticality, + select_RANfunction_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_47, &asn_PER_memb_criticality_constr_47, memb_criticality_constraint_45 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_48, + select_RANfunction_ItemIEs_value_type, + { &asn_OER_memb_value_constr_48, &asn_PER_memb_value_constr_48, memb_value_constraint_45 }, + 0, 0, /* No default value */ + "value" + }, }; -static asn_oer_constraints_t asn_OER_memb_criticality_constr_103 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_criticality_constr_103 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const ber_tlv_tag_t asn_DEF_RANfunction_ItemIEs_tags_45[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static asn_oer_constraints_t asn_OER_memb_value_constr_104 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_value_constr_104 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ +static const asn_TYPE_tag2member_t asn_MAP_RANfunction_ItemIEs_tag2el_45[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -static asn_TYPE_member_t asn_MBR_value_4[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs__value, choice.RICaction_ToBeSetup_Item), +asn_SEQUENCE_specifics_t asn_SPC_RANfunction_ItemIEs_specs_45 = { + sizeof(struct RANfunction_ItemIEs), + offsetof(struct RANfunction_ItemIEs, _asn_ctx), + asn_MAP_RANfunction_ItemIEs_tag2el_45, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANfunction_ItemIEs = { + "RANfunction-ItemIEs", + "RANfunction-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_RANfunction_ItemIEs_tags_45, + sizeof(asn_DEF_RANfunction_ItemIEs_tags_45) + /sizeof(asn_DEF_RANfunction_ItemIEs_tags_45[0]), /* 1 */ + asn_DEF_RANfunction_ItemIEs_tags_45, /* Same as above */ + sizeof(asn_DEF_RANfunction_ItemIEs_tags_45) + /sizeof(asn_DEF_RANfunction_ItemIEs_tags_45[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANfunction_ItemIEs_45, + 3, /* Elements count */ + &asn_SPC_RANfunction_ItemIEs_specs_45 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_value_52[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs__value, choice.RANfunctionID_Item), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICaction_ToBeSetup_Item, + &asn_DEF_RANfunctionID_Item, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICaction-ToBeSetup-Item" + "RANfunctionID-Item" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_4[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICaction-ToBeSetup-Item */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_52[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionID-Item */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_4 = { - sizeof(struct RICaction_ToBeSetup_ItemIEs__value), - offsetof(struct RICaction_ToBeSetup_ItemIEs__value, _asn_ctx), - offsetof(struct RICaction_ToBeSetup_ItemIEs__value, present), - sizeof(((struct RICaction_ToBeSetup_ItemIEs__value *)0)->present), - asn_MAP_value_tag2el_4, +static asn_CHOICE_specifics_t asn_SPC_value_specs_52 = { + sizeof(struct RANfunctionID_ItemIEs__value), + offsetof(struct RANfunctionID_ItemIEs__value, _asn_ctx), + offsetof(struct RANfunctionID_ItemIEs__value, present), + sizeof(((struct RANfunctionID_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_52, 1, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_4 = { +asn_TYPE_descriptor_t asn_DEF_value_52 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -4341,97 +7503,98 @@ asn_TYPE_descriptor_t asn_DEF_value_4 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_4, + asn_MBR_value_52, 1, /* Elements count */ - &asn_SPC_value_specs_4 /* Additional specs */ + &asn_SPC_value_specs_52 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICaction_ToBeSetup_ItemIEs_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RANfunctionID_ItemIEs_49[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_2, &asn_PER_memb_id_constr_2, memb_id_constraint_1 }, + { &asn_OER_memb_id_constr_50, &asn_PER_memb_id_constr_50, memb_id_constraint_49 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICaction_ToBeSetup_ItemIEs_criticality_type, - { &asn_OER_memb_criticality_constr_3, &asn_PER_memb_criticality_constr_3, memb_criticality_constraint_1 }, + select_RANfunctionID_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_51, &asn_PER_memb_criticality_constr_51, memb_criticality_constraint_49 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_4, - select_RICaction_ToBeSetup_ItemIEs_value_type, - { &asn_OER_memb_value_constr_4, &asn_PER_memb_value_constr_4, memb_value_constraint_1 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_52, + select_RANfunctionID_ItemIEs_value_type, + { &asn_OER_memb_value_constr_52, &asn_PER_memb_value_constr_52, memb_value_constraint_49 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_RANfunctionID_ItemIEs_tags_49[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICaction_ToBeSetup_ItemIEs_tag2el_1[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RANfunctionID_ItemIEs_tag2el_49[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICaction_ToBeSetup_ItemIEs_specs_1 = { - sizeof(struct RICaction_ToBeSetup_ItemIEs), - offsetof(struct RICaction_ToBeSetup_ItemIEs, _asn_ctx), - asn_MAP_RICaction_ToBeSetup_ItemIEs_tag2el_1, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_ItemIEs_specs_49 = { + sizeof(struct RANfunctionID_ItemIEs), + offsetof(struct RANfunctionID_ItemIEs, _asn_ctx), + asn_MAP_RANfunctionID_ItemIEs_tag2el_49, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICaction_ToBeSetup_ItemIEs = { - "RICaction-ToBeSetup-ItemIEs", - "RICaction-ToBeSetup-ItemIEs", +asn_TYPE_descriptor_t asn_DEF_RANfunctionID_ItemIEs = { + "RANfunctionID-ItemIEs", + "RANfunctionID-ItemIEs", &asn_OP_SEQUENCE, - asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1, - sizeof(asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1) - /sizeof(asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1[0]), /* 1 */ - asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1, /* Same as above */ - sizeof(asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1) - /sizeof(asn_DEF_RICaction_ToBeSetup_ItemIEs_tags_1[0]), /* 1 */ + asn_DEF_RANfunctionID_ItemIEs_tags_49, + sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_49) + /sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_49[0]), /* 1 */ + asn_DEF_RANfunctionID_ItemIEs_tags_49, /* Same as above */ + sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_49) + /sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_49[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICaction_ToBeSetup_ItemIEs_1, + asn_MBR_RANfunctionID_ItemIEs_49, 3, /* Elements count */ - &asn_SPC_RICaction_ToBeSetup_ItemIEs_specs_1 /* Additional specs */ + &asn_SPC_RANfunctionID_ItemIEs_specs_49 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_8[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs__value, choice.RICaction_Admitted_Item), +static asn_TYPE_member_t asn_MBR_value_56[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs__value, choice.RANfunctionIDcause_Item), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICaction_Admitted_Item, + &asn_DEF_RANfunctionIDcause_Item, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICaction-Admitted-Item" + "RANfunctionIDcause-Item" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_8[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICaction-Admitted-Item */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_56[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionIDcause-Item */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_8 = { - sizeof(struct RICaction_Admitted_ItemIEs__value), - offsetof(struct RICaction_Admitted_ItemIEs__value, _asn_ctx), - offsetof(struct RICaction_Admitted_ItemIEs__value, present), - sizeof(((struct RICaction_Admitted_ItemIEs__value *)0)->present), - asn_MAP_value_tag2el_8, +static asn_CHOICE_specifics_t asn_SPC_value_specs_56 = { + sizeof(struct RANfunctionIDcause_ItemIEs__value), + offsetof(struct RANfunctionIDcause_ItemIEs__value, _asn_ctx), + offsetof(struct RANfunctionIDcause_ItemIEs__value, present), + sizeof(((struct RANfunctionIDcause_ItemIEs__value *)0)->present), + asn_MAP_value_tag2el_56, 1, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_8 = { +asn_TYPE_descriptor_t asn_DEF_value_56 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -4440,97 +7603,121 @@ asn_TYPE_descriptor_t asn_DEF_value_8 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_8, + asn_MBR_value_56, 1, /* Elements count */ - &asn_SPC_value_specs_8 /* Additional specs */ + &asn_SPC_value_specs_56 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICaction_Admitted_ItemIEs_5[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RANfunctionIDcause_ItemIEs_53[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_6, &asn_PER_memb_id_constr_6, memb_id_constraint_5 }, + { &asn_OER_memb_id_constr_54, &asn_PER_memb_id_constr_54, memb_id_constraint_53 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICaction_Admitted_ItemIEs_criticality_type, - { &asn_OER_memb_criticality_constr_7, &asn_PER_memb_criticality_constr_7, memb_criticality_constraint_5 }, + select_RANfunctionIDcause_ItemIEs_criticality_type, + { &asn_OER_memb_criticality_constr_55, &asn_PER_memb_criticality_constr_55, memb_criticality_constraint_53 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_8, - select_RICaction_Admitted_ItemIEs_value_type, - { &asn_OER_memb_value_constr_8, &asn_PER_memb_value_constr_8, memb_value_constraint_5 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_56, + select_RANfunctionIDcause_ItemIEs_value_type, + { &asn_OER_memb_value_constr_56, &asn_PER_memb_value_constr_56, memb_value_constraint_53 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICaction_Admitted_ItemIEs_tags_5[] = { +static const ber_tlv_tag_t asn_DEF_RANfunctionIDcause_ItemIEs_tags_53[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICaction_Admitted_ItemIEs_tag2el_5[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RANfunctionIDcause_ItemIEs_tag2el_53[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICaction_Admitted_ItemIEs_specs_5 = { - sizeof(struct RICaction_Admitted_ItemIEs), - offsetof(struct RICaction_Admitted_ItemIEs, _asn_ctx), - asn_MAP_RICaction_Admitted_ItemIEs_tag2el_5, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_ItemIEs_specs_53 = { + sizeof(struct RANfunctionIDcause_ItemIEs), + offsetof(struct RANfunctionIDcause_ItemIEs, _asn_ctx), + asn_MAP_RANfunctionIDcause_ItemIEs_tag2el_53, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICaction_Admitted_ItemIEs = { - "RICaction-Admitted-ItemIEs", - "RICaction-Admitted-ItemIEs", +asn_TYPE_descriptor_t asn_DEF_RANfunctionIDcause_ItemIEs = { + "RANfunctionIDcause-ItemIEs", + "RANfunctionIDcause-ItemIEs", &asn_OP_SEQUENCE, - asn_DEF_RICaction_Admitted_ItemIEs_tags_5, - sizeof(asn_DEF_RICaction_Admitted_ItemIEs_tags_5) - /sizeof(asn_DEF_RICaction_Admitted_ItemIEs_tags_5[0]), /* 1 */ - asn_DEF_RICaction_Admitted_ItemIEs_tags_5, /* Same as above */ - sizeof(asn_DEF_RICaction_Admitted_ItemIEs_tags_5) - /sizeof(asn_DEF_RICaction_Admitted_ItemIEs_tags_5[0]), /* 1 */ + asn_DEF_RANfunctionIDcause_ItemIEs_tags_53, + sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_53) + /sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_53[0]), /* 1 */ + asn_DEF_RANfunctionIDcause_ItemIEs_tags_53, /* Same as above */ + sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_53) + /sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_53[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICaction_Admitted_ItemIEs_5, + asn_MBR_RANfunctionIDcause_ItemIEs_53, 3, /* Elements count */ - &asn_SPC_RICaction_Admitted_ItemIEs_specs_5 /* Additional specs */ + &asn_SPC_RANfunctionIDcause_ItemIEs_specs_53 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_12[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs__value, choice.RICaction_NotAdmitted_Item), +static asn_TYPE_member_t asn_MBR_value_60[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICaction_NotAdmitted_Item, + &asn_DEF_RICrequestID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICaction-NotAdmitted-Item" + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs__value, choice.RICsubscriptionDetails), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RICsubscriptionDetails, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICsubscriptionDetails" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_12[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICaction-NotAdmitted-Item */ +static const unsigned asn_MAP_value_to_canonical_60[] = { 1, 0, 2 }; +static const unsigned asn_MAP_value_from_canonical_60[] = { 1, 0, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_60[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 } /* RICsubscriptionDetails */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_12 = { - sizeof(struct RICaction_NotAdmitted_ItemIEs__value), - offsetof(struct RICaction_NotAdmitted_ItemIEs__value, _asn_ctx), - offsetof(struct RICaction_NotAdmitted_ItemIEs__value, present), - sizeof(((struct RICaction_NotAdmitted_ItemIEs__value *)0)->present), - asn_MAP_value_tag2el_12, - 1, /* Count of tags in the map */ - 0, 0, +static asn_CHOICE_specifics_t asn_SPC_value_specs_60 = { + sizeof(struct RICsubscriptionRequest_IEs__value), + offsetof(struct RICsubscriptionRequest_IEs__value, _asn_ctx), + offsetof(struct RICsubscriptionRequest_IEs__value, present), + sizeof(((struct RICsubscriptionRequest_IEs__value *)0)->present), + asn_MAP_value_tag2el_60, + 3, /* Count of tags in the map */ + asn_MAP_value_to_canonical_60, + asn_MAP_value_from_canonical_60, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_12 = { +asn_TYPE_descriptor_t asn_DEF_value_60 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -4539,97 +7726,131 @@ asn_TYPE_descriptor_t asn_DEF_value_12 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_12, - 1, /* Elements count */ - &asn_SPC_value_specs_12 /* Additional specs */ + asn_MBR_value_60, + 3, /* Elements count */ + &asn_SPC_value_specs_60 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_ItemIEs_9[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICsubscriptionRequest_IEs_57[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_10, &asn_PER_memb_id_constr_10, memb_id_constraint_9 }, + { &asn_OER_memb_id_constr_58, &asn_PER_memb_id_constr_58, memb_id_constraint_57 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICaction_NotAdmitted_ItemIEs_criticality_type, - { &asn_OER_memb_criticality_constr_11, &asn_PER_memb_criticality_constr_11, memb_criticality_constraint_9 }, + select_RICsubscriptionRequest_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_59, &asn_PER_memb_criticality_constr_59, memb_criticality_constraint_57 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_12, - select_RICaction_NotAdmitted_ItemIEs_value_type, - { &asn_OER_memb_value_constr_12, &asn_PER_memb_value_constr_12, memb_value_constraint_9 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_60, + select_RICsubscriptionRequest_IEs_value_type, + { &asn_OER_memb_value_constr_60, &asn_PER_memb_value_constr_60, memb_value_constraint_57 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9[] = { +static const ber_tlv_tag_t asn_DEF_RICsubscriptionRequest_IEs_tags_57[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICaction_NotAdmitted_ItemIEs_tag2el_9[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionRequest_IEs_tag2el_57[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICaction_NotAdmitted_ItemIEs_specs_9 = { - sizeof(struct RICaction_NotAdmitted_ItemIEs), - offsetof(struct RICaction_NotAdmitted_ItemIEs, _asn_ctx), - asn_MAP_RICaction_NotAdmitted_ItemIEs_tag2el_9, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionRequest_IEs_specs_57 = { + sizeof(struct RICsubscriptionRequest_IEs), + offsetof(struct RICsubscriptionRequest_IEs, _asn_ctx), + asn_MAP_RICsubscriptionRequest_IEs_tag2el_57, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICaction_NotAdmitted_ItemIEs = { - "RICaction-NotAdmitted-ItemIEs", - "RICaction-NotAdmitted-ItemIEs", +asn_TYPE_descriptor_t asn_DEF_RICsubscriptionRequest_IEs = { + "RICsubscriptionRequest-IEs", + "RICsubscriptionRequest-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9, - sizeof(asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9) - /sizeof(asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9[0]), /* 1 */ - asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9, /* Same as above */ - sizeof(asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9) - /sizeof(asn_DEF_RICaction_NotAdmitted_ItemIEs_tags_9[0]), /* 1 */ + asn_DEF_RICsubscriptionRequest_IEs_tags_57, + sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_57) + /sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_57[0]), /* 1 */ + asn_DEF_RICsubscriptionRequest_IEs_tags_57, /* Same as above */ + sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_57) + /sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_57[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICaction_NotAdmitted_ItemIEs_9, + asn_MBR_RICsubscriptionRequest_IEs_57, 3, /* Elements count */ - &asn_SPC_RICaction_NotAdmitted_ItemIEs_specs_9 /* Additional specs */ + &asn_SPC_RICsubscriptionRequest_IEs_specs_57 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_16[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs__value, choice.RANfunction_Item), +static asn_TYPE_member_t asn_MBR_value_64[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANfunction_Item, + &asn_DEF_RICrequestID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunction-Item" + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs__value, choice.RICaction_Admitted_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RICaction_Admitted_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-Admitted-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs__value, choice.RICaction_NotAdmitted_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RICaction_NotAdmitted_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-NotAdmitted-List" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_16[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunction-Item */ +static const unsigned asn_MAP_value_to_canonical_64[] = { 1, 0, 2, 3 }; +static const unsigned asn_MAP_value_from_canonical_64[] = { 1, 0, 2, 3 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_64[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* RICrequestID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 1 }, /* RICaction-Admitted-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -2, 0 } /* RICaction-NotAdmitted-List */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_16 = { - sizeof(struct RANfunction_ItemIEs__value), - offsetof(struct RANfunction_ItemIEs__value, _asn_ctx), - offsetof(struct RANfunction_ItemIEs__value, present), - sizeof(((struct RANfunction_ItemIEs__value *)0)->present), - asn_MAP_value_tag2el_16, - 1, /* Count of tags in the map */ - 0, 0, +static asn_CHOICE_specifics_t asn_SPC_value_specs_64 = { + sizeof(struct RICsubscriptionResponse_IEs__value), + offsetof(struct RICsubscriptionResponse_IEs__value, _asn_ctx), + offsetof(struct RICsubscriptionResponse_IEs__value, present), + sizeof(((struct RICsubscriptionResponse_IEs__value *)0)->present), + asn_MAP_value_tag2el_64, + 4, /* Count of tags in the map */ + asn_MAP_value_to_canonical_64, + asn_MAP_value_from_canonical_64, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_16 = { +asn_TYPE_descriptor_t asn_DEF_value_64 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -4638,97 +7859,136 @@ asn_TYPE_descriptor_t asn_DEF_value_16 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_16, - 1, /* Elements count */ - &asn_SPC_value_specs_16 /* Additional specs */ + asn_MBR_value_64, + 4, /* Elements count */ + &asn_SPC_value_specs_64 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RANfunction_ItemIEs_13[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICsubscriptionResponse_IEs_61[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_14, &asn_PER_memb_id_constr_14, memb_id_constraint_13 }, + { &asn_OER_memb_id_constr_62, &asn_PER_memb_id_constr_62, memb_id_constraint_61 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RANfunction_ItemIEs_criticality_type, - { &asn_OER_memb_criticality_constr_15, &asn_PER_memb_criticality_constr_15, memb_criticality_constraint_13 }, + select_RICsubscriptionResponse_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_63, &asn_PER_memb_criticality_constr_63, memb_criticality_constraint_61 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_16, - select_RANfunction_ItemIEs_value_type, - { &asn_OER_memb_value_constr_16, &asn_PER_memb_value_constr_16, memb_value_constraint_13 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_64, + select_RICsubscriptionResponse_IEs_value_type, + { &asn_OER_memb_value_constr_64, &asn_PER_memb_value_constr_64, memb_value_constraint_61 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RANfunction_ItemIEs_tags_13[] = { +static const ber_tlv_tag_t asn_DEF_RICsubscriptionResponse_IEs_tags_61[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RANfunction_ItemIEs_tag2el_13[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionResponse_IEs_tag2el_61[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RANfunction_ItemIEs_specs_13 = { - sizeof(struct RANfunction_ItemIEs), - offsetof(struct RANfunction_ItemIEs, _asn_ctx), - asn_MAP_RANfunction_ItemIEs_tag2el_13, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionResponse_IEs_specs_61 = { + sizeof(struct RICsubscriptionResponse_IEs), + offsetof(struct RICsubscriptionResponse_IEs, _asn_ctx), + asn_MAP_RICsubscriptionResponse_IEs_tag2el_61, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RANfunction_ItemIEs = { - "RANfunction-ItemIEs", - "RANfunction-ItemIEs", +asn_TYPE_descriptor_t asn_DEF_RICsubscriptionResponse_IEs = { + "RICsubscriptionResponse-IEs", + "RICsubscriptionResponse-IEs", &asn_OP_SEQUENCE, - asn_DEF_RANfunction_ItemIEs_tags_13, - sizeof(asn_DEF_RANfunction_ItemIEs_tags_13) - /sizeof(asn_DEF_RANfunction_ItemIEs_tags_13[0]), /* 1 */ - asn_DEF_RANfunction_ItemIEs_tags_13, /* Same as above */ - sizeof(asn_DEF_RANfunction_ItemIEs_tags_13) - /sizeof(asn_DEF_RANfunction_ItemIEs_tags_13[0]), /* 1 */ + asn_DEF_RICsubscriptionResponse_IEs_tags_61, + sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_61) + /sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_61[0]), /* 1 */ + asn_DEF_RICsubscriptionResponse_IEs_tags_61, /* Same as above */ + sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_61) + /sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_61[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RANfunction_ItemIEs_13, + asn_MBR_RICsubscriptionResponse_IEs_61, 3, /* Elements count */ - &asn_SPC_RANfunction_ItemIEs_specs_13 /* Additional specs */ + &asn_SPC_RICsubscriptionResponse_IEs_specs_61 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_20[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs__value, choice.RANfunctionID_Item), +static asn_TYPE_member_t asn_MBR_value_68[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANfunctionID_Item, + &asn_DEF_RICrequestID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionID-Item" + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.Cause), + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_Cause, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "Cause" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.CriticalityDiagnostics), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_CriticalityDiagnostics, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "CriticalityDiagnostics" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_20[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionID-Item */ +static const unsigned asn_MAP_value_to_canonical_68[] = { 1, 0, 3, 2 }; +static const unsigned asn_MAP_value_from_canonical_68[] = { 1, 0, 3, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_68[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* CriticalityDiagnostics */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* ricRequest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* ricService */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e2Node */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 2, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 2, 0, 0 } /* misc */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_20 = { - sizeof(struct RANfunctionID_ItemIEs__value), - offsetof(struct RANfunctionID_ItemIEs__value, _asn_ctx), - offsetof(struct RANfunctionID_ItemIEs__value, present), - sizeof(((struct RANfunctionID_ItemIEs__value *)0)->present), - asn_MAP_value_tag2el_20, - 1, /* Count of tags in the map */ - 0, 0, +static asn_CHOICE_specifics_t asn_SPC_value_specs_68 = { + sizeof(struct RICsubscriptionFailure_IEs__value), + offsetof(struct RICsubscriptionFailure_IEs__value, _asn_ctx), + offsetof(struct RICsubscriptionFailure_IEs__value, present), + sizeof(((struct RICsubscriptionFailure_IEs__value *)0)->present), + asn_MAP_value_tag2el_68, + 9, /* Count of tags in the map */ + asn_MAP_value_to_canonical_68, + asn_MAP_value_from_canonical_68, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_20 = { +asn_TYPE_descriptor_t asn_DEF_value_68 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -4737,97 +7997,111 @@ asn_TYPE_descriptor_t asn_DEF_value_20 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_20, - 1, /* Elements count */ - &asn_SPC_value_specs_20 /* Additional specs */ + asn_MBR_value_68, + 4, /* Elements count */ + &asn_SPC_value_specs_68 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RANfunctionID_ItemIEs_17[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICsubscriptionFailure_IEs_65[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_18, &asn_PER_memb_id_constr_18, memb_id_constraint_17 }, + { &asn_OER_memb_id_constr_66, &asn_PER_memb_id_constr_66, memb_id_constraint_65 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RANfunctionID_ItemIEs_criticality_type, - { &asn_OER_memb_criticality_constr_19, &asn_PER_memb_criticality_constr_19, memb_criticality_constraint_17 }, + select_RICsubscriptionFailure_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_67, &asn_PER_memb_criticality_constr_67, memb_criticality_constraint_65 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_20, - select_RANfunctionID_ItemIEs_value_type, - { &asn_OER_memb_value_constr_20, &asn_PER_memb_value_constr_20, memb_value_constraint_17 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_68, + select_RICsubscriptionFailure_IEs_value_type, + { &asn_OER_memb_value_constr_68, &asn_PER_memb_value_constr_68, memb_value_constraint_65 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RANfunctionID_ItemIEs_tags_17[] = { +static const ber_tlv_tag_t asn_DEF_RICsubscriptionFailure_IEs_tags_65[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RANfunctionID_ItemIEs_tag2el_17[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionFailure_IEs_tag2el_65[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_ItemIEs_specs_17 = { - sizeof(struct RANfunctionID_ItemIEs), - offsetof(struct RANfunctionID_ItemIEs, _asn_ctx), - asn_MAP_RANfunctionID_ItemIEs_tag2el_17, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionFailure_IEs_specs_65 = { + sizeof(struct RICsubscriptionFailure_IEs), + offsetof(struct RICsubscriptionFailure_IEs, _asn_ctx), + asn_MAP_RICsubscriptionFailure_IEs_tag2el_65, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RANfunctionID_ItemIEs = { - "RANfunctionID-ItemIEs", - "RANfunctionID-ItemIEs", +asn_TYPE_descriptor_t asn_DEF_RICsubscriptionFailure_IEs = { + "RICsubscriptionFailure-IEs", + "RICsubscriptionFailure-IEs", &asn_OP_SEQUENCE, - asn_DEF_RANfunctionID_ItemIEs_tags_17, - sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_17) - /sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_17[0]), /* 1 */ - asn_DEF_RANfunctionID_ItemIEs_tags_17, /* Same as above */ - sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_17) - /sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_17[0]), /* 1 */ + asn_DEF_RICsubscriptionFailure_IEs_tags_65, + sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_65) + /sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_65[0]), /* 1 */ + asn_DEF_RICsubscriptionFailure_IEs_tags_65, /* Same as above */ + sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_65) + /sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_65[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RANfunctionID_ItemIEs_17, + asn_MBR_RICsubscriptionFailure_IEs_65, 3, /* Elements count */ - &asn_SPC_RANfunctionID_ItemIEs_specs_17 /* Additional specs */ + &asn_SPC_RICsubscriptionFailure_IEs_specs_65 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_24[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs__value, choice.RANfunctionIDcause_Item), +static asn_TYPE_member_t asn_MBR_value_72[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANfunctionIDcause_Item, + &asn_DEF_RICrequestID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionIDcause-Item" + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_24[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionIDcause-Item */ +static const unsigned asn_MAP_value_to_canonical_72[] = { 1, 0 }; +static const unsigned asn_MAP_value_from_canonical_72[] = { 1, 0 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_72[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_24 = { - sizeof(struct RANfunctionIDcause_ItemIEs__value), - offsetof(struct RANfunctionIDcause_ItemIEs__value, _asn_ctx), - offsetof(struct RANfunctionIDcause_ItemIEs__value, present), - sizeof(((struct RANfunctionIDcause_ItemIEs__value *)0)->present), - asn_MAP_value_tag2el_24, - 1, /* Count of tags in the map */ - 0, 0, +static asn_CHOICE_specifics_t asn_SPC_value_specs_72 = { + sizeof(struct RICsubscriptionDeleteRequest_IEs__value), + offsetof(struct RICsubscriptionDeleteRequest_IEs__value, _asn_ctx), + offsetof(struct RICsubscriptionDeleteRequest_IEs__value, present), + sizeof(((struct RICsubscriptionDeleteRequest_IEs__value *)0)->present), + asn_MAP_value_tag2el_72, + 2, /* Count of tags in the map */ + asn_MAP_value_to_canonical_72, + asn_MAP_value_from_canonical_72, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_24 = { +asn_TYPE_descriptor_t asn_DEF_value_72 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -4836,73 +8110,74 @@ asn_TYPE_descriptor_t asn_DEF_value_24 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_24, - 1, /* Elements count */ - &asn_SPC_value_specs_24 /* Additional specs */ + asn_MBR_value_72, + 2, /* Elements count */ + &asn_SPC_value_specs_72 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RANfunctionIDcause_ItemIEs_21[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequest_IEs_69[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_22, &asn_PER_memb_id_constr_22, memb_id_constraint_21 }, + { &asn_OER_memb_id_constr_70, &asn_PER_memb_id_constr_70, memb_id_constraint_69 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RANfunctionIDcause_ItemIEs_criticality_type, - { &asn_OER_memb_criticality_constr_23, &asn_PER_memb_criticality_constr_23, memb_criticality_constraint_21 }, + select_RICsubscriptionDeleteRequest_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_71, &asn_PER_memb_criticality_constr_71, memb_criticality_constraint_69 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_24, - select_RANfunctionIDcause_ItemIEs_value_type, - { &asn_OER_memb_value_constr_24, &asn_PER_memb_value_constr_24, memb_value_constraint_21 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_72, + select_RICsubscriptionDeleteRequest_IEs_value_type, + { &asn_OER_memb_value_constr_72, &asn_PER_memb_value_constr_72, memb_value_constraint_69 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RANfunctionIDcause_ItemIEs_tags_21[] = { +static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_69[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RANfunctionIDcause_ItemIEs_tag2el_21[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteRequest_IEs_tag2el_69[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_ItemIEs_specs_21 = { - sizeof(struct RANfunctionIDcause_ItemIEs), - offsetof(struct RANfunctionIDcause_ItemIEs, _asn_ctx), - asn_MAP_RANfunctionIDcause_ItemIEs_tag2el_21, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_69 = { + sizeof(struct RICsubscriptionDeleteRequest_IEs), + offsetof(struct RICsubscriptionDeleteRequest_IEs, _asn_ctx), + asn_MAP_RICsubscriptionDeleteRequest_IEs_tag2el_69, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RANfunctionIDcause_ItemIEs = { - "RANfunctionIDcause-ItemIEs", - "RANfunctionIDcause-ItemIEs", +asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequest_IEs = { + "RICsubscriptionDeleteRequest-IEs", + "RICsubscriptionDeleteRequest-IEs", &asn_OP_SEQUENCE, - asn_DEF_RANfunctionIDcause_ItemIEs_tags_21, - sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_21) - /sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_21[0]), /* 1 */ - asn_DEF_RANfunctionIDcause_ItemIEs_tags_21, /* Same as above */ - sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_21) - /sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_21[0]), /* 1 */ + asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_69, + sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_69) + /sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_69[0]), /* 1 */ + asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_69, /* Same as above */ + sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_69) + /sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_69[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RANfunctionIDcause_ItemIEs_21, + asn_MBR_RICsubscriptionDeleteRequest_IEs_69, 3, /* Elements count */ - &asn_SPC_RANfunctionIDcause_ItemIEs_specs_21 /* Additional specs */ + &asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_69 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_28[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs__value, choice.RICrequestID), +static asn_TYPE_member_t asn_MBR_value_76[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, &asn_DEF_RICrequestID, @@ -4911,7 +8186,7 @@ static asn_TYPE_member_t asn_MBR_value_28[] = { 0, 0, /* No default value */ "RICrequestID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs__value, choice.RANfunctionID), + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs__value, choice.RANfunctionID), (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, &asn_DEF_RANfunctionID, @@ -4920,36 +8195,26 @@ static asn_TYPE_member_t asn_MBR_value_28[] = { 0, 0, /* No default value */ "RANfunctionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs__value, choice.RICsubscriptionDetails), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RICsubscriptionDetails, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICsubscriptionDetails" - }, }; -static const unsigned asn_MAP_value_to_canonical_28[] = { 1, 0, 2 }; -static const unsigned asn_MAP_value_from_canonical_28[] = { 1, 0, 2 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_28[] = { +static const unsigned asn_MAP_value_to_canonical_76[] = { 1, 0 }; +static const unsigned asn_MAP_value_from_canonical_76[] = { 1, 0 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_76[] = { { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 } /* RICsubscriptionDetails */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_28 = { - sizeof(struct RICsubscriptionRequest_IEs__value), - offsetof(struct RICsubscriptionRequest_IEs__value, _asn_ctx), - offsetof(struct RICsubscriptionRequest_IEs__value, present), - sizeof(((struct RICsubscriptionRequest_IEs__value *)0)->present), - asn_MAP_value_tag2el_28, - 3, /* Count of tags in the map */ - asn_MAP_value_to_canonical_28, - asn_MAP_value_from_canonical_28, +static asn_CHOICE_specifics_t asn_SPC_value_specs_76 = { + sizeof(struct RICsubscriptionDeleteResponse_IEs__value), + offsetof(struct RICsubscriptionDeleteResponse_IEs__value, _asn_ctx), + offsetof(struct RICsubscriptionDeleteResponse_IEs__value, present), + sizeof(((struct RICsubscriptionDeleteResponse_IEs__value *)0)->present), + asn_MAP_value_tag2el_76, + 2, /* Count of tags in the map */ + asn_MAP_value_to_canonical_76, + asn_MAP_value_from_canonical_76, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_28 = { +asn_TYPE_descriptor_t asn_DEF_value_76 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -4958,73 +8223,74 @@ asn_TYPE_descriptor_t asn_DEF_value_28 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_28, - 3, /* Elements count */ - &asn_SPC_value_specs_28 /* Additional specs */ + asn_MBR_value_76, + 2, /* Elements count */ + &asn_SPC_value_specs_76 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICsubscriptionRequest_IEs_25[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteResponse_IEs_73[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_26, &asn_PER_memb_id_constr_26, memb_id_constraint_25 }, + { &asn_OER_memb_id_constr_74, &asn_PER_memb_id_constr_74, memb_id_constraint_73 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICsubscriptionRequest_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_27, &asn_PER_memb_criticality_constr_27, memb_criticality_constraint_25 }, + select_RICsubscriptionDeleteResponse_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_75, &asn_PER_memb_criticality_constr_75, memb_criticality_constraint_73 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_28, - select_RICsubscriptionRequest_IEs_value_type, - { &asn_OER_memb_value_constr_28, &asn_PER_memb_value_constr_28, memb_value_constraint_25 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_76, + select_RICsubscriptionDeleteResponse_IEs_value_type, + { &asn_OER_memb_value_constr_76, &asn_PER_memb_value_constr_76, memb_value_constraint_73 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICsubscriptionRequest_IEs_tags_25[] = { +static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_73[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionRequest_IEs_tag2el_25[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteResponse_IEs_tag2el_73[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionRequest_IEs_specs_25 = { - sizeof(struct RICsubscriptionRequest_IEs), - offsetof(struct RICsubscriptionRequest_IEs, _asn_ctx), - asn_MAP_RICsubscriptionRequest_IEs_tag2el_25, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_73 = { + sizeof(struct RICsubscriptionDeleteResponse_IEs), + offsetof(struct RICsubscriptionDeleteResponse_IEs, _asn_ctx), + asn_MAP_RICsubscriptionDeleteResponse_IEs_tag2el_73, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICsubscriptionRequest_IEs = { - "RICsubscriptionRequest-IEs", - "RICsubscriptionRequest-IEs", +asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteResponse_IEs = { + "RICsubscriptionDeleteResponse-IEs", + "RICsubscriptionDeleteResponse-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICsubscriptionRequest_IEs_tags_25, - sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_25) - /sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_25[0]), /* 1 */ - asn_DEF_RICsubscriptionRequest_IEs_tags_25, /* Same as above */ - sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_25) - /sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_25[0]), /* 1 */ + asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_73, + sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_73) + /sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_73[0]), /* 1 */ + asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_73, /* Same as above */ + sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_73) + /sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_73[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICsubscriptionRequest_IEs_25, + asn_MBR_RICsubscriptionDeleteResponse_IEs_73, 3, /* Elements count */ - &asn_SPC_RICsubscriptionRequest_IEs_specs_25 /* Additional specs */ + &asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_73 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_32[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs__value, choice.RICrequestID), +static asn_TYPE_member_t asn_MBR_value_80[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, &asn_DEF_RICrequestID, @@ -5033,7 +8299,7 @@ static asn_TYPE_member_t asn_MBR_value_32[] = { 0, 0, /* No default value */ "RICrequestID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs__value, choice.RANfunctionID), + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs__value, choice.RANfunctionID), (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, &asn_DEF_RANfunctionID, @@ -5042,46 +8308,51 @@ static asn_TYPE_member_t asn_MBR_value_32[] = { 0, 0, /* No default value */ "RANfunctionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs__value, choice.RICaction_Admitted_List), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs__value, choice.Cause), + -1 /* Ambiguous tag (CHOICE?) */, 0, - &asn_DEF_RICaction_Admitted_List, + &asn_DEF_Cause, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICaction-Admitted-List" + "Cause" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs__value, choice.RICaction_NotAdmitted_List), + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs__value, choice.CriticalityDiagnostics), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICaction_NotAdmitted_List, + &asn_DEF_CriticalityDiagnostics, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICaction-NotAdmitted-List" + "CriticalityDiagnostics" }, }; -static const unsigned asn_MAP_value_to_canonical_32[] = { 1, 0, 2, 3 }; -static const unsigned asn_MAP_value_from_canonical_32[] = { 1, 0, 2, 3 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_32[] = { +static const unsigned asn_MAP_value_to_canonical_80[] = { 1, 0, 3, 2 }; +static const unsigned asn_MAP_value_from_canonical_80[] = { 1, 0, 3, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_80[] = { { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* RICrequestID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 1 }, /* RICaction-Admitted-List */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -2, 0 } /* RICaction-NotAdmitted-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* CriticalityDiagnostics */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* ricRequest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* ricService */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e2Node */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 2, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 2, 0, 0 } /* misc */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_32 = { - sizeof(struct RICsubscriptionResponse_IEs__value), - offsetof(struct RICsubscriptionResponse_IEs__value, _asn_ctx), - offsetof(struct RICsubscriptionResponse_IEs__value, present), - sizeof(((struct RICsubscriptionResponse_IEs__value *)0)->present), - asn_MAP_value_tag2el_32, - 4, /* Count of tags in the map */ - asn_MAP_value_to_canonical_32, - asn_MAP_value_from_canonical_32, +static asn_CHOICE_specifics_t asn_SPC_value_specs_80 = { + sizeof(struct RICsubscriptionDeleteFailure_IEs__value), + offsetof(struct RICsubscriptionDeleteFailure_IEs__value, _asn_ctx), + offsetof(struct RICsubscriptionDeleteFailure_IEs__value, present), + sizeof(((struct RICsubscriptionDeleteFailure_IEs__value *)0)->present), + asn_MAP_value_tag2el_80, + 9, /* Count of tags in the map */ + asn_MAP_value_to_canonical_80, + asn_MAP_value_from_canonical_80, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_32 = { +asn_TYPE_descriptor_t asn_DEF_value_80 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -5090,130 +8361,98 @@ asn_TYPE_descriptor_t asn_DEF_value_32 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_32, + asn_MBR_value_80, 4, /* Elements count */ - &asn_SPC_value_specs_32 /* Additional specs */ + &asn_SPC_value_specs_80 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICsubscriptionResponse_IEs_29[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteFailure_IEs_77[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_30, &asn_PER_memb_id_constr_30, memb_id_constraint_29 }, + { &asn_OER_memb_id_constr_78, &asn_PER_memb_id_constr_78, memb_id_constraint_77 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICsubscriptionResponse_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_31, &asn_PER_memb_criticality_constr_31, memb_criticality_constraint_29 }, + select_RICsubscriptionDeleteFailure_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_79, &asn_PER_memb_criticality_constr_79, memb_criticality_constraint_77 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_32, - select_RICsubscriptionResponse_IEs_value_type, - { &asn_OER_memb_value_constr_32, &asn_PER_memb_value_constr_32, memb_value_constraint_29 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_80, + select_RICsubscriptionDeleteFailure_IEs_value_type, + { &asn_OER_memb_value_constr_80, &asn_PER_memb_value_constr_80, memb_value_constraint_77 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICsubscriptionResponse_IEs_tags_29[] = { +static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_77[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionResponse_IEs_tag2el_29[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteFailure_IEs_tag2el_77[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionResponse_IEs_specs_29 = { - sizeof(struct RICsubscriptionResponse_IEs), - offsetof(struct RICsubscriptionResponse_IEs, _asn_ctx), - asn_MAP_RICsubscriptionResponse_IEs_tag2el_29, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_77 = { + sizeof(struct RICsubscriptionDeleteFailure_IEs), + offsetof(struct RICsubscriptionDeleteFailure_IEs, _asn_ctx), + asn_MAP_RICsubscriptionDeleteFailure_IEs_tag2el_77, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICsubscriptionResponse_IEs = { - "RICsubscriptionResponse-IEs", - "RICsubscriptionResponse-IEs", +asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteFailure_IEs = { + "RICsubscriptionDeleteFailure-IEs", + "RICsubscriptionDeleteFailure-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICsubscriptionResponse_IEs_tags_29, - sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_29) - /sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_29[0]), /* 1 */ - asn_DEF_RICsubscriptionResponse_IEs_tags_29, /* Same as above */ - sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_29) - /sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_29[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICsubscriptionResponse_IEs_29, - 3, /* Elements count */ - &asn_SPC_RICsubscriptionResponse_IEs_specs_29 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_value_36[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.RICrequestID), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RICrequestID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICrequestID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.RANfunctionID), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RANfunctionID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RANfunctionID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.RICaction_NotAdmitted_List), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RICaction_NotAdmitted_List, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICaction-NotAdmitted-List" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.CriticalityDiagnostics), + asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_77, + sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_77) + /sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_77[0]), /* 1 */ + asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_77, /* Same as above */ + sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_77) + /sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_77[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RICsubscriptionDeleteFailure_IEs_77, + 3, /* Elements count */ + &asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_77 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_value_84[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired_IEs__value, choice.RICsubscription_List_withCause), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_CriticalityDiagnostics, + &asn_DEF_RICsubscription_List_withCause, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "CriticalityDiagnostics" + "RICsubscription-List-withCause" }, }; -static const unsigned asn_MAP_value_to_canonical_36[] = { 1, 0, 2, 3 }; -static const unsigned asn_MAP_value_from_canonical_36[] = { 1, 0, 2, 3 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_36[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* RICrequestID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 1 }, /* RICaction-NotAdmitted-List */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -2, 0 } /* CriticalityDiagnostics */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_84[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICsubscription-List-withCause */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_36 = { - sizeof(struct RICsubscriptionFailure_IEs__value), - offsetof(struct RICsubscriptionFailure_IEs__value, _asn_ctx), - offsetof(struct RICsubscriptionFailure_IEs__value, present), - sizeof(((struct RICsubscriptionFailure_IEs__value *)0)->present), - asn_MAP_value_tag2el_36, - 4, /* Count of tags in the map */ - asn_MAP_value_to_canonical_36, - asn_MAP_value_from_canonical_36, +static asn_CHOICE_specifics_t asn_SPC_value_specs_84 = { + sizeof(struct RICsubscriptionDeleteRequired_IEs__value), + offsetof(struct RICsubscriptionDeleteRequired_IEs__value, _asn_ctx), + offsetof(struct RICsubscriptionDeleteRequired_IEs__value, present), + sizeof(((struct RICsubscriptionDeleteRequired_IEs__value *)0)->present), + asn_MAP_value_tag2el_84, + 1, /* Count of tags in the map */ + 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_36 = { +asn_TYPE_descriptor_t asn_DEF_value_84 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -5222,73 +8461,74 @@ asn_TYPE_descriptor_t asn_DEF_value_36 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_36, - 4, /* Elements count */ - &asn_SPC_value_specs_36 /* Additional specs */ + asn_MBR_value_84, + 1, /* Elements count */ + &asn_SPC_value_specs_84 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICsubscriptionFailure_IEs_33[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequired_IEs_81[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_34, &asn_PER_memb_id_constr_34, memb_id_constraint_33 }, + { &asn_OER_memb_id_constr_82, &asn_PER_memb_id_constr_82, memb_id_constraint_81 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICsubscriptionFailure_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_35, &asn_PER_memb_criticality_constr_35, memb_criticality_constraint_33 }, + select_RICsubscriptionDeleteRequired_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_83, &asn_PER_memb_criticality_constr_83, memb_criticality_constraint_81 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_36, - select_RICsubscriptionFailure_IEs_value_type, - { &asn_OER_memb_value_constr_36, &asn_PER_memb_value_constr_36, memb_value_constraint_33 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_84, + select_RICsubscriptionDeleteRequired_IEs_value_type, + { &asn_OER_memb_value_constr_84, &asn_PER_memb_value_constr_84, memb_value_constraint_81 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICsubscriptionFailure_IEs_tags_33[] = { +static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_81[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionFailure_IEs_tag2el_33[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteRequired_IEs_tag2el_81[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionFailure_IEs_specs_33 = { - sizeof(struct RICsubscriptionFailure_IEs), - offsetof(struct RICsubscriptionFailure_IEs, _asn_ctx), - asn_MAP_RICsubscriptionFailure_IEs_tag2el_33, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequired_IEs_specs_81 = { + sizeof(struct RICsubscriptionDeleteRequired_IEs), + offsetof(struct RICsubscriptionDeleteRequired_IEs, _asn_ctx), + asn_MAP_RICsubscriptionDeleteRequired_IEs_tag2el_81, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICsubscriptionFailure_IEs = { - "RICsubscriptionFailure-IEs", - "RICsubscriptionFailure-IEs", +asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequired_IEs = { + "RICsubscriptionDeleteRequired-IEs", + "RICsubscriptionDeleteRequired-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICsubscriptionFailure_IEs_tags_33, - sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_33) - /sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_33[0]), /* 1 */ - asn_DEF_RICsubscriptionFailure_IEs_tags_33, /* Same as above */ - sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_33) - /sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_33[0]), /* 1 */ + asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_81, + sizeof(asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_81) + /sizeof(asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_81[0]), /* 1 */ + asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_81, /* Same as above */ + sizeof(asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_81) + /sizeof(asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_81[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICsubscriptionFailure_IEs_33, + asn_MBR_RICsubscriptionDeleteRequired_IEs_81, 3, /* Elements count */ - &asn_SPC_RICsubscriptionFailure_IEs_specs_33 /* Additional specs */ + &asn_SPC_RICsubscriptionDeleteRequired_IEs_specs_81 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_40[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs__value, choice.RICrequestID), +static asn_TYPE_member_t asn_MBR_value_88[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, &asn_DEF_RICrequestID, @@ -5297,7 +8537,7 @@ static asn_TYPE_member_t asn_MBR_value_40[] = { 0, 0, /* No default value */ "RICrequestID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs__value, choice.RANfunctionID), + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RANfunctionID), (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, &asn_DEF_RANfunctionID, @@ -5306,26 +8546,86 @@ static asn_TYPE_member_t asn_MBR_value_40[] = { 0, 0, /* No default value */ "RANfunctionID" }, + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RICactionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICactionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICindicationSN), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_RICindicationSN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICindicationSN" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICindicationType), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_RICindicationType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICindicationType" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICindicationHeader), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_RICindicationHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICindicationHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICindicationMessage), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_RICindicationMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICindicationMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICcallProcessID), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_RICcallProcessID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcallProcessID" + }, }; -static const unsigned asn_MAP_value_to_canonical_40[] = { 1, 0 }; -static const unsigned asn_MAP_value_from_canonical_40[] = { 1, 0 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_40[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ +static const unsigned asn_MAP_value_to_canonical_88[] = { 1, 2, 3, 5, 6, 7, 4, 0 }; +static const unsigned asn_MAP_value_from_canonical_88[] = { 7, 0, 1, 2, 6, 3, 4, 5 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_88[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 2 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 2, -1, 1 }, /* RICactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 3, -2, 0 }, /* RICindicationSN */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 5, 0, 2 }, /* RICindicationHeader */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 6, -1, 1 }, /* RICindicationMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 7, -2, 0 }, /* RICcallProcessID */ + { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 4, 0, 0 }, /* RICindicationType */ { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_40 = { - sizeof(struct RICsubscriptionDeleteRequest_IEs__value), - offsetof(struct RICsubscriptionDeleteRequest_IEs__value, _asn_ctx), - offsetof(struct RICsubscriptionDeleteRequest_IEs__value, present), - sizeof(((struct RICsubscriptionDeleteRequest_IEs__value *)0)->present), - asn_MAP_value_tag2el_40, - 2, /* Count of tags in the map */ - asn_MAP_value_to_canonical_40, - asn_MAP_value_from_canonical_40, +static asn_CHOICE_specifics_t asn_SPC_value_specs_88 = { + sizeof(struct RICindication_IEs__value), + offsetof(struct RICindication_IEs__value, _asn_ctx), + offsetof(struct RICindication_IEs__value, present), + sizeof(((struct RICindication_IEs__value *)0)->present), + asn_MAP_value_tag2el_88, + 8, /* Count of tags in the map */ + asn_MAP_value_to_canonical_88, + asn_MAP_value_from_canonical_88, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_40 = { +asn_TYPE_descriptor_t asn_DEF_value_88 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -5334,73 +8634,74 @@ asn_TYPE_descriptor_t asn_DEF_value_40 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_40, - 2, /* Elements count */ - &asn_SPC_value_specs_40 /* Additional specs */ + asn_MBR_value_88, + 8, /* Elements count */ + &asn_SPC_value_specs_88 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequest_IEs_37[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICindication_IEs_85[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_38, &asn_PER_memb_id_constr_38, memb_id_constraint_37 }, + { &asn_OER_memb_id_constr_86, &asn_PER_memb_id_constr_86, memb_id_constraint_85 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICsubscriptionDeleteRequest_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_39, &asn_PER_memb_criticality_constr_39, memb_criticality_constraint_37 }, + select_RICindication_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_87, &asn_PER_memb_criticality_constr_87, memb_criticality_constraint_85 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_40, - select_RICsubscriptionDeleteRequest_IEs_value_type, - { &asn_OER_memb_value_constr_40, &asn_PER_memb_value_constr_40, memb_value_constraint_37 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_88, + select_RICindication_IEs_value_type, + { &asn_OER_memb_value_constr_88, &asn_PER_memb_value_constr_88, memb_value_constraint_85 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_37[] = { +static const ber_tlv_tag_t asn_DEF_RICindication_IEs_tags_85[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteRequest_IEs_tag2el_37[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICindication_IEs_tag2el_85[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_37 = { - sizeof(struct RICsubscriptionDeleteRequest_IEs), - offsetof(struct RICsubscriptionDeleteRequest_IEs, _asn_ctx), - asn_MAP_RICsubscriptionDeleteRequest_IEs_tag2el_37, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICindication_IEs_specs_85 = { + sizeof(struct RICindication_IEs), + offsetof(struct RICindication_IEs, _asn_ctx), + asn_MAP_RICindication_IEs_tag2el_85, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequest_IEs = { - "RICsubscriptionDeleteRequest-IEs", - "RICsubscriptionDeleteRequest-IEs", +asn_TYPE_descriptor_t asn_DEF_RICindication_IEs = { + "RICindication-IEs", + "RICindication-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_37, - sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_37) - /sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_37[0]), /* 1 */ - asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_37, /* Same as above */ - sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_37) - /sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_37[0]), /* 1 */ + asn_DEF_RICindication_IEs_tags_85, + sizeof(asn_DEF_RICindication_IEs_tags_85) + /sizeof(asn_DEF_RICindication_IEs_tags_85[0]), /* 1 */ + asn_DEF_RICindication_IEs_tags_85, /* Same as above */ + sizeof(asn_DEF_RICindication_IEs_tags_85) + /sizeof(asn_DEF_RICindication_IEs_tags_85[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICsubscriptionDeleteRequest_IEs_37, + asn_MBR_RICindication_IEs_85, 3, /* Elements count */ - &asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_37 /* Additional specs */ + &asn_SPC_RICindication_IEs_specs_85 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_44[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs__value, choice.RICrequestID), +static asn_TYPE_member_t asn_MBR_value_92[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, &asn_DEF_RICrequestID, @@ -5409,7 +8710,7 @@ static asn_TYPE_member_t asn_MBR_value_44[] = { 0, 0, /* No default value */ "RICrequestID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs__value, choice.RANfunctionID), + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RANfunctionID), (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, &asn_DEF_RANfunctionID, @@ -5418,26 +8719,66 @@ static asn_TYPE_member_t asn_MBR_value_44[] = { 0, 0, /* No default value */ "RANfunctionID" }, + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICcallProcessID), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_RICcallProcessID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcallProcessID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICcontrolHeader), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_RICcontrolHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcontrolHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICcontrolMessage), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_RICcontrolMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcontrolMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICcontrolAckRequest), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_RICcontrolAckRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcontrolAckRequest" + }, }; -static const unsigned asn_MAP_value_to_canonical_44[] = { 1, 0 }; -static const unsigned asn_MAP_value_from_canonical_44[] = { 1, 0 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_44[] = { +static const unsigned asn_MAP_value_to_canonical_92[] = { 1, 2, 3, 4, 5, 0 }; +static const unsigned asn_MAP_value_from_canonical_92[] = { 5, 0, 1, 2, 3, 4 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_92[] = { { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 2 }, /* RICcallProcessID */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 3, -1, 1 }, /* RICcontrolHeader */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -2, 0 }, /* RICcontrolMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 5, 0, 0 }, /* RICcontrolAckRequest */ { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_44 = { - sizeof(struct RICsubscriptionDeleteResponse_IEs__value), - offsetof(struct RICsubscriptionDeleteResponse_IEs__value, _asn_ctx), - offsetof(struct RICsubscriptionDeleteResponse_IEs__value, present), - sizeof(((struct RICsubscriptionDeleteResponse_IEs__value *)0)->present), - asn_MAP_value_tag2el_44, - 2, /* Count of tags in the map */ - asn_MAP_value_to_canonical_44, - asn_MAP_value_from_canonical_44, +static asn_CHOICE_specifics_t asn_SPC_value_specs_92 = { + sizeof(struct RICcontrolRequest_IEs__value), + offsetof(struct RICcontrolRequest_IEs__value, _asn_ctx), + offsetof(struct RICcontrolRequest_IEs__value, present), + sizeof(((struct RICcontrolRequest_IEs__value *)0)->present), + asn_MAP_value_tag2el_92, + 6, /* Count of tags in the map */ + asn_MAP_value_to_canonical_92, + asn_MAP_value_from_canonical_92, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_44 = { +asn_TYPE_descriptor_t asn_DEF_value_92 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -5446,73 +8787,74 @@ asn_TYPE_descriptor_t asn_DEF_value_44 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_44, - 2, /* Elements count */ - &asn_SPC_value_specs_44 /* Additional specs */ + asn_MBR_value_92, + 6, /* Elements count */ + &asn_SPC_value_specs_92 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteResponse_IEs_41[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICcontrolRequest_IEs_89[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_42, &asn_PER_memb_id_constr_42, memb_id_constraint_41 }, + { &asn_OER_memb_id_constr_90, &asn_PER_memb_id_constr_90, memb_id_constraint_89 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICsubscriptionDeleteResponse_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_43, &asn_PER_memb_criticality_constr_43, memb_criticality_constraint_41 }, + select_RICcontrolRequest_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_91, &asn_PER_memb_criticality_constr_91, memb_criticality_constraint_89 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_44, - select_RICsubscriptionDeleteResponse_IEs_value_type, - { &asn_OER_memb_value_constr_44, &asn_PER_memb_value_constr_44, memb_value_constraint_41 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_92, + select_RICcontrolRequest_IEs_value_type, + { &asn_OER_memb_value_constr_92, &asn_PER_memb_value_constr_92, memb_value_constraint_89 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_41[] = { +static const ber_tlv_tag_t asn_DEF_RICcontrolRequest_IEs_tags_89[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteResponse_IEs_tag2el_41[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICcontrolRequest_IEs_tag2el_89[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_41 = { - sizeof(struct RICsubscriptionDeleteResponse_IEs), - offsetof(struct RICsubscriptionDeleteResponse_IEs, _asn_ctx), - asn_MAP_RICsubscriptionDeleteResponse_IEs_tag2el_41, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICcontrolRequest_IEs_specs_89 = { + sizeof(struct RICcontrolRequest_IEs), + offsetof(struct RICcontrolRequest_IEs, _asn_ctx), + asn_MAP_RICcontrolRequest_IEs_tag2el_89, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteResponse_IEs = { - "RICsubscriptionDeleteResponse-IEs", - "RICsubscriptionDeleteResponse-IEs", +asn_TYPE_descriptor_t asn_DEF_RICcontrolRequest_IEs = { + "RICcontrolRequest-IEs", + "RICcontrolRequest-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_41, - sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_41) - /sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_41[0]), /* 1 */ - asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_41, /* Same as above */ - sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_41) - /sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_41[0]), /* 1 */ + asn_DEF_RICcontrolRequest_IEs_tags_89, + sizeof(asn_DEF_RICcontrolRequest_IEs_tags_89) + /sizeof(asn_DEF_RICcontrolRequest_IEs_tags_89[0]), /* 1 */ + asn_DEF_RICcontrolRequest_IEs_tags_89, /* Same as above */ + sizeof(asn_DEF_RICcontrolRequest_IEs_tags_89) + /sizeof(asn_DEF_RICcontrolRequest_IEs_tags_89[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICsubscriptionDeleteResponse_IEs_41, + asn_MBR_RICcontrolRequest_IEs_89, 3, /* Elements count */ - &asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_41 /* Additional specs */ + &asn_SPC_RICcontrolRequest_IEs_specs_89 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_48[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs__value, choice.RICrequestID), +static asn_TYPE_member_t asn_MBR_value_96[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, &asn_DEF_RICrequestID, @@ -5521,7 +8863,7 @@ static asn_TYPE_member_t asn_MBR_value_48[] = { 0, 0, /* No default value */ "RICrequestID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs__value, choice.RANfunctionID), + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RANfunctionID), (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, &asn_DEF_RANfunctionID, @@ -5530,50 +8872,46 @@ static asn_TYPE_member_t asn_MBR_value_48[] = { 0, 0, /* No default value */ "RANfunctionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs__value, choice.Cause), - -1 /* Ambiguous tag (CHOICE?) */, + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICcallProcessID), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, - &asn_DEF_Cause, + &asn_DEF_RICcallProcessID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "Cause" + "RICcallProcessID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs__value, choice.CriticalityDiagnostics), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICcontrolOutcome), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, - &asn_DEF_CriticalityDiagnostics, + &asn_DEF_RICcontrolOutcome, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "CriticalityDiagnostics" + "RICcontrolOutcome" }, }; -static const unsigned asn_MAP_value_to_canonical_48[] = { 1, 0, 3, 2 }; -static const unsigned asn_MAP_value_from_canonical_48[] = { 1, 0, 3, 2 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_48[] = { +static const unsigned asn_MAP_value_to_canonical_96[] = { 1, 2, 3, 0 }; +static const unsigned asn_MAP_value_from_canonical_96[] = { 3, 0, 1, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_96[] = { { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* CriticalityDiagnostics */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* ricRequest */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* ricService */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* transport */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* protocol */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 2, 0, 0 } /* misc */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 1 }, /* RICcallProcessID */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 3, -1, 0 }, /* RICcontrolOutcome */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_48 = { - sizeof(struct RICsubscriptionDeleteFailure_IEs__value), - offsetof(struct RICsubscriptionDeleteFailure_IEs__value, _asn_ctx), - offsetof(struct RICsubscriptionDeleteFailure_IEs__value, present), - sizeof(((struct RICsubscriptionDeleteFailure_IEs__value *)0)->present), - asn_MAP_value_tag2el_48, - 8, /* Count of tags in the map */ - asn_MAP_value_to_canonical_48, - asn_MAP_value_from_canonical_48, +static asn_CHOICE_specifics_t asn_SPC_value_specs_96 = { + sizeof(struct RICcontrolAcknowledge_IEs__value), + offsetof(struct RICcontrolAcknowledge_IEs__value, _asn_ctx), + offsetof(struct RICcontrolAcknowledge_IEs__value, present), + sizeof(((struct RICcontrolAcknowledge_IEs__value *)0)->present), + asn_MAP_value_tag2el_96, + 4, /* Count of tags in the map */ + asn_MAP_value_to_canonical_96, + asn_MAP_value_from_canonical_96, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_48 = { +asn_TYPE_descriptor_t asn_DEF_value_96 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -5582,73 +8920,74 @@ asn_TYPE_descriptor_t asn_DEF_value_48 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_48, + asn_MBR_value_96, 4, /* Elements count */ - &asn_SPC_value_specs_48 /* Additional specs */ + &asn_SPC_value_specs_96 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteFailure_IEs_45[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICcontrolAcknowledge_IEs_93[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_46, &asn_PER_memb_id_constr_46, memb_id_constraint_45 }, + { &asn_OER_memb_id_constr_94, &asn_PER_memb_id_constr_94, memb_id_constraint_93 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICsubscriptionDeleteFailure_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_47, &asn_PER_memb_criticality_constr_47, memb_criticality_constraint_45 }, + select_RICcontrolAcknowledge_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_95, &asn_PER_memb_criticality_constr_95, memb_criticality_constraint_93 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_48, - select_RICsubscriptionDeleteFailure_IEs_value_type, - { &asn_OER_memb_value_constr_48, &asn_PER_memb_value_constr_48, memb_value_constraint_45 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_96, + select_RICcontrolAcknowledge_IEs_value_type, + { &asn_OER_memb_value_constr_96, &asn_PER_memb_value_constr_96, memb_value_constraint_93 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_45[] = { +static const ber_tlv_tag_t asn_DEF_RICcontrolAcknowledge_IEs_tags_93[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteFailure_IEs_tag2el_45[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICcontrolAcknowledge_IEs_tag2el_93[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_45 = { - sizeof(struct RICsubscriptionDeleteFailure_IEs), - offsetof(struct RICsubscriptionDeleteFailure_IEs, _asn_ctx), - asn_MAP_RICsubscriptionDeleteFailure_IEs_tag2el_45, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICcontrolAcknowledge_IEs_specs_93 = { + sizeof(struct RICcontrolAcknowledge_IEs), + offsetof(struct RICcontrolAcknowledge_IEs, _asn_ctx), + asn_MAP_RICcontrolAcknowledge_IEs_tag2el_93, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteFailure_IEs = { - "RICsubscriptionDeleteFailure-IEs", - "RICsubscriptionDeleteFailure-IEs", +asn_TYPE_descriptor_t asn_DEF_RICcontrolAcknowledge_IEs = { + "RICcontrolAcknowledge-IEs", + "RICcontrolAcknowledge-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_45, - sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_45) - /sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_45[0]), /* 1 */ - asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_45, /* Same as above */ - sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_45) - /sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_45[0]), /* 1 */ + asn_DEF_RICcontrolAcknowledge_IEs_tags_93, + sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_93) + /sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_93[0]), /* 1 */ + asn_DEF_RICcontrolAcknowledge_IEs_tags_93, /* Same as above */ + sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_93) + /sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_93[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICsubscriptionDeleteFailure_IEs_45, + asn_MBR_RICcontrolAcknowledge_IEs_93, 3, /* Elements count */ - &asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_45 /* Additional specs */ + &asn_SPC_RICcontrolAcknowledge_IEs_specs_93 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_52[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICrequestID), +static asn_TYPE_member_t asn_MBR_value_100[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.RICrequestID), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, &asn_DEF_RICrequestID, @@ -5657,7 +8996,7 @@ static asn_TYPE_member_t asn_MBR_value_52[] = { 0, 0, /* No default value */ "RICrequestID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RANfunctionID), + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.RANfunctionID), (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, &asn_DEF_RANfunctionID, @@ -5666,86 +9005,61 @@ static asn_TYPE_member_t asn_MBR_value_52[] = { 0, 0, /* No default value */ "RANfunctionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICactionID), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RICactionID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICactionID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICindicationSN), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, - &asn_DEF_RICindicationSN, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICindicationSN" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICindicationType), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, - &asn_DEF_RICindicationType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICindicationType" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICindicationHeader), + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.RICcallProcessID), (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, - &asn_DEF_RICindicationHeader, + &asn_DEF_RICcallProcessID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICindicationHeader" + "RICcallProcessID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICindicationMessage), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.Cause), + -1 /* Ambiguous tag (CHOICE?) */, 0, - &asn_DEF_RICindicationMessage, + &asn_DEF_Cause, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICindicationMessage" + "Cause" }, - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICcallProcessID), + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.RICcontrolOutcome), (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 0, - &asn_DEF_RICcallProcessID, + &asn_DEF_RICcontrolOutcome, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcallProcessID" + "RICcontrolOutcome" }, }; -static const unsigned asn_MAP_value_to_canonical_52[] = { 1, 2, 3, 5, 6, 7, 4, 0 }; -static const unsigned asn_MAP_value_from_canonical_52[] = { 7, 0, 1, 2, 6, 3, 4, 5 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_52[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 2 }, /* RANfunctionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 2, -1, 1 }, /* RICactionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 3, -2, 0 }, /* RICindicationSN */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 5, 0, 2 }, /* RICindicationHeader */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 6, -1, 1 }, /* RICindicationMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 7, -2, 0 }, /* RICcallProcessID */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 4, 0, 0 }, /* RICindicationType */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */ +static const unsigned asn_MAP_value_to_canonical_100[] = { 1, 2, 4, 0, 3 }; +static const unsigned asn_MAP_value_from_canonical_100[] = { 3, 0, 1, 4, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_100[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 1 }, /* RICcallProcessID */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -1, 0 }, /* RICcontrolOutcome */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 }, /* RICrequestID */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* ricRequest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* ricService */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* e2Node */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 3, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 3, 0, 0 } /* misc */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_52 = { - sizeof(struct RICindication_IEs__value), - offsetof(struct RICindication_IEs__value, _asn_ctx), - offsetof(struct RICindication_IEs__value, present), - sizeof(((struct RICindication_IEs__value *)0)->present), - asn_MAP_value_tag2el_52, - 8, /* Count of tags in the map */ - asn_MAP_value_to_canonical_52, - asn_MAP_value_from_canonical_52, +static asn_CHOICE_specifics_t asn_SPC_value_specs_100 = { + sizeof(struct RICcontrolFailure_IEs__value), + offsetof(struct RICcontrolFailure_IEs__value, _asn_ctx), + offsetof(struct RICcontrolFailure_IEs__value, present), + sizeof(((struct RICcontrolFailure_IEs__value *)0)->present), + asn_MAP_value_tag2el_100, + 10, /* Count of tags in the map */ + asn_MAP_value_to_canonical_100, + asn_MAP_value_from_canonical_100, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_52 = { +asn_TYPE_descriptor_t asn_DEF_value_100 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -5754,150 +9068,146 @@ asn_TYPE_descriptor_t asn_DEF_value_52 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_52, - 8, /* Elements count */ - &asn_SPC_value_specs_52 /* Additional specs */ + asn_MBR_value_100, + 5, /* Elements count */ + &asn_SPC_value_specs_100 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICindication_IEs_49[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICcontrolFailure_IEs_97[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_50, &asn_PER_memb_id_constr_50, memb_id_constraint_49 }, + { &asn_OER_memb_id_constr_98, &asn_PER_memb_id_constr_98, memb_id_constraint_97 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICindication_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_51, &asn_PER_memb_criticality_constr_51, memb_criticality_constraint_49 }, + select_RICcontrolFailure_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_99, &asn_PER_memb_criticality_constr_99, memb_criticality_constraint_97 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_52, - select_RICindication_IEs_value_type, - { &asn_OER_memb_value_constr_52, &asn_PER_memb_value_constr_52, memb_value_constraint_49 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_100, + select_RICcontrolFailure_IEs_value_type, + { &asn_OER_memb_value_constr_100, &asn_PER_memb_value_constr_100, memb_value_constraint_97 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICindication_IEs_tags_49[] = { +static const ber_tlv_tag_t asn_DEF_RICcontrolFailure_IEs_tags_97[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICindication_IEs_tag2el_49[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICcontrolFailure_IEs_tag2el_97[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICindication_IEs_specs_49 = { - sizeof(struct RICindication_IEs), - offsetof(struct RICindication_IEs, _asn_ctx), - asn_MAP_RICindication_IEs_tag2el_49, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICcontrolFailure_IEs_specs_97 = { + sizeof(struct RICcontrolFailure_IEs), + offsetof(struct RICcontrolFailure_IEs, _asn_ctx), + asn_MAP_RICcontrolFailure_IEs_tag2el_97, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICindication_IEs = { - "RICindication-IEs", - "RICindication-IEs", +asn_TYPE_descriptor_t asn_DEF_RICcontrolFailure_IEs = { + "RICcontrolFailure-IEs", + "RICcontrolFailure-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICindication_IEs_tags_49, - sizeof(asn_DEF_RICindication_IEs_tags_49) - /sizeof(asn_DEF_RICindication_IEs_tags_49[0]), /* 1 */ - asn_DEF_RICindication_IEs_tags_49, /* Same as above */ - sizeof(asn_DEF_RICindication_IEs_tags_49) - /sizeof(asn_DEF_RICindication_IEs_tags_49[0]), /* 1 */ + asn_DEF_RICcontrolFailure_IEs_tags_97, + sizeof(asn_DEF_RICcontrolFailure_IEs_tags_97) + /sizeof(asn_DEF_RICcontrolFailure_IEs_tags_97[0]), /* 1 */ + asn_DEF_RICcontrolFailure_IEs_tags_97, /* Same as above */ + sizeof(asn_DEF_RICcontrolFailure_IEs_tags_97) + /sizeof(asn_DEF_RICcontrolFailure_IEs_tags_97[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICindication_IEs_49, + asn_MBR_RICcontrolFailure_IEs_97, 3, /* Elements count */ - &asn_SPC_RICindication_IEs_specs_49 /* Additional specs */ + &asn_SPC_RICcontrolFailure_IEs_specs_97 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_56[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICrequestID), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RICrequestID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICrequestID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RANfunctionID), +static asn_TYPE_member_t asn_MBR_value_104[] = { + { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.TransactionID), (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, - &asn_DEF_RANfunctionID, + &asn_DEF_TransactionID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionID" + "TransactionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICcallProcessID), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICcallProcessID, + &asn_DEF_RICrequestID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcallProcessID" + "RICrequestID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICcontrolHeader), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, - &asn_DEF_RICcontrolHeader, + &asn_DEF_RANfunctionID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcontrolHeader" + "RANfunctionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICcontrolMessage), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.Cause), + -1 /* Ambiguous tag (CHOICE?) */, 0, - &asn_DEF_RICcontrolMessage, + &asn_DEF_Cause, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcontrolMessage" + "Cause" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICcontrolAckRequest), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.CriticalityDiagnostics), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICcontrolAckRequest, + &asn_DEF_CriticalityDiagnostics, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcontrolAckRequest" + "CriticalityDiagnostics" }, }; -static const unsigned asn_MAP_value_to_canonical_56[] = { 1, 2, 3, 4, 5, 0 }; -static const unsigned asn_MAP_value_from_canonical_56[] = { 5, 0, 1, 2, 3, 4 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_56[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 2 }, /* RICcallProcessID */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 3, -1, 1 }, /* RICcontrolHeader */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -2, 0 }, /* RICcontrolMessage */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 5, 0, 0 }, /* RICcontrolAckRequest */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */ +static const unsigned asn_MAP_value_to_canonical_104[] = { 0, 2, 1, 4, 3 }; +static const unsigned asn_MAP_value_from_canonical_104[] = { 0, 2, 1, 4, 3 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_104[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 1 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 2, -1, 0 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 1 }, /* RICrequestID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -1, 0 }, /* CriticalityDiagnostics */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* ricRequest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* ricService */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* e2Node */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 3, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 3, 0, 0 } /* misc */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_56 = { - sizeof(struct RICcontrolRequest_IEs__value), - offsetof(struct RICcontrolRequest_IEs__value, _asn_ctx), - offsetof(struct RICcontrolRequest_IEs__value, present), - sizeof(((struct RICcontrolRequest_IEs__value *)0)->present), - asn_MAP_value_tag2el_56, - 6, /* Count of tags in the map */ - asn_MAP_value_to_canonical_56, - asn_MAP_value_from_canonical_56, +static asn_CHOICE_specifics_t asn_SPC_value_specs_104 = { + sizeof(struct ErrorIndication_IEs__value), + offsetof(struct ErrorIndication_IEs__value, _asn_ctx), + offsetof(struct ErrorIndication_IEs__value, present), + sizeof(((struct ErrorIndication_IEs__value *)0)->present), + asn_MAP_value_tag2el_104, + 10, /* Count of tags in the map */ + asn_MAP_value_to_canonical_104, + asn_MAP_value_from_canonical_104, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_56 = { +asn_TYPE_descriptor_t asn_DEF_value_104 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -5906,140 +9216,134 @@ asn_TYPE_descriptor_t asn_DEF_value_56 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_56, - 6, /* Elements count */ - &asn_SPC_value_specs_56 /* Additional specs */ + asn_MBR_value_104, + 5, /* Elements count */ + &asn_SPC_value_specs_104 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICcontrolRequest_IEs_53[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_ErrorIndication_IEs_101[] = { + { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_54, &asn_PER_memb_id_constr_54, memb_id_constraint_53 }, + { &asn_OER_memb_id_constr_102, &asn_PER_memb_id_constr_102, memb_id_constraint_101 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICcontrolRequest_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_55, &asn_PER_memb_criticality_constr_55, memb_criticality_constraint_53 }, + select_ErrorIndication_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_103, &asn_PER_memb_criticality_constr_103, memb_criticality_constraint_101 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_56, - select_RICcontrolRequest_IEs_value_type, - { &asn_OER_memb_value_constr_56, &asn_PER_memb_value_constr_56, memb_value_constraint_53 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_104, + select_ErrorIndication_IEs_value_type, + { &asn_OER_memb_value_constr_104, &asn_PER_memb_value_constr_104, memb_value_constraint_101 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICcontrolRequest_IEs_tags_53[] = { +static const ber_tlv_tag_t asn_DEF_ErrorIndication_IEs_tags_101[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICcontrolRequest_IEs_tag2el_53[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_ErrorIndication_IEs_tag2el_101[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICcontrolRequest_IEs_specs_53 = { - sizeof(struct RICcontrolRequest_IEs), - offsetof(struct RICcontrolRequest_IEs, _asn_ctx), - asn_MAP_RICcontrolRequest_IEs_tag2el_53, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_ErrorIndication_IEs_specs_101 = { + sizeof(struct ErrorIndication_IEs), + offsetof(struct ErrorIndication_IEs, _asn_ctx), + asn_MAP_ErrorIndication_IEs_tag2el_101, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICcontrolRequest_IEs = { - "RICcontrolRequest-IEs", - "RICcontrolRequest-IEs", +asn_TYPE_descriptor_t asn_DEF_ErrorIndication_IEs = { + "ErrorIndication-IEs", + "ErrorIndication-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICcontrolRequest_IEs_tags_53, - sizeof(asn_DEF_RICcontrolRequest_IEs_tags_53) - /sizeof(asn_DEF_RICcontrolRequest_IEs_tags_53[0]), /* 1 */ - asn_DEF_RICcontrolRequest_IEs_tags_53, /* Same as above */ - sizeof(asn_DEF_RICcontrolRequest_IEs_tags_53) - /sizeof(asn_DEF_RICcontrolRequest_IEs_tags_53[0]), /* 1 */ + asn_DEF_ErrorIndication_IEs_tags_101, + sizeof(asn_DEF_ErrorIndication_IEs_tags_101) + /sizeof(asn_DEF_ErrorIndication_IEs_tags_101[0]), /* 1 */ + asn_DEF_ErrorIndication_IEs_tags_101, /* Same as above */ + sizeof(asn_DEF_ErrorIndication_IEs_tags_101) + /sizeof(asn_DEF_ErrorIndication_IEs_tags_101[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICcontrolRequest_IEs_53, + asn_MBR_ErrorIndication_IEs_101, 3, /* Elements count */ - &asn_SPC_RICcontrolRequest_IEs_specs_53 /* Additional specs */ + &asn_SPC_ErrorIndication_IEs_specs_101 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_60[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICrequestID), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RICrequestID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICrequestID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RANfunctionID), +static asn_TYPE_member_t asn_MBR_value_108[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.TransactionID), (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, - &asn_DEF_RANfunctionID, + &asn_DEF_TransactionID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionID" + "TransactionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICcallProcessID), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.GlobalE2node_ID), + -1 /* Ambiguous tag (CHOICE?) */, 0, - &asn_DEF_RICcallProcessID, + &asn_DEF_GlobalE2node_ID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcallProcessID" + "GlobalE2node-ID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICcontrolStatus), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.RANfunctions_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICcontrolStatus, + &asn_DEF_RANfunctions_List, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcontrolStatus" + "RANfunctions-List" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICcontrolOutcome), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.E2nodeComponentConfigAddition_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICcontrolOutcome, + &asn_DEF_E2nodeComponentConfigAddition_List, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcontrolOutcome" + "E2nodeComponentConfigAddition-List" }, }; -static const unsigned asn_MAP_value_to_canonical_60[] = { 1, 2, 4, 3, 0 }; -static const unsigned asn_MAP_value_from_canonical_60[] = { 4, 0, 1, 3, 2 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_60[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 1 }, /* RICcallProcessID */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -1, 0 }, /* RICcontrolOutcome */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 3, 0, 0 }, /* RICcontrolStatus */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */ +static const unsigned asn_MAP_value_to_canonical_108[] = { 0, 2, 3, 1 }; +static const unsigned asn_MAP_value_from_canonical_108[] = { 0, 3, 1, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_108[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, 0, 1 }, /* RANfunctions-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* E2nodeComponentConfigAddition-List */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* gNB */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* en-gNB */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* ng-eNB */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 } /* eNB */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_60 = { - sizeof(struct RICcontrolAcknowledge_IEs__value), - offsetof(struct RICcontrolAcknowledge_IEs__value, _asn_ctx), - offsetof(struct RICcontrolAcknowledge_IEs__value, present), - sizeof(((struct RICcontrolAcknowledge_IEs__value *)0)->present), - asn_MAP_value_tag2el_60, - 5, /* Count of tags in the map */ - asn_MAP_value_to_canonical_60, - asn_MAP_value_from_canonical_60, +static asn_CHOICE_specifics_t asn_SPC_value_specs_108 = { + sizeof(struct E2setupRequestIEs__value), + offsetof(struct E2setupRequestIEs__value, _asn_ctx), + offsetof(struct E2setupRequestIEs__value, present), + sizeof(((struct E2setupRequestIEs__value *)0)->present), + asn_MAP_value_tag2el_108, + 7, /* Count of tags in the map */ + asn_MAP_value_to_canonical_108, + asn_MAP_value_from_canonical_108, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_60 = { +asn_TYPE_descriptor_t asn_DEF_value_108 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -6048,144 +9352,138 @@ asn_TYPE_descriptor_t asn_DEF_value_60 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_60, - 5, /* Elements count */ - &asn_SPC_value_specs_60 /* Additional specs */ + asn_MBR_value_108, + 4, /* Elements count */ + &asn_SPC_value_specs_108 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICcontrolAcknowledge_IEs_57[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_E2setupRequestIEs_105[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_58, &asn_PER_memb_id_constr_58, memb_id_constraint_57 }, + { &asn_OER_memb_id_constr_106, &asn_PER_memb_id_constr_106, memb_id_constraint_105 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICcontrolAcknowledge_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_59, &asn_PER_memb_criticality_constr_59, memb_criticality_constraint_57 }, + select_E2setupRequestIEs_criticality_type, + { &asn_OER_memb_criticality_constr_107, &asn_PER_memb_criticality_constr_107, memb_criticality_constraint_105 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_60, - select_RICcontrolAcknowledge_IEs_value_type, - { &asn_OER_memb_value_constr_60, &asn_PER_memb_value_constr_60, memb_value_constraint_57 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_108, + select_E2setupRequestIEs_value_type, + { &asn_OER_memb_value_constr_108, &asn_PER_memb_value_constr_108, memb_value_constraint_105 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICcontrolAcknowledge_IEs_tags_57[] = { +static const ber_tlv_tag_t asn_DEF_E2setupRequestIEs_tags_105[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICcontrolAcknowledge_IEs_tag2el_57[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_E2setupRequestIEs_tag2el_105[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICcontrolAcknowledge_IEs_specs_57 = { - sizeof(struct RICcontrolAcknowledge_IEs), - offsetof(struct RICcontrolAcknowledge_IEs, _asn_ctx), - asn_MAP_RICcontrolAcknowledge_IEs_tag2el_57, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_E2setupRequestIEs_specs_105 = { + sizeof(struct E2setupRequestIEs), + offsetof(struct E2setupRequestIEs, _asn_ctx), + asn_MAP_E2setupRequestIEs_tag2el_105, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICcontrolAcknowledge_IEs = { - "RICcontrolAcknowledge-IEs", - "RICcontrolAcknowledge-IEs", +asn_TYPE_descriptor_t asn_DEF_E2setupRequestIEs = { + "E2setupRequestIEs", + "E2setupRequestIEs", &asn_OP_SEQUENCE, - asn_DEF_RICcontrolAcknowledge_IEs_tags_57, - sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_57) - /sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_57[0]), /* 1 */ - asn_DEF_RICcontrolAcknowledge_IEs_tags_57, /* Same as above */ - sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_57) - /sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_57[0]), /* 1 */ + asn_DEF_E2setupRequestIEs_tags_105, + sizeof(asn_DEF_E2setupRequestIEs_tags_105) + /sizeof(asn_DEF_E2setupRequestIEs_tags_105[0]), /* 1 */ + asn_DEF_E2setupRequestIEs_tags_105, /* Same as above */ + sizeof(asn_DEF_E2setupRequestIEs_tags_105) + /sizeof(asn_DEF_E2setupRequestIEs_tags_105[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICcontrolAcknowledge_IEs_57, + asn_MBR_E2setupRequestIEs_105, 3, /* Elements count */ - &asn_SPC_RICcontrolAcknowledge_IEs_specs_57 /* Additional specs */ + &asn_SPC_E2setupRequestIEs_specs_105 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_64[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.RICrequestID), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), +static asn_TYPE_member_t asn_MBR_value_112[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, - &asn_DEF_RICrequestID, + &asn_DEF_TransactionID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICrequestID" + "TransactionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.RANfunctionID), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.GlobalRIC_ID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANfunctionID, + &asn_DEF_GlobalRIC_ID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionID" + "GlobalRIC-ID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.RICcallProcessID), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.RANfunctionsID_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICcallProcessID, + &asn_DEF_RANfunctionsID_List, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcallProcessID" + "RANfunctionsID-List" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.Cause), - -1 /* Ambiguous tag (CHOICE?) */, + { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.RANfunctionsIDcause_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_Cause, + &asn_DEF_RANfunctionsIDcause_List, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "Cause" + "RANfunctionsIDcause-List" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.RICcontrolOutcome), - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.E2nodeComponentConfigAdditionAck_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RICcontrolOutcome, + &asn_DEF_E2nodeComponentConfigAdditionAck_List, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICcontrolOutcome" + "E2nodeComponentConfigAdditionAck-List" }, }; -static const unsigned asn_MAP_value_to_canonical_64[] = { 1, 2, 4, 0, 3 }; -static const unsigned asn_MAP_value_from_canonical_64[] = { 3, 0, 1, 4, 2 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_64[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 1 }, /* RICcallProcessID */ - { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -1, 0 }, /* RICcontrolOutcome */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 }, /* RICrequestID */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* ricRequest */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* ricService */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* transport */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* protocol */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 3, 0, 0 } /* misc */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_112[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 3 }, /* GlobalRIC-ID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 2 }, /* RANfunctionsID-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -2, 1 }, /* RANfunctionsIDcause-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -3, 0 } /* E2nodeComponentConfigAdditionAck-List */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_64 = { - sizeof(struct RICcontrolFailure_IEs__value), - offsetof(struct RICcontrolFailure_IEs__value, _asn_ctx), - offsetof(struct RICcontrolFailure_IEs__value, present), - sizeof(((struct RICcontrolFailure_IEs__value *)0)->present), - asn_MAP_value_tag2el_64, - 9, /* Count of tags in the map */ - asn_MAP_value_to_canonical_64, - asn_MAP_value_from_canonical_64, +static asn_CHOICE_specifics_t asn_SPC_value_specs_112 = { + sizeof(struct E2setupResponseIEs__value), + offsetof(struct E2setupResponseIEs__value, _asn_ctx), + offsetof(struct E2setupResponseIEs__value, present), + sizeof(((struct E2setupResponseIEs__value *)0)->present), + asn_MAP_value_tag2el_112, + 5, /* Count of tags in the map */ + 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_64 = { +asn_TYPE_descriptor_t asn_DEF_value_112 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -6194,100 +9492,101 @@ asn_TYPE_descriptor_t asn_DEF_value_64 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_64, + asn_MBR_value_112, 5, /* Elements count */ - &asn_SPC_value_specs_64 /* Additional specs */ + &asn_SPC_value_specs_112 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICcontrolFailure_IEs_61[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_E2setupResponseIEs_109[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_62, &asn_PER_memb_id_constr_62, memb_id_constraint_61 }, + { &asn_OER_memb_id_constr_110, &asn_PER_memb_id_constr_110, memb_id_constraint_109 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICcontrolFailure_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_63, &asn_PER_memb_criticality_constr_63, memb_criticality_constraint_61 }, + select_E2setupResponseIEs_criticality_type, + { &asn_OER_memb_criticality_constr_111, &asn_PER_memb_criticality_constr_111, memb_criticality_constraint_109 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_64, - select_RICcontrolFailure_IEs_value_type, - { &asn_OER_memb_value_constr_64, &asn_PER_memb_value_constr_64, memb_value_constraint_61 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_112, + select_E2setupResponseIEs_value_type, + { &asn_OER_memb_value_constr_112, &asn_PER_memb_value_constr_112, memb_value_constraint_109 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICcontrolFailure_IEs_tags_61[] = { +static const ber_tlv_tag_t asn_DEF_E2setupResponseIEs_tags_109[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICcontrolFailure_IEs_tag2el_61[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_E2setupResponseIEs_tag2el_109[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICcontrolFailure_IEs_specs_61 = { - sizeof(struct RICcontrolFailure_IEs), - offsetof(struct RICcontrolFailure_IEs, _asn_ctx), - asn_MAP_RICcontrolFailure_IEs_tag2el_61, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_E2setupResponseIEs_specs_109 = { + sizeof(struct E2setupResponseIEs), + offsetof(struct E2setupResponseIEs, _asn_ctx), + asn_MAP_E2setupResponseIEs_tag2el_109, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICcontrolFailure_IEs = { - "RICcontrolFailure-IEs", - "RICcontrolFailure-IEs", +asn_TYPE_descriptor_t asn_DEF_E2setupResponseIEs = { + "E2setupResponseIEs", + "E2setupResponseIEs", &asn_OP_SEQUENCE, - asn_DEF_RICcontrolFailure_IEs_tags_61, - sizeof(asn_DEF_RICcontrolFailure_IEs_tags_61) - /sizeof(asn_DEF_RICcontrolFailure_IEs_tags_61[0]), /* 1 */ - asn_DEF_RICcontrolFailure_IEs_tags_61, /* Same as above */ - sizeof(asn_DEF_RICcontrolFailure_IEs_tags_61) - /sizeof(asn_DEF_RICcontrolFailure_IEs_tags_61[0]), /* 1 */ + asn_DEF_E2setupResponseIEs_tags_109, + sizeof(asn_DEF_E2setupResponseIEs_tags_109) + /sizeof(asn_DEF_E2setupResponseIEs_tags_109[0]), /* 1 */ + asn_DEF_E2setupResponseIEs_tags_109, /* Same as above */ + sizeof(asn_DEF_E2setupResponseIEs_tags_109) + /sizeof(asn_DEF_E2setupResponseIEs_tags_109[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICcontrolFailure_IEs_61, + asn_MBR_E2setupResponseIEs_109, 3, /* Elements count */ - &asn_SPC_RICcontrolFailure_IEs_specs_61 /* Additional specs */ + &asn_SPC_E2setupResponseIEs_specs_109 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_68[] = { - { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.RICrequestID), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), +static asn_TYPE_member_t asn_MBR_value_116[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, - &asn_DEF_RICrequestID, + &asn_DEF_TransactionID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RICrequestID" + "TransactionID" }, - { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.RANfunctionID), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.Cause), + -1 /* Ambiguous tag (CHOICE?) */, 0, - &asn_DEF_RANfunctionID, + &asn_DEF_Cause, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionID" + "Cause" }, - { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.Cause), - -1 /* Ambiguous tag (CHOICE?) */, + { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.TimeToWait), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 0, - &asn_DEF_Cause, + &asn_DEF_TimeToWait, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "Cause" + "TimeToWait" }, - { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.CriticalityDiagnostics), + { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.CriticalityDiagnostics), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, &asn_DEF_CriticalityDiagnostics, @@ -6296,32 +9595,43 @@ static asn_TYPE_member_t asn_MBR_value_68[] = { 0, 0, /* No default value */ "CriticalityDiagnostics" }, + { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.TNLinformation), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TNLinformation, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TNLinformation" + }, }; -static const unsigned asn_MAP_value_to_canonical_68[] = { 1, 0, 3, 2 }; -static const unsigned asn_MAP_value_from_canonical_68[] = { 1, 0, 3, 2 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_68[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* CriticalityDiagnostics */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* ricRequest */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* ricService */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* transport */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* protocol */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 2, 0, 0 } /* misc */ +static const unsigned asn_MAP_value_to_canonical_116[] = { 0, 2, 3, 4, 1 }; +static const unsigned asn_MAP_value_from_canonical_116[] = { 0, 4, 1, 2, 3 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_116[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 2, 0, 0 }, /* TimeToWait */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, 0, 1 }, /* CriticalityDiagnostics */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -1, 0 }, /* TNLinformation */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* ricRequest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* e2Node */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 1, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 1, 0, 0 } /* misc */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_68 = { - sizeof(struct ErrorIndication_IEs__value), - offsetof(struct ErrorIndication_IEs__value, _asn_ctx), - offsetof(struct ErrorIndication_IEs__value, present), - sizeof(((struct ErrorIndication_IEs__value *)0)->present), - asn_MAP_value_tag2el_68, - 8, /* Count of tags in the map */ - asn_MAP_value_to_canonical_68, - asn_MAP_value_from_canonical_68, +static asn_CHOICE_specifics_t asn_SPC_value_specs_116 = { + sizeof(struct E2setupFailureIEs__value), + offsetof(struct E2setupFailureIEs__value, _asn_ctx), + offsetof(struct E2setupFailureIEs__value, present), + sizeof(((struct E2setupFailureIEs__value *)0)->present), + asn_MAP_value_tag2el_116, + 10, /* Count of tags in the map */ + asn_MAP_value_to_canonical_116, + asn_MAP_value_from_canonical_116, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_68 = { +asn_TYPE_descriptor_t asn_DEF_value_116 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -6330,73 +9640,83 @@ asn_TYPE_descriptor_t asn_DEF_value_68 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_68, - 4, /* Elements count */ - &asn_SPC_value_specs_68 /* Additional specs */ + asn_MBR_value_116, + 5, /* Elements count */ + &asn_SPC_value_specs_116 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ErrorIndication_IEs_65[] = { - { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_E2setupFailureIEs_113[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_66, &asn_PER_memb_id_constr_66, memb_id_constraint_65 }, + { &asn_OER_memb_id_constr_114, &asn_PER_memb_id_constr_114, memb_id_constraint_113 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_ErrorIndication_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_67, &asn_PER_memb_criticality_constr_67, memb_criticality_constraint_65 }, + select_E2setupFailureIEs_criticality_type, + { &asn_OER_memb_criticality_constr_115, &asn_PER_memb_criticality_constr_115, memb_criticality_constraint_113 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_68, - select_ErrorIndication_IEs_value_type, - { &asn_OER_memb_value_constr_68, &asn_PER_memb_value_constr_68, memb_value_constraint_65 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_116, + select_E2setupFailureIEs_value_type, + { &asn_OER_memb_value_constr_116, &asn_PER_memb_value_constr_116, memb_value_constraint_113 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_ErrorIndication_IEs_tags_65[] = { +static const ber_tlv_tag_t asn_DEF_E2setupFailureIEs_tags_113[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_ErrorIndication_IEs_tag2el_65[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_E2setupFailureIEs_tag2el_113[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_ErrorIndication_IEs_specs_65 = { - sizeof(struct ErrorIndication_IEs), - offsetof(struct ErrorIndication_IEs, _asn_ctx), - asn_MAP_ErrorIndication_IEs_tag2el_65, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_E2setupFailureIEs_specs_113 = { + sizeof(struct E2setupFailureIEs), + offsetof(struct E2setupFailureIEs, _asn_ctx), + asn_MAP_E2setupFailureIEs_tag2el_113, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_ErrorIndication_IEs = { - "ErrorIndication-IEs", - "ErrorIndication-IEs", +asn_TYPE_descriptor_t asn_DEF_E2setupFailureIEs = { + "E2setupFailureIEs", + "E2setupFailureIEs", &asn_OP_SEQUENCE, - asn_DEF_ErrorIndication_IEs_tags_65, - sizeof(asn_DEF_ErrorIndication_IEs_tags_65) - /sizeof(asn_DEF_ErrorIndication_IEs_tags_65[0]), /* 1 */ - asn_DEF_ErrorIndication_IEs_tags_65, /* Same as above */ - sizeof(asn_DEF_ErrorIndication_IEs_tags_65) - /sizeof(asn_DEF_ErrorIndication_IEs_tags_65[0]), /* 1 */ + asn_DEF_E2setupFailureIEs_tags_113, + sizeof(asn_DEF_E2setupFailureIEs_tags_113) + /sizeof(asn_DEF_E2setupFailureIEs_tags_113[0]), /* 1 */ + asn_DEF_E2setupFailureIEs_tags_113, /* Same as above */ + sizeof(asn_DEF_E2setupFailureIEs_tags_113) + /sizeof(asn_DEF_E2setupFailureIEs_tags_113[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_ErrorIndication_IEs_65, + asn_MBR_E2setupFailureIEs_113, 3, /* Elements count */ - &asn_SPC_ErrorIndication_IEs_specs_65 /* Additional specs */ + &asn_SPC_E2setupFailureIEs_specs_113 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_72[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.GlobalE2node_ID), +static asn_TYPE_member_t asn_MBR_value_120[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_TransactionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TransactionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.GlobalE2node_ID), -1 /* Ambiguous tag (CHOICE?) */, 0, &asn_DEF_GlobalE2node_ID, @@ -6405,38 +9725,69 @@ static asn_TYPE_member_t asn_MBR_value_72[] = { 0, 0, /* No default value */ "GlobalE2node-ID" }, - { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.RANfunctions_List), + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.E2nodeComponentConfigAddition_List), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANfunctions_List, + &asn_DEF_E2nodeComponentConfigAddition_List, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctions-List" + "E2nodeComponentConfigAddition-List" }, -}; -static const unsigned asn_MAP_value_to_canonical_72[] = { 1, 0 }; -static const unsigned asn_MAP_value_from_canonical_72[] = { 1, 0 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_72[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 }, /* RANfunctions-List */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* en-gNB */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 0, 0, 0 }, /* ng-eNB */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 0, 0, 0 } /* eNB */ -}; -static asn_CHOICE_specifics_t asn_SPC_value_specs_72 = { - sizeof(struct E2setupRequestIEs__value), - offsetof(struct E2setupRequestIEs__value, _asn_ctx), - offsetof(struct E2setupRequestIEs__value, present), - sizeof(((struct E2setupRequestIEs__value *)0)->present), - asn_MAP_value_tag2el_72, - 5, /* Count of tags in the map */ - asn_MAP_value_to_canonical_72, - asn_MAP_value_from_canonical_72, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.E2nodeComponentConfigUpdate_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeComponentConfigUpdate_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeComponentConfigUpdate-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.E2nodeComponentConfigRemoval_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeComponentConfigRemoval_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeComponentConfigRemoval-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.E2nodeTNLassociationRemoval_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeTNLassociationRemoval_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeTNLassociationRemoval-List" + }, +}; +static const unsigned asn_MAP_value_to_canonical_120[] = { 0, 2, 3, 4, 5, 1 }; +static const unsigned asn_MAP_value_from_canonical_120[] = { 0, 5, 1, 2, 3, 4 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_120[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, 0, 3 }, /* E2nodeComponentConfigAddition-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 2 }, /* E2nodeComponentConfigUpdate-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -2, 1 }, /* E2nodeComponentConfigRemoval-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -3, 0 }, /* E2nodeTNLassociationRemoval-List */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* gNB */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* en-gNB */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* ng-eNB */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 } /* eNB */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_120 = { + sizeof(struct E2nodeConfigurationUpdate_IEs__value), + offsetof(struct E2nodeConfigurationUpdate_IEs__value, _asn_ctx), + offsetof(struct E2nodeConfigurationUpdate_IEs__value, present), + sizeof(((struct E2nodeConfigurationUpdate_IEs__value *)0)->present), + asn_MAP_value_tag2el_120, + 9, /* Count of tags in the map */ + asn_MAP_value_to_canonical_120, + asn_MAP_value_from_canonical_120, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_72 = { +asn_TYPE_descriptor_t asn_DEF_value_120 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -6445,117 +9796,128 @@ asn_TYPE_descriptor_t asn_DEF_value_72 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_72, - 2, /* Elements count */ - &asn_SPC_value_specs_72 /* Additional specs */ + asn_MBR_value_120, + 6, /* Elements count */ + &asn_SPC_value_specs_120 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_E2setupRequestIEs_69[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdate_IEs_117[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_70, &asn_PER_memb_id_constr_70, memb_id_constraint_69 }, + { &asn_OER_memb_id_constr_118, &asn_PER_memb_id_constr_118, memb_id_constraint_117 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_E2setupRequestIEs_criticality_type, - { &asn_OER_memb_criticality_constr_71, &asn_PER_memb_criticality_constr_71, memb_criticality_constraint_69 }, + select_E2nodeConfigurationUpdate_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_119, &asn_PER_memb_criticality_constr_119, memb_criticality_constraint_117 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_72, - select_E2setupRequestIEs_value_type, - { &asn_OER_memb_value_constr_72, &asn_PER_memb_value_constr_72, memb_value_constraint_69 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_120, + select_E2nodeConfigurationUpdate_IEs_value_type, + { &asn_OER_memb_value_constr_120, &asn_PER_memb_value_constr_120, memb_value_constraint_117 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_E2setupRequestIEs_tags_69[] = { +static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdate_IEs_tags_117[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_E2setupRequestIEs_tag2el_69[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdate_IEs_tag2el_117[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_E2setupRequestIEs_specs_69 = { - sizeof(struct E2setupRequestIEs), - offsetof(struct E2setupRequestIEs, _asn_ctx), - asn_MAP_E2setupRequestIEs_tag2el_69, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdate_IEs_specs_117 = { + sizeof(struct E2nodeConfigurationUpdate_IEs), + offsetof(struct E2nodeConfigurationUpdate_IEs, _asn_ctx), + asn_MAP_E2nodeConfigurationUpdate_IEs_tag2el_117, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_E2setupRequestIEs = { - "E2setupRequestIEs", - "E2setupRequestIEs", +asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdate_IEs = { + "E2nodeConfigurationUpdate-IEs", + "E2nodeConfigurationUpdate-IEs", &asn_OP_SEQUENCE, - asn_DEF_E2setupRequestIEs_tags_69, - sizeof(asn_DEF_E2setupRequestIEs_tags_69) - /sizeof(asn_DEF_E2setupRequestIEs_tags_69[0]), /* 1 */ - asn_DEF_E2setupRequestIEs_tags_69, /* Same as above */ - sizeof(asn_DEF_E2setupRequestIEs_tags_69) - /sizeof(asn_DEF_E2setupRequestIEs_tags_69[0]), /* 1 */ + asn_DEF_E2nodeConfigurationUpdate_IEs_tags_117, + sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_117) + /sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_117[0]), /* 1 */ + asn_DEF_E2nodeConfigurationUpdate_IEs_tags_117, /* Same as above */ + sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_117) + /sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_117[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_E2setupRequestIEs_69, + asn_MBR_E2nodeConfigurationUpdate_IEs_117, 3, /* Elements count */ - &asn_SPC_E2setupRequestIEs_specs_69 /* Additional specs */ + &asn_SPC_E2nodeConfigurationUpdate_IEs_specs_117 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_76[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.GlobalRIC_ID), +static asn_TYPE_member_t asn_MBR_value_124[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_TransactionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TransactionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, choice.E2nodeComponentConfigAdditionAck_List), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_GlobalRIC_ID, + &asn_DEF_E2nodeComponentConfigAdditionAck_List, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "GlobalRIC-ID" + "E2nodeComponentConfigAdditionAck-List" }, - { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.RANfunctionsID_List), + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, choice.E2nodeComponentConfigUpdateAck_List), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANfunctionsID_List, + &asn_DEF_E2nodeComponentConfigUpdateAck_List, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionsID-List" + "E2nodeComponentConfigUpdateAck-List" }, - { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.RANfunctionsIDcause_List), + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, choice.E2nodeComponentConfigRemovalAck_List), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANfunctionsIDcause_List, + &asn_DEF_E2nodeComponentConfigRemovalAck_List, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionsIDcause-List" + "E2nodeComponentConfigRemovalAck-List" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_76[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* GlobalRIC-ID */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 1 }, /* RANfunctionsID-List */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 0 } /* RANfunctionsIDcause-List */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_124[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 2 }, /* E2nodeComponentConfigAdditionAck-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 1 }, /* E2nodeComponentConfigUpdateAck-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -2, 0 } /* E2nodeComponentConfigRemovalAck-List */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_76 = { - sizeof(struct E2setupResponseIEs__value), - offsetof(struct E2setupResponseIEs__value, _asn_ctx), - offsetof(struct E2setupResponseIEs__value, present), - sizeof(((struct E2setupResponseIEs__value *)0)->present), - asn_MAP_value_tag2el_76, - 3, /* Count of tags in the map */ +static asn_CHOICE_specifics_t asn_SPC_value_specs_124 = { + sizeof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value), + offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, _asn_ctx), + offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, present), + sizeof(((struct E2nodeConfigurationUpdateAcknowledge_IEs__value *)0)->present), + asn_MAP_value_tag2el_124, + 4, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_76 = { +asn_TYPE_descriptor_t asn_DEF_value_124 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -6564,73 +9926,83 @@ asn_TYPE_descriptor_t asn_DEF_value_76 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_76, - 3, /* Elements count */ - &asn_SPC_value_specs_76 /* Additional specs */ + asn_MBR_value_124, + 4, /* Elements count */ + &asn_SPC_value_specs_124 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_E2setupResponseIEs_73[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateAcknowledge_IEs_121[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_74, &asn_PER_memb_id_constr_74, memb_id_constraint_73 }, + { &asn_OER_memb_id_constr_122, &asn_PER_memb_id_constr_122, memb_id_constraint_121 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_E2setupResponseIEs_criticality_type, - { &asn_OER_memb_criticality_constr_75, &asn_PER_memb_criticality_constr_75, memb_criticality_constraint_73 }, + select_E2nodeConfigurationUpdateAcknowledge_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_123, &asn_PER_memb_criticality_constr_123, memb_criticality_constraint_121 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_76, - select_E2setupResponseIEs_value_type, - { &asn_OER_memb_value_constr_76, &asn_PER_memb_value_constr_76, memb_value_constraint_73 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_124, + select_E2nodeConfigurationUpdateAcknowledge_IEs_value_type, + { &asn_OER_memb_value_constr_124, &asn_PER_memb_value_constr_124, memb_value_constraint_121 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_E2setupResponseIEs_tags_73[] = { +static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_121[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_E2setupResponseIEs_tag2el_73[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdateAcknowledge_IEs_tag2el_121[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_E2setupResponseIEs_specs_73 = { - sizeof(struct E2setupResponseIEs), - offsetof(struct E2setupResponseIEs, _asn_ctx), - asn_MAP_E2setupResponseIEs_tag2el_73, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateAcknowledge_IEs_specs_121 = { + sizeof(struct E2nodeConfigurationUpdateAcknowledge_IEs), + offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, _asn_ctx), + asn_MAP_E2nodeConfigurationUpdateAcknowledge_IEs_tag2el_121, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_E2setupResponseIEs = { - "E2setupResponseIEs", - "E2setupResponseIEs", +asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs = { + "E2nodeConfigurationUpdateAcknowledge-IEs", + "E2nodeConfigurationUpdateAcknowledge-IEs", &asn_OP_SEQUENCE, - asn_DEF_E2setupResponseIEs_tags_73, - sizeof(asn_DEF_E2setupResponseIEs_tags_73) - /sizeof(asn_DEF_E2setupResponseIEs_tags_73[0]), /* 1 */ - asn_DEF_E2setupResponseIEs_tags_73, /* Same as above */ - sizeof(asn_DEF_E2setupResponseIEs_tags_73) - /sizeof(asn_DEF_E2setupResponseIEs_tags_73[0]), /* 1 */ + asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_121, + sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_121) + /sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_121[0]), /* 1 */ + asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_121, /* Same as above */ + sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_121) + /sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_121[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_E2setupResponseIEs_73, + asn_MBR_E2nodeConfigurationUpdateAcknowledge_IEs_121, 3, /* Elements count */ - &asn_SPC_E2setupResponseIEs_specs_73 /* Additional specs */ + &asn_SPC_E2nodeConfigurationUpdateAcknowledge_IEs_specs_121 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_80[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.Cause), +static asn_TYPE_member_t asn_MBR_value_128[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_TransactionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TransactionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, choice.Cause), -1 /* Ambiguous tag (CHOICE?) */, 0, &asn_DEF_Cause, @@ -6639,7 +10011,7 @@ static asn_TYPE_member_t asn_MBR_value_80[] = { 0, 0, /* No default value */ "Cause" }, - { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.TimeToWait), + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, choice.TimeToWait), (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 0, &asn_DEF_TimeToWait, @@ -6648,40 +10020,42 @@ static asn_TYPE_member_t asn_MBR_value_80[] = { 0, 0, /* No default value */ "TimeToWait" }, - { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.CriticalityDiagnostics), + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, choice.CriticalityDiagnostics), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_CriticalityDiagnostics, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "CriticalityDiagnostics" - }, -}; -static const unsigned asn_MAP_value_to_canonical_80[] = { 1, 2, 0 }; -static const unsigned asn_MAP_value_from_canonical_80[] = { 2, 0, 1 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_80[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 }, /* TimeToWait */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, 0, 0 }, /* CriticalityDiagnostics */ - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequest */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* ricService */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 0, 0, 0 }, /* transport */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 0, 0, 0 }, /* protocol */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 0, 0, 0 } /* misc */ -}; -static asn_CHOICE_specifics_t asn_SPC_value_specs_80 = { - sizeof(struct E2setupFailureIEs__value), - offsetof(struct E2setupFailureIEs__value, _asn_ctx), - offsetof(struct E2setupFailureIEs__value, present), - sizeof(((struct E2setupFailureIEs__value *)0)->present), - asn_MAP_value_tag2el_80, - 7, /* Count of tags in the map */ - asn_MAP_value_to_canonical_80, - asn_MAP_value_from_canonical_80, + &asn_DEF_CriticalityDiagnostics, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "CriticalityDiagnostics" + }, +}; +static const unsigned asn_MAP_value_to_canonical_128[] = { 0, 2, 3, 1 }; +static const unsigned asn_MAP_value_from_canonical_128[] = { 0, 3, 1, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_128[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 2, 0, 0 }, /* TimeToWait */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, 0, 0 }, /* CriticalityDiagnostics */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* ricRequest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* e2Node */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 1, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 1, 0, 0 } /* misc */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_128 = { + sizeof(struct E2nodeConfigurationUpdateFailure_IEs__value), + offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, _asn_ctx), + offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, present), + sizeof(((struct E2nodeConfigurationUpdateFailure_IEs__value *)0)->present), + asn_MAP_value_tag2el_128, + 9, /* Count of tags in the map */ + asn_MAP_value_to_canonical_128, + asn_MAP_value_from_canonical_128, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_80 = { +asn_TYPE_descriptor_t asn_DEF_value_128 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -6690,72 +10064,82 @@ asn_TYPE_descriptor_t asn_DEF_value_80 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_80, - 3, /* Elements count */ - &asn_SPC_value_specs_80 /* Additional specs */ + asn_MBR_value_128, + 4, /* Elements count */ + &asn_SPC_value_specs_128 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_E2setupFailureIEs_77[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateFailure_IEs_125[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_78, &asn_PER_memb_id_constr_78, memb_id_constraint_77 }, + { &asn_OER_memb_id_constr_126, &asn_PER_memb_id_constr_126, memb_id_constraint_125 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_E2setupFailureIEs_criticality_type, - { &asn_OER_memb_criticality_constr_79, &asn_PER_memb_criticality_constr_79, memb_criticality_constraint_77 }, + select_E2nodeConfigurationUpdateFailure_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_127, &asn_PER_memb_criticality_constr_127, memb_criticality_constraint_125 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_80, - select_E2setupFailureIEs_value_type, - { &asn_OER_memb_value_constr_80, &asn_PER_memb_value_constr_80, memb_value_constraint_77 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_128, + select_E2nodeConfigurationUpdateFailure_IEs_value_type, + { &asn_OER_memb_value_constr_128, &asn_PER_memb_value_constr_128, memb_value_constraint_125 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_E2setupFailureIEs_tags_77[] = { +static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_125[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_E2setupFailureIEs_tag2el_77[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdateFailure_IEs_tag2el_125[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_E2setupFailureIEs_specs_77 = { - sizeof(struct E2setupFailureIEs), - offsetof(struct E2setupFailureIEs, _asn_ctx), - asn_MAP_E2setupFailureIEs_tag2el_77, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateFailure_IEs_specs_125 = { + sizeof(struct E2nodeConfigurationUpdateFailure_IEs), + offsetof(struct E2nodeConfigurationUpdateFailure_IEs, _asn_ctx), + asn_MAP_E2nodeConfigurationUpdateFailure_IEs_tag2el_125, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_E2setupFailureIEs = { - "E2setupFailureIEs", - "E2setupFailureIEs", +asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateFailure_IEs = { + "E2nodeConfigurationUpdateFailure-IEs", + "E2nodeConfigurationUpdateFailure-IEs", &asn_OP_SEQUENCE, - asn_DEF_E2setupFailureIEs_tags_77, - sizeof(asn_DEF_E2setupFailureIEs_tags_77) - /sizeof(asn_DEF_E2setupFailureIEs_tags_77[0]), /* 1 */ - asn_DEF_E2setupFailureIEs_tags_77, /* Same as above */ - sizeof(asn_DEF_E2setupFailureIEs_tags_77) - /sizeof(asn_DEF_E2setupFailureIEs_tags_77[0]), /* 1 */ + asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_125, + sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_125) + /sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_125[0]), /* 1 */ + asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_125, /* Same as above */ + sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_125) + /sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_125[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_E2setupFailureIEs_77, + asn_MBR_E2nodeConfigurationUpdateFailure_IEs_125, 3, /* Elements count */ - &asn_SPC_E2setupFailureIEs_specs_77 /* Additional specs */ + &asn_SPC_E2nodeConfigurationUpdateFailure_IEs_specs_125 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_84[] = { +static asn_TYPE_member_t asn_MBR_value_132[] = { + { ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_TransactionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TransactionID" + }, { ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs__value, choice.Cause), -1 /* Ambiguous tag (CHOICE?) */, 0, @@ -6766,25 +10150,27 @@ static asn_TYPE_member_t asn_MBR_value_84[] = { "Cause" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_84[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequest */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* ricService */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 0, 0, 0 }, /* transport */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 0, 0, 0 }, /* protocol */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 0, 0, 0 } /* misc */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_132[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* ricRequest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* e2Node */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 1, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 1, 0, 0 } /* misc */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_84 = { +static asn_CHOICE_specifics_t asn_SPC_value_specs_132 = { sizeof(struct ResetRequestIEs__value), offsetof(struct ResetRequestIEs__value, _asn_ctx), offsetof(struct ResetRequestIEs__value, present), sizeof(((struct ResetRequestIEs__value *)0)->present), - asn_MAP_value_tag2el_84, - 5, /* Count of tags in the map */ + asn_MAP_value_tag2el_132, + 7, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_84 = { +asn_TYPE_descriptor_t asn_DEF_value_132 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -6793,52 +10179,53 @@ asn_TYPE_descriptor_t asn_DEF_value_84 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_84, - 1, /* Elements count */ - &asn_SPC_value_specs_84 /* Additional specs */ + asn_MBR_value_132, + 2, /* Elements count */ + &asn_SPC_value_specs_132 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ResetRequestIEs_81[] = { +asn_TYPE_member_t asn_MBR_ResetRequestIEs_129[] = { { ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_82, &asn_PER_memb_id_constr_82, memb_id_constraint_81 }, + { &asn_OER_memb_id_constr_130, &asn_PER_memb_id_constr_130, memb_id_constraint_129 }, 0, 0, /* No default value */ "id" }, { ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, select_ResetRequestIEs_criticality_type, - { &asn_OER_memb_criticality_constr_83, &asn_PER_memb_criticality_constr_83, memb_criticality_constraint_81 }, + { &asn_OER_memb_criticality_constr_131, &asn_PER_memb_criticality_constr_131, memb_criticality_constraint_129 }, 0, 0, /* No default value */ "criticality" }, { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_84, + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_132, select_ResetRequestIEs_value_type, - { &asn_OER_memb_value_constr_84, &asn_PER_memb_value_constr_84, memb_value_constraint_81 }, + { &asn_OER_memb_value_constr_132, &asn_PER_memb_value_constr_132, memb_value_constraint_129 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_ResetRequestIEs_tags_81[] = { +static const ber_tlv_tag_t asn_DEF_ResetRequestIEs_tags_129[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_ResetRequestIEs_tag2el_81[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_ResetRequestIEs_tag2el_129[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_ResetRequestIEs_specs_81 = { +asn_SEQUENCE_specifics_t asn_SPC_ResetRequestIEs_specs_129 = { sizeof(struct ResetRequestIEs), offsetof(struct ResetRequestIEs, _asn_ctx), - asn_MAP_ResetRequestIEs_tag2el_81, - 2, /* Count of tags in the map */ + asn_MAP_ResetRequestIEs_tag2el_129, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; @@ -6846,19 +10233,28 @@ asn_TYPE_descriptor_t asn_DEF_ResetRequestIEs = { "ResetRequestIEs", "ResetRequestIEs", &asn_OP_SEQUENCE, - asn_DEF_ResetRequestIEs_tags_81, - sizeof(asn_DEF_ResetRequestIEs_tags_81) - /sizeof(asn_DEF_ResetRequestIEs_tags_81[0]), /* 1 */ - asn_DEF_ResetRequestIEs_tags_81, /* Same as above */ - sizeof(asn_DEF_ResetRequestIEs_tags_81) - /sizeof(asn_DEF_ResetRequestIEs_tags_81[0]), /* 1 */ + asn_DEF_ResetRequestIEs_tags_129, + sizeof(asn_DEF_ResetRequestIEs_tags_129) + /sizeof(asn_DEF_ResetRequestIEs_tags_129[0]), /* 1 */ + asn_DEF_ResetRequestIEs_tags_129, /* Same as above */ + sizeof(asn_DEF_ResetRequestIEs_tags_129) + /sizeof(asn_DEF_ResetRequestIEs_tags_129[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_ResetRequestIEs_81, + asn_MBR_ResetRequestIEs_129, 3, /* Elements count */ - &asn_SPC_ResetRequestIEs_specs_81 /* Additional specs */ + &asn_SPC_ResetRequestIEs_specs_129 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_88[] = { +static asn_TYPE_member_t asn_MBR_value_136[] = { + { ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_TransactionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TransactionID" + }, { ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs__value, choice.CriticalityDiagnostics), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -6869,21 +10265,22 @@ static asn_TYPE_member_t asn_MBR_value_88[] = { "CriticalityDiagnostics" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_88[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* CriticalityDiagnostics */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_136[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 } /* CriticalityDiagnostics */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_88 = { +static asn_CHOICE_specifics_t asn_SPC_value_specs_136 = { sizeof(struct ResetResponseIEs__value), offsetof(struct ResetResponseIEs__value, _asn_ctx), offsetof(struct ResetResponseIEs__value, present), sizeof(((struct ResetResponseIEs__value *)0)->present), - asn_MAP_value_tag2el_88, - 1, /* Count of tags in the map */ + asn_MAP_value_tag2el_136, + 2, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_88 = { +asn_TYPE_descriptor_t asn_DEF_value_136 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -6892,52 +10289,53 @@ asn_TYPE_descriptor_t asn_DEF_value_88 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_88, - 1, /* Elements count */ - &asn_SPC_value_specs_88 /* Additional specs */ + asn_MBR_value_136, + 2, /* Elements count */ + &asn_SPC_value_specs_136 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_ResetResponseIEs_85[] = { +asn_TYPE_member_t asn_MBR_ResetResponseIEs_133[] = { { ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_86, &asn_PER_memb_id_constr_86, memb_id_constraint_85 }, + { &asn_OER_memb_id_constr_134, &asn_PER_memb_id_constr_134, memb_id_constraint_133 }, 0, 0, /* No default value */ "id" }, { ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, select_ResetResponseIEs_criticality_type, - { &asn_OER_memb_criticality_constr_87, &asn_PER_memb_criticality_constr_87, memb_criticality_constraint_85 }, + { &asn_OER_memb_criticality_constr_135, &asn_PER_memb_criticality_constr_135, memb_criticality_constraint_133 }, 0, 0, /* No default value */ "criticality" }, { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_88, + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_136, select_ResetResponseIEs_value_type, - { &asn_OER_memb_value_constr_88, &asn_PER_memb_value_constr_88, memb_value_constraint_85 }, + { &asn_OER_memb_value_constr_136, &asn_PER_memb_value_constr_136, memb_value_constraint_133 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_ResetResponseIEs_tags_85[] = { +static const ber_tlv_tag_t asn_DEF_ResetResponseIEs_tags_133[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_ResetResponseIEs_tag2el_85[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_ResetResponseIEs_tag2el_133[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_ResetResponseIEs_specs_85 = { +asn_SEQUENCE_specifics_t asn_SPC_ResetResponseIEs_specs_133 = { sizeof(struct ResetResponseIEs), offsetof(struct ResetResponseIEs, _asn_ctx), - asn_MAP_ResetResponseIEs_tag2el_85, - 2, /* Count of tags in the map */ + asn_MAP_ResetResponseIEs_tag2el_133, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; @@ -6945,29 +10343,29 @@ asn_TYPE_descriptor_t asn_DEF_ResetResponseIEs = { "ResetResponseIEs", "ResetResponseIEs", &asn_OP_SEQUENCE, - asn_DEF_ResetResponseIEs_tags_85, - sizeof(asn_DEF_ResetResponseIEs_tags_85) - /sizeof(asn_DEF_ResetResponseIEs_tags_85[0]), /* 1 */ - asn_DEF_ResetResponseIEs_tags_85, /* Same as above */ - sizeof(asn_DEF_ResetResponseIEs_tags_85) - /sizeof(asn_DEF_ResetResponseIEs_tags_85[0]), /* 1 */ + asn_DEF_ResetResponseIEs_tags_133, + sizeof(asn_DEF_ResetResponseIEs_tags_133) + /sizeof(asn_DEF_ResetResponseIEs_tags_133[0]), /* 1 */ + asn_DEF_ResetResponseIEs_tags_133, /* Same as above */ + sizeof(asn_DEF_ResetResponseIEs_tags_133) + /sizeof(asn_DEF_ResetResponseIEs_tags_133[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_ResetResponseIEs_85, + asn_MBR_ResetResponseIEs_133, 3, /* Elements count */ - &asn_SPC_ResetResponseIEs_specs_85 /* Additional specs */ + &asn_SPC_ResetResponseIEs_specs_133 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_92[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs__value, choice.RANfunctions_List), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), +static asn_TYPE_member_t asn_MBR_value_140[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, - &asn_DEF_RANfunctions_List, + &asn_DEF_TransactionID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctions-List" + "TransactionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs__value, choice.RANfunctionsID_List), + { ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs__value, choice.RANfunctionsID_List), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, &asn_DEF_RANfunctionsID_List, @@ -6977,22 +10375,22 @@ static asn_TYPE_member_t asn_MBR_value_92[] = { "RANfunctionsID-List" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_92[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RANfunctions-List */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* RANfunctionsID-List */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_140[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 } /* RANfunctionsID-List */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_92 = { - sizeof(struct RICserviceUpdate_IEs__value), - offsetof(struct RICserviceUpdate_IEs__value, _asn_ctx), - offsetof(struct RICserviceUpdate_IEs__value, present), - sizeof(((struct RICserviceUpdate_IEs__value *)0)->present), - asn_MAP_value_tag2el_92, +static asn_CHOICE_specifics_t asn_SPC_value_specs_140 = { + sizeof(struct RICserviceQuery_IEs__value), + offsetof(struct RICserviceQuery_IEs__value, _asn_ctx), + offsetof(struct RICserviceQuery_IEs__value, present), + sizeof(((struct RICserviceQuery_IEs__value *)0)->present), + asn_MAP_value_tag2el_140, 2, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_92 = { +asn_TYPE_descriptor_t asn_DEF_value_140 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -7001,107 +10399,98 @@ asn_TYPE_descriptor_t asn_DEF_value_92 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_92, + asn_MBR_value_140, 2, /* Elements count */ - &asn_SPC_value_specs_92 /* Additional specs */ + &asn_SPC_value_specs_140 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICserviceUpdate_IEs_89[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_RICserviceQuery_IEs_137[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_90, &asn_PER_memb_id_constr_90, memb_id_constraint_89 }, + { &asn_OER_memb_id_constr_138, &asn_PER_memb_id_constr_138, memb_id_constraint_137 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICserviceUpdate_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_91, &asn_PER_memb_criticality_constr_91, memb_criticality_constraint_89 }, + select_RICserviceQuery_IEs_criticality_type, + { &asn_OER_memb_criticality_constr_139, &asn_PER_memb_criticality_constr_139, memb_criticality_constraint_137 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_92, - select_RICserviceUpdate_IEs_value_type, - { &asn_OER_memb_value_constr_92, &asn_PER_memb_value_constr_92, memb_value_constraint_89 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_140, + select_RICserviceQuery_IEs_value_type, + { &asn_OER_memb_value_constr_140, &asn_PER_memb_value_constr_140, memb_value_constraint_137 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICserviceUpdate_IEs_tags_89[] = { +static const ber_tlv_tag_t asn_DEF_RICserviceQuery_IEs_tags_137[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdate_IEs_tag2el_89[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_RICserviceQuery_IEs_tag2el_137[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdate_IEs_specs_89 = { - sizeof(struct RICserviceUpdate_IEs), - offsetof(struct RICserviceUpdate_IEs, _asn_ctx), - asn_MAP_RICserviceUpdate_IEs_tag2el_89, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_RICserviceQuery_IEs_specs_137 = { + sizeof(struct RICserviceQuery_IEs), + offsetof(struct RICserviceQuery_IEs, _asn_ctx), + asn_MAP_RICserviceQuery_IEs_tag2el_137, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICserviceUpdate_IEs = { - "RICserviceUpdate-IEs", - "RICserviceUpdate-IEs", +asn_TYPE_descriptor_t asn_DEF_RICserviceQuery_IEs = { + "RICserviceQuery-IEs", + "RICserviceQuery-IEs", &asn_OP_SEQUENCE, - asn_DEF_RICserviceUpdate_IEs_tags_89, - sizeof(asn_DEF_RICserviceUpdate_IEs_tags_89) - /sizeof(asn_DEF_RICserviceUpdate_IEs_tags_89[0]), /* 1 */ - asn_DEF_RICserviceUpdate_IEs_tags_89, /* Same as above */ - sizeof(asn_DEF_RICserviceUpdate_IEs_tags_89) - /sizeof(asn_DEF_RICserviceUpdate_IEs_tags_89[0]), /* 1 */ + asn_DEF_RICserviceQuery_IEs_tags_137, + sizeof(asn_DEF_RICserviceQuery_IEs_tags_137) + /sizeof(asn_DEF_RICserviceQuery_IEs_tags_137[0]), /* 1 */ + asn_DEF_RICserviceQuery_IEs_tags_137, /* Same as above */ + sizeof(asn_DEF_RICserviceQuery_IEs_tags_137) + /sizeof(asn_DEF_RICserviceQuery_IEs_tags_137[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICserviceUpdate_IEs_89, + asn_MBR_RICserviceQuery_IEs_137, 3, /* Elements count */ - &asn_SPC_RICserviceUpdate_IEs_specs_89 /* Additional specs */ + &asn_SPC_RICserviceQuery_IEs_specs_137 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_96[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs__value, choice.RANfunctionsID_List), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RANfunctionsID_List, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RANfunctionsID-List" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs__value, choice.RANfunctionsIDcause_List), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), +static asn_TYPE_member_t asn_MBR_value_144[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalRequestIEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, - &asn_DEF_RANfunctionsIDcause_List, + &asn_DEF_TransactionID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionsIDcause-List" + "TransactionID" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_96[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RANfunctionsID-List */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* RANfunctionsIDcause-List */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_144[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* TransactionID */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_96 = { - sizeof(struct RICserviceUpdateAcknowledge_IEs__value), - offsetof(struct RICserviceUpdateAcknowledge_IEs__value, _asn_ctx), - offsetof(struct RICserviceUpdateAcknowledge_IEs__value, present), - sizeof(((struct RICserviceUpdateAcknowledge_IEs__value *)0)->present), - asn_MAP_value_tag2el_96, - 2, /* Count of tags in the map */ +static asn_CHOICE_specifics_t asn_SPC_value_specs_144 = { + sizeof(struct E2RemovalRequestIEs__value), + offsetof(struct E2RemovalRequestIEs__value, _asn_ctx), + offsetof(struct E2RemovalRequestIEs__value, present), + sizeof(((struct E2RemovalRequestIEs__value *)0)->present), + asn_MAP_value_tag2el_144, + 1, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_96 = { +asn_TYPE_descriptor_t asn_DEF_value_144 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -7110,91 +10499,83 @@ asn_TYPE_descriptor_t asn_DEF_value_96 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_96, - 2, /* Elements count */ - &asn_SPC_value_specs_96 /* Additional specs */ + asn_MBR_value_144, + 1, /* Elements count */ + &asn_SPC_value_specs_144 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICserviceUpdateAcknowledge_IEs_93[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_E2RemovalRequestIEs_141[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalRequestIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_94, &asn_PER_memb_id_constr_94, memb_id_constraint_93 }, + { &asn_OER_memb_id_constr_142, &asn_PER_memb_id_constr_142, memb_id_constraint_141 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalRequestIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICserviceUpdateAcknowledge_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_95, &asn_PER_memb_criticality_constr_95, memb_criticality_constraint_93 }, + select_E2RemovalRequestIEs_criticality_type, + { &asn_OER_memb_criticality_constr_143, &asn_PER_memb_criticality_constr_143, memb_criticality_constraint_141 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_96, - select_RICserviceUpdateAcknowledge_IEs_value_type, - { &asn_OER_memb_value_constr_96, &asn_PER_memb_value_constr_96, memb_value_constraint_93 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2RemovalRequestIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_144, + select_E2RemovalRequestIEs_value_type, + { &asn_OER_memb_value_constr_144, &asn_PER_memb_value_constr_144, memb_value_constraint_141 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_93[] = { +static const ber_tlv_tag_t asn_DEF_E2RemovalRequestIEs_tags_141[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdateAcknowledge_IEs_tag2el_93[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_E2RemovalRequestIEs_tag2el_141[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateAcknowledge_IEs_specs_93 = { - sizeof(struct RICserviceUpdateAcknowledge_IEs), - offsetof(struct RICserviceUpdateAcknowledge_IEs, _asn_ctx), - asn_MAP_RICserviceUpdateAcknowledge_IEs_tag2el_93, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_E2RemovalRequestIEs_specs_141 = { + sizeof(struct E2RemovalRequestIEs), + offsetof(struct E2RemovalRequestIEs, _asn_ctx), + asn_MAP_E2RemovalRequestIEs_tag2el_141, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateAcknowledge_IEs = { - "RICserviceUpdateAcknowledge-IEs", - "RICserviceUpdateAcknowledge-IEs", +asn_TYPE_descriptor_t asn_DEF_E2RemovalRequestIEs = { + "E2RemovalRequestIEs", + "E2RemovalRequestIEs", &asn_OP_SEQUENCE, - asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_93, - sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_93) - /sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_93[0]), /* 1 */ - asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_93, /* Same as above */ - sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_93) - /sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_93[0]), /* 1 */ + asn_DEF_E2RemovalRequestIEs_tags_141, + sizeof(asn_DEF_E2RemovalRequestIEs_tags_141) + /sizeof(asn_DEF_E2RemovalRequestIEs_tags_141[0]), /* 1 */ + asn_DEF_E2RemovalRequestIEs_tags_141, /* Same as above */ + sizeof(asn_DEF_E2RemovalRequestIEs_tags_141) + /sizeof(asn_DEF_E2RemovalRequestIEs_tags_141[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICserviceUpdateAcknowledge_IEs_93, + asn_MBR_E2RemovalRequestIEs_141, 3, /* Elements count */ - &asn_SPC_RICserviceUpdateAcknowledge_IEs_specs_93 /* Additional specs */ + &asn_SPC_E2RemovalRequestIEs_specs_141 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_100[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs__value, choice.RANfunctionsIDcause_List), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RANfunctionsIDcause_List, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RANfunctionsIDcause-List" - }, - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs__value, choice.TimeToWait), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), +static asn_TYPE_member_t asn_MBR_value_148[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalResponseIEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, - &asn_DEF_TimeToWait, + &asn_DEF_TransactionID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "TimeToWait" + "TransactionID" }, - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs__value, choice.CriticalityDiagnostics), + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalResponseIEs__value, choice.CriticalityDiagnostics), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, &asn_DEF_CriticalityDiagnostics, @@ -7204,26 +10585,22 @@ static asn_TYPE_member_t asn_MBR_value_100[] = { "CriticalityDiagnostics" }, }; -static const unsigned asn_MAP_value_to_canonical_100[] = { 1, 0, 2 }; -static const unsigned asn_MAP_value_from_canonical_100[] = { 1, 0, 2 }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_100[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 }, /* TimeToWait */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RANfunctionsIDcause-List */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 } /* CriticalityDiagnostics */ +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_148[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 } /* CriticalityDiagnostics */ }; -static asn_CHOICE_specifics_t asn_SPC_value_specs_100 = { - sizeof(struct RICserviceUpdateFailure_IEs__value), - offsetof(struct RICserviceUpdateFailure_IEs__value, _asn_ctx), - offsetof(struct RICserviceUpdateFailure_IEs__value, present), - sizeof(((struct RICserviceUpdateFailure_IEs__value *)0)->present), - asn_MAP_value_tag2el_100, - 3, /* Count of tags in the map */ - asn_MAP_value_to_canonical_100, - asn_MAP_value_from_canonical_100, +static asn_CHOICE_specifics_t asn_SPC_value_specs_148 = { + sizeof(struct E2RemovalResponseIEs__value), + offsetof(struct E2RemovalResponseIEs__value, _asn_ctx), + offsetof(struct E2RemovalResponseIEs__value, present), + sizeof(((struct E2RemovalResponseIEs__value *)0)->present), + asn_MAP_value_tag2el_148, + 2, /* Count of tags in the map */ + 0, 0, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_100 = { +asn_TYPE_descriptor_t asn_DEF_value_148 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -7232,97 +10609,126 @@ asn_TYPE_descriptor_t asn_DEF_value_100 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_100, - 3, /* Elements count */ - &asn_SPC_value_specs_100 /* Additional specs */ + asn_MBR_value_148, + 2, /* Elements count */ + &asn_SPC_value_specs_148 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICserviceUpdateFailure_IEs_97[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_E2RemovalResponseIEs_145[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalResponseIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_98, &asn_PER_memb_id_constr_98, memb_id_constraint_97 }, + { &asn_OER_memb_id_constr_146, &asn_PER_memb_id_constr_146, memb_id_constraint_145 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalResponseIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICserviceUpdateFailure_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_99, &asn_PER_memb_criticality_constr_99, memb_criticality_constraint_97 }, + select_E2RemovalResponseIEs_criticality_type, + { &asn_OER_memb_criticality_constr_147, &asn_PER_memb_criticality_constr_147, memb_criticality_constraint_145 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_100, - select_RICserviceUpdateFailure_IEs_value_type, - { &asn_OER_memb_value_constr_100, &asn_PER_memb_value_constr_100, memb_value_constraint_97 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2RemovalResponseIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_148, + select_E2RemovalResponseIEs_value_type, + { &asn_OER_memb_value_constr_148, &asn_PER_memb_value_constr_148, memb_value_constraint_145 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICserviceUpdateFailure_IEs_tags_97[] = { +static const ber_tlv_tag_t asn_DEF_E2RemovalResponseIEs_tags_145[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdateFailure_IEs_tag2el_97[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_E2RemovalResponseIEs_tag2el_145[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateFailure_IEs_specs_97 = { - sizeof(struct RICserviceUpdateFailure_IEs), - offsetof(struct RICserviceUpdateFailure_IEs, _asn_ctx), - asn_MAP_RICserviceUpdateFailure_IEs_tag2el_97, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_E2RemovalResponseIEs_specs_145 = { + sizeof(struct E2RemovalResponseIEs), + offsetof(struct E2RemovalResponseIEs, _asn_ctx), + asn_MAP_E2RemovalResponseIEs_tag2el_145, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateFailure_IEs = { - "RICserviceUpdateFailure-IEs", - "RICserviceUpdateFailure-IEs", +asn_TYPE_descriptor_t asn_DEF_E2RemovalResponseIEs = { + "E2RemovalResponseIEs", + "E2RemovalResponseIEs", &asn_OP_SEQUENCE, - asn_DEF_RICserviceUpdateFailure_IEs_tags_97, - sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_97) - /sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_97[0]), /* 1 */ - asn_DEF_RICserviceUpdateFailure_IEs_tags_97, /* Same as above */ - sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_97) - /sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_97[0]), /* 1 */ + asn_DEF_E2RemovalResponseIEs_tags_145, + sizeof(asn_DEF_E2RemovalResponseIEs_tags_145) + /sizeof(asn_DEF_E2RemovalResponseIEs_tags_145[0]), /* 1 */ + asn_DEF_E2RemovalResponseIEs_tags_145, /* Same as above */ + sizeof(asn_DEF_E2RemovalResponseIEs_tags_145) + /sizeof(asn_DEF_E2RemovalResponseIEs_tags_145[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICserviceUpdateFailure_IEs_97, + asn_MBR_E2RemovalResponseIEs_145, 3, /* Elements count */ - &asn_SPC_RICserviceUpdateFailure_IEs_specs_97 /* Additional specs */ + &asn_SPC_E2RemovalResponseIEs_specs_145 /* Additional specs */ }; -static asn_TYPE_member_t asn_MBR_value_104[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs__value, choice.RANfunctionsID_List), +static asn_TYPE_member_t asn_MBR_value_152[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalFailureIEs__value, choice.TransactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_TransactionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TransactionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalFailureIEs__value, choice.Cause), + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_Cause, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "Cause" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalFailureIEs__value, choice.CriticalityDiagnostics), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANfunctionsID_List, + &asn_DEF_CriticalityDiagnostics, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "RANfunctionsID-List" + "CriticalityDiagnostics" }, }; -static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_104[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionsID-List */ -}; -static asn_CHOICE_specifics_t asn_SPC_value_specs_104 = { - sizeof(struct RICserviceQuery_IEs__value), - offsetof(struct RICserviceQuery_IEs__value, _asn_ctx), - offsetof(struct RICserviceQuery_IEs__value, present), - sizeof(((struct RICserviceQuery_IEs__value *)0)->present), - asn_MAP_value_tag2el_104, - 1, /* Count of tags in the map */ - 0, 0, +static const unsigned asn_MAP_value_to_canonical_152[] = { 0, 2, 1 }; +static const unsigned asn_MAP_value_from_canonical_152[] = { 0, 2, 1 }; +static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_152[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, 0, 0 }, /* CriticalityDiagnostics */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* ricRequest */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* e2Node */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 1, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 1, 0, 0 } /* misc */ +}; +static asn_CHOICE_specifics_t asn_SPC_value_specs_152 = { + sizeof(struct E2RemovalFailureIEs__value), + offsetof(struct E2RemovalFailureIEs__value, _asn_ctx), + offsetof(struct E2RemovalFailureIEs__value, present), + sizeof(((struct E2RemovalFailureIEs__value *)0)->present), + asn_MAP_value_tag2el_152, + 8, /* Count of tags in the map */ + asn_MAP_value_to_canonical_152, + asn_MAP_value_from_canonical_152, -1 /* Extensions start */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_value_104 = { +asn_TYPE_descriptor_t asn_DEF_value_152 = { "value", "value", &asn_OP_OPEN_TYPE, @@ -7331,68 +10737,69 @@ asn_TYPE_descriptor_t asn_DEF_value_104 = { 0, /* No tags (pointer) */ 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, - asn_MBR_value_104, - 1, /* Elements count */ - &asn_SPC_value_specs_104 /* Additional specs */ + asn_MBR_value_152, + 3, /* Elements count */ + &asn_SPC_value_specs_152 /* Additional specs */ }; -asn_TYPE_member_t asn_MBR_RICserviceQuery_IEs_101[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs, id), - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), - 0, +asn_TYPE_member_t asn_MBR_E2RemovalFailureIEs_149[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalFailureIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_ProtocolIE_ID, 0, - { &asn_OER_memb_id_constr_102, &asn_PER_memb_id_constr_102, memb_id_constraint_101 }, + { &asn_OER_memb_id_constr_150, &asn_PER_memb_id_constr_150, memb_id_constraint_149 }, 0, 0, /* No default value */ "id" }, - { ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs, criticality), - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), - 0, + { ATF_NOFLAGS, 0, offsetof(struct E2RemovalFailureIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_Criticality, - select_RICserviceQuery_IEs_criticality_type, - { &asn_OER_memb_criticality_constr_103, &asn_PER_memb_criticality_constr_103, memb_criticality_constraint_101 }, + select_E2RemovalFailureIEs_criticality_type, + { &asn_OER_memb_criticality_constr_151, &asn_PER_memb_criticality_constr_151, memb_criticality_constraint_149 }, 0, 0, /* No default value */ "criticality" }, - { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs, value), - -1 /* Ambiguous tag (ANY?) */, - 0, - &asn_DEF_value_104, - select_RICserviceQuery_IEs_value_type, - { &asn_OER_memb_value_constr_104, &asn_PER_memb_value_constr_104, memb_value_constraint_101 }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2RemovalFailureIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_value_152, + select_E2RemovalFailureIEs_value_type, + { &asn_OER_memb_value_constr_152, &asn_PER_memb_value_constr_152, memb_value_constraint_149 }, 0, 0, /* No default value */ "value" }, }; -static const ber_tlv_tag_t asn_DEF_RICserviceQuery_IEs_tags_101[] = { +static const ber_tlv_tag_t asn_DEF_E2RemovalFailureIEs_tags_149[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static const asn_TYPE_tag2member_t asn_MAP_RICserviceQuery_IEs_tag2el_101[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */ - { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */ +static const asn_TYPE_tag2member_t asn_MAP_E2RemovalFailureIEs_tag2el_149[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */ }; -asn_SEQUENCE_specifics_t asn_SPC_RICserviceQuery_IEs_specs_101 = { - sizeof(struct RICserviceQuery_IEs), - offsetof(struct RICserviceQuery_IEs, _asn_ctx), - asn_MAP_RICserviceQuery_IEs_tag2el_101, - 2, /* Count of tags in the map */ +asn_SEQUENCE_specifics_t asn_SPC_E2RemovalFailureIEs_specs_149 = { + sizeof(struct E2RemovalFailureIEs), + offsetof(struct E2RemovalFailureIEs, _asn_ctx), + asn_MAP_E2RemovalFailureIEs_tag2el_149, + 3, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ -1, /* First extension addition */ }; -asn_TYPE_descriptor_t asn_DEF_RICserviceQuery_IEs = { - "RICserviceQuery-IEs", - "RICserviceQuery-IEs", +asn_TYPE_descriptor_t asn_DEF_E2RemovalFailureIEs = { + "E2RemovalFailureIEs", + "E2RemovalFailureIEs", &asn_OP_SEQUENCE, - asn_DEF_RICserviceQuery_IEs_tags_101, - sizeof(asn_DEF_RICserviceQuery_IEs_tags_101) - /sizeof(asn_DEF_RICserviceQuery_IEs_tags_101[0]), /* 1 */ - asn_DEF_RICserviceQuery_IEs_tags_101, /* Same as above */ - sizeof(asn_DEF_RICserviceQuery_IEs_tags_101) - /sizeof(asn_DEF_RICserviceQuery_IEs_tags_101[0]), /* 1 */ + asn_DEF_E2RemovalFailureIEs_tags_149, + sizeof(asn_DEF_E2RemovalFailureIEs_tags_149) + /sizeof(asn_DEF_E2RemovalFailureIEs_tags_149[0]), /* 1 */ + asn_DEF_E2RemovalFailureIEs_tags_149, /* Same as above */ + sizeof(asn_DEF_E2RemovalFailureIEs_tags_149) + /sizeof(asn_DEF_E2RemovalFailureIEs_tags_149[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICserviceQuery_IEs_101, + asn_MBR_E2RemovalFailureIEs_149, 3, /* Elements count */ - &asn_SPC_RICserviceQuery_IEs_specs_101 /* Additional specs */ + &asn_SPC_E2RemovalFailureIEs_specs_149 /* Additional specs */ }; diff --git a/e2ap/lib/ProtocolIE-FieldPair.c b/e2ap/lib/ProtocolIE-FieldPair.c index fa909ca..3f08748 100644 --- a/e2ap/lib/ProtocolIE-FieldPair.c +++ b/e2ap/lib/ProtocolIE-FieldPair.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ProtocolIE-FieldPair.h" diff --git a/e2ap/lib/ProtocolIE-ID.c b/e2ap/lib/ProtocolIE-ID.c index b0e56de..4f18ffd 100644 --- a/e2ap/lib/ProtocolIE-ID.c +++ b/e2ap/lib/ProtocolIE-ID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ProtocolIE-ID.h" diff --git a/e2ap/lib/ProtocolIE-SingleContainer.c b/e2ap/lib/ProtocolIE-SingleContainer.c index 5b06b80..0954fe0 100644 --- a/e2ap/lib/ProtocolIE-SingleContainer.c +++ b/e2ap/lib/ProtocolIE-SingleContainer.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-Containers" - * found in "E2AP-Containers-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ProtocolIE-SingleContainer.h" @@ -19,6 +19,38 @@ * This type is implemented using RICaction_NotAdmitted_ItemIEs, * so here we adjust the DEF accordingly. */ +/* + * This type is implemented using RICsubscription_withCause_ItemIEs, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using E2nodeComponentConfigAddition_ItemIEs, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using E2nodeComponentConfigUpdate_ItemIEs, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using E2nodeComponentConfigRemoval_ItemIEs, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using E2nodeTNLassociationRemoval_ItemIEs, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using E2nodeComponentConfigAdditionAck_ItemIEs, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using E2nodeComponentConfigUpdateAck_ItemIEs, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using E2nodeComponentConfigRemovalAck_ItemIEs, + * so here we adjust the DEF accordingly. + */ /* * This type is implemented using RANfunction_ItemIEs, * so here we adjust the DEF accordingly. @@ -31,117 +63,269 @@ * This type is implemented using RANfunctionIDcause_ItemIEs, * so here we adjust the DEF accordingly. */ -static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_90P0_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P0_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P0 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P0 = { "ProtocolIE-SingleContainer", "ProtocolIE-SingleContainer", &asn_OP_SEQUENCE, - asn_DEF_ProtocolIE_SingleContainer_90P0_tags_1, - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P0_tags_1) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P0_tags_1[0]), /* 1 */ - asn_DEF_ProtocolIE_SingleContainer_90P0_tags_1, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P0_tags_1) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P0_tags_1[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P0_tags_1, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P0_tags_1) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P0_tags_1[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P0_tags_1, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P0_tags_1) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P0_tags_1[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_RICaction_ToBeSetup_ItemIEs_1, 3, /* Elements count */ &asn_SPC_RICaction_ToBeSetup_ItemIEs_specs_1 /* Additional specs */ }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_90P1_tags_2[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P1_tags_2[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P1 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P1 = { "ProtocolIE-SingleContainer", "ProtocolIE-SingleContainer", &asn_OP_SEQUENCE, - asn_DEF_ProtocolIE_SingleContainer_90P1_tags_2, - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P1_tags_2) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P1_tags_2[0]), /* 1 */ - asn_DEF_ProtocolIE_SingleContainer_90P1_tags_2, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P1_tags_2) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P1_tags_2[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P1_tags_2, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P1_tags_2) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P1_tags_2[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P1_tags_2, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P1_tags_2) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P1_tags_2[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_RICaction_Admitted_ItemIEs_5, 3, /* Elements count */ &asn_SPC_RICaction_Admitted_ItemIEs_specs_5 /* Additional specs */ }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_90P2_tags_3[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P2_tags_3[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P2 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P2 = { "ProtocolIE-SingleContainer", "ProtocolIE-SingleContainer", &asn_OP_SEQUENCE, - asn_DEF_ProtocolIE_SingleContainer_90P2_tags_3, - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P2_tags_3) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P2_tags_3[0]), /* 1 */ - asn_DEF_ProtocolIE_SingleContainer_90P2_tags_3, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P2_tags_3) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P2_tags_3[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P2_tags_3, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P2_tags_3) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P2_tags_3[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P2_tags_3, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P2_tags_3) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P2_tags_3[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_RICaction_NotAdmitted_ItemIEs_9, 3, /* Elements count */ &asn_SPC_RICaction_NotAdmitted_ItemIEs_specs_9 /* Additional specs */ }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_90P3_tags_4[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P3_tags_4[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P3 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + &asn_OP_SEQUENCE, + asn_DEF_ProtocolIE_SingleContainer_188P3_tags_4, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P3_tags_4) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P3_tags_4[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P3_tags_4, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P3_tags_4) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P3_tags_4[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RICsubscription_withCause_ItemIEs_13, + 3, /* Elements count */ + &asn_SPC_RICsubscription_withCause_ItemIEs_specs_13 /* Additional specs */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P4_tags_5[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P4 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + &asn_OP_SEQUENCE, + asn_DEF_ProtocolIE_SingleContainer_188P4_tags_5, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P4_tags_5) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P4_tags_5[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P4_tags_5, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P4_tags_5) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P4_tags_5[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigAddition_ItemIEs_17, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigAddition_ItemIEs_specs_17 /* Additional specs */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P5_tags_6[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P5 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + &asn_OP_SEQUENCE, + asn_DEF_ProtocolIE_SingleContainer_188P5_tags_6, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P5_tags_6) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P5_tags_6[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P5_tags_6, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P5_tags_6) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P5_tags_6[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_21, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_21 /* Additional specs */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P6_tags_7[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P6 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + &asn_OP_SEQUENCE, + asn_DEF_ProtocolIE_SingleContainer_188P6_tags_7, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P6_tags_7) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P6_tags_7[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P6_tags_7, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P6_tags_7) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P6_tags_7[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigRemoval_ItemIEs_25, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigRemoval_ItemIEs_specs_25 /* Additional specs */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P7_tags_8[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P7 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + &asn_OP_SEQUENCE, + asn_DEF_ProtocolIE_SingleContainer_188P7_tags_8, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P7_tags_8) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P7_tags_8[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P7_tags_8, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P7_tags_8) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P7_tags_8[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeTNLassociationRemoval_ItemIEs_29, + 3, /* Elements count */ + &asn_SPC_E2nodeTNLassociationRemoval_ItemIEs_specs_29 /* Additional specs */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P8_tags_9[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P8 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + &asn_OP_SEQUENCE, + asn_DEF_ProtocolIE_SingleContainer_188P8_tags_9, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P8_tags_9) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P8_tags_9[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P8_tags_9, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P8_tags_9) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P8_tags_9[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigAdditionAck_ItemIEs_33, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigAdditionAck_ItemIEs_specs_33 /* Additional specs */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P9_tags_10[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P9 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + &asn_OP_SEQUENCE, + asn_DEF_ProtocolIE_SingleContainer_188P9_tags_10, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P9_tags_10) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P9_tags_10[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P9_tags_10, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P9_tags_10) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P9_tags_10[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_37, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_37 /* Additional specs */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P10_tags_11[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P10 = { + "ProtocolIE-SingleContainer", + "ProtocolIE-SingleContainer", + &asn_OP_SEQUENCE, + asn_DEF_ProtocolIE_SingleContainer_188P10_tags_11, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P10_tags_11) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P10_tags_11[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P10_tags_11, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P10_tags_11) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P10_tags_11[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2nodeComponentConfigRemovalAck_ItemIEs_41, + 3, /* Elements count */ + &asn_SPC_E2nodeComponentConfigRemovalAck_ItemIEs_specs_41 /* Additional specs */ +}; + +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P11_tags_12[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P3 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P11 = { "ProtocolIE-SingleContainer", "ProtocolIE-SingleContainer", &asn_OP_SEQUENCE, - asn_DEF_ProtocolIE_SingleContainer_90P3_tags_4, - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P3_tags_4) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P3_tags_4[0]), /* 1 */ - asn_DEF_ProtocolIE_SingleContainer_90P3_tags_4, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P3_tags_4) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P3_tags_4[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P11_tags_12, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P11_tags_12) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P11_tags_12[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P11_tags_12, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P11_tags_12) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P11_tags_12[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RANfunction_ItemIEs_13, + asn_MBR_RANfunction_ItemIEs_45, 3, /* Elements count */ - &asn_SPC_RANfunction_ItemIEs_specs_13 /* Additional specs */ + &asn_SPC_RANfunction_ItemIEs_specs_45 /* Additional specs */ }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_90P4_tags_5[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P12_tags_13[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P4 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P12 = { "ProtocolIE-SingleContainer", "ProtocolIE-SingleContainer", &asn_OP_SEQUENCE, - asn_DEF_ProtocolIE_SingleContainer_90P4_tags_5, - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P4_tags_5) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P4_tags_5[0]), /* 1 */ - asn_DEF_ProtocolIE_SingleContainer_90P4_tags_5, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P4_tags_5) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P4_tags_5[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P12_tags_13, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P12_tags_13) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P12_tags_13[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P12_tags_13, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P12_tags_13) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P12_tags_13[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RANfunctionID_ItemIEs_17, + asn_MBR_RANfunctionID_ItemIEs_49, 3, /* Elements count */ - &asn_SPC_RANfunctionID_ItemIEs_specs_17 /* Additional specs */ + &asn_SPC_RANfunctionID_ItemIEs_specs_49 /* Additional specs */ }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_90P5_tags_6[] = { +static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_188P13_tags_14[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_90P5 = { +asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_188P13 = { "ProtocolIE-SingleContainer", "ProtocolIE-SingleContainer", &asn_OP_SEQUENCE, - asn_DEF_ProtocolIE_SingleContainer_90P5_tags_6, - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P5_tags_6) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P5_tags_6[0]), /* 1 */ - asn_DEF_ProtocolIE_SingleContainer_90P5_tags_6, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_SingleContainer_90P5_tags_6) - /sizeof(asn_DEF_ProtocolIE_SingleContainer_90P5_tags_6[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P13_tags_14, + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P13_tags_14) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P13_tags_14[0]), /* 1 */ + asn_DEF_ProtocolIE_SingleContainer_188P13_tags_14, /* Same as above */ + sizeof(asn_DEF_ProtocolIE_SingleContainer_188P13_tags_14) + /sizeof(asn_DEF_ProtocolIE_SingleContainer_188P13_tags_14[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, - asn_MBR_RANfunctionIDcause_ItemIEs_21, + asn_MBR_RANfunctionIDcause_ItemIEs_53, 3, /* Elements count */ - &asn_SPC_RANfunctionIDcause_ItemIEs_specs_21 /* Additional specs */ + &asn_SPC_RANfunctionIDcause_ItemIEs_specs_53 /* Additional specs */ }; diff --git a/e2ap/lib/RANfunction-Item.c b/e2ap/lib/RANfunction-Item.c index f80753b..61e1b68 100644 --- a/e2ap/lib/RANfunction-Item.c +++ b/e2ap/lib/RANfunction-Item.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANfunction-Item.h" @@ -35,6 +35,15 @@ asn_TYPE_member_t asn_MBR_RANfunction_Item_1[] = { 0, 0, /* No default value */ "ranFunctionRevision" }, + { ATF_NOFLAGS, 0, offsetof(struct RANfunction_Item, ranFunctionOID), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANfunctionOID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranFunctionOID" + }, }; static const ber_tlv_tag_t asn_DEF_RANfunction_Item_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) @@ -42,15 +51,16 @@ static const ber_tlv_tag_t asn_DEF_RANfunction_Item_tags_1[] = { static const asn_TYPE_tag2member_t asn_MAP_RANfunction_Item_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranFunctionID */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranFunctionDefinition */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranFunctionRevision */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ranFunctionRevision */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ranFunctionOID */ }; asn_SEQUENCE_specifics_t asn_SPC_RANfunction_Item_specs_1 = { sizeof(struct RANfunction_Item), offsetof(struct RANfunction_Item, _asn_ctx), asn_MAP_RANfunction_Item_tag2el_1, - 3, /* Count of tags in the map */ + 4, /* Count of tags in the map */ 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ + 4, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_RANfunction_Item = { "RANfunction-Item", @@ -64,7 +74,7 @@ asn_TYPE_descriptor_t asn_DEF_RANfunction_Item = { /sizeof(asn_DEF_RANfunction_Item_tags_1[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_RANfunction_Item_1, - 3, /* Elements count */ + 4, /* Elements count */ &asn_SPC_RANfunction_Item_specs_1 /* Additional specs */ }; diff --git a/e2ap/lib/RANfunctionDefinition.c b/e2ap/lib/RANfunctionDefinition.c index 49c090f..f75adb9 100644 --- a/e2ap/lib/RANfunctionDefinition.c +++ b/e2ap/lib/RANfunctionDefinition.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANfunctionDefinition.h" diff --git a/e2ap/lib/RANfunctionID-Item.c b/e2ap/lib/RANfunctionID-Item.c index fb2b6fc..b4af182 100644 --- a/e2ap/lib/RANfunctionID-Item.c +++ b/e2ap/lib/RANfunctionID-Item.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANfunctionID-Item.h" diff --git a/e2ap/lib/RANfunctionID.c b/e2ap/lib/RANfunctionID.c index d79a9d6..22eeb79 100644 --- a/e2ap/lib/RANfunctionID.c +++ b/e2ap/lib/RANfunctionID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANfunctionID.h" diff --git a/e2ap/lib/RANfunctionIDcause-Item.c b/e2ap/lib/RANfunctionIDcause-Item.c index b74eb64..7f1ecf9 100644 --- a/e2ap/lib/RANfunctionIDcause-Item.c +++ b/e2ap/lib/RANfunctionIDcause-Item.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANfunctionIDcause-Item.h" diff --git a/e2ap/lib/RANfunctionOID.c b/e2ap/lib/RANfunctionOID.c new file mode 100644 index 0000000..53cc874 --- /dev/null +++ b/e2ap/lib/RANfunctionOID.c @@ -0,0 +1,109 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANfunctionOID.h" + +static const int permitted_alphabet_table_1[256] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ + 1, 0, 0, 0, 0, 0, 0, 2, 3, 4, 0, 5, 6, 7, 8, 9, /* . '() +,-./ */ +10,11,12,13,14,15,16,17,18,19,20, 0, 0,21, 0,22, /* 0123456789: = ? */ + 0,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37, /* ABCDEFGHIJKLMNO */ +38,39,40,41,42,43,44,45,46,47,48, 0, 0, 0, 0, 0, /* PQRSTUVWXYZ */ + 0,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63, /* abcdefghijklmno */ +64,65,66,67,68,69,70,71,72,73,74, 0, 0, 0, 0, 0, /* pqrstuvwxyz */ +}; +static const int permitted_alphabet_code2value_1[74] = { +32,39,40,41,43,44,45,46,47,48,49,50,51,52,53,54, +55,56,57,58,61,63,65,66,67,68,69,70,71,72,73,74, +75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90, +97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112, +113,114,115,116,117,118,119,120,121,122,}; + + +static int check_permitted_alphabet_1(const void *sptr) { + const int *table = permitted_alphabet_table_1; + /* The underlying type is PrintableString */ + const PrintableString_t *st = (const PrintableString_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!table[cv]) return -1; + } + return 0; +} + +int +RANfunctionOID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const PrintableString_t *st = (const PrintableString_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 1000) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int asn_PER_MAP_RANfunctionOID_1_v2c(unsigned int value) { + if(value >= sizeof(permitted_alphabet_table_1)/sizeof(permitted_alphabet_table_1[0])) + return -1; + return permitted_alphabet_table_1[value] - 1; +} +static int asn_PER_MAP_RANfunctionOID_1_c2v(unsigned int code) { + if(code >= sizeof(permitted_alphabet_code2value_1)/sizeof(permitted_alphabet_code2value_1[0])) + return -1; + return permitted_alphabet_code2value_1[code]; +} +/* + * This type is implemented using PrintableString, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RANfunctionOID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_RANfunctionOID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 32, 122 } /* (32..122) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 10, 10, 1, 1000 } /* (SIZE(1..1000,...)) */, + asn_PER_MAP_RANfunctionOID_1_v2c, /* Value to PER code map */ + asn_PER_MAP_RANfunctionOID_1_c2v /* PER code to value map */ +}; +static const ber_tlv_tag_t asn_DEF_RANfunctionOID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (19 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RANfunctionOID = { + "RANfunctionOID", + "RANfunctionOID", + &asn_OP_PrintableString, + asn_DEF_RANfunctionOID_tags_1, + sizeof(asn_DEF_RANfunctionOID_tags_1) + /sizeof(asn_DEF_RANfunctionOID_tags_1[0]), /* 1 */ + asn_DEF_RANfunctionOID_tags_1, /* Same as above */ + sizeof(asn_DEF_RANfunctionOID_tags_1) + /sizeof(asn_DEF_RANfunctionOID_tags_1[0]), /* 1 */ + { &asn_OER_type_RANfunctionOID_constr_1, &asn_PER_type_RANfunctionOID_constr_1, RANfunctionOID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2ap/lib/RANfunctionRevision.c b/e2ap/lib/RANfunctionRevision.c index 32cc4a5..dd84aaf 100644 --- a/e2ap/lib/RANfunctionRevision.c +++ b/e2ap/lib/RANfunctionRevision.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANfunctionRevision.h" diff --git a/e2ap/lib/RANfunctions-List.c b/e2ap/lib/RANfunctions-List.c index cf01054..2d648d3 100644 --- a/e2ap/lib/RANfunctions-List.c +++ b/e2ap/lib/RANfunctions-List.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANfunctions-List.h" @@ -10,17 +10,17 @@ #include "ProtocolIE-SingleContainer.h" static asn_oer_constraints_t asn_OER_type_RANfunctions_List_constr_1 CC_NOTUSED = { { 0, 0 }, - -1 /* (SIZE(0..256)) */}; + -1 /* (SIZE(1..256)) */}; asn_per_constraints_t asn_PER_type_RANfunctions_List_constr_1 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 9, 9, 0, 256 } /* (SIZE(0..256)) */, + { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, 0, 0 /* No PER value map */ }; asn_TYPE_member_t asn_MBR_RANfunctions_List_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_ProtocolIE_SingleContainer_90P3, + &asn_DEF_ProtocolIE_SingleContainer_188P11, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RANfunctionsID-List.c b/e2ap/lib/RANfunctionsID-List.c index b888995..d3712eb 100644 --- a/e2ap/lib/RANfunctionsID-List.c +++ b/e2ap/lib/RANfunctionsID-List.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANfunctionsID-List.h" @@ -10,17 +10,17 @@ #include "ProtocolIE-SingleContainer.h" static asn_oer_constraints_t asn_OER_type_RANfunctionsID_List_constr_1 CC_NOTUSED = { { 0, 0 }, - -1 /* (SIZE(0..256)) */}; + -1 /* (SIZE(1..256)) */}; asn_per_constraints_t asn_PER_type_RANfunctionsID_List_constr_1 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 9, 9, 0, 256 } /* (SIZE(0..256)) */, + { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, 0, 0 /* No PER value map */ }; asn_TYPE_member_t asn_MBR_RANfunctionsID_List_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_ProtocolIE_SingleContainer_90P4, + &asn_DEF_ProtocolIE_SingleContainer_188P12, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RANfunctionsIDcause-List.c b/e2ap/lib/RANfunctionsIDcause-List.c index e1ae0d2..5d90502 100644 --- a/e2ap/lib/RANfunctionsIDcause-List.c +++ b/e2ap/lib/RANfunctionsIDcause-List.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANfunctionsIDcause-List.h" @@ -10,17 +10,17 @@ #include "ProtocolIE-SingleContainer.h" static asn_oer_constraints_t asn_OER_type_RANfunctionsIDcause_List_constr_1 CC_NOTUSED = { { 0, 0 }, - -1 /* (SIZE(0..256)) */}; + -1 /* (SIZE(1..256)) */}; asn_per_constraints_t asn_PER_type_RANfunctionsIDcause_List_constr_1 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 9, 9, 0, 256 } /* (SIZE(0..256)) */, + { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, 0, 0 /* No PER value map */ }; asn_TYPE_member_t asn_MBR_RANfunctionsIDcause_List_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_ProtocolIE_SingleContainer_90P5, + &asn_DEF_ProtocolIE_SingleContainer_188P13, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICaction-Admitted-Item.c b/e2ap/lib/RICaction-Admitted-Item.c index 27e741d..cb1efd3 100644 --- a/e2ap/lib/RICaction-Admitted-Item.c +++ b/e2ap/lib/RICaction-Admitted-Item.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICaction-Admitted-Item.h" diff --git a/e2ap/lib/RICaction-Admitted-List.c b/e2ap/lib/RICaction-Admitted-List.c index e9e8a5b..581859d 100644 --- a/e2ap/lib/RICaction-Admitted-List.c +++ b/e2ap/lib/RICaction-Admitted-List.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICaction-Admitted-List.h" @@ -20,7 +20,7 @@ asn_TYPE_member_t asn_MBR_RICaction_Admitted_List_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_ProtocolIE_SingleContainer_90P1, + &asn_DEF_ProtocolIE_SingleContainer_188P1, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICaction-NotAdmitted-Item.c b/e2ap/lib/RICaction-NotAdmitted-Item.c index 86212ed..5947c32 100644 --- a/e2ap/lib/RICaction-NotAdmitted-Item.c +++ b/e2ap/lib/RICaction-NotAdmitted-Item.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICaction-NotAdmitted-Item.h" diff --git a/e2ap/lib/RICaction-NotAdmitted-List.c b/e2ap/lib/RICaction-NotAdmitted-List.c index 7c7f6e2..fe3e04d 100644 --- a/e2ap/lib/RICaction-NotAdmitted-List.c +++ b/e2ap/lib/RICaction-NotAdmitted-List.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICaction-NotAdmitted-List.h" @@ -20,7 +20,7 @@ asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_List_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_ProtocolIE_SingleContainer_90P2, + &asn_DEF_ProtocolIE_SingleContainer_188P2, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICaction-ToBeSetup-Item.c b/e2ap/lib/RICaction-ToBeSetup-Item.c index 1e78073..d597565 100644 --- a/e2ap/lib/RICaction-ToBeSetup-Item.c +++ b/e2ap/lib/RICaction-ToBeSetup-Item.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICaction-ToBeSetup-Item.h" diff --git a/e2ap/lib/RICactionDefinition.c b/e2ap/lib/RICactionDefinition.c index 3f157ba..672f679 100644 --- a/e2ap/lib/RICactionDefinition.c +++ b/e2ap/lib/RICactionDefinition.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICactionDefinition.h" diff --git a/e2ap/lib/RICactionID.c b/e2ap/lib/RICactionID.c index 73658f5..e4beeab 100644 --- a/e2ap/lib/RICactionID.c +++ b/e2ap/lib/RICactionID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICactionID.h" diff --git a/e2ap/lib/RICactionType.c b/e2ap/lib/RICactionType.c index bfd33d5..b37a0af 100644 --- a/e2ap/lib/RICactionType.c +++ b/e2ap/lib/RICactionType.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICactionType.h" diff --git a/e2ap/lib/RICactions-ToBeSetup-List.c b/e2ap/lib/RICactions-ToBeSetup-List.c index 93905c3..52718f5 100644 --- a/e2ap/lib/RICactions-ToBeSetup-List.c +++ b/e2ap/lib/RICactions-ToBeSetup-List.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICactions-ToBeSetup-List.h" @@ -20,7 +20,7 @@ asn_TYPE_member_t asn_MBR_RICactions_ToBeSetup_List_1[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_ProtocolIE_SingleContainer_90P0, + &asn_DEF_ProtocolIE_SingleContainer_188P0, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICcallProcessID.c b/e2ap/lib/RICcallProcessID.c index fd2d0eb..676490c 100644 --- a/e2ap/lib/RICcallProcessID.c +++ b/e2ap/lib/RICcallProcessID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICcallProcessID.h" diff --git a/e2ap/lib/RICcontrolAckRequest.c b/e2ap/lib/RICcontrolAckRequest.c index 1db6bee..d29515d 100644 --- a/e2ap/lib/RICcontrolAckRequest.c +++ b/e2ap/lib/RICcontrolAckRequest.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICcontrolAckRequest.h" @@ -15,27 +15,25 @@ static asn_oer_constraints_t asn_OER_type_RICcontrolAckRequest_constr_1 CC_NOTUS { 0, 0 }, -1}; asn_per_constraints_t asn_PER_type_RICcontrolAckRequest_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static const asn_INTEGER_enum_map_t asn_MAP_RICcontrolAckRequest_value2enum_1[] = { { 0, 5, "noAck" }, - { 1, 3, "ack" }, - { 2, 4, "nAck" } + { 1, 3, "ack" } /* This list is extensible */ }; static const unsigned int asn_MAP_RICcontrolAckRequest_enum2value_1[] = { 1, /* ack(1) */ - 2, /* nAck(2) */ 0 /* noAck(0) */ /* This list is extensible */ }; const asn_INTEGER_specifics_t asn_SPC_RICcontrolAckRequest_specs_1 = { asn_MAP_RICcontrolAckRequest_value2enum_1, /* "tag" => N; sorted by tag */ asn_MAP_RICcontrolAckRequest_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 4, /* Extensions before this member */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ 1, /* Strict enumeration */ 0, /* Native long size */ 0 diff --git a/e2ap/lib/RICcontrolAcknowledge.c b/e2ap/lib/RICcontrolAcknowledge.c index 85011b6..ba86509 100644 --- a/e2ap/lib/RICcontrolAcknowledge.c +++ b/e2ap/lib/RICcontrolAcknowledge.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICcontrolAcknowledge.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICcontrolAcknowledge_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P8, + &asn_DEF_ProtocolIE_Container_185P9, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICcontrolFailure.c b/e2ap/lib/RICcontrolFailure.c index a847f9f..cfcab05 100644 --- a/e2ap/lib/RICcontrolFailure.c +++ b/e2ap/lib/RICcontrolFailure.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICcontrolFailure.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICcontrolFailure_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P9, + &asn_DEF_ProtocolIE_Container_185P10, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICcontrolHeader.c b/e2ap/lib/RICcontrolHeader.c index 3accabb..3c5b52d 100644 --- a/e2ap/lib/RICcontrolHeader.c +++ b/e2ap/lib/RICcontrolHeader.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICcontrolHeader.h" diff --git a/e2ap/lib/RICcontrolMessage.c b/e2ap/lib/RICcontrolMessage.c index d865706..b2b670f 100644 --- a/e2ap/lib/RICcontrolMessage.c +++ b/e2ap/lib/RICcontrolMessage.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICcontrolMessage.h" diff --git a/e2ap/lib/RICcontrolOutcome.c b/e2ap/lib/RICcontrolOutcome.c index 806038d..871d3a5 100644 --- a/e2ap/lib/RICcontrolOutcome.c +++ b/e2ap/lib/RICcontrolOutcome.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICcontrolOutcome.h" diff --git a/e2ap/lib/RICcontrolRequest.c b/e2ap/lib/RICcontrolRequest.c index 43a04e2..ed96331 100644 --- a/e2ap/lib/RICcontrolRequest.c +++ b/e2ap/lib/RICcontrolRequest.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICcontrolRequest.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICcontrolRequest_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P7, + &asn_DEF_ProtocolIE_Container_185P8, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICcontrolStatus.c b/e2ap/lib/RICcontrolStatus.c deleted file mode 100644 index d2873fc..0000000 --- a/e2ap/lib/RICcontrolStatus.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#include "RICcontrolStatus.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RICcontrolStatus_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RICcontrolStatus_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RICcontrolStatus_value2enum_1[] = { - { 0, 7, "success" }, - { 1, 8, "rejected" }, - { 2, 6, "failed" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_RICcontrolStatus_enum2value_1[] = { - 2, /* failed(2) */ - 1, /* rejected(1) */ - 0 /* success(0) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_RICcontrolStatus_specs_1 = { - asn_MAP_RICcontrolStatus_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RICcontrolStatus_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 4, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RICcontrolStatus_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RICcontrolStatus = { - "RICcontrolStatus", - "RICcontrolStatus", - &asn_OP_NativeEnumerated, - asn_DEF_RICcontrolStatus_tags_1, - sizeof(asn_DEF_RICcontrolStatus_tags_1) - /sizeof(asn_DEF_RICcontrolStatus_tags_1[0]), /* 1 */ - asn_DEF_RICcontrolStatus_tags_1, /* Same as above */ - sizeof(asn_DEF_RICcontrolStatus_tags_1) - /sizeof(asn_DEF_RICcontrolStatus_tags_1[0]), /* 1 */ - { &asn_OER_type_RICcontrolStatus_constr_1, &asn_PER_type_RICcontrolStatus_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RICcontrolStatus_specs_1 /* Additional specs */ -}; - diff --git a/e2ap/lib/RICeventTriggerDefinition.c b/e2ap/lib/RICeventTriggerDefinition.c index a13ddbd..7ddc77e 100644 --- a/e2ap/lib/RICeventTriggerDefinition.c +++ b/e2ap/lib/RICeventTriggerDefinition.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICeventTriggerDefinition.h" diff --git a/e2ap/lib/RICindication.c b/e2ap/lib/RICindication.c index 5c40aa5..dfa4a62 100644 --- a/e2ap/lib/RICindication.c +++ b/e2ap/lib/RICindication.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICindication.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICindication_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICindication, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P6, + &asn_DEF_ProtocolIE_Container_185P7, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICindicationHeader.c b/e2ap/lib/RICindicationHeader.c index d252382..d5c04c7 100644 --- a/e2ap/lib/RICindicationHeader.c +++ b/e2ap/lib/RICindicationHeader.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICindicationHeader.h" diff --git a/e2ap/lib/RICindicationMessage.c b/e2ap/lib/RICindicationMessage.c index bd0ac0f..d934db4 100644 --- a/e2ap/lib/RICindicationMessage.c +++ b/e2ap/lib/RICindicationMessage.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICindicationMessage.h" diff --git a/e2ap/lib/RICindicationSN.c b/e2ap/lib/RICindicationSN.c index efd2d48..f361be3 100644 --- a/e2ap/lib/RICindicationSN.c +++ b/e2ap/lib/RICindicationSN.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICindicationSN.h" diff --git a/e2ap/lib/RICindicationType.c b/e2ap/lib/RICindicationType.c index 58935bb..3f59b37 100644 --- a/e2ap/lib/RICindicationType.c +++ b/e2ap/lib/RICindicationType.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICindicationType.h" diff --git a/e2ap/lib/RICrequestID.c b/e2ap/lib/RICrequestID.c index 1422a31..9c0f3c7 100644 --- a/e2ap/lib/RICrequestID.c +++ b/e2ap/lib/RICrequestID.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICrequestID.h" diff --git a/e2ap/lib/RICserviceQuery.c b/e2ap/lib/RICserviceQuery.c index a7d452e..63aa6ea 100644 --- a/e2ap/lib/RICserviceQuery.c +++ b/e2ap/lib/RICserviceQuery.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICserviceQuery.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICserviceQuery_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P19, + &asn_DEF_ProtocolIE_Container_185P20, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICserviceUpdate.c b/e2ap/lib/RICserviceUpdate.c deleted file mode 100644 index a562e2f..0000000 --- a/e2ap/lib/RICserviceUpdate.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#include "RICserviceUpdate.h" - -static asn_TYPE_member_t asn_MBR_RICserviceUpdate_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate, protocolIEs), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P16, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "protocolIEs" - }, -}; -static const ber_tlv_tag_t asn_DEF_RICserviceUpdate_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdate_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdate_specs_1 = { - sizeof(struct RICserviceUpdate), - offsetof(struct RICserviceUpdate, _asn_ctx), - asn_MAP_RICserviceUpdate_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RICserviceUpdate = { - "RICserviceUpdate", - "RICserviceUpdate", - &asn_OP_SEQUENCE, - asn_DEF_RICserviceUpdate_tags_1, - sizeof(asn_DEF_RICserviceUpdate_tags_1) - /sizeof(asn_DEF_RICserviceUpdate_tags_1[0]), /* 1 */ - asn_DEF_RICserviceUpdate_tags_1, /* Same as above */ - sizeof(asn_DEF_RICserviceUpdate_tags_1) - /sizeof(asn_DEF_RICserviceUpdate_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICserviceUpdate_1, - 1, /* Elements count */ - &asn_SPC_RICserviceUpdate_specs_1 /* Additional specs */ -}; - diff --git a/e2ap/lib/RICserviceUpdateAcknowledge.c b/e2ap/lib/RICserviceUpdateAcknowledge.c deleted file mode 100644 index 845acb2..0000000 --- a/e2ap/lib/RICserviceUpdateAcknowledge.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#include "RICserviceUpdateAcknowledge.h" - -static asn_TYPE_member_t asn_MBR_RICserviceUpdateAcknowledge_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge, protocolIEs), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P17, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "protocolIEs" - }, -}; -static const ber_tlv_tag_t asn_DEF_RICserviceUpdateAcknowledge_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdateAcknowledge_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateAcknowledge_specs_1 = { - sizeof(struct RICserviceUpdateAcknowledge), - offsetof(struct RICserviceUpdateAcknowledge, _asn_ctx), - asn_MAP_RICserviceUpdateAcknowledge_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateAcknowledge = { - "RICserviceUpdateAcknowledge", - "RICserviceUpdateAcknowledge", - &asn_OP_SEQUENCE, - asn_DEF_RICserviceUpdateAcknowledge_tags_1, - sizeof(asn_DEF_RICserviceUpdateAcknowledge_tags_1) - /sizeof(asn_DEF_RICserviceUpdateAcknowledge_tags_1[0]), /* 1 */ - asn_DEF_RICserviceUpdateAcknowledge_tags_1, /* Same as above */ - sizeof(asn_DEF_RICserviceUpdateAcknowledge_tags_1) - /sizeof(asn_DEF_RICserviceUpdateAcknowledge_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICserviceUpdateAcknowledge_1, - 1, /* Elements count */ - &asn_SPC_RICserviceUpdateAcknowledge_specs_1 /* Additional specs */ -}; - diff --git a/e2ap/lib/RICserviceUpdateFailure.c b/e2ap/lib/RICserviceUpdateFailure.c deleted file mode 100644 index f54da69..0000000 --- a/e2ap/lib/RICserviceUpdateFailure.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` - */ - -#include "RICserviceUpdateFailure.h" - -static asn_TYPE_member_t asn_MBR_RICserviceUpdateFailure_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure, protocolIEs), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P18, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "protocolIEs" - }, -}; -static const ber_tlv_tag_t asn_DEF_RICserviceUpdateFailure_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdateFailure_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateFailure_specs_1 = { - sizeof(struct RICserviceUpdateFailure), - offsetof(struct RICserviceUpdateFailure, _asn_ctx), - asn_MAP_RICserviceUpdateFailure_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateFailure = { - "RICserviceUpdateFailure", - "RICserviceUpdateFailure", - &asn_OP_SEQUENCE, - asn_DEF_RICserviceUpdateFailure_tags_1, - sizeof(asn_DEF_RICserviceUpdateFailure_tags_1) - /sizeof(asn_DEF_RICserviceUpdateFailure_tags_1[0]), /* 1 */ - asn_DEF_RICserviceUpdateFailure_tags_1, /* Same as above */ - sizeof(asn_DEF_RICserviceUpdateFailure_tags_1) - /sizeof(asn_DEF_RICserviceUpdateFailure_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RICserviceUpdateFailure_1, - 1, /* Elements count */ - &asn_SPC_RICserviceUpdateFailure_specs_1 /* Additional specs */ -}; - diff --git a/e2ap/lib/RICsubscription-List-withCause.c b/e2ap/lib/RICsubscription-List-withCause.c new file mode 100644 index 0000000..7667e5f --- /dev/null +++ b/e2ap/lib/RICsubscription-List-withCause.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RICsubscription-List-withCause.h" + +#include "ProtocolIE-SingleContainer.h" +static asn_oer_constraints_t asn_OER_type_RICsubscription_List_withCause_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4294967295)) */}; +asn_per_constraints_t asn_PER_type_RICsubscription_List_withCause_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 32, -1, 1, 4294967295 } /* (SIZE(1..4294967295)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RICsubscription_List_withCause_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ProtocolIE_SingleContainer_188P3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RICsubscription_List_withCause_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RICsubscription_List_withCause_specs_1 = { + sizeof(struct RICsubscription_List_withCause), + offsetof(struct RICsubscription_List_withCause, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RICsubscription_List_withCause = { + "RICsubscription-List-withCause", + "RICsubscription-List-withCause", + &asn_OP_SEQUENCE_OF, + asn_DEF_RICsubscription_List_withCause_tags_1, + sizeof(asn_DEF_RICsubscription_List_withCause_tags_1) + /sizeof(asn_DEF_RICsubscription_List_withCause_tags_1[0]), /* 1 */ + asn_DEF_RICsubscription_List_withCause_tags_1, /* Same as above */ + sizeof(asn_DEF_RICsubscription_List_withCause_tags_1) + /sizeof(asn_DEF_RICsubscription_List_withCause_tags_1[0]), /* 1 */ + { &asn_OER_type_RICsubscription_List_withCause_constr_1, &asn_PER_type_RICsubscription_List_withCause_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RICsubscription_List_withCause_1, + 1, /* Single element */ + &asn_SPC_RICsubscription_List_withCause_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/RICsubscription-withCause-Item.c b/e2ap/lib/RICsubscription-withCause-Item.c new file mode 100644 index 0000000..4d5fcaa --- /dev/null +++ b/e2ap/lib/RICsubscription-withCause-Item.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RICsubscription-withCause-Item.h" + +asn_TYPE_member_t asn_MBR_RICsubscription_withCause_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_Item, ricRequestID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ricRequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_Item, ranFunctionID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranFunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_Item, cause), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_Cause, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cause" + }, +}; +static const ber_tlv_tag_t asn_DEF_RICsubscription_withCause_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RICsubscription_withCause_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequestID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranFunctionID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* cause */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RICsubscription_withCause_Item_specs_1 = { + sizeof(struct RICsubscription_withCause_Item), + offsetof(struct RICsubscription_withCause_Item, _asn_ctx), + asn_MAP_RICsubscription_withCause_Item_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RICsubscription_withCause_Item = { + "RICsubscription-withCause-Item", + "RICsubscription-withCause-Item", + &asn_OP_SEQUENCE, + asn_DEF_RICsubscription_withCause_Item_tags_1, + sizeof(asn_DEF_RICsubscription_withCause_Item_tags_1) + /sizeof(asn_DEF_RICsubscription_withCause_Item_tags_1[0]), /* 1 */ + asn_DEF_RICsubscription_withCause_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RICsubscription_withCause_Item_tags_1) + /sizeof(asn_DEF_RICsubscription_withCause_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RICsubscription_withCause_Item_1, + 3, /* Elements count */ + &asn_SPC_RICsubscription_withCause_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/RICsubscriptionDeleteFailure.c b/e2ap/lib/RICsubscriptionDeleteFailure.c index 88a9836..de13c57 100644 --- a/e2ap/lib/RICsubscriptionDeleteFailure.c +++ b/e2ap/lib/RICsubscriptionDeleteFailure.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICsubscriptionDeleteFailure.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteFailure_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P5, + &asn_DEF_ProtocolIE_Container_185P5, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICsubscriptionDeleteRequest.c b/e2ap/lib/RICsubscriptionDeleteRequest.c index 627f516..a16ea24 100644 --- a/e2ap/lib/RICsubscriptionDeleteRequest.c +++ b/e2ap/lib/RICsubscriptionDeleteRequest.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICsubscriptionDeleteRequest.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequest_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P3, + &asn_DEF_ProtocolIE_Container_185P3, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICsubscriptionDeleteRequired.c b/e2ap/lib/RICsubscriptionDeleteRequired.c new file mode 100644 index 0000000..d5f03b3 --- /dev/null +++ b/e2ap/lib/RICsubscriptionDeleteRequired.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RICsubscriptionDeleteRequired.h" + +static asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequired_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired, protocolIEs), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ProtocolIE_Container_185P6, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "protocolIEs" + }, +}; +static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteRequired_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteRequired_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequired_specs_1 = { + sizeof(struct RICsubscriptionDeleteRequired), + offsetof(struct RICsubscriptionDeleteRequired, _asn_ctx), + asn_MAP_RICsubscriptionDeleteRequired_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequired = { + "RICsubscriptionDeleteRequired", + "RICsubscriptionDeleteRequired", + &asn_OP_SEQUENCE, + asn_DEF_RICsubscriptionDeleteRequired_tags_1, + sizeof(asn_DEF_RICsubscriptionDeleteRequired_tags_1) + /sizeof(asn_DEF_RICsubscriptionDeleteRequired_tags_1[0]), /* 1 */ + asn_DEF_RICsubscriptionDeleteRequired_tags_1, /* Same as above */ + sizeof(asn_DEF_RICsubscriptionDeleteRequired_tags_1) + /sizeof(asn_DEF_RICsubscriptionDeleteRequired_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RICsubscriptionDeleteRequired_1, + 1, /* Elements count */ + &asn_SPC_RICsubscriptionDeleteRequired_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/RICsubscriptionDeleteResponse.c b/e2ap/lib/RICsubscriptionDeleteResponse.c index fc0f72d..6b8278d 100644 --- a/e2ap/lib/RICsubscriptionDeleteResponse.c +++ b/e2ap/lib/RICsubscriptionDeleteResponse.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICsubscriptionDeleteResponse.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteResponse_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P4, + &asn_DEF_ProtocolIE_Container_185P4, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICsubscriptionDetails.c b/e2ap/lib/RICsubscriptionDetails.c index 9033dc2..974ab3e 100644 --- a/e2ap/lib/RICsubscriptionDetails.c +++ b/e2ap/lib/RICsubscriptionDetails.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICsubscriptionDetails.h" diff --git a/e2ap/lib/RICsubscriptionFailure.c b/e2ap/lib/RICsubscriptionFailure.c index f765319..035603c 100644 --- a/e2ap/lib/RICsubscriptionFailure.c +++ b/e2ap/lib/RICsubscriptionFailure.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICsubscriptionFailure.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICsubscriptionFailure_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P2, + &asn_DEF_ProtocolIE_Container_185P2, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICsubscriptionRequest.c b/e2ap/lib/RICsubscriptionRequest.c index 46c4fe8..10ced39 100644 --- a/e2ap/lib/RICsubscriptionRequest.c +++ b/e2ap/lib/RICsubscriptionRequest.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICsubscriptionRequest.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICsubscriptionRequest_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P0, + &asn_DEF_ProtocolIE_Container_185P0, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICsubscriptionResponse.c b/e2ap/lib/RICsubscriptionResponse.c index 56c92ae..8b615e2 100644 --- a/e2ap/lib/RICsubscriptionResponse.c +++ b/e2ap/lib/RICsubscriptionResponse.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICsubscriptionResponse.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_RICsubscriptionResponse_1[] = { { ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P1, + &asn_DEF_ProtocolIE_Container_185P1, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/RICsubsequentAction.c b/e2ap/lib/RICsubsequentAction.c index 8b3248c..4730601 100644 --- a/e2ap/lib/RICsubsequentAction.c +++ b/e2ap/lib/RICsubsequentAction.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICsubsequentAction.h" diff --git a/e2ap/lib/RICsubsequentActionType.c b/e2ap/lib/RICsubsequentActionType.c index f88a331..a9c8bcf 100644 --- a/e2ap/lib/RICsubsequentActionType.c +++ b/e2ap/lib/RICsubsequentActionType.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICsubsequentActionType.h" diff --git a/e2ap/lib/RICtimeToWait.c b/e2ap/lib/RICtimeToWait.c index 94fc184..b7c5574 100644 --- a/e2ap/lib/RICtimeToWait.c +++ b/e2ap/lib/RICtimeToWait.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RICtimeToWait.h" @@ -15,57 +15,55 @@ static asn_oer_constraints_t asn_OER_type_RICtimeToWait_constr_1 CC_NOTUSED = { { 0, 0 }, -1}; asn_per_constraints_t asn_PER_type_RICtimeToWait_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 17 } /* (0..17,...) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 16 } /* (0..16,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; static const asn_INTEGER_enum_map_t asn_MAP_RICtimeToWait_value2enum_1[] = { - { 0, 4, "zero" }, - { 1, 4, "w1ms" }, - { 2, 4, "w2ms" }, - { 3, 4, "w5ms" }, - { 4, 5, "w10ms" }, - { 5, 5, "w20ms" }, - { 6, 5, "w30ms" }, - { 7, 5, "w40ms" }, - { 8, 5, "w50ms" }, - { 9, 6, "w100ms" }, - { 10, 6, "w200ms" }, - { 11, 6, "w500ms" }, - { 12, 3, "w1s" }, - { 13, 3, "w2s" }, - { 14, 3, "w5s" }, - { 15, 4, "w10s" }, - { 16, 4, "w20s" }, - { 17, 4, "w60s" } + { 0, 4, "w1ms" }, + { 1, 4, "w2ms" }, + { 2, 4, "w5ms" }, + { 3, 5, "w10ms" }, + { 4, 5, "w20ms" }, + { 5, 5, "w30ms" }, + { 6, 5, "w40ms" }, + { 7, 5, "w50ms" }, + { 8, 6, "w100ms" }, + { 9, 6, "w200ms" }, + { 10, 6, "w500ms" }, + { 11, 3, "w1s" }, + { 12, 3, "w2s" }, + { 13, 3, "w5s" }, + { 14, 4, "w10s" }, + { 15, 4, "w20s" }, + { 16, 4, "w60s" } /* This list is extensible */ }; static const unsigned int asn_MAP_RICtimeToWait_enum2value_1[] = { - 9, /* w100ms(9) */ - 4, /* w10ms(4) */ - 15, /* w10s(15) */ - 1, /* w1ms(1) */ - 12, /* w1s(12) */ - 10, /* w200ms(10) */ - 5, /* w20ms(5) */ - 16, /* w20s(16) */ - 2, /* w2ms(2) */ - 13, /* w2s(13) */ - 6, /* w30ms(6) */ - 7, /* w40ms(7) */ - 11, /* w500ms(11) */ - 8, /* w50ms(8) */ - 3, /* w5ms(3) */ - 14, /* w5s(14) */ - 17, /* w60s(17) */ - 0 /* zero(0) */ + 8, /* w100ms(8) */ + 3, /* w10ms(3) */ + 14, /* w10s(14) */ + 0, /* w1ms(0) */ + 11, /* w1s(11) */ + 9, /* w200ms(9) */ + 4, /* w20ms(4) */ + 15, /* w20s(15) */ + 1, /* w2ms(1) */ + 12, /* w2s(12) */ + 5, /* w30ms(5) */ + 6, /* w40ms(6) */ + 10, /* w500ms(10) */ + 7, /* w50ms(7) */ + 2, /* w5ms(2) */ + 13, /* w5s(13) */ + 16 /* w60s(16) */ /* This list is extensible */ }; const asn_INTEGER_specifics_t asn_SPC_RICtimeToWait_specs_1 = { asn_MAP_RICtimeToWait_value2enum_1, /* "tag" => N; sorted by tag */ asn_MAP_RICtimeToWait_enum2value_1, /* N => "tag"; sorted by N */ - 18, /* Number of elements in the maps */ - 19, /* Extensions before this member */ + 17, /* Number of elements in the maps */ + 18, /* Extensions before this member */ 1, /* Strict enumeration */ 0, /* Native long size */ 0 diff --git a/e2ap/lib/ResetRequest.c b/e2ap/lib/ResetRequest.c index f40779f..fd0d659 100644 --- a/e2ap/lib/ResetRequest.c +++ b/e2ap/lib/ResetRequest.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ResetRequest.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_ResetRequest_1[] = { { ATF_NOFLAGS, 0, offsetof(struct ResetRequest, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P14, + &asn_DEF_ProtocolIE_Container_185P18, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/ResetResponse.c b/e2ap/lib/ResetResponse.c index 47c433a..f6eeb56 100644 --- a/e2ap/lib/ResetResponse.c +++ b/e2ap/lib/ResetResponse.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Contents" - * found in "E2AP-PDU-Contents-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "ResetResponse.h" @@ -11,7 +11,7 @@ static asn_TYPE_member_t asn_MBR_ResetResponse_1[] = { { ATF_NOFLAGS, 0, offsetof(struct ResetResponse, protocolIEs), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_ProtocolIE_Container_87P15, + &asn_DEF_ProtocolIE_Container_185P19, 0, { 0, 0, 0 }, 0, 0, /* No default value */ diff --git a/e2ap/lib/SuccessfulOutcome.c b/e2ap/lib/SuccessfulOutcome.c index 7328b32..7a31285 100644 --- a/e2ap/lib/SuccessfulOutcome.c +++ b/e2ap/lib/SuccessfulOutcome.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Descriptions" - * found in "E2AP-PDU-Descriptions-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "SuccessfulOutcome.h" @@ -11,20 +11,24 @@ static const long asn_VAL_1_id_RICsubscription = 8; static const long asn_VAL_1_reject = 0; static const long asn_VAL_2_id_RICsubscriptionDelete = 9; static const long asn_VAL_2_reject = 0; -static const long asn_VAL_3_id_RICserviceUpdate = 7; +static const long asn_VAL_3_id_RICcontrol = 4; static const long asn_VAL_3_reject = 0; -static const long asn_VAL_4_id_RICcontrol = 4; +static const long asn_VAL_4_id_E2setup = 1; static const long asn_VAL_4_reject = 0; -static const long asn_VAL_5_id_E2setup = 1; +static const long asn_VAL_5_id_E2nodeConfigurationUpdate = 10; static const long asn_VAL_5_reject = 0; static const long asn_VAL_6_id_Reset = 3; static const long asn_VAL_6_reject = 0; -static const long asn_VAL_7_id_RICindication = 5; -static const long asn_VAL_7_ignore = 1; -static const long asn_VAL_8_id_RICserviceQuery = 6; +static const long asn_VAL_7_id_E2removal = 13; +static const long asn_VAL_7_reject = 0; +static const long asn_VAL_8_id_RICindication = 5; static const long asn_VAL_8_ignore = 1; -static const long asn_VAL_9_id_ErrorIndication = 2; +static const long asn_VAL_9_id_RICserviceQuery = 6; static const long asn_VAL_9_ignore = 1; +static const long asn_VAL_10_id_ErrorIndication = 2; +static const long asn_VAL_10_ignore = 1; +static const long asn_VAL_11_id_RICsubscriptionDeleteRequired = 12; +static const long asn_VAL_11_ignore = 1; static const asn_ioc_cell_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows[] = { { "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_RICsubscriptionResponse }, @@ -36,44 +40,54 @@ static const asn_ioc_cell_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows[] = { { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_RICsubscriptionDeleteFailure }, { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_2_id_RICsubscriptionDelete }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_2_reject }, - { "&InitiatingMessage", aioc__type, &asn_DEF_RICserviceUpdate }, - { "&SuccessfulOutcome", aioc__type, &asn_DEF_RICserviceUpdateAcknowledge }, - { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_RICserviceUpdateFailure }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_3_id_RICserviceUpdate }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_3_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_RICcontrolRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_RICcontrolAcknowledge }, { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_RICcontrolFailure }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_4_id_RICcontrol }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_4_reject }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_3_id_RICcontrol }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_3_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_E2setupRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_E2setupResponse }, { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_E2setupFailure }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_5_id_E2setup }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_4_id_E2setup }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_4_reject }, + { "&InitiatingMessage", aioc__type, &asn_DEF_E2nodeConfigurationUpdate }, + { "&SuccessfulOutcome", aioc__type, &asn_DEF_E2nodeConfigurationUpdateAcknowledge }, + { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_E2nodeConfigurationUpdateFailure }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_5_id_E2nodeConfigurationUpdate }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_5_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_ResetRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_ResetResponse }, { "&UnsuccessfulOutcome", }, { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_6_id_Reset }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_6_reject }, + { "&InitiatingMessage", aioc__type, &asn_DEF_E2RemovalRequest }, + { "&SuccessfulOutcome", aioc__type, &asn_DEF_E2RemovalResponse }, + { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_E2RemovalFailure }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_7_id_E2removal }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_7_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_RICindication }, { "&SuccessfulOutcome", }, { "&UnsuccessfulOutcome", }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_7_id_RICindication }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_7_ignore }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_8_id_RICindication }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_8_ignore }, { "&InitiatingMessage", aioc__type, &asn_DEF_RICserviceQuery }, { "&SuccessfulOutcome", }, { "&UnsuccessfulOutcome", }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_8_id_RICserviceQuery }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_8_ignore }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_9_id_RICserviceQuery }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_9_ignore }, { "&InitiatingMessage", aioc__type, &asn_DEF_ErrorIndication }, { "&SuccessfulOutcome", }, { "&UnsuccessfulOutcome", }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_9_id_ErrorIndication }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_9_ignore } + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_10_id_ErrorIndication }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_10_ignore }, + { "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionDeleteRequired }, + { "&SuccessfulOutcome", }, + { "&UnsuccessfulOutcome", }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_11_id_RICsubscriptionDeleteRequired }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_11_ignore } }; static const asn_ioc_set_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1[] = { - { 9, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows } + { 11, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows } }; static int memb_procedureCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, @@ -235,15 +249,6 @@ static asn_TYPE_member_t asn_MBR_value_4[] = { 0, 0, /* No default value */ "RICsubscriptionDeleteResponse" }, - { ATF_NOFLAGS, 0, offsetof(struct SuccessfulOutcome__value, choice.RICserviceUpdateAcknowledge), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RICserviceUpdateAcknowledge, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICserviceUpdateAcknowledge" - }, { ATF_NOFLAGS, 0, offsetof(struct SuccessfulOutcome__value, choice.RICcontrolAcknowledge), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -262,6 +267,15 @@ static asn_TYPE_member_t asn_MBR_value_4[] = { 0, 0, /* No default value */ "E2setupResponse" }, + { ATF_NOFLAGS, 0, offsetof(struct SuccessfulOutcome__value, choice.E2nodeConfigurationUpdateAcknowledge), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeConfigurationUpdateAcknowledge, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeConfigurationUpdateAcknowledge" + }, { ATF_NOFLAGS, 0, offsetof(struct SuccessfulOutcome__value, choice.ResetResponse), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -271,14 +285,24 @@ static asn_TYPE_member_t asn_MBR_value_4[] = { 0, 0, /* No default value */ "ResetResponse" }, + { ATF_NOFLAGS, 0, offsetof(struct SuccessfulOutcome__value, choice.E2RemovalResponse), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2RemovalResponse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2RemovalResponse" + }, }; static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_4[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 5 }, /* RICsubscriptionResponse */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 4 }, /* RICsubscriptionDeleteResponse */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 3 }, /* RICserviceUpdateAcknowledge */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 2 }, /* RICcontrolAcknowledge */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 1 }, /* E2setupResponse */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 0 } /* ResetResponse */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 6 }, /* RICsubscriptionResponse */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 5 }, /* RICsubscriptionDeleteResponse */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 4 }, /* RICcontrolAcknowledge */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 3 }, /* E2setupResponse */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 2 }, /* E2nodeConfigurationUpdateAcknowledge */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 1 }, /* ResetResponse */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 0 } /* E2RemovalResponse */ }; static asn_CHOICE_specifics_t asn_SPC_value_specs_4 = { sizeof(struct SuccessfulOutcome__value), @@ -286,7 +310,7 @@ static asn_CHOICE_specifics_t asn_SPC_value_specs_4 = { offsetof(struct SuccessfulOutcome__value, present), sizeof(((struct SuccessfulOutcome__value *)0)->present), asn_MAP_value_tag2el_4, - 6, /* Count of tags in the map */ + 7, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; @@ -301,7 +325,7 @@ asn_TYPE_descriptor_t asn_DEF_value_4 = { 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, asn_MBR_value_4, - 6, /* Elements count */ + 7, /* Elements count */ &asn_SPC_value_specs_4 /* Additional specs */ }; diff --git a/e2ap/lib/TNLinformation.c b/e2ap/lib/TNLinformation.c new file mode 100644 index 0000000..4fcb86f --- /dev/null +++ b/e2ap/lib/TNLinformation.c @@ -0,0 +1,140 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "TNLinformation.h" + +static int +memb_tnlAddress_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size >= 1 && size <= 160)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_tnlPort_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 16)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_tnlAddress_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +static asn_per_constraints_t asn_PER_memb_tnlAddress_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 1, 160 } /* (SIZE(1..160,...)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_tnlPort_constr_3 CC_NOTUSED = { + { 0, 0 }, + 16 /* (SIZE(16..16)) */}; +static asn_per_constraints_t asn_PER_memb_tnlPort_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 16, 16 } /* (SIZE(16..16)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TNLinformation_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TNLinformation, tnlAddress), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BIT_STRING, + 0, + { &asn_OER_memb_tnlAddress_constr_2, &asn_PER_memb_tnlAddress_constr_2, memb_tnlAddress_constraint_1 }, + 0, 0, /* No default value */ + "tnlAddress" + }, + { ATF_POINTER, 1, offsetof(struct TNLinformation, tnlPort), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BIT_STRING, + 0, + { &asn_OER_memb_tnlPort_constr_3, &asn_PER_memb_tnlPort_constr_3, memb_tnlPort_constraint_1 }, + 0, 0, /* No default value */ + "tnlPort" + }, +}; +static const int asn_MAP_TNLinformation_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_TNLinformation_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TNLinformation_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tnlAddress */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tnlPort */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TNLinformation_specs_1 = { + sizeof(struct TNLinformation), + offsetof(struct TNLinformation, _asn_ctx), + asn_MAP_TNLinformation_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TNLinformation_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TNLinformation = { + "TNLinformation", + "TNLinformation", + &asn_OP_SEQUENCE, + asn_DEF_TNLinformation_tags_1, + sizeof(asn_DEF_TNLinformation_tags_1) + /sizeof(asn_DEF_TNLinformation_tags_1[0]), /* 1 */ + asn_DEF_TNLinformation_tags_1, /* Same as above */ + sizeof(asn_DEF_TNLinformation_tags_1) + /sizeof(asn_DEF_TNLinformation_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TNLinformation_1, + 2, /* Elements count */ + &asn_SPC_TNLinformation_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/TNLusage.c b/e2ap/lib/TNLusage.c new file mode 100644 index 0000000..f26200a --- /dev/null +++ b/e2ap/lib/TNLusage.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "TNLusage.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_TNLusage_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_TNLusage_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_TNLusage_value2enum_1[] = { + { 0, 11, "ric-service" }, + { 1, 16, "support-function" }, + { 2, 4, "both" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_TNLusage_enum2value_1[] = { + 2, /* both(2) */ + 0, /* ric-service(0) */ + 1 /* support-function(1) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_TNLusage_specs_1 = { + asn_MAP_TNLusage_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_TNLusage_enum2value_1, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 4, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_TNLusage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_TNLusage = { + "TNLusage", + "TNLusage", + &asn_OP_NativeEnumerated, + asn_DEF_TNLusage_tags_1, + sizeof(asn_DEF_TNLusage_tags_1) + /sizeof(asn_DEF_TNLusage_tags_1[0]), /* 1 */ + asn_DEF_TNLusage_tags_1, /* Same as above */ + sizeof(asn_DEF_TNLusage_tags_1) + /sizeof(asn_DEF_TNLusage_tags_1[0]), /* 1 */ + { &asn_OER_type_TNLusage_constr_1, &asn_PER_type_TNLusage_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_TNLusage_specs_1 /* Additional specs */ +}; + diff --git a/e2ap/lib/TimeToWait.c b/e2ap/lib/TimeToWait.c index a969d55..4c82197 100644 --- a/e2ap/lib/TimeToWait.c +++ b/e2ap/lib/TimeToWait.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "TimeToWait.h" diff --git a/e2sm/lib/ProcedureCode.c b/e2ap/lib/TransactionID.c similarity index 51% rename from e2sm/lib/ProcedureCode.c rename to e2ap/lib/TransactionID.c index a3ef61a..88af0a2 100644 --- a/e2sm/lib/ProcedureCode.c +++ b/e2ap/lib/TransactionID.c @@ -1,14 +1,14 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "ProcedureCode.h" +#include "TransactionID.h" int -ProcedureCode_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +TransactionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; @@ -36,28 +36,28 @@ ProcedureCode_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using NativeInteger, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_ProcedureCode_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..255) */, +static asn_oer_constraints_t asn_OER_type_TransactionID_constr_1 CC_NOTUSED = { + { 0, 0 }, -1}; -static asn_per_constraints_t asn_PER_type_ProcedureCode_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, +asn_per_constraints_t asn_PER_type_TransactionID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 0, 255 } /* (0..255,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -static const ber_tlv_tag_t asn_DEF_ProcedureCode_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_TransactionID_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_ProcedureCode = { - "ProcedureCode", - "ProcedureCode", +asn_TYPE_descriptor_t asn_DEF_TransactionID = { + "TransactionID", + "TransactionID", &asn_OP_NativeInteger, - asn_DEF_ProcedureCode_tags_1, - sizeof(asn_DEF_ProcedureCode_tags_1) - /sizeof(asn_DEF_ProcedureCode_tags_1[0]), /* 1 */ - asn_DEF_ProcedureCode_tags_1, /* Same as above */ - sizeof(asn_DEF_ProcedureCode_tags_1) - /sizeof(asn_DEF_ProcedureCode_tags_1[0]), /* 1 */ - { &asn_OER_type_ProcedureCode_constr_1, &asn_PER_type_ProcedureCode_constr_1, ProcedureCode_constraint }, + asn_DEF_TransactionID_tags_1, + sizeof(asn_DEF_TransactionID_tags_1) + /sizeof(asn_DEF_TransactionID_tags_1[0]), /* 1 */ + asn_DEF_TransactionID_tags_1, /* Same as above */ + sizeof(asn_DEF_TransactionID_tags_1) + /sizeof(asn_DEF_TransactionID_tags_1[0]), /* 1 */ + { &asn_OER_type_TransactionID_constr_1, &asn_PER_type_TransactionID_constr_1, TransactionID_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/e2ap/lib/TriggeringMessage.c b/e2ap/lib/TriggeringMessage.c index 7d1dbe8..bffc17b 100644 --- a/e2ap/lib/TriggeringMessage.c +++ b/e2ap/lib/TriggeringMessage.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) * From ASN.1 module "E2AP-CommonDataTypes" - * found in "E2AP-CommonDataTypes-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "TriggeringMessage.h" diff --git a/e2ap/lib/TypeOfError.c b/e2ap/lib/TypeOfError.c index e37ab6b..dca810d 100644 --- a/e2ap/lib/TypeOfError.c +++ b/e2ap/lib/TypeOfError.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-IEs" - * found in "E2AP-IEs-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "TypeOfError.h" diff --git a/e2ap/lib/UnsuccessfulOutcome.c b/e2ap/lib/UnsuccessfulOutcome.c index 5c85aa8..2bd4abf 100644 --- a/e2ap/lib/UnsuccessfulOutcome.c +++ b/e2ap/lib/UnsuccessfulOutcome.c @@ -1,8 +1,8 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2AP-PDU-Descriptions" - * found in "E2AP-PDU-Descriptions-v01.00.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example` + * From ASN.1 module "E2AP-CommonDataTypes" + * found in "e2ap.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "UnsuccessfulOutcome.h" @@ -11,20 +11,24 @@ static const long asn_VAL_1_id_RICsubscription = 8; static const long asn_VAL_1_reject = 0; static const long asn_VAL_2_id_RICsubscriptionDelete = 9; static const long asn_VAL_2_reject = 0; -static const long asn_VAL_3_id_RICserviceUpdate = 7; +static const long asn_VAL_3_id_RICcontrol = 4; static const long asn_VAL_3_reject = 0; -static const long asn_VAL_4_id_RICcontrol = 4; +static const long asn_VAL_4_id_E2setup = 1; static const long asn_VAL_4_reject = 0; -static const long asn_VAL_5_id_E2setup = 1; +static const long asn_VAL_5_id_E2nodeConfigurationUpdate = 10; static const long asn_VAL_5_reject = 0; static const long asn_VAL_6_id_Reset = 3; static const long asn_VAL_6_reject = 0; -static const long asn_VAL_7_id_RICindication = 5; -static const long asn_VAL_7_ignore = 1; -static const long asn_VAL_8_id_RICserviceQuery = 6; +static const long asn_VAL_7_id_E2removal = 13; +static const long asn_VAL_7_reject = 0; +static const long asn_VAL_8_id_RICindication = 5; static const long asn_VAL_8_ignore = 1; -static const long asn_VAL_9_id_ErrorIndication = 2; +static const long asn_VAL_9_id_RICserviceQuery = 6; static const long asn_VAL_9_ignore = 1; +static const long asn_VAL_10_id_ErrorIndication = 2; +static const long asn_VAL_10_ignore = 1; +static const long asn_VAL_11_id_RICsubscriptionDeleteRequired = 12; +static const long asn_VAL_11_ignore = 1; static const asn_ioc_cell_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows[] = { { "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_RICsubscriptionResponse }, @@ -36,44 +40,54 @@ static const asn_ioc_cell_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows[] = { { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_RICsubscriptionDeleteFailure }, { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_2_id_RICsubscriptionDelete }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_2_reject }, - { "&InitiatingMessage", aioc__type, &asn_DEF_RICserviceUpdate }, - { "&SuccessfulOutcome", aioc__type, &asn_DEF_RICserviceUpdateAcknowledge }, - { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_RICserviceUpdateFailure }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_3_id_RICserviceUpdate }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_3_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_RICcontrolRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_RICcontrolAcknowledge }, { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_RICcontrolFailure }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_4_id_RICcontrol }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_4_reject }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_3_id_RICcontrol }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_3_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_E2setupRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_E2setupResponse }, { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_E2setupFailure }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_5_id_E2setup }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_4_id_E2setup }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_4_reject }, + { "&InitiatingMessage", aioc__type, &asn_DEF_E2nodeConfigurationUpdate }, + { "&SuccessfulOutcome", aioc__type, &asn_DEF_E2nodeConfigurationUpdateAcknowledge }, + { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_E2nodeConfigurationUpdateFailure }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_5_id_E2nodeConfigurationUpdate }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_5_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_ResetRequest }, { "&SuccessfulOutcome", aioc__type, &asn_DEF_ResetResponse }, { "&UnsuccessfulOutcome", }, { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_6_id_Reset }, { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_6_reject }, + { "&InitiatingMessage", aioc__type, &asn_DEF_E2RemovalRequest }, + { "&SuccessfulOutcome", aioc__type, &asn_DEF_E2RemovalResponse }, + { "&UnsuccessfulOutcome", aioc__type, &asn_DEF_E2RemovalFailure }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_7_id_E2removal }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_7_reject }, { "&InitiatingMessage", aioc__type, &asn_DEF_RICindication }, { "&SuccessfulOutcome", }, { "&UnsuccessfulOutcome", }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_7_id_RICindication }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_7_ignore }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_8_id_RICindication }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_8_ignore }, { "&InitiatingMessage", aioc__type, &asn_DEF_RICserviceQuery }, { "&SuccessfulOutcome", }, { "&UnsuccessfulOutcome", }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_8_id_RICserviceQuery }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_8_ignore }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_9_id_RICserviceQuery }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_9_ignore }, { "&InitiatingMessage", aioc__type, &asn_DEF_ErrorIndication }, { "&SuccessfulOutcome", }, { "&UnsuccessfulOutcome", }, - { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_9_id_ErrorIndication }, - { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_9_ignore } + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_10_id_ErrorIndication }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_10_ignore }, + { "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionDeleteRequired }, + { "&SuccessfulOutcome", }, + { "&UnsuccessfulOutcome", }, + { "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_11_id_RICsubscriptionDeleteRequired }, + { "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_11_ignore } }; static const asn_ioc_set_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1[] = { - { 9, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows } + { 11, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows } }; static int memb_procedureCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, @@ -235,15 +249,6 @@ static asn_TYPE_member_t asn_MBR_value_4[] = { 0, 0, /* No default value */ "RICsubscriptionDeleteFailure" }, - { ATF_NOFLAGS, 0, offsetof(struct UnsuccessfulOutcome__value, choice.RICserviceUpdateFailure), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RICserviceUpdateFailure, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "RICserviceUpdateFailure" - }, { ATF_NOFLAGS, 0, offsetof(struct UnsuccessfulOutcome__value, choice.RICcontrolFailure), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -262,13 +267,32 @@ static asn_TYPE_member_t asn_MBR_value_4[] = { 0, 0, /* No default value */ "E2setupFailure" }, + { ATF_NOFLAGS, 0, offsetof(struct UnsuccessfulOutcome__value, choice.E2nodeConfigurationUpdateFailure), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2nodeConfigurationUpdateFailure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2nodeConfigurationUpdateFailure" + }, + { ATF_NOFLAGS, 0, offsetof(struct UnsuccessfulOutcome__value, choice.E2RemovalFailure), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2RemovalFailure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "E2RemovalFailure" + }, }; static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_4[] = { - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 4 }, /* RICsubscriptionFailure */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 3 }, /* RICsubscriptionDeleteFailure */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 2 }, /* RICserviceUpdateFailure */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 1 }, /* RICcontrolFailure */ - { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 0 } /* E2setupFailure */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 5 }, /* RICsubscriptionFailure */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 4 }, /* RICsubscriptionDeleteFailure */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 3 }, /* RICcontrolFailure */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 2 }, /* E2setupFailure */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 1 }, /* E2nodeConfigurationUpdateFailure */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 0 } /* E2RemovalFailure */ }; static asn_CHOICE_specifics_t asn_SPC_value_specs_4 = { sizeof(struct UnsuccessfulOutcome__value), @@ -276,7 +300,7 @@ static asn_CHOICE_specifics_t asn_SPC_value_specs_4 = { offsetof(struct UnsuccessfulOutcome__value, present), sizeof(((struct UnsuccessfulOutcome__value *)0)->present), asn_MAP_value_tag2el_4, - 5, /* Count of tags in the map */ + 6, /* Count of tags in the map */ 0, 0, -1 /* Extensions start */ }; @@ -291,7 +315,7 @@ asn_TYPE_descriptor_t asn_DEF_value_4 = { 0, /* No tags (count) */ { 0, 0, OPEN_TYPE_constraint }, asn_MBR_value_4, - 5, /* Elements count */ + 6, /* Elements count */ &asn_SPC_value_specs_4 /* Additional specs */ }; diff --git a/e2ap/lib/asn_internal.c b/e2ap/lib/asn_internal.c index 1aff95f..004660b 100644 --- a/e2ap/lib/asn_internal.c +++ b/e2ap/lib/asn_internal.c @@ -26,11 +26,12 @@ asn__format_to_callback(int (*cb)(const void *, size_t, void *key), void *key, buf_size <<= 1; if(buf == scratch) { buf = MALLOC(buf_size); - if(!buf) return -1; + if(!buf) { va_end(args); return -1; } } else { void *p = REALLOC(buf, buf_size); if(!p) { FREEMEM(buf); + va_end(args); return -1; } buf = p; diff --git a/e2ap/lib/asn_random_fill.c b/e2ap/lib/asn_random_fill.c index eb8ed8f..819cf70 100644 --- a/e2ap/lib/asn_random_fill.c +++ b/e2ap/lib/asn_random_fill.c @@ -48,11 +48,7 @@ asn_random_between(intmax_t lb, intmax_t rb) { for(; got_entropy < range;) { got_entropy = (got_entropy << 24) | 0xffffff; -#ifdef WIN32 //MCHECK - value = (value << 24) | (rand() % 0xffffff); -#else value = (value << 24) | (random() % 0xffffff); -#endif } return lb + (intmax_t)(value % (range + 1)); diff --git a/e2ap/lib/per_support.c b/e2ap/lib/per_support.c index 2285677..2c87a76 100644 --- a/e2ap/lib/per_support.c +++ b/e2ap/lib/per_support.c @@ -310,9 +310,12 @@ aper_get_length(asn_per_data_t *pd, int range, int ebits, int *repeat) { *repeat = 0; - if (range <= 65536 && range >= 0) - return aper_get_nsnnwn(pd, range); - + // First check effective_bits parameter. + if (ebits >= 0) { + if (range <= 65536 && range >= 0) + return aper_get_nsnnwn(pd, range); + } + if (aper_get_align(pd) < 0) return -1; diff --git a/e2ap/wrapper.c b/e2ap/wrapper.c index 1e38f0f..7dad60c 100644 --- a/e2ap/wrapper.c +++ b/e2ap/wrapper.c @@ -139,4 +139,76 @@ ssize_t e2ap_encode_ric_control_request_message(void *buffer, size_t buf_size, l return encode_E2AP_PDU(init, buffer, buf_size); } - +RICControlAcknowledge* e2ap_decode_ric_control_acknowledge_message(void *buffer, size_t buf_size) +{ + E2AP_PDU_t *pdu = decode_E2AP_PDU(buffer, buf_size); + if ( pdu != NULL && pdu->present == E2AP_PDU_PR_successfulOutcome) + { + SuccessfulOutcome_t* successfulOutcome = pdu->choice.successfulOutcome; + if ( successfulOutcome->procedureCode == ProcedureCode_id_RICcontrol + && successfulOutcome->value.present == SuccessfulOutcome__value_PR_RICcontrolAcknowledge) + { + RICcontrolAcknowledge_t *controlAck = &(successfulOutcome->value.choice.RICcontrolAcknowledge); + RICControlAcknowledge *msg = (RICControlAcknowledge *)calloc(1, sizeof(RICControlAcknowledge)); + int i = 0; + for (i; i < controlAck->protocolIEs.list.count; ++i ) + { + if(controlAck->protocolIEs.list.array[i]->id == ProtocolIE_ID_id_RICrequestID) + { + msg->requestorID = controlAck->protocolIEs.list.array[i]->value.choice.RICrequestID.ricRequestorID; + msg->instanceID = controlAck->protocolIEs.list.array[i]->value.choice.RICrequestID.ricInstanceID; + } + else if (controlAck->protocolIEs.list.array[i]->id == ProtocolIE_ID_id_RANfunctionID) { + msg->ranfunctionID = controlAck->protocolIEs.list.array[i]->value.choice.RANfunctionID; + } + else if(controlAck->protocolIEs.list.array[i]->id == ProtocolIE_ID_id_RICcallProcessID) { + size_t callProcessIDSize = controlAck->protocolIEs.list.array[i]->value.choice.RICcallProcessID.size; + msg->callProcessID = calloc(1, callProcessIDSize); + if (!msg->callProcessID) { + fprintf(stderr, "alloc RICcallProcessID failed\n"); + e2ap_free_decoded_ric_control_ack(msg); + ASN_STRUCT_FREE(asn_DEF_E2AP_PDU, pdu); + return NULL; + } + + memcpy(msg->callProcessID, controlAck->protocolIEs.list.array[i]->value.choice.RICcallProcessID.buf, callProcessIDSize); + msg->callProcessIDSize = callProcessIDSize; + } + else if(controlAck->protocolIEs.list.array[i]->id == ProtocolIE_ID_id_RICcontrolOutcome) { + size_t ricControlOutComeSize = controlAck->protocolIEs.list.array[i]->value.choice.RICcontrolOutcome.size; + msg->ricControlOutCome = calloc(1, ricControlOutComeSize); + if (!msg->ricControlOutCome) { + fprintf(stderr, "alloc ricControlOutCome failed\n"); + e2ap_free_decoded_ric_control_ack(msg); + ASN_STRUCT_FREE(asn_DEF_E2AP_PDU, pdu); + return NULL; + } + + memcpy(msg->ricControlOutCome, controlAck->protocolIEs.list.array[i]->value.choice.RICcontrolOutcome.buf, ricControlOutComeSize); + msg->ricControlOutComeSize = ricControlOutComeSize; + } + } + return msg; + } + } + + if(pdu != NULL) + ASN_STRUCT_FREE(asn_DEF_E2AP_PDU, pdu); + return NULL; +} + +void e2ap_free_decoded_ric_control_ack(RICControlAcknowledge* msg) { + if(msg == NULL) { + return; + } + if(msg->callProcessID != NULL) { + free(msg->callProcessID); + msg->callProcessID = NULL; + } + if(msg->ricControlOutCome != NULL) { + free(msg->ricControlOutCome); + msg->ricControlOutCome = NULL; + } + free(msg); + msg = NULL; +} diff --git a/e2ap/wrapper.h b/e2ap/wrapper.h index af1ec2e..e8dbadb 100644 --- a/e2ap/wrapper.h +++ b/e2ap/wrapper.h @@ -10,11 +10,24 @@ #include "ProtocolIE-Field.h" #include "RICactionDefinition.h" #include "RICsubsequentAction.h" -#include "CauseRIC.h" +//#include "CauseRIC.h" + +typedef struct RICControlAcknowledgeMsg { + long requestorID; + long instanceID; + long ranfunctionID; + uint8_t *callProcessID; + size_t callProcessIDSize; + uint8_t *ricControlOutCome; + size_t ricControlOutComeSize; +}RICControlAcknowledge; size_t encode_E2AP_PDU(E2AP_PDU_t* pdu, void* buffer, size_t buf_size); E2AP_PDU_t* decode_E2AP_PDU(const void* buffer, size_t buf_size); /* RICcontrol */ ssize_t e2ap_encode_ric_control_request_message(void *buffer, size_t buf_size, long ricRequestorID, long ricRequestSequenceNumber, long ranFunctionID, void *ricControlHdr, size_t ricControlHdrSize, void *ricControlMsg, size_t ricControlMsgSize); + +RICControlAcknowledge* e2ap_decode_ric_control_acknowledge_message(void *buffer, size_t buf_size); +void e2ap_free_decoded_ric_control_ack(RICControlAcknowledge* msg); #endif /* _WRAPPER_H_ */ diff --git a/e2ap/wrapper.o b/e2ap/wrapper.o new file mode 100644 index 0000000000000000000000000000000000000000..59246c9d2f7786a098ab8ae834ee4c845a43137f GIT binary patch literal 8416 zcmcIpZEO_B86JP|S->u!h7yvV8i<@P^ARE-q3xOD%sSX$87}-t(B?R=v4wr-?(GSv z0;M%>ySX4)B9)L@B}6K%l~k40KXnl$2Wev?k=9Au=qgo-8wJ%a`QiL2uGE%3@9fO_ z_1>+KLNn5OXPR`P=CTV&n6YMepaLst!V%y8q=M&F5PakARDb#PkS-YOc~;?pM< z4Btk%Id7Qw556U-`#y<+zG%2PbWV)68~N&Wb!aB0jRi1|8~NO*k#89@@`+-T`)QLq zYPj!SBnl({guJ;U6W-%I?-s2!ATZxj^sL<98~LT4;U8{;29$l%w{zc+o$^BWcCUDH z(OK~bDact=OQQUV>2~As?NYKcPa0g~6NA=VAvmd#c+nHuQoy7}F-c5} zW@W&aYH;`MH_1jaLYX_}wv59k6Hwn@$j!&##hZ_4q ze$$ zv^NQcIO$um@Wf$f#BtG*A#P>$l$z@>;DX`4Z>Rt-oyHiZG4^>(CU&kIv3ubE|K%=19FGkhNw>t3wzH;#az-1Cm zVgPc_!ApZovi~+}MS>qjf*-=bxZ*p4B3bU)~C#dUXy`zypE;#ssVoHXw=(!5;V9Y<=doxJBxJS%JZ|ADE6 zazzm~2w)k+C4r6Es9EKst0-TXvxDh=Fqc_!@*&w1Oiyz30lxg;Z> zz4E>?Ee7>BH^~>Q^Ps<$`rHz}IR1XE#eVh9(oQGH z5I8b0oHhP~zw&4tiLSylDEP>beC8Y0&4h?Fq?4Rys0l{m(}dlu7`XOUESXMcoQRc9 zW!kOCy6ls<7K>zecP15yZ)#{YTX!ZR9m%e4tDUlwYH3P$IbBJoD}A`d%4U;?E#JiJ z+13=Zt#9V6tkbm9Z=&w1KiX57v}0$w+dMO~DV{YQX6o}OJHtx0TQ*D%IC!Hisu%W|&#htA9JfO7I&ZOW6K37k_-Ia=Y z^W2+rVws*9KZ#wj*prdE#Gzc;$wju*KT*HovBz`rY2(R_TkAJ$e#k?m*MwN9?iJr^ z6BWm5EACygVBr8Z}hkfYFC%ZHcuIyF>8jLU20-?+d|S3c=5Y;6Dn%e-51HwV4(UMaB~DwD#rZ z^)7I-|3KNx*aG&i5PMpxay$z{@D(BW>JWTg2>u9g(s@-ay^L{aJfLu!0trRNHtxqm zc*IdV+1qQ`^(oP?Z;xs2+usn|ZSH+0-qzT>_kbBQ;<4Sr%ffzA66UVvy*nD3&Ap9{ z`{Mh}{S7;snY73{Hjs>s3R0;pI(qG{ zw9^5@tdmR~F;ksKOv?14-J+Mlj10-Iz*MHEx7%_oVQotG>Oqm_OqHiimG{ja@5LZe zG82l9qjnd1k@l?Rn925b(PQUc!Rb?G4~;KXIPrWDm&WTEzMSD%g$MPYV)pb-(LCov z>@SAkMaIL&T~5MLNGE+kYyPzg56<@~h3oke7nLaEq3=e`^DM(Te~-e0{HGO8H_FD3 z;-ca*9?n0&czB$=9)i<15S8G3BMJ}d*`jc*r`hW+wlf~CC&qZVo`WIy+l+^fh}v&| zW;plT-x&{&!~ZHgsI!VDib6N8bFspM@wPSuKh1c!&a({XIxjFDuJe+@wa#v-PKYav zhwB_=Jlvljh2ZPy%!5MBTu-yYgX^18xYqNs>@7qmmfb>Gc+xX!i^p640P^&eq8^ux1W zcbnOBzkQe4-^=XX5c~5A*ZP;J{Cx z^z&JTYn}SMd5-aLoj+kX{j9G2_6FnUe*RquKA$Fu5{#204CnFuqQZmvUsJf&zhC+J zr;LZ||0Tn@{$DHnVQAv|{}_U=ROi&7ena6woTs{xc*LhK7i|WKNZ0B_r&=CuFvm<0ItvPqCR`P$4MT--LbuUr>@ynce38Gjya;9 zekKt0hq75wZ)dy*oQQj@G}`bxidDaBPvS9ooQ45)vpUTVJK1BYVek4D0Rx4MN@qS_ zRMn=GzjcEOFa0Pe7f=jDeZ;G*qRomjpyHpxi2CX;Tgrh{9>hhsIvx-t%LWR9mlsxDJ(7NBLs?sVCpK?-Np9|kI=+M?)fg9h+X$=hgXx$`fkr&xZ8F1 zk=Bg@sz3rHgaksAfA|AcB1lw71%aRx5J>O`YC)9{rKN%bl@Na*pj1MldGMXxo!!~J zy|wRrDT%ZveR95?o!4)Ezu(MnX0lp3-k2wc3MB!bTLj_c^hZ~p{M&9}&xZxU&~=MG z-s+=nf{gYSvgoKJEnf;#2sYsZ7Vw~GtHe!AeBHWfm8yi1X2m45=bSGN+6ZM zH6;OS;|AdqXz?zu)m88Ny2$tS-tQ&vdoGfG>9YG_`5%s?U-Z%!z30zG(l2=F)86x( z*8tXzSG@EiUiw-j-FuvVr4mRbkV+txKq`S$0;vR238WH8C6G!Wl|U+iR01&)klTXr zPCP$B<7u4#v-th*Hw(h=z>mR?z?;E7@a!Hz*bR1p&%8kpJ_clPJNWNSg78o953mNF zzEKb!1Lwg>PzCP+W$?=D1>q53f(?)dmqkH%5&Q|f0M3F<@bA|N!b{*G@D7jz&%Ra= zz63Ub4sHdH-XI8b;HlRL!js?>coVn@{16)$o8Tl^1{ZcCKgfcgV)Nq+uz>}x2j7Q0 zz6GdU?xV698Spj64WNZ|7NV0O-mfY>?txS1}sG3`6P@80`4=U(|Fj9?6iiIw% zs+K9)nr$j=)cdZ(J1NTUe57=Owmz5P8tc@PC6lD|K)qfqWy#D8IfQzO#Sz5hH5xUQ zX-&~;$Rw)yV7*={xqp>P_4>}Mayu1U7rImmx-@c!=s?DF#~I*2OV9aQ%JkMyEZfjX zz8t*7k~$j(bf}XtE$BX!f5K5D0_|~RNRG>0TOl1;?JDj2vn zsct4)mh-A_S7J};wKg_0BaCZPSyOe58kpUg;#7w{k9)@I9nCaY$+Sk-4nty|5?_@Vjiy5c0U9xMLqHo)tv8W(hBD5*95( zxKOGJbj=|h#e&Bo++u{5`;=M=Ztl$bdDdCQ;L62;4=CiXo* z*s<%skmOkbTP^&ue!F7Jl(@+7ut!;T!5_I|r!3#7^%>QJLL zc&I{(pFBhs9U39(0wy-PJ&i26OT7KvHjyDXG!!n%jlXf)(4EJfk0U{ckF*y;Ur zNzqz*TjBLhT6aRU%o$y6lN=T>9U8BBdGOP1vS}H1%OW;h63MwU(iHXgq*I<<#FEGT zq3}PT(^WU>Te3F0%JSxhGDVy`LCUPtX9ODm(>V8W#Jn{AXXoqRM66!`d%-Q>W^fuY|3$?4Pk~A_B4T|S`+pAX z1;0mp{~VCP6v%?#Aih5hj)Nu81RqCiUjPTdZxPdf2+V-PU^mzW48-*>A*TNq_!QU& z-U#-BpCPV44Vqv#*ae&d)ea`3U@}#@rsBKcfyHerY^}0%oZj8OJ#JSuZI0=bdnD zL7eB@=2~xFF->_5?WexdXf>Gwn>W|E!a|jy6*B(A4|A-RF1ao=GdW;K%&%i%<=C;f znx+VI!p!?}b<;vozhs<|yVR$9?%dG|Zb{H5y4emU1@ZvUJ0!Vfq%B)=cw3^cxNtIx zmE2eSEsrgGpD5wJ`pk9xeigILupI~%N&WSO7HrzkUHPW%sL62GV=D`K2tVSiH=DByzA<>m4J*x> zBn?y-E~N7!x=~AV@*O7^MyRJm+ni&nR zo7AaRB39`;$o!1w`DqSmyB@N_dq~FvVZ}Mx}{>h%#H{Y*DmCjE{me+Sw0x6pLf0)%9AgVgdX z%gtHm0V3+LYlYw7gAw!b6B2rI<+X;!|L;ZEcb=YcBmQUi`=3C(|26P1_%gT)JcIbZ z2MBmOcpLaU;{Q500_eH_qu>kR)8LcfGGhN10o@PyBA5k};H}_xZ~^-OPlNA)?|=e$ z3)lyKj(vfLfC5f|3ivDb1kQm6!TZ4r*dO>K_yc$zRKeZgKiD658GIKQ-~(V8EP;E$ z6u1@a0iVUbK@Y5g+rY1|ckpfS82CCk1Fi#)WAES?Xn>=j4t|1tgGazuz&+p+*R~Wom zHaUko*HXuUbI^XT7TUK>IOm8TQzyvr{2AX7M7OAoe-fXcb~u-@HB(*FaAU&RNz7$k zWm4N&!fA?owi61!u3X#2Z8cq?TchfUppg)=z|@$1i`=fgIEE7{RxbM`XDw!@F#=l31hOYw$U~C%H$+HPMG})r}!%-{b$x*f3Y7QO4 z5G9^kM%|)BW8si*VS(JX&miM%%dyQYx;q9lNpMVbn}hnX;A&N}TXNs0UI{}nCZB{! zrtZx@w0O@Uu}5@Davc)?#1~qSnV_5A*#}w&hdB35dw#RDpFq$=`dC-stgE>S#3e7pDU|LSmAd_TelLM_BSrsv;*2Z%Z; zKA9>h|2syf`D9L~6DHe84rc(+xCAFvEK={qxvI`US5++1G@_a~;v}+R$eVPhmu}?> zVy@^9+faex*p^WJ8XLQU;sq2MM5b)PwByV={QDTt$fU!kzG~xH%xzE9W0*OZP}ui? zUCFrRb^koV3V}X4q8)l3h`25c$4-lg+8i6tZA~KKmz{O(P%Y}aTpYTqTY)niqI-RX zv0H-S+q&MVzjt4^>fF|)HH~yzm%A11-bm!Gk$Gu5yC}#ipffmzs=s*W;sAFhHI(Za Npv=Jq?3inU{{un*)9?TQ literal 0 HcmV?d00001 diff --git a/e2sm/.wrapper.c.swn b/e2sm/.wrapper.c.swn new file mode 100644 index 0000000000000000000000000000000000000000..c897c7f47cfe5b484c904a19cd50368e903c78a1 GIT binary patch literal 24576 zcmeI3e~c7o8OKKu=+=V2l^CQi*Ftue+q>JPKPW%0UiWtK2zOrZ2R12mI_%Ewjqc7I zvopXIsZwJo|1_y-G5(`zjFJ>BU}Itx45CK=ur)QYLWoA2np7KuLNwY|@%zrqJM+%Y z?B4C(LaCiiKDW2?&b&XK_j#W8eV&=w)wg|Un5^&V6YzPTApAC^?E1~07YeuL1wq#| zgC3skqfDpLcV<%S(y7e4R3?*YbbjxYR+W3rU8ZW7y+*ZHFZ9ZpTD5ntE=^C%dQYLz zh0*ay0+9sfCjrwarPeQ-T$f2(rhZG;D)PY(OwO;)=;}xUkpvqd{5jYJ#3O)?ZFB61?U;%h^sUUn7 zNMJd5{U$;98@LF{;Kla{!bxxxJOHxbE|3Oq+$ad&05vcTQs7EV5MBX)1b+bg!3?;3 zgCJZ22f=M13C<%C@dTIw8hAf=X0agT!ShH~{1Q9}J_2q6KSY9J20Q>Jz?%yN;Rr~9 zpCI|M59|edz+&(N$m0Z{a@j#;)B1;mdHb9phB86OtM zvSLd7QPkH1X zaWXeFnCdT^QdQ}ZhV!GEq8fPUVwYJ;2(kH9KsJ-OiR#viMlw;5Diy5|Pj?eVwcGSs z6Kl#tGDab^)#A8pU`V?Zqb8cFS(A%s_l}K1thcv~?mLy4rThDK(*7soTz9R)1X)A+ z_T}^0z69y-C+pGDyxK|AcIq1;YtYDj`FvlW{a;^SK0n`v>;Z+ggyHmcU^sLdLk43_ zucxC2TpeXvtILL|t0a~7PGUu+X&o9=iq{NiK2*QUQX>N0u_l9Tmnx=AN|I8Mi#yaV z&Jr zMna~T>8cR>RCXdaL6_m7ku73L*Q)oJrTCgwO=f!A@W@b6Rt?3Nac#qQ&~^6wQPz!^ z5TlEKMN`X}p^=H)mfTn?eUPdptmxv%mVr@mXwYrnceqGb+E`OB9E&yZyKKkc^SH6t zynSqJzYwE47XQ|!$(E%B7fMxu?l{CP*zOpF+lo-T)Jj}o0-|ZWnosL;4HJv{tm;O` zL?#Y*-Ex<u;?9knxPx7pS*|vQNw_l-kig``1N=6#eA<3Y^QvuF)9Vb=d zh;^1rsH|E4eQgfqQvJG85Pb*5lGVjpk2eY7^@|NJ6)|D{I-Oy|99Tz!(}t4PwwG}_7-n-rAQ+!Y z3715Y_KMU^{XHqA2S%~sv46l&|Q!0PhQU_uaXQPe`k zEXt&dU(<0gi*4!PgPne+{I;S;X`|24{cra5=;4oMU&LF=39GC!G!S686 zv*7#S7lU;w=u(~SjWUi8Hn^ubUMSYJ{p$^#by_QyR>vuqO10{HH zvJYq_(!6J+C>fGJhY+aFUyN!+`xG}nG3)4?N;uG7ZA#m#U}c>x&bES;IvXX-d0lnx4vJZ=rEs}>Cvzj&oH#Hz7+({91v(+AqvAHDX7p6>r<>5< zk`61vgbf*THJ#W3>#vZ$3r{@PlqKU^#sh=p*1u>}(J z84ZTySWc1Hn%q1LWW!|N0rj+#aeTksp&`}GANQo)WXz#EWY%~`Tp5cq`L4~Y%W&5n zs|$JvKVoeT#|B1RV{q;aOpfJ5v7x$f@s|^RwOfvi^9o?<$W4JMGk z5#r2KqccN;Fwzxn*O@xIW=6y7CUvTrI;(UYWUAls{PYTOt{yVOdq~R@wb8H_(fdSU zW%g;LL*w?)ULjZ0X*F#sqqjyun|7&AH=CXtP)kq3v#BL_Ccmc*F7~{>xqh`?>D+=Q zOF^UMZyj6yM#ikY03mTrC%M$*#Mpp!0O4=PwZiT2x;pc53!04Nt>4S9h_z(Mc@@G$rjas#h`uYx1s)8Iqk z-^dUA6Z`}G9lQ)qf#<+&U^!R{P9t|P19pNP;9hV8IEMTIeO}-)at4>cF|ZkI0C#}f z!3pFKo&blzCx9ihj)%%og;!AmY}I1lbKGmr{yYW=Zp`hyk$XcTJ1J&I#T>GIxM3qw z2OjP)y!-*NZj|s>U=^@$NzgkS!3t@fm_MB^1Wnqfr#p{p5c<4^vrlP$g}qxz_EP7I z+rGh-!I!9Ra$^V2qPT;=oh;UG8Yntz0y{)yg$w~&;er0vVr1>VLI~i}-X|h%!{9?>>*DsFym7UgO zKDJhP0);?Ocf-mPWGzvsaAR|l?QGrj@^w%Tf%TMq$G96Tu@2l!Wc9M|psd@oK?IL( zm0>m*Yi=Uf#0F`Ai(6%QYRMo9+1$4ge>X8bx9&gS$lA5=81xL)`h&zHtSC9##;F4{ z)AYV_y^4x70pfFpEP9{wUE*+OU}c>W7;Xp5yNNHQE{pS}aHY*XseL{*X>4eOPIx1j zd)`@CIRD8GG5^W`b_M2LN-#v{&J=offV%i=*SDbQTD`^XwOQRHJJE5IvDjS4sqCbF z?*MU)-8K5_!%y+!@S6v<5Bo6+{v6nPy=UT!sfzNyLo}K%<}|v=?x5}pOR3Shpl4Ej z?g(u=Hd2D#CVHJ8bh)NxK@Sq8hC9zh(sgNu=JaXO-tt~-mRd>)bZny+RMgNlhL?+P z?pW`=CB|A|`13K3bqfq%dab6Bb+oCNJFrx+cG!1=+;iw=F|cs3N}z(4SX*}do;!3F zkJi_Yx+?0;jLqeoRt^8j)Vf+*%>qw*`yQUoY_#J4+Y!fC0ge9=B3qwRi20uaUjawJ z20(KF^gR0P|IL6t2k;nT{yf+O=yU(y29JY7U?F%FasBVX5s(8(K)?#H0KAMi|L5SR z;BJrvYrsob8ovzofZZSq{)IUIF>n~{0GH9(OMu4v7r}Ng32p>Sz%LNje+hgBltBsX z0^=YBlHi+&`45AKK@a!~;`|rD^WZF??+mN}FCyMAf&y3poq+Z6Sx$LRb)plG*!++-qb` qFXs26AR7uzcVV9#tlm!CdtqbK_+?vollP>(?Q#3H}d_f(4iW literal 0 HcmV?d00001 diff --git a/e2sm/.wrapper.c.swo b/e2sm/.wrapper.c.swo new file mode 100644 index 0000000000000000000000000000000000000000..2a127fa923aa339c6e8b386b07a5869641174b95 GIT binary patch literal 16384 zcmeHOUu+}A86PM;8fXth`@l=lT!6@NZLjU?m9*Ehnse-{Q4&JppsJ+|d-gb4WbeBB z2b!LsYI#Alk9|Qpp5YDktuN&b3AN$@fz;!LMK|92bSNlcr_SU&-nIm$o*1hR!7rr7%&VRkAW!c6_-wK zpRQKoNB#c!Q}ny{Y#&dj>1`M=3>XFs1BL;^fMLKeU>GnAe61J=hbPGI;qk4~>+|w_ zOXmDPd9-AEJtO~8$}h6_>DZfw3+ZnlRHYdY? zVZbn87%&VN1`Gp+0mFb{z%XDKFbo(5rZ8Z43Bf<|f~cqQ{a@ApSMMU^3h+Acci?Bh z^^=6W4Ge(?fUDmj^BaVCz$xH9;BVLn*#tfTAA*xV$$f??)ZNskIm_yJZs>dc zpL4s*ebyX=m0~U8t(8(|*K<0&w6lJmZ8usg#oA6}51f*{*4*MD6Yfpsm&)U?qcf#d=2>q$exh}4ai;Z#IMt_*m1XU&k8QxXXc##()0t2>B574;x-Z@G=Fw^5 zK~BhTRJYdHW}VgbP(LkEYISo! z7mc;_Kx#FLHQ(v5v?IOP#h^6wd4P8!e44JG&FsoHHZwY9*k{Rzp2@U6iKbd>{O+O@BS&$2QR&+Srms#P;E7OQ0;dTH{+(ad^e6jP=> z>xZVYKuI8Ni9cj#-0gT>u8(!L8&`9=#3H=taV$M#pOI5E5l_CvR3Q3VL%iK&EaZO2 z?ewEAr}K~0+l@BcYHzmIFO+uYHHrG`dcEP7f|p2 z7+3;cMXjF$-a}n~1sDLg0=EDJcn!7vlfW|Y8S47$z(0XUffInJ@81P>fK}i;a0d7R zAnNGHFkl$Cc?^tesqt^Bc#W8J|syiyC z>A0-r{eTnId8RtCm7#7@=S=-V=j*oXdLd1W(FcQ{0Afo{wlLI}!kJ{lgM}zqiZ$0B zplk_3AFEl<&&6w6y?z}#iu!wMQ1sk6?6iyvy5+5Pv4-BRw^?(u(a70>%T^jqmMLo2 zco5h-uq{^oo2ryr3wFj^4r#wp0NVH;uBt!?J(iRLxrKu)tZ%QbPTDDmy{5R7P{n{| zS*S#`%zxVMqohg&t`*f2DOm2IyrRDaydK@(FWR+3JK1)cnbEWuYFT1&v;liy?EA1g z;e4>`J>#IVJ*@lVO@^$s)OLr=I8*x_@{^pb^OaQYTp-&iWupxZ#Z^4a8jo%_*6R(n zyt0y8n07xLu-y%|>I7k_j~@jpu5BNq9*Js&e1MNL)Us&X_IG$lH+*Mc`+Ky``~7iP zmNn5UQLGd(43j9{0)XFn{pQD%Kzo37dF;Y0W$LS?=)mgn7fiMl`cVhlo8l{$u4vR= znHkS)>ZU8oxHYm+tOfix5uORoydKm02F2QRmaAZyYCIprZ#854V1BFP2~zh+@H&N;4ZJ8q5_q%Z7Tn=^+CnX4~UYfLbo$6S~VE@L;iY*u3K zXWQdi(REq@t-x>vCdo5}{EVub${eFlJbq!gnJ(1|Xa%$aS^=$qRzNGD70?Q31^$-` z#L)qA9X&hP?OnC|Jh1KA{Zl`*0$KsBfL1^&pcT*xXa%$aS^=$qRzNGD75EP-z#Kx} zK19e54Wz9vlG^;PxYg+ydW%cfqURIQZ>hLVg9`gU`TQpaPD7n+758 zgEF{tn2=Avhu{tH5~zU^SO62?mxs^}xCy=lAAtA3JK$w74~~MTfC0XH5ce0rIdB%7 z0LK9ZN5LKFr!>5+bkrZMfL1^&@UJQ`c3-Ub?;bN>W-DQWYOsy?un$fWRpy}Er++LW!aIJNChE$Lpi0&f8%1UZ28=8a$&`3 z$?|jcG4AuP6fVv6J6J8haG_i+mMs}^+ikhF?D|=)7038d*3!xkxJqMjxU_{E#bGa= zQh9N-pE&|GDt_c~A2-=p?1n+w{Y^Srp?HoMs_QZqi5**Zyn%=(L5G13Q}rV)(XrpKugIgkiQQYJWUaxc7+ zRd%$|b|sCkMx5f=HNzVxRnx@Sq=E%o7wD`8>=4x0i0>(6#EiD=cIet^1DzfiD!|?P zkQ$Bdg^~8dFggN{8Hr-rxK-|q-XilPH>OqZtsyl^g#Ef~h-A1&Rk1IJtLbD(#5Q+Z z#rtyhyes3uj;a#nA_>$C9zA!h9dpA<=rz2!uUBey8VN43V$kNUqqMV4)#5;dm68=3 zgY&jhnj>nCtIcP(Cg2Z?uHWOpz0q_<@8)Cpl-cK7ooTVxmsWdoVvg+fmCiV$vx}j) z!h}N|ZhN>at2VB5Cn4i@uAL)c)#@0+bk8c^-EVw$m9i+}4EvPYcGA76U*5r#G1P5Z zI84-SLqCvw_UuUsjs5O^V%k#wKK-a6xd#{3mBvz~dj6!^d#fR}Lq7@wtSH%AT1xcZ z0^mX756tg93_xd5lz4x|K@ zEH157isgZ-O#k4Rl~T5yNt11QI#CI+69V%vhquSL2DpMQQ4oY?Hy#s_suCCHD8cR6>|{S` zMow~$C2>g2%RDe^<$CAKiu!`rRUzMC>X<>z63woqEw zp=6ZFq6mGuuv*RLsUJEC-p-T@tIKA+XjaNHH95}%j^)oC+QgbwT`*^|v)RHdeYzdT X(X+XnhpmCfSvP2fxzykUhJpM89Qfm| literal 0 HcmV?d00001 diff --git a/e2sm/headers/AMF-UE-NGAP-ID.h b/e2sm/headers/AMF-UE-NGAP-ID.h new file mode 100755 index 0000000..f48bc42 --- /dev/null +++ b/e2sm/headers/AMF-UE-NGAP-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _AMF_UE_NGAP_ID_H_ +#define _AMF_UE_NGAP_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AMF-UE-NGAP-ID */ +typedef INTEGER_t AMF_UE_NGAP_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AMF_UE_NGAP_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AMF_UE_NGAP_ID; +asn_struct_free_f AMF_UE_NGAP_ID_free; +asn_struct_print_f AMF_UE_NGAP_ID_print; +asn_constr_check_f AMF_UE_NGAP_ID_constraint; +ber_type_decoder_f AMF_UE_NGAP_ID_decode_ber; +der_type_encoder_f AMF_UE_NGAP_ID_encode_der; +xer_type_decoder_f AMF_UE_NGAP_ID_decode_xer; +xer_type_encoder_f AMF_UE_NGAP_ID_encode_xer; +oer_type_decoder_f AMF_UE_NGAP_ID_decode_oer; +oer_type_encoder_f AMF_UE_NGAP_ID_encode_oer; +per_type_decoder_f AMF_UE_NGAP_ID_decode_uper; +per_type_encoder_f AMF_UE_NGAP_ID_encode_uper; +per_type_decoder_f AMF_UE_NGAP_ID_decode_aper; +per_type_encoder_f AMF_UE_NGAP_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AMF_UE_NGAP_ID_H_ */ +#include diff --git a/e2sm/headers/AMFPointer.h b/e2sm/headers/AMFPointer.h new file mode 100755 index 0000000..dafad79 --- /dev/null +++ b/e2sm/headers/AMFPointer.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _AMFPointer_H_ +#define _AMFPointer_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AMFPointer */ +typedef BIT_STRING_t AMFPointer_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AMFPointer_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AMFPointer; +asn_struct_free_f AMFPointer_free; +asn_struct_print_f AMFPointer_print; +asn_constr_check_f AMFPointer_constraint; +ber_type_decoder_f AMFPointer_decode_ber; +der_type_encoder_f AMFPointer_encode_der; +xer_type_decoder_f AMFPointer_decode_xer; +xer_type_encoder_f AMFPointer_encode_xer; +oer_type_decoder_f AMFPointer_decode_oer; +oer_type_encoder_f AMFPointer_encode_oer; +per_type_decoder_f AMFPointer_decode_uper; +per_type_encoder_f AMFPointer_encode_uper; +per_type_decoder_f AMFPointer_decode_aper; +per_type_encoder_f AMFPointer_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AMFPointer_H_ */ +#include diff --git a/e2sm/headers/AMFRegionID.h b/e2sm/headers/AMFRegionID.h new file mode 100755 index 0000000..af03c30 --- /dev/null +++ b/e2sm/headers/AMFRegionID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _AMFRegionID_H_ +#define _AMFRegionID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AMFRegionID */ +typedef BIT_STRING_t AMFRegionID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AMFRegionID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AMFRegionID; +asn_struct_free_f AMFRegionID_free; +asn_struct_print_f AMFRegionID_print; +asn_constr_check_f AMFRegionID_constraint; +ber_type_decoder_f AMFRegionID_decode_ber; +der_type_encoder_f AMFRegionID_encode_der; +xer_type_decoder_f AMFRegionID_decode_xer; +xer_type_encoder_f AMFRegionID_encode_xer; +oer_type_decoder_f AMFRegionID_decode_oer; +oer_type_encoder_f AMFRegionID_encode_oer; +per_type_decoder_f AMFRegionID_decode_uper; +per_type_encoder_f AMFRegionID_encode_uper; +per_type_decoder_f AMFRegionID_decode_aper; +per_type_encoder_f AMFRegionID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AMFRegionID_H_ */ +#include diff --git a/e2sm/headers/AMFSetID.h b/e2sm/headers/AMFSetID.h new file mode 100755 index 0000000..5d947d6 --- /dev/null +++ b/e2sm/headers/AMFSetID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _AMFSetID_H_ +#define _AMFSetID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* AMFSetID */ +typedef BIT_STRING_t AMFSetID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_AMFSetID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_AMFSetID; +asn_struct_free_f AMFSetID_free; +asn_struct_print_f AMFSetID_print; +asn_constr_check_f AMFSetID_constraint; +ber_type_decoder_f AMFSetID_decode_ber; +der_type_encoder_f AMFSetID_encode_der; +xer_type_decoder_f AMFSetID_decode_xer; +xer_type_encoder_f AMFSetID_encode_xer; +oer_type_decoder_f AMFSetID_decode_oer; +oer_type_encoder_f AMFSetID_encode_oer; +per_type_decoder_f AMFSetID_decode_uper; +per_type_encoder_f AMFSetID_encode_uper; +per_type_decoder_f AMFSetID_decode_aper; +per_type_encoder_f AMFSetID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _AMFSetID_H_ */ +#include diff --git a/e2sm/headers/BIT_STRING.h b/e2sm/headers/BIT_STRING.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/BOOLEAN.h b/e2sm/headers/BOOLEAN.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/CGI.h b/e2sm/headers/CGI.h new file mode 100755 index 0000000..4843a4e --- /dev/null +++ b/e2sm/headers/CGI.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _CGI_H_ +#define _CGI_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum CGI_PR { + CGI_PR_NOTHING, /* No components present */ + CGI_PR_nR_CGI, + CGI_PR_eUTRA_CGI + /* Extensions may appear below */ + +} CGI_PR; + +/* Forward declarations */ +struct NR_CGI; +struct EUTRA_CGI; + +/* CGI */ +typedef struct CGI { + CGI_PR present; + union CGI_u { + struct NR_CGI *nR_CGI; + struct EUTRA_CGI *eUTRA_CGI; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} CGI_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CGI; +extern asn_CHOICE_specifics_t asn_SPC_CGI_specs_1; +extern asn_TYPE_member_t asn_MBR_CGI_1[2]; +extern asn_per_constraints_t asn_PER_type_CGI_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _CGI_H_ */ +#include diff --git a/e2sm/headers/CSI-RS-Index.h b/e2sm/headers/CSI-RS-Index.h deleted file mode 100644 index 12169da..0000000 --- a/e2sm/headers/CSI-RS-Index.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _CSI_RS_Index_H_ -#define _CSI_RS_Index_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* CSI-RS-Index */ -typedef long CSI_RS_Index_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_CSI_RS_Index_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_CSI_RS_Index; -asn_struct_free_f CSI_RS_Index_free; -asn_struct_print_f CSI_RS_Index_print; -asn_constr_check_f CSI_RS_Index_constraint; -ber_type_decoder_f CSI_RS_Index_decode_ber; -der_type_encoder_f CSI_RS_Index_encode_der; -xer_type_decoder_f CSI_RS_Index_decode_xer; -xer_type_encoder_f CSI_RS_Index_encode_xer; -oer_type_decoder_f CSI_RS_Index_decode_oer; -oer_type_encoder_f CSI_RS_Index_encode_oer; -per_type_decoder_f CSI_RS_Index_decode_uper; -per_type_encoder_f CSI_RS_Index_encode_uper; -per_type_decoder_f CSI_RS_Index_decode_aper; -per_type_encoder_f CSI_RS_Index_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CSI_RS_Index_H_ */ -#include diff --git a/e2sm/headers/CallProcessBreakpoint-RANParameter-Item.h b/e2sm/headers/CallProcessBreakpoint-RANParameter-Item.h new file mode 100755 index 0000000..c22ecea --- /dev/null +++ b/e2sm/headers/CallProcessBreakpoint-RANParameter-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _CallProcessBreakpoint_RANParameter_Item_H_ +#define _CallProcessBreakpoint_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* CallProcessBreakpoint-RANParameter-Item */ +typedef struct CallProcessBreakpoint_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + /* + * This type is extensible, + * possible extensions are below. + */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} CallProcessBreakpoint_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CallProcessBreakpoint_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_CallProcessBreakpoint_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_CallProcessBreakpoint_RANParameter_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _CallProcessBreakpoint_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/CellIdentification-RANParameter-Item.h b/e2sm/headers/CellIdentification-RANParameter-Item.h new file mode 100755 index 0000000..18ea41f --- /dev/null +++ b/e2sm/headers/CellIdentification-RANParameter-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _CellIdentification_RANParameter_Item_H_ +#define _CellIdentification_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* CellIdentification-RANParameter-Item */ +typedef struct CellIdentification_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + /* + * This type is extensible, + * possible extensions are below. + */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} CellIdentification_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CellIdentification_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_CellIdentification_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_CellIdentification_RANParameter_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _CellIdentification_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/CellObjectID.h b/e2sm/headers/CellObjectID.h deleted file mode 100644 index 36c987e..0000000 --- a/e2sm/headers/CellObjectID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _CellObjectID_H_ -#define _CellObjectID_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* CellObjectID */ -typedef PrintableString_t CellObjectID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_CellObjectID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_CellObjectID; -asn_struct_free_f CellObjectID_free; -asn_struct_print_f CellObjectID_print; -asn_constr_check_f CellObjectID_constraint; -ber_type_decoder_f CellObjectID_decode_ber; -der_type_encoder_f CellObjectID_encode_der; -xer_type_decoder_f CellObjectID_decode_xer; -xer_type_encoder_f CellObjectID_encode_xer; -oer_type_decoder_f CellObjectID_decode_oer; -oer_type_encoder_f CellObjectID_encode_oer; -per_type_decoder_f CellObjectID_decode_uper; -per_type_encoder_f CellObjectID_encode_uper; -per_type_decoder_f CellObjectID_decode_aper; -per_type_encoder_f CellObjectID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _CellObjectID_H_ */ -#include diff --git a/e2sm/headers/CellResourceReportListItem.h b/e2sm/headers/CellResourceReportListItem.h deleted file mode 100644 index 85275f3..0000000 --- a/e2sm/headers/CellResourceReportListItem.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _CellResourceReportListItem_H_ -#define _CellResourceReportListItem_H_ - - -#include - -/* Including external dependencies */ -#include "NRCGI.h" -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ServedPlmnPerCellListItem; - -/* CellResourceReportListItem */ -typedef struct CellResourceReportListItem { - NRCGI_t nRCGI; - long *dl_TotalofAvailablePRBs; /* OPTIONAL */ - long *ul_TotalofAvailablePRBs; /* OPTIONAL */ - struct CellResourceReportListItem__servedPlmnPerCellList { - A_SEQUENCE_OF(struct ServedPlmnPerCellListItem) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } servedPlmnPerCellList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} CellResourceReportListItem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CellResourceReportListItem; -extern asn_SEQUENCE_specifics_t asn_SPC_CellResourceReportListItem_specs_1; -extern asn_TYPE_member_t asn_MBR_CellResourceReportListItem_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _CellResourceReportListItem_H_ */ -#include diff --git a/e2sm/headers/ControlAction-RANParameter-Item.h b/e2sm/headers/ControlAction-RANParameter-Item.h new file mode 100755 index 0000000..4c06bda --- /dev/null +++ b/e2sm/headers/ControlAction-RANParameter-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _ControlAction_RANParameter_Item_H_ +#define _ControlAction_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* ControlAction-RANParameter-Item */ +typedef struct ControlAction_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + /* + * This type is extensible, + * possible extensions are below. + */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ControlAction_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ControlAction_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_ControlAction_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_ControlAction_RANParameter_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ControlAction_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/ControlOutcome-RANParameter-Item.h b/e2sm/headers/ControlOutcome-RANParameter-Item.h new file mode 100755 index 0000000..861361c --- /dev/null +++ b/e2sm/headers/ControlOutcome-RANParameter-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _ControlOutcome_RANParameter_Item_H_ +#define _ControlOutcome_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* ControlOutcome-RANParameter-Item */ +typedef struct ControlOutcome_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + /* + * This type is extensible, + * possible extensions are below. + */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ControlOutcome_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ControlOutcome_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_ControlOutcome_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_ControlOutcome_RANParameter_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _ControlOutcome_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/CoreCPID.h b/e2sm/headers/CoreCPID.h new file mode 100755 index 0000000..7b6340a --- /dev/null +++ b/e2sm/headers/CoreCPID.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _CoreCPID_H_ +#define _CoreCPID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum CoreCPID_PR { + CoreCPID_PR_NOTHING, /* No components present */ + CoreCPID_PR_fiveGC, + CoreCPID_PR_ePC + /* Extensions may appear below */ + +} CoreCPID_PR; + +/* Forward declarations */ +struct GUAMI; +struct GUMMEI; + +/* CoreCPID */ +typedef struct CoreCPID { + CoreCPID_PR present; + union CoreCPID_u { + struct GUAMI *fiveGC; + struct GUMMEI *ePC; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} CoreCPID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_CoreCPID; + +#ifdef __cplusplus +} +#endif + +#endif /* _CoreCPID_H_ */ +#include diff --git a/e2sm/headers/Criticality.h b/e2sm/headers/Criticality.h deleted file mode 100644 index 9e817d4..0000000 --- a/e2sm/headers/Criticality.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _Criticality_H_ -#define _Criticality_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Criticality { - Criticality_reject = 0, - Criticality_ignore = 1, - Criticality_notify = 2 -} e_Criticality; - -/* Criticality */ -typedef long Criticality_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Criticality; -asn_struct_free_f Criticality_free; -asn_struct_print_f Criticality_print; -asn_constr_check_f Criticality_constraint; -ber_type_decoder_f Criticality_decode_ber; -der_type_encoder_f Criticality_encode_der; -xer_type_decoder_f Criticality_decode_xer; -xer_type_encoder_f Criticality_encode_xer; -oer_type_decoder_f Criticality_decode_oer; -oer_type_encoder_f Criticality_encode_oer; -per_type_decoder_f Criticality_decode_uper; -per_type_encoder_f Criticality_encode_uper; -per_type_decoder_f Criticality_decode_aper; -per_type_encoder_f Criticality_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Criticality_H_ */ -#include diff --git a/e2sm/headers/E-UTRA-ARFCN.h b/e2sm/headers/E-UTRA-ARFCN.h new file mode 100755 index 0000000..1ecf02a --- /dev/null +++ b/e2sm/headers/E-UTRA-ARFCN.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E_UTRA_ARFCN_H_ +#define _E_UTRA_ARFCN_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E-UTRA-ARFCN */ +typedef long E_UTRA_ARFCN_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_E_UTRA_ARFCN_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_E_UTRA_ARFCN; +asn_struct_free_f E_UTRA_ARFCN_free; +asn_struct_print_f E_UTRA_ARFCN_print; +asn_constr_check_f E_UTRA_ARFCN_constraint; +ber_type_decoder_f E_UTRA_ARFCN_decode_ber; +der_type_encoder_f E_UTRA_ARFCN_encode_der; +xer_type_decoder_f E_UTRA_ARFCN_decode_xer; +xer_type_encoder_f E_UTRA_ARFCN_encode_xer; +oer_type_decoder_f E_UTRA_ARFCN_decode_oer; +oer_type_encoder_f E_UTRA_ARFCN_encode_oer; +per_type_decoder_f E_UTRA_ARFCN_decode_uper; +per_type_encoder_f E_UTRA_ARFCN_encode_uper; +per_type_decoder_f E_UTRA_ARFCN_decode_aper; +per_type_encoder_f E_UTRA_ARFCN_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _E_UTRA_ARFCN_H_ */ +#include diff --git a/e2sm/headers/E-UTRA-PCI.h b/e2sm/headers/E-UTRA-PCI.h new file mode 100755 index 0000000..c49b263 --- /dev/null +++ b/e2sm/headers/E-UTRA-PCI.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E_UTRA_PCI_H_ +#define _E_UTRA_PCI_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E-UTRA-PCI */ +typedef long E_UTRA_PCI_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_E_UTRA_PCI_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_E_UTRA_PCI; +asn_struct_free_f E_UTRA_PCI_free; +asn_struct_print_f E_UTRA_PCI_print; +asn_constr_check_f E_UTRA_PCI_constraint; +ber_type_decoder_f E_UTRA_PCI_decode_ber; +der_type_encoder_f E_UTRA_PCI_encode_der; +xer_type_decoder_f E_UTRA_PCI_decode_xer; +xer_type_encoder_f E_UTRA_PCI_encode_xer; +oer_type_decoder_f E_UTRA_PCI_decode_oer; +oer_type_encoder_f E_UTRA_PCI_encode_oer; +per_type_decoder_f E_UTRA_PCI_decode_uper; +per_type_encoder_f E_UTRA_PCI_encode_uper; +per_type_decoder_f E_UTRA_PCI_decode_aper; +per_type_encoder_f E_UTRA_PCI_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _E_UTRA_PCI_H_ */ +#include diff --git a/e2sm/headers/E-UTRA-TAC.h b/e2sm/headers/E-UTRA-TAC.h new file mode 100755 index 0000000..2544b77 --- /dev/null +++ b/e2sm/headers/E-UTRA-TAC.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E_UTRA_TAC_H_ +#define _E_UTRA_TAC_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E-UTRA-TAC */ +typedef OCTET_STRING_t E_UTRA_TAC_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_E_UTRA_TAC_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_E_UTRA_TAC; +asn_struct_free_f E_UTRA_TAC_free; +asn_struct_print_f E_UTRA_TAC_print; +asn_constr_check_f E_UTRA_TAC_constraint; +ber_type_decoder_f E_UTRA_TAC_decode_ber; +der_type_encoder_f E_UTRA_TAC_encode_der; +xer_type_decoder_f E_UTRA_TAC_decode_xer; +xer_type_encoder_f E_UTRA_TAC_encode_xer; +oer_type_decoder_f E_UTRA_TAC_decode_oer; +oer_type_encoder_f E_UTRA_TAC_encode_oer; +per_type_decoder_f E_UTRA_TAC_decode_uper; +per_type_encoder_f E_UTRA_TAC_encode_uper; +per_type_decoder_f E_UTRA_TAC_decode_aper; +per_type_encoder_f E_UTRA_TAC_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _E_UTRA_TAC_H_ */ +#include diff --git a/e2sm/headers/E2SM-KPM-ActionDefinition-Format1.h b/e2sm/headers/E2SM-KPM-ActionDefinition-Format1.h deleted file mode 100644 index 4a0e06a..0000000 --- a/e2sm/headers/E2SM-KPM-ActionDefinition-Format1.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _E2SM_KPM_ActionDefinition_Format1_H_ -#define _E2SM_KPM_ActionDefinition_Format1_H_ - - -#include - -/* Including external dependencies */ -#include "CellObjectID.h" -#include "MeasurementInfoList.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* E2SM-KPM-ActionDefinition-Format1 */ -typedef struct E2SM_KPM_ActionDefinition_Format1 { - CellObjectID_t cellObjID; - MeasurementInfoList_t measInfoList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} E2SM_KPM_ActionDefinition_Format1_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_ActionDefinition_Format1; -extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_ActionDefinition_Format1_specs_1; -extern asn_TYPE_member_t asn_MBR_E2SM_KPM_ActionDefinition_Format1_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _E2SM_KPM_ActionDefinition_Format1_H_ */ -#include diff --git a/e2sm/headers/E2SM-KPM-ActionDefinition.h b/e2sm/headers/E2SM-KPM-ActionDefinition.h deleted file mode 100644 index f5bf906..0000000 --- a/e2sm/headers/E2SM-KPM-ActionDefinition.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _E2SM_KPM_ActionDefinition_H_ -#define _E2SM_KPM_ActionDefinition_H_ - - -#include - -/* Including external dependencies */ -#include "RIC-Style-Type.h" -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum E2SM_KPM_ActionDefinition__actionDefinition_formats_PR { - E2SM_KPM_ActionDefinition__actionDefinition_formats_PR_NOTHING, /* No components present */ - E2SM_KPM_ActionDefinition__actionDefinition_formats_PR_actionDefinition_Format1 - /* Extensions may appear below */ - -} E2SM_KPM_ActionDefinition__actionDefinition_formats_PR; - -/* Forward declarations */ -struct E2SM_KPM_ActionDefinition_Format1; - -/* E2SM-KPM-ActionDefinition */ -typedef struct E2SM_KPM_ActionDefinition { - RIC_Style_Type_t ric_ReportStyle_Type; - struct E2SM_KPM_ActionDefinition__actionDefinition_formats { - E2SM_KPM_ActionDefinition__actionDefinition_formats_PR present; - union E2SM_KPM_ActionDefinition__actionDefinition_formats_u { - struct E2SM_KPM_ActionDefinition_Format1 *actionDefinition_Format1; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } actionDefinition_formats; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} E2SM_KPM_ActionDefinition_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_ActionDefinition; - -#ifdef __cplusplus -} -#endif - -#endif /* _E2SM_KPM_ActionDefinition_H_ */ -#include diff --git a/e2sm/headers/E2SM-KPM-EventTriggerDefinition-Format1.h b/e2sm/headers/E2SM-KPM-EventTriggerDefinition-Format1.h deleted file mode 100644 index 6fae26e..0000000 --- a/e2sm/headers/E2SM-KPM-EventTriggerDefinition-Format1.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _E2SM_KPM_EventTriggerDefinition_Format1_H_ -#define _E2SM_KPM_EventTriggerDefinition_Format1_H_ - - -#include - -/* Including external dependencies */ -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct Trigger_ConditionIE_Item; - -/* E2SM-KPM-EventTriggerDefinition-Format1 */ -typedef struct E2SM_KPM_EventTriggerDefinition_Format1 { - struct E2SM_KPM_EventTriggerDefinition_Format1__policyTest_List { - A_SEQUENCE_OF(struct Trigger_ConditionIE_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *policyTest_List; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} E2SM_KPM_EventTriggerDefinition_Format1_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1; -extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_EventTriggerDefinition_Format1_specs_1; -extern asn_TYPE_member_t asn_MBR_E2SM_KPM_EventTriggerDefinition_Format1_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _E2SM_KPM_EventTriggerDefinition_Format1_H_ */ -#include diff --git a/e2sm/headers/E2SM-KPM-EventTriggerDefinition.h b/e2sm/headers/E2SM-KPM-EventTriggerDefinition.h deleted file mode 100644 index 2db9552..0000000 --- a/e2sm/headers/E2SM-KPM-EventTriggerDefinition.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _E2SM_KPM_EventTriggerDefinition_H_ -#define _E2SM_KPM_EventTriggerDefinition_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum E2SM_KPM_EventTriggerDefinition_PR { - E2SM_KPM_EventTriggerDefinition_PR_NOTHING, /* No components present */ - E2SM_KPM_EventTriggerDefinition_PR_eventDefinition_Format1 - /* Extensions may appear below */ - -} E2SM_KPM_EventTriggerDefinition_PR; - -/* Forward declarations */ -struct E2SM_KPM_EventTriggerDefinition_Format1; - -/* E2SM-KPM-EventTriggerDefinition */ -typedef struct E2SM_KPM_EventTriggerDefinition { - E2SM_KPM_EventTriggerDefinition_PR present; - union E2SM_KPM_EventTriggerDefinition_u { - struct E2SM_KPM_EventTriggerDefinition_Format1 *eventDefinition_Format1; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} E2SM_KPM_EventTriggerDefinition_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_EventTriggerDefinition; - -#ifdef __cplusplus -} -#endif - -#endif /* _E2SM_KPM_EventTriggerDefinition_H_ */ -#include diff --git a/e2sm/headers/E2SM-KPM-IndicationHeader-Format1.h b/e2sm/headers/E2SM-KPM-IndicationHeader-Format1.h deleted file mode 100644 index 677d458..0000000 --- a/e2sm/headers/E2SM-KPM-IndicationHeader-Format1.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _E2SM_KPM_IndicationHeader_Format1_H_ -#define _E2SM_KPM_IndicationHeader_Format1_H_ - - -#include - -/* Including external dependencies */ -#include "TimeStamp.h" -#include "GlobalE2node-ID.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* E2SM-KPM-IndicationHeader-Format1 */ -typedef struct E2SM_KPM_IndicationHeader_Format1 { - TimeStamp_t collectionStartTime; - GlobalE2node_ID_t id_GlobalE2node_ID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} E2SM_KPM_IndicationHeader_Format1_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_IndicationHeader_Format1; -extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_IndicationHeader_Format1_specs_1; -extern asn_TYPE_member_t asn_MBR_E2SM_KPM_IndicationHeader_Format1_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _E2SM_KPM_IndicationHeader_Format1_H_ */ -#include diff --git a/e2sm/headers/E2SM-KPM-IndicationHeader.h b/e2sm/headers/E2SM-KPM-IndicationHeader.h deleted file mode 100644 index 9c6670c..0000000 --- a/e2sm/headers/E2SM-KPM-IndicationHeader.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _E2SM_KPM_IndicationHeader_H_ -#define _E2SM_KPM_IndicationHeader_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum E2SM_KPM_IndicationHeader_PR { - E2SM_KPM_IndicationHeader_PR_NOTHING, /* No components present */ - E2SM_KPM_IndicationHeader_PR_indicationHeader_Format1 - /* Extensions may appear below */ - -} E2SM_KPM_IndicationHeader_PR; - -/* Forward declarations */ -struct E2SM_KPM_IndicationHeader_Format1; - -/* E2SM-KPM-IndicationHeader */ -typedef struct E2SM_KPM_IndicationHeader { - E2SM_KPM_IndicationHeader_PR present; - union E2SM_KPM_IndicationHeader_u { - struct E2SM_KPM_IndicationHeader_Format1 *indicationHeader_Format1; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} E2SM_KPM_IndicationHeader_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_IndicationHeader; - -#ifdef __cplusplus -} -#endif - -#endif /* _E2SM_KPM_IndicationHeader_H_ */ -#include diff --git a/e2sm/headers/E2SM-KPM-IndicationMessage-Format1.h b/e2sm/headers/E2SM-KPM-IndicationMessage-Format1.h deleted file mode 100644 index ad255ab..0000000 --- a/e2sm/headers/E2SM-KPM-IndicationMessage-Format1.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _E2SM_KPM_IndicationMessage_Format1_H_ -#define _E2SM_KPM_IndicationMessage_Format1_H_ - - -#include - -/* Including external dependencies */ -#include "CellObjectID.h" -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PM_Containers_Item; -struct PM_Info_Item; -struct PerUE_PM_Item; - -/* E2SM-KPM-IndicationMessage-Format1 */ -typedef struct E2SM_KPM_IndicationMessage_Format1 { - struct E2SM_KPM_IndicationMessage_Format1__pm_Containers { - A_SEQUENCE_OF(struct PM_Containers_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } pm_Containers; - CellObjectID_t cellObjectID; - struct E2SM_KPM_IndicationMessage_Format1__list_of_PM_Information { - A_SEQUENCE_OF(struct PM_Info_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *list_of_PM_Information; - struct E2SM_KPM_IndicationMessage_Format1__list_of_matched_UEs { - A_SEQUENCE_OF(struct PerUE_PM_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *list_of_matched_UEs; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} E2SM_KPM_IndicationMessage_Format1_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_IndicationMessage_Format1; -extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_IndicationMessage_Format1_specs_1; -extern asn_TYPE_member_t asn_MBR_E2SM_KPM_IndicationMessage_Format1_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _E2SM_KPM_IndicationMessage_Format1_H_ */ -#include diff --git a/e2sm/headers/E2SM-KPM-IndicationMessage.h b/e2sm/headers/E2SM-KPM-IndicationMessage.h deleted file mode 100644 index 30bd902..0000000 --- a/e2sm/headers/E2SM-KPM-IndicationMessage.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _E2SM_KPM_IndicationMessage_H_ -#define _E2SM_KPM_IndicationMessage_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum E2SM_KPM_IndicationMessage_PR { - E2SM_KPM_IndicationMessage_PR_NOTHING, /* No components present */ - E2SM_KPM_IndicationMessage_PR_indicationMessage_Format1 - /* Extensions may appear below */ - -} E2SM_KPM_IndicationMessage_PR; - -/* Forward declarations */ -struct E2SM_KPM_IndicationMessage_Format1; - -/* E2SM-KPM-IndicationMessage */ -typedef struct E2SM_KPM_IndicationMessage { - E2SM_KPM_IndicationMessage_PR present; - union E2SM_KPM_IndicationMessage_u { - struct E2SM_KPM_IndicationMessage_Format1 *indicationMessage_Format1; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} E2SM_KPM_IndicationMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_IndicationMessage; - -#ifdef __cplusplus -} -#endif - -#endif /* _E2SM_KPM_IndicationMessage_H_ */ -#include diff --git a/e2sm/headers/E2SM-KPM-RANFunctionDefinition.h b/e2sm/headers/E2SM-KPM-RANFunctionDefinition.h deleted file mode 100644 index 51118f8..0000000 --- a/e2sm/headers/E2SM-KPM-RANFunctionDefinition.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _E2SM_KPM_RANFunctionDefinition_H_ -#define _E2SM_KPM_RANFunctionDefinition_H_ - - -#include - -/* Including external dependencies */ -#include "RANfunction-Name.h" -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RIC_EventTriggerStyle_Item; -struct RIC_ReportStyle_Item; - -/* E2SM-KPM-RANFunctionDefinition */ -typedef struct E2SM_KPM_RANFunctionDefinition { - RANfunction_Name_t ranFunction_Name; - struct E2SM_KPM_RANFunctionDefinition__ric_EventTriggerStyle_List { - A_SEQUENCE_OF(struct RIC_EventTriggerStyle_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *ric_EventTriggerStyle_List; - struct E2SM_KPM_RANFunctionDefinition__ric_ReportStyle_List { - A_SEQUENCE_OF(struct RIC_ReportStyle_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *ric_ReportStyle_List; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} E2SM_KPM_RANFunctionDefinition_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_RANFunctionDefinition; - -#ifdef __cplusplus -} -#endif - -#endif /* _E2SM_KPM_RANFunctionDefinition_H_ */ -#include diff --git a/e2sm/headers/E2SM-RC-ActionDefinition-Format1-Item.h b/e2sm/headers/E2SM-RC-ActionDefinition-Format1-Item.h new file mode 100755 index 0000000..d648c97 --- /dev/null +++ b/e2sm/headers/E2SM-RC-ActionDefinition-Format1-Item.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ActionDefinition_Format1_Item_H_ +#define _E2SM_RC_ActionDefinition_Format1_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-ActionDefinition-Format1-Item */ +typedef struct E2SM_RC_ActionDefinition_Format1_Item { + RANParameter_ID_t ranParameter_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ActionDefinition_Format1_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format1_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format1_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format1_Item_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ActionDefinition_Format1_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ActionDefinition-Format1.h b/e2sm/headers/E2SM-RC-ActionDefinition-Format1.h new file mode 100755 index 0000000..a74bdfb --- /dev/null +++ b/e2sm/headers/E2SM-RC-ActionDefinition-Format1.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ActionDefinition_Format1_H_ +#define _E2SM_RC_ActionDefinition_Format1_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_ActionDefinition_Format1_Item; + +/* E2SM-RC-ActionDefinition-Format1 */ +typedef struct E2SM_RC_ActionDefinition_Format1 { + struct E2SM_RC_ActionDefinition_Format1__ranP_ToBeReported_List { + A_SEQUENCE_OF(struct E2SM_RC_ActionDefinition_Format1_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ranP_ToBeReported_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ActionDefinition_Format1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format1_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ActionDefinition_Format1_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ActionDefinition-Format2-Item.h b/e2sm/headers/E2SM-RC-ActionDefinition-Format2-Item.h new file mode 100755 index 0000000..e76d1f5 --- /dev/null +++ b/e2sm/headers/E2SM-RC-ActionDefinition-Format2-Item.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ActionDefinition_Format2_Item_H_ +#define _E2SM_RC_ActionDefinition_Format2_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-PolicyAction.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Testing; + +/* E2SM-RC-ActionDefinition-Format2-Item */ +typedef struct E2SM_RC_ActionDefinition_Format2_Item { + RIC_PolicyAction_t ric_PolicyAction; + struct RANParameter_Testing *ric_PolicyConditionDefinition; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ActionDefinition_Format2_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format2_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format2_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format2_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ActionDefinition_Format2_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ActionDefinition-Format2.h b/e2sm/headers/E2SM-RC-ActionDefinition-Format2.h new file mode 100755 index 0000000..22834d9 --- /dev/null +++ b/e2sm/headers/E2SM-RC-ActionDefinition-Format2.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ActionDefinition_Format2_H_ +#define _E2SM_RC_ActionDefinition_Format2_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_ActionDefinition_Format2_Item; + +/* E2SM-RC-ActionDefinition-Format2 */ +typedef struct E2SM_RC_ActionDefinition_Format2 { + struct E2SM_RC_ActionDefinition_Format2__ric_PolicyConditions_List { + A_SEQUENCE_OF(struct E2SM_RC_ActionDefinition_Format2_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_PolicyConditions_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ActionDefinition_Format2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format2; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format2_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format2_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ActionDefinition_Format2_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ActionDefinition-Format3-Item.h b/e2sm/headers/E2SM-RC-ActionDefinition-Format3-Item.h new file mode 100755 index 0000000..908f00c --- /dev/null +++ b/e2sm/headers/E2SM-RC-ActionDefinition-Format3-Item.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ActionDefinition_Format3_Item_H_ +#define _E2SM_RC_ActionDefinition_Format3_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-ActionDefinition-Format3-Item */ +typedef struct E2SM_RC_ActionDefinition_Format3_Item { + RANParameter_ID_t ranParameter_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ActionDefinition_Format3_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format3_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format3_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format3_Item_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ActionDefinition_Format3_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ActionDefinition-Format3.h b/e2sm/headers/E2SM-RC-ActionDefinition-Format3.h new file mode 100755 index 0000000..a5a5643 --- /dev/null +++ b/e2sm/headers/E2SM-RC-ActionDefinition-Format3.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ActionDefinition_Format3_H_ +#define _E2SM_RC_ActionDefinition_Format3_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-InsertIndication-ID.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct UEID; +struct E2SM_RC_ActionDefinition_Format3_Item; + +/* E2SM-RC-ActionDefinition-Format3 */ +typedef struct E2SM_RC_ActionDefinition_Format3 { + RIC_InsertIndication_ID_t ric_InsertIndication_ID; + struct E2SM_RC_ActionDefinition_Format3__ranP_InsertIndication_List { + A_SEQUENCE_OF(struct E2SM_RC_ActionDefinition_Format3_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ranP_InsertIndication_List; + struct UEID *ueID; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ActionDefinition_Format3_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format3; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format3_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format3_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ActionDefinition_Format3_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ActionDefinition.h b/e2sm/headers/E2SM-RC-ActionDefinition.h new file mode 100755 index 0000000..801457d --- /dev/null +++ b/e2sm/headers/E2SM-RC-ActionDefinition.h @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ActionDefinition_H_ +#define _E2SM_RC_ActionDefinition_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-Style-Type.h" +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2SM_RC_ActionDefinition__ric_actionDefinition_formats_PR { + E2SM_RC_ActionDefinition__ric_actionDefinition_formats_PR_NOTHING, /* No components present */ + E2SM_RC_ActionDefinition__ric_actionDefinition_formats_PR_actionDefinition_Format1, + E2SM_RC_ActionDefinition__ric_actionDefinition_formats_PR_actionDefinition_Format2, + E2SM_RC_ActionDefinition__ric_actionDefinition_formats_PR_actionDefinition_Format3 + /* Extensions may appear below */ + +} E2SM_RC_ActionDefinition__ric_actionDefinition_formats_PR; + +/* Forward declarations */ +struct E2SM_RC_ActionDefinition_Format1; +struct E2SM_RC_ActionDefinition_Format2; +struct E2SM_RC_ActionDefinition_Format3; + +/* E2SM-RC-ActionDefinition */ +typedef struct E2SM_RC_ActionDefinition { + RIC_Style_Type_t ric_Style_Type; + struct E2SM_RC_ActionDefinition__ric_actionDefinition_formats { + E2SM_RC_ActionDefinition__ric_actionDefinition_formats_PR present; + union E2SM_RC_ActionDefinition__ric_actionDefinition_formats_u { + struct E2SM_RC_ActionDefinition_Format1 *actionDefinition_Format1; + struct E2SM_RC_ActionDefinition_Format2 *actionDefinition_Format2; + struct E2SM_RC_ActionDefinition_Format3 *actionDefinition_Format3; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_actionDefinition_formats; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ActionDefinition_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ActionDefinition_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-CallProcessID-Format1.h b/e2sm/headers/E2SM-RC-CallProcessID-Format1.h new file mode 100755 index 0000000..dda1821 --- /dev/null +++ b/e2sm/headers/E2SM-RC-CallProcessID-Format1.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_CallProcessID_Format1_H_ +#define _E2SM_RC_CallProcessID_Format1_H_ + + +#include + +/* Including external dependencies */ +#include "RAN-CallProcess-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-CallProcessID-Format1 */ +typedef struct E2SM_RC_CallProcessID_Format1 { + RAN_CallProcess_ID_t ric_callProcess_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_CallProcessID_Format1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_CallProcessID_Format1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_CallProcessID_Format1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_CallProcessID_Format1_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_CallProcessID_Format1_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-CallProcessID.h b/e2sm/headers/E2SM-RC-CallProcessID.h new file mode 100755 index 0000000..f08137c --- /dev/null +++ b/e2sm/headers/E2SM-RC-CallProcessID.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_CallProcessID_H_ +#define _E2SM_RC_CallProcessID_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2SM_RC_CallProcessID__ric_callProcessID_formats_PR { + E2SM_RC_CallProcessID__ric_callProcessID_formats_PR_NOTHING, /* No components present */ + E2SM_RC_CallProcessID__ric_callProcessID_formats_PR_callProcessID_Format1 + /* Extensions may appear below */ + +} E2SM_RC_CallProcessID__ric_callProcessID_formats_PR; + +/* Forward declarations */ +struct E2SM_RC_CallProcessID_Format1; + +/* E2SM-RC-CallProcessID */ +typedef struct E2SM_RC_CallProcessID { + struct E2SM_RC_CallProcessID__ric_callProcessID_formats { + E2SM_RC_CallProcessID__ric_callProcessID_formats_PR present; + union E2SM_RC_CallProcessID__ric_callProcessID_formats_u { + struct E2SM_RC_CallProcessID_Format1 *callProcessID_Format1; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_callProcessID_formats; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_CallProcessID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_CallProcessID; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_CallProcessID_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ControlHeader-Format1.h b/e2sm/headers/E2SM-RC-ControlHeader-Format1.h old mode 100644 new mode 100755 index 641739c..b847d4f --- a/e2sm/headers/E2SM-RC-ControlHeader-Format1.h +++ b/e2sm/headers/E2SM-RC-ControlHeader-Format1.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -12,20 +12,31 @@ #include /* Including external dependencies */ -#include "UE-Identity.h" +#include "UEID.h" #include "RIC-Style-Type.h" #include "RIC-ControlAction-ID.h" +#include #include #ifdef __cplusplus extern "C" { #endif +/* Dependencies */ +typedef enum E2SM_RC_ControlHeader_Format1__ric_ControlDecision { + E2SM_RC_ControlHeader_Format1__ric_ControlDecision_accept = 0, + E2SM_RC_ControlHeader_Format1__ric_ControlDecision_reject = 1 + /* + * Enumeration is extensible + */ +} e_E2SM_RC_ControlHeader_Format1__ric_ControlDecision; + /* E2SM-RC-ControlHeader-Format1 */ typedef struct E2SM_RC_ControlHeader_Format1 { - UE_Identity_t ueId; - RIC_Style_Type_t ric_ControlStyle_Type; + UEID_t ueID; + RIC_Style_Type_t ric_Style_Type; RIC_ControlAction_ID_t ric_ControlAction_ID; + long *ric_ControlDecision; /* OPTIONAL */ /* * This type is extensible, * possible extensions are below. @@ -36,9 +47,10 @@ typedef struct E2SM_RC_ControlHeader_Format1 { } E2SM_RC_ControlHeader_Format1_t; /* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_ric_ControlDecision_5; // (Use -fall-defs-global to expose) */ extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlHeader_Format1; extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlHeader_Format1_specs_1; -extern asn_TYPE_member_t asn_MBR_E2SM_RC_ControlHeader_Format1_1[3]; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ControlHeader_Format1_1[4]; #ifdef __cplusplus } diff --git a/e2sm/headers/E2SM-RC-ControlHeader.h b/e2sm/headers/E2SM-RC-ControlHeader.h old mode 100644 new mode 100755 index aead9e3..a9b57df --- a/e2sm/headers/E2SM-RC-ControlHeader.h +++ b/e2sm/headers/E2SM-RC-ControlHeader.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -13,32 +13,42 @@ /* Including external dependencies */ #include +#include #ifdef __cplusplus extern "C" { #endif /* Dependencies */ -typedef enum E2SM_RC_ControlHeader_PR { - E2SM_RC_ControlHeader_PR_NOTHING, /* No components present */ - E2SM_RC_ControlHeader_PR_controlHeader_Format1 +typedef enum E2SM_RC_ControlHeader__ric_controlHeader_formats_PR { + E2SM_RC_ControlHeader__ric_controlHeader_formats_PR_NOTHING, /* No components present */ + E2SM_RC_ControlHeader__ric_controlHeader_formats_PR_controlHeader_Format1 /* Extensions may appear below */ -} E2SM_RC_ControlHeader_PR; +} E2SM_RC_ControlHeader__ric_controlHeader_formats_PR; /* Forward declarations */ struct E2SM_RC_ControlHeader_Format1; /* E2SM-RC-ControlHeader */ typedef struct E2SM_RC_ControlHeader { - E2SM_RC_ControlHeader_PR present; - union E2SM_RC_ControlHeader_u { - struct E2SM_RC_ControlHeader_Format1 *controlHeader_Format1; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; + struct E2SM_RC_ControlHeader__ric_controlHeader_formats { + E2SM_RC_ControlHeader__ric_controlHeader_formats_PR present; + union E2SM_RC_ControlHeader__ric_controlHeader_formats_u { + struct E2SM_RC_ControlHeader_Format1 *controlHeader_Format1; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_controlHeader_formats; + /* + * This type is extensible, + * possible extensions are below. + */ /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; diff --git a/e2sm/headers/E2SM-RC-ControlMessage-Format1-Item.h b/e2sm/headers/E2SM-RC-ControlMessage-Format1-Item.h new file mode 100755 index 0000000..19518d1 --- /dev/null +++ b/e2sm/headers/E2SM-RC-ControlMessage-Format1-Item.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ControlMessage_Format1_Item_H_ +#define _E2SM_RC_ControlMessage_Format1_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-ValueType.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-ControlMessage-Format1-Item */ +typedef struct E2SM_RC_ControlMessage_Format1_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_ValueType_t ranParameter_valueType; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ControlMessage_Format1_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlMessage_Format1_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlMessage_Format1_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ControlMessage_Format1_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ControlMessage_Format1_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ControlMessage-Format1.h b/e2sm/headers/E2SM-RC-ControlMessage-Format1.h old mode 100644 new mode 100755 index ba58297..35802d6 --- a/e2sm/headers/E2SM-RC-ControlMessage-Format1.h +++ b/e2sm/headers/E2SM-RC-ControlMessage-Format1.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -21,16 +21,16 @@ extern "C" { #endif /* Forward declarations */ -struct RANParameter_Item; +struct E2SM_RC_ControlMessage_Format1_Item; /* E2SM-RC-ControlMessage-Format1 */ typedef struct E2SM_RC_ControlMessage_Format1 { - struct E2SM_RC_ControlMessage_Format1__ranParameters_List { - A_SEQUENCE_OF(struct RANParameter_Item) list; + struct E2SM_RC_ControlMessage_Format1__ranP_List { + A_SEQUENCE_OF(struct E2SM_RC_ControlMessage_Format1_Item) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; - } *ranParameters_List; + } ranP_List; /* * This type is extensible, * possible extensions are below. diff --git a/e2sm/headers/E2SM-RC-ControlMessage.h b/e2sm/headers/E2SM-RC-ControlMessage.h old mode 100644 new mode 100755 index 9e3d76a..12e93b8 --- a/e2sm/headers/E2SM-RC-ControlMessage.h +++ b/e2sm/headers/E2SM-RC-ControlMessage.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -13,32 +13,42 @@ /* Including external dependencies */ #include +#include #ifdef __cplusplus extern "C" { #endif /* Dependencies */ -typedef enum E2SM_RC_ControlMessage_PR { - E2SM_RC_ControlMessage_PR_NOTHING, /* No components present */ - E2SM_RC_ControlMessage_PR_controlMessage_Format1 +typedef enum E2SM_RC_ControlMessage__ric_controlMessage_formats_PR { + E2SM_RC_ControlMessage__ric_controlMessage_formats_PR_NOTHING, /* No components present */ + E2SM_RC_ControlMessage__ric_controlMessage_formats_PR_controlMessage_Format1 /* Extensions may appear below */ -} E2SM_RC_ControlMessage_PR; +} E2SM_RC_ControlMessage__ric_controlMessage_formats_PR; /* Forward declarations */ struct E2SM_RC_ControlMessage_Format1; /* E2SM-RC-ControlMessage */ typedef struct E2SM_RC_ControlMessage { - E2SM_RC_ControlMessage_PR present; - union E2SM_RC_ControlMessage_u { - struct E2SM_RC_ControlMessage_Format1 *controlMessage_Format1; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; + struct E2SM_RC_ControlMessage__ric_controlMessage_formats { + E2SM_RC_ControlMessage__ric_controlMessage_formats_PR present; + union E2SM_RC_ControlMessage__ric_controlMessage_formats_u { + struct E2SM_RC_ControlMessage_Format1 *controlMessage_Format1; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_controlMessage_formats; + /* + * This type is extensible, + * possible extensions are below. + */ /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; diff --git a/e2sm/headers/E2SM-RC-ControlOutcome-Format1-Item.h b/e2sm/headers/E2SM-RC-ControlOutcome-Format1-Item.h new file mode 100755 index 0000000..b290d8a --- /dev/null +++ b/e2sm/headers/E2SM-RC-ControlOutcome-Format1-Item.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ControlOutcome_Format1_Item_H_ +#define _E2SM_RC_ControlOutcome_Format1_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Value.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-ControlOutcome-Format1-Item */ +typedef struct E2SM_RC_ControlOutcome_Format1_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Value_t ranParameter_value; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ControlOutcome_Format1_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlOutcome_Format1_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlOutcome_Format1_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ControlOutcome_Format1_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ControlOutcome_Format1_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ControlOutcome-Format1.h b/e2sm/headers/E2SM-RC-ControlOutcome-Format1.h new file mode 100755 index 0000000..cb087a3 --- /dev/null +++ b/e2sm/headers/E2SM-RC-ControlOutcome-Format1.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ControlOutcome_Format1_H_ +#define _E2SM_RC_ControlOutcome_Format1_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_ControlOutcome_Format1_Item; + +/* E2SM-RC-ControlOutcome-Format1 */ +typedef struct E2SM_RC_ControlOutcome_Format1 { + struct E2SM_RC_ControlOutcome_Format1__ranP_List { + A_SEQUENCE_OF(struct E2SM_RC_ControlOutcome_Format1_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ranP_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ControlOutcome_Format1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlOutcome_Format1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlOutcome_Format1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_ControlOutcome_Format1_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ControlOutcome_Format1_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-ControlOutcome.h b/e2sm/headers/E2SM-RC-ControlOutcome.h new file mode 100755 index 0000000..6193e02 --- /dev/null +++ b/e2sm/headers/E2SM-RC-ControlOutcome.h @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_ControlOutcome_H_ +#define _E2SM_RC_ControlOutcome_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2SM_RC_ControlOutcome__ric_controlOutcome_formats_PR { + E2SM_RC_ControlOutcome__ric_controlOutcome_formats_PR_NOTHING, /* No components present */ + E2SM_RC_ControlOutcome__ric_controlOutcome_formats_PR_controlOutcome_Format1 + /* Extensions may appear below */ + +} E2SM_RC_ControlOutcome__ric_controlOutcome_formats_PR; + +/* Forward declarations */ +struct E2SM_RC_ControlOutcome_Format1; + +/* E2SM-RC-ControlOutcome */ +typedef struct E2SM_RC_ControlOutcome { + struct E2SM_RC_ControlOutcome__ric_controlOutcome_formats { + E2SM_RC_ControlOutcome__ric_controlOutcome_formats_PR present; + union E2SM_RC_ControlOutcome__ric_controlOutcome_formats_u { + struct E2SM_RC_ControlOutcome_Format1 *controlOutcome_Format1; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_controlOutcome_formats; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_ControlOutcome_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlOutcome; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_ControlOutcome_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-EventTrigger-Format1-Item.h b/e2sm/headers/E2SM-RC-EventTrigger-Format1-Item.h new file mode 100755 index 0000000..a4e694e --- /dev/null +++ b/e2sm/headers/E2SM-RC-EventTrigger-Format1-Item.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_EventTrigger_Format1_Item_H_ +#define _E2SM_RC_EventTrigger_Format1_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-EventTriggerCondition-ID.h" +#include "MessageType-Choice.h" +#include +#include "LogicalOR.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2SM_RC_EventTrigger_Format1_Item__messageDirection { + E2SM_RC_EventTrigger_Format1_Item__messageDirection_incoming = 0, + E2SM_RC_EventTrigger_Format1_Item__messageDirection_outgoing = 1 + /* + * Enumeration is extensible + */ +} e_E2SM_RC_EventTrigger_Format1_Item__messageDirection; + +/* Forward declarations */ +struct EventTrigger_UE_Info; +struct EventTrigger_UEevent_Info; + +/* E2SM-RC-EventTrigger-Format1-Item */ +typedef struct E2SM_RC_EventTrigger_Format1_Item { + RIC_EventTriggerCondition_ID_t ric_eventTriggerCondition_ID; + MessageType_Choice_t messageType; + long *messageDirection; /* OPTIONAL */ + struct EventTrigger_UE_Info *associatedUEInfo; /* OPTIONAL */ + struct EventTrigger_UEevent_Info *associatedUEEvent; /* OPTIONAL */ + LogicalOR_t *logicalOR; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_EventTrigger_Format1_Item_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_messageDirection_4; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format1_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format1_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format1_Item_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_EventTrigger_Format1_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-EventTrigger-Format1.h b/e2sm/headers/E2SM-RC-EventTrigger-Format1.h new file mode 100755 index 0000000..447098d --- /dev/null +++ b/e2sm/headers/E2SM-RC-EventTrigger-Format1.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_EventTrigger_Format1_H_ +#define _E2SM_RC_EventTrigger_Format1_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EventTrigger_UE_Info; +struct E2SM_RC_EventTrigger_Format1_Item; + +/* E2SM-RC-EventTrigger-Format1 */ +typedef struct E2SM_RC_EventTrigger_Format1 { + struct E2SM_RC_EventTrigger_Format1__message_List { + A_SEQUENCE_OF(struct E2SM_RC_EventTrigger_Format1_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } message_List; + struct EventTrigger_UE_Info *globalAssociatedUEInfo; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_EventTrigger_Format1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format1_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_EventTrigger_Format1_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-EventTrigger-Format2.h b/e2sm/headers/E2SM-RC-EventTrigger-Format2.h new file mode 100755 index 0000000..b1ff532 --- /dev/null +++ b/e2sm/headers/E2SM-RC-EventTrigger-Format2.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_EventTrigger_Format2_H_ +#define _E2SM_RC_EventTrigger_Format2_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-CallProcessType-ID.h" +#include "RIC-CallProcessBreakpoint-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Testing; +struct EventTrigger_UE_Info; + +/* E2SM-RC-EventTrigger-Format2 */ +typedef struct E2SM_RC_EventTrigger_Format2 { + RIC_CallProcessType_ID_t ric_callProcessType_ID; + RIC_CallProcessBreakpoint_ID_t ric_callProcessBreakpoint_ID; + struct RANParameter_Testing *associatedE2NodeInfo; /* OPTIONAL */ + struct EventTrigger_UE_Info *associatedUEInfo; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_EventTrigger_Format2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format2; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format2_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format2_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_EventTrigger_Format2_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-EventTrigger-Format3-Item.h b/e2sm/headers/E2SM-RC-EventTrigger-Format3-Item.h new file mode 100755 index 0000000..794cbde --- /dev/null +++ b/e2sm/headers/E2SM-RC-EventTrigger-Format3-Item.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_EventTrigger_Format3_Item_H_ +#define _E2SM_RC_EventTrigger_Format3_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-EventTriggerCondition-ID.h" +#include +#include "LogicalOR.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EventTrigger_Cell_Info; + +/* E2SM-RC-EventTrigger-Format3-Item */ +typedef struct E2SM_RC_EventTrigger_Format3_Item { + RIC_EventTriggerCondition_ID_t ric_eventTriggerCondition_ID; + long e2NodeInfoChange_ID; + struct EventTrigger_Cell_Info *associatedCellInfo; /* OPTIONAL */ + LogicalOR_t *logicalOR; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_EventTrigger_Format3_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format3_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format3_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format3_Item_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_EventTrigger_Format3_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-EventTrigger-Format3.h b/e2sm/headers/E2SM-RC-EventTrigger-Format3.h new file mode 100755 index 0000000..652cf04 --- /dev/null +++ b/e2sm/headers/E2SM-RC-EventTrigger-Format3.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_EventTrigger_Format3_H_ +#define _E2SM_RC_EventTrigger_Format3_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_EventTrigger_Format3_Item; + +/* E2SM-RC-EventTrigger-Format3 */ +typedef struct E2SM_RC_EventTrigger_Format3 { + struct E2SM_RC_EventTrigger_Format3__e2NodeInfoChange_List { + A_SEQUENCE_OF(struct E2SM_RC_EventTrigger_Format3_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } e2NodeInfoChange_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_EventTrigger_Format3_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format3; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format3_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format3_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_EventTrigger_Format3_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-EventTrigger-Format4-Item.h b/e2sm/headers/E2SM-RC-EventTrigger-Format4-Item.h new file mode 100755 index 0000000..562e45c --- /dev/null +++ b/e2sm/headers/E2SM-RC-EventTrigger-Format4-Item.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_EventTrigger_Format4_Item_H_ +#define _E2SM_RC_EventTrigger_Format4_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-EventTriggerCondition-ID.h" +#include "TriggerType-Choice.h" +#include "LogicalOR.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct EventTrigger_UE_Info; + +/* E2SM-RC-EventTrigger-Format4-Item */ +typedef struct E2SM_RC_EventTrigger_Format4_Item { + RIC_EventTriggerCondition_ID_t ric_eventTriggerCondition_ID; + TriggerType_Choice_t triggerType; + struct EventTrigger_UE_Info *associatedUEInfo; /* OPTIONAL */ + LogicalOR_t *logicalOR; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_EventTrigger_Format4_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format4_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format4_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format4_Item_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_EventTrigger_Format4_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-EventTrigger-Format4.h b/e2sm/headers/E2SM-RC-EventTrigger-Format4.h new file mode 100755 index 0000000..9fbdebe --- /dev/null +++ b/e2sm/headers/E2SM-RC-EventTrigger-Format4.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_EventTrigger_Format4_H_ +#define _E2SM_RC_EventTrigger_Format4_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_EventTrigger_Format4_Item; + +/* E2SM-RC-EventTrigger-Format4 */ +typedef struct E2SM_RC_EventTrigger_Format4 { + struct E2SM_RC_EventTrigger_Format4__uEInfoChange_List { + A_SEQUENCE_OF(struct E2SM_RC_EventTrigger_Format4_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } uEInfoChange_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_EventTrigger_Format4_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format4; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format4_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format4_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_EventTrigger_Format4_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-EventTrigger-Format5.h b/e2sm/headers/E2SM-RC-EventTrigger-Format5.h new file mode 100755 index 0000000..5e2f640 --- /dev/null +++ b/e2sm/headers/E2SM-RC-EventTrigger-Format5.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_EventTrigger_Format5_H_ +#define _E2SM_RC_EventTrigger_Format5_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2SM_RC_EventTrigger_Format5__onDemand { + E2SM_RC_EventTrigger_Format5__onDemand_true = 0 + /* + * Enumeration is extensible + */ +} e_E2SM_RC_EventTrigger_Format5__onDemand; + +/* Forward declarations */ +struct EventTrigger_UE_Info; +struct EventTrigger_Cell_Info; + +/* E2SM-RC-EventTrigger-Format5 */ +typedef struct E2SM_RC_EventTrigger_Format5 { + long onDemand; + struct EventTrigger_UE_Info *associatedUEInfo; /* OPTIONAL */ + struct EventTrigger_Cell_Info *associatedCellInfo; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_EventTrigger_Format5_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_onDemand_2; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format5; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format5_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format5_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_EventTrigger_Format5_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-EventTrigger.h b/e2sm/headers/E2SM-RC-EventTrigger.h new file mode 100755 index 0000000..6e7b392 --- /dev/null +++ b/e2sm/headers/E2SM-RC-EventTrigger.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_EventTrigger_H_ +#define _E2SM_RC_EventTrigger_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2SM_RC_EventTrigger__ric_eventTrigger_formats_PR { + E2SM_RC_EventTrigger__ric_eventTrigger_formats_PR_NOTHING, /* No components present */ + E2SM_RC_EventTrigger__ric_eventTrigger_formats_PR_eventTrigger_Format1, + E2SM_RC_EventTrigger__ric_eventTrigger_formats_PR_eventTrigger_Format2, + E2SM_RC_EventTrigger__ric_eventTrigger_formats_PR_eventTrigger_Format3, + E2SM_RC_EventTrigger__ric_eventTrigger_formats_PR_eventTrigger_Format4, + E2SM_RC_EventTrigger__ric_eventTrigger_formats_PR_eventTrigger_Format5 + /* Extensions may appear below */ + +} E2SM_RC_EventTrigger__ric_eventTrigger_formats_PR; + +/* Forward declarations */ +struct E2SM_RC_EventTrigger_Format1; +struct E2SM_RC_EventTrigger_Format2; +struct E2SM_RC_EventTrigger_Format3; +struct E2SM_RC_EventTrigger_Format4; +struct E2SM_RC_EventTrigger_Format5; + +/* E2SM-RC-EventTrigger */ +typedef struct E2SM_RC_EventTrigger { + struct E2SM_RC_EventTrigger__ric_eventTrigger_formats { + E2SM_RC_EventTrigger__ric_eventTrigger_formats_PR present; + union E2SM_RC_EventTrigger__ric_eventTrigger_formats_u { + struct E2SM_RC_EventTrigger_Format1 *eventTrigger_Format1; + struct E2SM_RC_EventTrigger_Format2 *eventTrigger_Format2; + struct E2SM_RC_EventTrigger_Format3 *eventTrigger_Format3; + struct E2SM_RC_EventTrigger_Format4 *eventTrigger_Format4; + struct E2SM_RC_EventTrigger_Format5 *eventTrigger_Format5; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_eventTrigger_formats; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_EventTrigger_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_EventTrigger_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationHeader-Format1.h b/e2sm/headers/E2SM-RC-IndicationHeader-Format1.h new file mode 100755 index 0000000..038ecab --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationHeader-Format1.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationHeader_Format1_H_ +#define _E2SM_RC_IndicationHeader_Format1_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-EventTriggerCondition-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-IndicationHeader-Format1 */ +typedef struct E2SM_RC_IndicationHeader_Format1 { + RIC_EventTriggerCondition_ID_t *ric_eventTriggerCondition_ID; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationHeader_Format1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationHeader_Format1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationHeader_Format1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationHeader_Format1_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationHeader_Format1_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationHeader-Format2.h b/e2sm/headers/E2SM-RC-IndicationHeader-Format2.h new file mode 100755 index 0000000..3d9b6be --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationHeader-Format2.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationHeader_Format2_H_ +#define _E2SM_RC_IndicationHeader_Format2_H_ + + +#include + +/* Including external dependencies */ +#include "UEID.h" +#include "RIC-Style-Type.h" +#include "RIC-InsertIndication-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-IndicationHeader-Format2 */ +typedef struct E2SM_RC_IndicationHeader_Format2 { + UEID_t ueID; + RIC_Style_Type_t ric_InsertStyle_Type; + RIC_InsertIndication_ID_t ric_InsertIndication_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationHeader_Format2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationHeader_Format2; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationHeader_Format2_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationHeader_Format2_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationHeader_Format2_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationHeader.h b/e2sm/headers/E2SM-RC-IndicationHeader.h new file mode 100755 index 0000000..0260e01 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationHeader.h @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationHeader_H_ +#define _E2SM_RC_IndicationHeader_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2SM_RC_IndicationHeader__ric_indicationHeader_formats_PR { + E2SM_RC_IndicationHeader__ric_indicationHeader_formats_PR_NOTHING, /* No components present */ + E2SM_RC_IndicationHeader__ric_indicationHeader_formats_PR_indicationHeader_Format1, + E2SM_RC_IndicationHeader__ric_indicationHeader_formats_PR_indicationHeader_Format2 + /* Extensions may appear below */ + +} E2SM_RC_IndicationHeader__ric_indicationHeader_formats_PR; + +/* Forward declarations */ +struct E2SM_RC_IndicationHeader_Format1; +struct E2SM_RC_IndicationHeader_Format2; + +/* E2SM-RC-IndicationHeader */ +typedef struct E2SM_RC_IndicationHeader { + struct E2SM_RC_IndicationHeader__ric_indicationHeader_formats { + E2SM_RC_IndicationHeader__ric_indicationHeader_formats_PR present; + union E2SM_RC_IndicationHeader__ric_indicationHeader_formats_u { + struct E2SM_RC_IndicationHeader_Format1 *indicationHeader_Format1; + struct E2SM_RC_IndicationHeader_Format2 *indicationHeader_Format2; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_indicationHeader_formats; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationHeader_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationHeader; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationHeader_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format1-Item.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format1-Item.h new file mode 100755 index 0000000..c4fae50 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format1-Item.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format1_Item_H_ +#define _E2SM_RC_IndicationMessage_Format1_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-ValueType.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-IndicationMessage-Format1-Item */ +typedef struct E2SM_RC_IndicationMessage_Format1_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_ValueType_t ranParameter_valueType; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format1_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format1_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format1_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format1_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format1_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format1.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format1.h new file mode 100755 index 0000000..47d52cc --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format1.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format1_H_ +#define _E2SM_RC_IndicationMessage_Format1_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_IndicationMessage_Format1_Item; + +/* E2SM-RC-IndicationMessage-Format1 */ +typedef struct E2SM_RC_IndicationMessage_Format1 { + struct E2SM_RC_IndicationMessage_Format1__ranP_Reported_List { + A_SEQUENCE_OF(struct E2SM_RC_IndicationMessage_Format1_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ranP_Reported_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format1; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format1_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format1_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format1_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format2-Item.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format2-Item.h new file mode 100755 index 0000000..082363b --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format2-Item.h @@ -0,0 +1,55 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format2_Item_H_ +#define _E2SM_RC_IndicationMessage_Format2_Item_H_ + + +#include + +/* Including external dependencies */ +#include "UEID.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_IndicationMessage_Format2_RANParameter_Item; + +/* E2SM-RC-IndicationMessage-Format2-Item */ +typedef struct E2SM_RC_IndicationMessage_Format2_Item { + UEID_t ueID; + struct E2SM_RC_IndicationMessage_Format2_Item__ranP_List { + A_SEQUENCE_OF(struct E2SM_RC_IndicationMessage_Format2_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ranP_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format2_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format2_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format2_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format2_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format2_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format2-RANParameter-Item.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format2-RANParameter-Item.h new file mode 100755 index 0000000..872e316 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format2-RANParameter-Item.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format2_RANParameter_Item_H_ +#define _E2SM_RC_IndicationMessage_Format2_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-ValueType.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-IndicationMessage-Format2-RANParameter-Item */ +typedef struct E2SM_RC_IndicationMessage_Format2_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_ValueType_t ranParameter_valueType; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format2_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format2_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format2.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format2.h new file mode 100755 index 0000000..641f801 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format2.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format2_H_ +#define _E2SM_RC_IndicationMessage_Format2_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_IndicationMessage_Format2_Item; + +/* E2SM-RC-IndicationMessage-Format2 */ +typedef struct E2SM_RC_IndicationMessage_Format2 { + struct E2SM_RC_IndicationMessage_Format2__ueParameter_List { + A_SEQUENCE_OF(struct E2SM_RC_IndicationMessage_Format2_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ueParameter_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format2; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format2_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format2_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format2_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format3-Item.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format3-Item.h new file mode 100755 index 0000000..2ec97e2 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format3-Item.h @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format3_Item_H_ +#define _E2SM_RC_IndicationMessage_Format3_Item_H_ + + +#include + +/* Including external dependencies */ +#include "CGI.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NeighborRelation_Info; + +/* E2SM-RC-IndicationMessage-Format3-Item */ +typedef struct E2SM_RC_IndicationMessage_Format3_Item { + CGI_t cellGlobal_ID; + OCTET_STRING_t *cellContextInfo; /* OPTIONAL */ + BOOLEAN_t *cellDeleted; /* OPTIONAL */ + struct NeighborRelation_Info *neighborRelation_Table; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format3_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format3_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format3_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format3_Item_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format3_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format3.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format3.h new file mode 100755 index 0000000..a73592f --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format3.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format3_H_ +#define _E2SM_RC_IndicationMessage_Format3_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_IndicationMessage_Format3_Item; + +/* E2SM-RC-IndicationMessage-Format3 */ +typedef struct E2SM_RC_IndicationMessage_Format3 { + struct E2SM_RC_IndicationMessage_Format3__cellInfo_List { + A_SEQUENCE_OF(struct E2SM_RC_IndicationMessage_Format3_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } cellInfo_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format3_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format3; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format3_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format3_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format3_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format4-ItemCell.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format4-ItemCell.h new file mode 100755 index 0000000..7962352 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format4-ItemCell.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format4_ItemCell_H_ +#define _E2SM_RC_IndicationMessage_Format4_ItemCell_H_ + + +#include + +/* Including external dependencies */ +#include "CGI.h" +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NeighborRelation_Info; + +/* E2SM-RC-IndicationMessage-Format4-ItemCell */ +typedef struct E2SM_RC_IndicationMessage_Format4_ItemCell { + CGI_t cellGlobal_ID; + OCTET_STRING_t *cellContextInfo; /* OPTIONAL */ + struct NeighborRelation_Info *neighborRelation_Table; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format4_ItemCell_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format4_ItemCell_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format4_ItemCell_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format4_ItemCell_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format4-ItemUE.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format4-ItemUE.h new file mode 100755 index 0000000..51a2974 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format4-ItemUE.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format4_ItemUE_H_ +#define _E2SM_RC_IndicationMessage_Format4_ItemUE_H_ + + +#include + +/* Including external dependencies */ +#include "UEID.h" +#include +#include "CGI.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-IndicationMessage-Format4-ItemUE */ +typedef struct E2SM_RC_IndicationMessage_Format4_ItemUE { + UEID_t ueID; + OCTET_STRING_t *ueContextInfo; /* OPTIONAL */ + CGI_t cellGlobal_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format4_ItemUE_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format4_ItemUE_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format4_ItemUE_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format4_ItemUE_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format4.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format4.h new file mode 100755 index 0000000..e51abf4 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format4.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format4_H_ +#define _E2SM_RC_IndicationMessage_Format4_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_IndicationMessage_Format4_ItemUE; +struct E2SM_RC_IndicationMessage_Format4_ItemCell; + +/* E2SM-RC-IndicationMessage-Format4 */ +typedef struct E2SM_RC_IndicationMessage_Format4 { + struct E2SM_RC_IndicationMessage_Format4__ueInfo_List { + A_SEQUENCE_OF(struct E2SM_RC_IndicationMessage_Format4_ItemUE) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ueInfo_List; + struct E2SM_RC_IndicationMessage_Format4__cellInfo_List { + A_SEQUENCE_OF(struct E2SM_RC_IndicationMessage_Format4_ItemCell) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } cellInfo_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format4_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format4; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format4_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format4_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format4_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format5-Item.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format5-Item.h new file mode 100755 index 0000000..f46f196 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format5-Item.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format5_Item_H_ +#define _E2SM_RC_IndicationMessage_Format5_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-ValueType.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* E2SM-RC-IndicationMessage-Format5-Item */ +typedef struct E2SM_RC_IndicationMessage_Format5_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_ValueType_t ranParameter_valueType; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format5_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format5_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format5_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format5_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format5_Item_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage-Format5.h b/e2sm/headers/E2SM-RC-IndicationMessage-Format5.h new file mode 100755 index 0000000..ca2c7c0 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage-Format5.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_Format5_H_ +#define _E2SM_RC_IndicationMessage_Format5_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct E2SM_RC_IndicationMessage_Format5_Item; + +/* E2SM-RC-IndicationMessage-Format5 */ +typedef struct E2SM_RC_IndicationMessage_Format5 { + struct E2SM_RC_IndicationMessage_Format5__ranP_Requested_List { + A_SEQUENCE_OF(struct E2SM_RC_IndicationMessage_Format5_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ranP_Requested_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_Format5_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format5; +extern asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format5_specs_1; +extern asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format5_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_Format5_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-IndicationMessage.h b/e2sm/headers/E2SM-RC-IndicationMessage.h new file mode 100755 index 0000000..0a8fa90 --- /dev/null +++ b/e2sm/headers/E2SM-RC-IndicationMessage.h @@ -0,0 +1,77 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _E2SM_RC_IndicationMessage_H_ +#define _E2SM_RC_IndicationMessage_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum E2SM_RC_IndicationMessage__ric_indicationMessage_formats_PR { + E2SM_RC_IndicationMessage__ric_indicationMessage_formats_PR_NOTHING, /* No components present */ + E2SM_RC_IndicationMessage__ric_indicationMessage_formats_PR_indicationMessage_Format1, + E2SM_RC_IndicationMessage__ric_indicationMessage_formats_PR_indicationMessage_Format2, + E2SM_RC_IndicationMessage__ric_indicationMessage_formats_PR_indicationMessage_Format3, + E2SM_RC_IndicationMessage__ric_indicationMessage_formats_PR_indicationMessage_Format4, + E2SM_RC_IndicationMessage__ric_indicationMessage_formats_PR_indicationMessage_Format5 + /* Extensions may appear below */ + +} E2SM_RC_IndicationMessage__ric_indicationMessage_formats_PR; + +/* Forward declarations */ +struct E2SM_RC_IndicationMessage_Format1; +struct E2SM_RC_IndicationMessage_Format2; +struct E2SM_RC_IndicationMessage_Format3; +struct E2SM_RC_IndicationMessage_Format4; +struct E2SM_RC_IndicationMessage_Format5; + +/* E2SM-RC-IndicationMessage */ +typedef struct E2SM_RC_IndicationMessage { + struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats { + E2SM_RC_IndicationMessage__ric_indicationMessage_formats_PR present; + union E2SM_RC_IndicationMessage__ric_indicationMessage_formats_u { + struct E2SM_RC_IndicationMessage_Format1 *indicationMessage_Format1; + struct E2SM_RC_IndicationMessage_Format2 *indicationMessage_Format2; + struct E2SM_RC_IndicationMessage_Format3 *indicationMessage_Format3; + struct E2SM_RC_IndicationMessage_Format4 *indicationMessage_Format4; + struct E2SM_RC_IndicationMessage_Format5 *indicationMessage_Format5; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_indicationMessage_formats; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} E2SM_RC_IndicationMessage_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage; + +#ifdef __cplusplus +} +#endif + +#endif /* _E2SM_RC_IndicationMessage_H_ */ +#include diff --git a/e2sm/headers/E2SM-RC-RANFunctionDefinition.h b/e2sm/headers/E2SM-RC-RANFunctionDefinition.h old mode 100644 new mode 100755 index 112fc9e..1293799 --- a/e2sm/headers/E2SM-RC-RANFunctionDefinition.h +++ b/e2sm/headers/E2SM-RC-RANFunctionDefinition.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -13,8 +13,6 @@ /* Including external dependencies */ #include "RANfunction-Name.h" -#include -#include #include #ifdef __cplusplus @@ -22,24 +20,20 @@ extern "C" { #endif /* Forward declarations */ -struct RIC_EventTriggerStyle_Item; -struct RIC_ControlStyle_Item; +struct RANFunctionDefinition_EventTrigger; +struct RANFunctionDefinition_Report; +struct RANFunctionDefinition_Insert; +struct RANFunctionDefinition_Control; +struct RANFunctionDefinition_Policy; /* E2SM-RC-RANFunctionDefinition */ typedef struct E2SM_RC_RANFunctionDefinition { RANfunction_Name_t ranFunction_Name; - struct E2SM_RC_RANFunctionDefinition__ric_EventTriggerStyle_List { - A_SEQUENCE_OF(struct RIC_EventTriggerStyle_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *ric_EventTriggerStyle_List; - struct E2SM_RC_RANFunctionDefinition__ric_ControlStyle_List { - A_SEQUENCE_OF(struct RIC_ControlStyle_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *ric_ControlStyle_List; + struct RANFunctionDefinition_EventTrigger *ranFunctionDefinition_EventTrigger; /* OPTIONAL */ + struct RANFunctionDefinition_Report *ranFunctionDefinition_Report; /* OPTIONAL */ + struct RANFunctionDefinition_Insert *ranFunctionDefinition_Insert; /* OPTIONAL */ + struct RANFunctionDefinition_Control *ranFunctionDefinition_Control; /* OPTIONAL */ + struct RANFunctionDefinition_Policy *ranFunctionDefinition_Policy; /* OPTIONAL */ /* * This type is extensible, * possible extensions are below. diff --git a/e2sm/headers/EN-GNB-ID.h b/e2sm/headers/EN-GNB-ID.h new file mode 100755 index 0000000..3aa81d5 --- /dev/null +++ b/e2sm/headers/EN-GNB-ID.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EN_GNB_ID_H_ +#define _EN_GNB_ID_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EN_GNB_ID_PR { + EN_GNB_ID_PR_NOTHING, /* No components present */ + EN_GNB_ID_PR_en_gNB_ID + /* Extensions may appear below */ + +} EN_GNB_ID_PR; + +/* EN-GNB-ID */ +typedef struct EN_GNB_ID { + EN_GNB_ID_PR present; + union EN_GNB_ID_u { + BIT_STRING_t en_gNB_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EN_GNB_ID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EN_GNB_ID; +extern asn_CHOICE_specifics_t asn_SPC_EN_GNB_ID_specs_1; +extern asn_TYPE_member_t asn_MBR_EN_GNB_ID_1[1]; +extern asn_per_constraints_t asn_PER_type_EN_GNB_ID_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _EN_GNB_ID_H_ */ +#include diff --git a/e2sm/headers/ENB-ID-Choice.h b/e2sm/headers/ENB-ID-Choice.h deleted file mode 100644 index 06a6ade..0000000 --- a/e2sm/headers/ENB-ID-Choice.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ENB_ID_Choice_H_ -#define _ENB_ID_Choice_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ENB_ID_Choice_PR { - ENB_ID_Choice_PR_NOTHING, /* No components present */ - ENB_ID_Choice_PR_enb_ID_macro, - ENB_ID_Choice_PR_enb_ID_shortmacro, - ENB_ID_Choice_PR_enb_ID_longmacro - /* Extensions may appear below */ - -} ENB_ID_Choice_PR; - -/* ENB-ID-Choice */ -typedef struct ENB_ID_Choice { - ENB_ID_Choice_PR present; - union ENB_ID_Choice_u { - BIT_STRING_t enb_ID_macro; - BIT_STRING_t enb_ID_shortmacro; - BIT_STRING_t enb_ID_longmacro; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ENB_ID_Choice_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ENB_ID_Choice; -extern asn_CHOICE_specifics_t asn_SPC_ENB_ID_Choice_specs_1; -extern asn_TYPE_member_t asn_MBR_ENB_ID_Choice_1[3]; -extern asn_per_constraints_t asn_PER_type_ENB_ID_Choice_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ENB_ID_Choice_H_ */ -#include diff --git a/e2sm/headers/ENB-ID.h b/e2sm/headers/ENB-ID.h old mode 100644 new mode 100755 index d3593b2..3572d4e --- a/e2sm/headers/ENB-ID.h +++ b/e2sm/headers/ENB-ID.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/ENB-UE-X2AP-ID-Extension.h b/e2sm/headers/ENB-UE-X2AP-ID-Extension.h new file mode 100755 index 0000000..1b3df82 --- /dev/null +++ b/e2sm/headers/ENB-UE-X2AP-ID-Extension.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _ENB_UE_X2AP_ID_Extension_H_ +#define _ENB_UE_X2AP_ID_Extension_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ENB-UE-X2AP-ID-Extension */ +typedef long ENB_UE_X2AP_ID_Extension_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ENB_UE_X2AP_ID_Extension_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ENB_UE_X2AP_ID_Extension; +asn_struct_free_f ENB_UE_X2AP_ID_Extension_free; +asn_struct_print_f ENB_UE_X2AP_ID_Extension_print; +asn_constr_check_f ENB_UE_X2AP_ID_Extension_constraint; +ber_type_decoder_f ENB_UE_X2AP_ID_Extension_decode_ber; +der_type_encoder_f ENB_UE_X2AP_ID_Extension_encode_der; +xer_type_decoder_f ENB_UE_X2AP_ID_Extension_decode_xer; +xer_type_encoder_f ENB_UE_X2AP_ID_Extension_encode_xer; +oer_type_decoder_f ENB_UE_X2AP_ID_Extension_decode_oer; +oer_type_encoder_f ENB_UE_X2AP_ID_Extension_encode_oer; +per_type_decoder_f ENB_UE_X2AP_ID_Extension_decode_uper; +per_type_encoder_f ENB_UE_X2AP_ID_Extension_encode_uper; +per_type_decoder_f ENB_UE_X2AP_ID_Extension_decode_aper; +per_type_encoder_f ENB_UE_X2AP_ID_Extension_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ENB_UE_X2AP_ID_Extension_H_ */ +#include diff --git a/e2sm/headers/ENB-UE-X2AP-ID.h b/e2sm/headers/ENB-UE-X2AP-ID.h new file mode 100755 index 0000000..739d699 --- /dev/null +++ b/e2sm/headers/ENB-UE-X2AP-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _ENB_UE_X2AP_ID_H_ +#define _ENB_UE_X2AP_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ENB-UE-X2AP-ID */ +typedef long ENB_UE_X2AP_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_ENB_UE_X2AP_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_ENB_UE_X2AP_ID; +asn_struct_free_f ENB_UE_X2AP_ID_free; +asn_struct_print_f ENB_UE_X2AP_ID_print; +asn_constr_check_f ENB_UE_X2AP_ID_constraint; +ber_type_decoder_f ENB_UE_X2AP_ID_decode_ber; +der_type_encoder_f ENB_UE_X2AP_ID_encode_der; +xer_type_decoder_f ENB_UE_X2AP_ID_decode_xer; +xer_type_encoder_f ENB_UE_X2AP_ID_encode_xer; +oer_type_decoder_f ENB_UE_X2AP_ID_decode_oer; +oer_type_encoder_f ENB_UE_X2AP_ID_encode_oer; +per_type_decoder_f ENB_UE_X2AP_ID_decode_uper; +per_type_encoder_f ENB_UE_X2AP_ID_encode_uper; +per_type_decoder_f ENB_UE_X2AP_ID_decode_aper; +per_type_encoder_f ENB_UE_X2AP_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _ENB_UE_X2AP_ID_H_ */ +#include diff --git a/e2sm/headers/EUTRA-CGI.h b/e2sm/headers/EUTRA-CGI.h new file mode 100755 index 0000000..47d879e --- /dev/null +++ b/e2sm/headers/EUTRA-CGI.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EUTRA_CGI_H_ +#define _EUTRA_CGI_H_ + + +#include + +/* Including external dependencies */ +#include "PLMNIdentity.h" +#include "EUTRACellIdentity.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* EUTRA-CGI */ +typedef struct EUTRA_CGI { + PLMNIdentity_t pLMNIdentity; + EUTRACellIdentity_t eUTRACellIdentity; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EUTRA_CGI_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EUTRA_CGI; +extern asn_SEQUENCE_specifics_t asn_SPC_EUTRA_CGI_specs_1; +extern asn_TYPE_member_t asn_MBR_EUTRA_CGI_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EUTRA_CGI_H_ */ +#include diff --git a/e2sm/headers/EUTRACellIdentity.h b/e2sm/headers/EUTRACellIdentity.h new file mode 100755 index 0000000..58a5341 --- /dev/null +++ b/e2sm/headers/EUTRACellIdentity.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EUTRACellIdentity_H_ +#define _EUTRACellIdentity_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* EUTRACellIdentity */ +typedef BIT_STRING_t EUTRACellIdentity_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_EUTRACellIdentity_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_EUTRACellIdentity; +asn_struct_free_f EUTRACellIdentity_free; +asn_struct_print_f EUTRACellIdentity_print; +asn_constr_check_f EUTRACellIdentity_constraint; +ber_type_decoder_f EUTRACellIdentity_decode_ber; +der_type_encoder_f EUTRACellIdentity_encode_der; +xer_type_decoder_f EUTRACellIdentity_decode_xer; +xer_type_encoder_f EUTRACellIdentity_encode_xer; +oer_type_decoder_f EUTRACellIdentity_decode_oer; +oer_type_encoder_f EUTRACellIdentity_encode_oer; +per_type_decoder_f EUTRACellIdentity_decode_uper; +per_type_encoder_f EUTRACellIdentity_encode_uper; +per_type_decoder_f EUTRACellIdentity_decode_aper; +per_type_encoder_f EUTRACellIdentity_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _EUTRACellIdentity_H_ */ +#include diff --git a/e2sm/headers/EventTrigger-Cell-Info-Item-Choice-Group.h b/e2sm/headers/EventTrigger-Cell-Info-Item-Choice-Group.h new file mode 100755 index 0000000..f5f8be7 --- /dev/null +++ b/e2sm/headers/EventTrigger-Cell-Info-Item-Choice-Group.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EventTrigger_Cell_Info_Item_Choice_Group_H_ +#define _EventTrigger_Cell_Info_Item_Choice_Group_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-Testing.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* EventTrigger-Cell-Info-Item-Choice-Group */ +typedef struct EventTrigger_Cell_Info_Item_Choice_Group { + RANParameter_Testing_t ranParameterTesting; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EventTrigger_Cell_Info_Item_Choice_Group_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_Cell_Info_Item_Choice_Group_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_Cell_Info_Item_Choice_Group_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EventTrigger_Cell_Info_Item_Choice_Group_H_ */ +#include diff --git a/e2sm/headers/EventTrigger-Cell-Info-Item-Choice-Individual.h b/e2sm/headers/EventTrigger-Cell-Info-Item-Choice-Individual.h new file mode 100755 index 0000000..88febb4 --- /dev/null +++ b/e2sm/headers/EventTrigger-Cell-Info-Item-Choice-Individual.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EventTrigger_Cell_Info_Item_Choice_Individual_H_ +#define _EventTrigger_Cell_Info_Item_Choice_Individual_H_ + + +#include + +/* Including external dependencies */ +#include "CGI.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* EventTrigger-Cell-Info-Item-Choice-Individual */ +typedef struct EventTrigger_Cell_Info_Item_Choice_Individual { + CGI_t cellGlobalID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EventTrigger_Cell_Info_Item_Choice_Individual_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_Cell_Info_Item_Choice_Individual_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_Cell_Info_Item_Choice_Individual_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EventTrigger_Cell_Info_Item_Choice_Individual_H_ */ +#include diff --git a/e2sm/headers/EventTrigger-Cell-Info-Item.h b/e2sm/headers/EventTrigger-Cell-Info-Item.h new file mode 100755 index 0000000..e5680ab --- /dev/null +++ b/e2sm/headers/EventTrigger-Cell-Info-Item.h @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EventTrigger_Cell_Info_Item_H_ +#define _EventTrigger_Cell_Info_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-EventTrigger-Cell-ID.h" +#include "LogicalOR.h" +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EventTrigger_Cell_Info_Item__cellType_PR { + EventTrigger_Cell_Info_Item__cellType_PR_NOTHING, /* No components present */ + EventTrigger_Cell_Info_Item__cellType_PR_cellType_Choice_Individual, + EventTrigger_Cell_Info_Item__cellType_PR_cellType_Choice_Group + /* Extensions may appear below */ + +} EventTrigger_Cell_Info_Item__cellType_PR; + +/* Forward declarations */ +struct EventTrigger_Cell_Info_Item_Choice_Individual; +struct EventTrigger_Cell_Info_Item_Choice_Group; + +/* EventTrigger-Cell-Info-Item */ +typedef struct EventTrigger_Cell_Info_Item { + RIC_EventTrigger_Cell_ID_t eventTriggerCellID; + struct EventTrigger_Cell_Info_Item__cellType { + EventTrigger_Cell_Info_Item__cellType_PR present; + union EventTrigger_Cell_Info_Item__cellType_u { + struct EventTrigger_Cell_Info_Item_Choice_Individual *cellType_Choice_Individual; + struct EventTrigger_Cell_Info_Item_Choice_Group *cellType_Choice_Group; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } cellType; + LogicalOR_t *logicalOR; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EventTrigger_Cell_Info_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_Cell_Info_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_Cell_Info_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_Cell_Info_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EventTrigger_Cell_Info_Item_H_ */ +#include diff --git a/e2sm/headers/CUUPMeasurement-Container.h b/e2sm/headers/EventTrigger-Cell-Info.h old mode 100644 new mode 100755 similarity index 53% rename from e2sm/headers/CUUPMeasurement-Container.h rename to e2sm/headers/EventTrigger-Cell-Info.h index 1bd12fd..4a23f62 --- a/e2sm/headers/CUUPMeasurement-Container.h +++ b/e2sm/headers/EventTrigger-Cell-Info.h @@ -1,12 +1,12 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _CUUPMeasurement_Container_H_ -#define _CUUPMeasurement_Container_H_ +#ifndef _EventTrigger_Cell_Info_H_ +#define _EventTrigger_Cell_Info_H_ #include @@ -21,16 +21,16 @@ extern "C" { #endif /* Forward declarations */ -struct PlmnID_Item; +struct EventTrigger_Cell_Info_Item; -/* CUUPMeasurement-Container */ -typedef struct CUUPMeasurement_Container { - struct CUUPMeasurement_Container__plmnList { - A_SEQUENCE_OF(struct PlmnID_Item) list; +/* EventTrigger-Cell-Info */ +typedef struct EventTrigger_Cell_Info { + struct EventTrigger_Cell_Info__cellInfo_List { + A_SEQUENCE_OF(struct EventTrigger_Cell_Info_Item) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; - } plmnList; + } cellInfo_List; /* * This type is extensible, * possible extensions are below. @@ -38,16 +38,16 @@ typedef struct CUUPMeasurement_Container { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} CUUPMeasurement_Container_t; +} EventTrigger_Cell_Info_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_CUUPMeasurement_Container; -extern asn_SEQUENCE_specifics_t asn_SPC_CUUPMeasurement_Container_specs_1; -extern asn_TYPE_member_t asn_MBR_CUUPMeasurement_Container_1[1]; +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_Cell_Info; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_Cell_Info_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_Cell_Info_1[1]; #ifdef __cplusplus } #endif -#endif /* _CUUPMeasurement_Container_H_ */ +#endif /* _EventTrigger_Cell_Info_H_ */ #include diff --git a/e2sm/headers/EventTrigger-UE-Info-Item-Choice-Group.h b/e2sm/headers/EventTrigger-UE-Info-Item-Choice-Group.h new file mode 100755 index 0000000..04c53e1 --- /dev/null +++ b/e2sm/headers/EventTrigger-UE-Info-Item-Choice-Group.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EventTrigger_UE_Info_Item_Choice_Group_H_ +#define _EventTrigger_UE_Info_Item_Choice_Group_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-Testing.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* EventTrigger-UE-Info-Item-Choice-Group */ +typedef struct EventTrigger_UE_Info_Item_Choice_Group { + RANParameter_Testing_t ranParameterTesting; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EventTrigger_UE_Info_Item_Choice_Group_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_UE_Info_Item_Choice_Group; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UE_Info_Item_Choice_Group_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_UE_Info_Item_Choice_Group_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EventTrigger_UE_Info_Item_Choice_Group_H_ */ +#include diff --git a/e2sm/headers/EventTrigger-UE-Info-Item-Choice-Individual.h b/e2sm/headers/EventTrigger-UE-Info-Item-Choice-Individual.h new file mode 100755 index 0000000..a38e848 --- /dev/null +++ b/e2sm/headers/EventTrigger-UE-Info-Item-Choice-Individual.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EventTrigger_UE_Info_Item_Choice_Individual_H_ +#define _EventTrigger_UE_Info_Item_Choice_Individual_H_ + + +#include + +/* Including external dependencies */ +#include "UEID.h" +#include "RANParameter-Testing.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* EventTrigger-UE-Info-Item-Choice-Individual */ +typedef struct EventTrigger_UE_Info_Item_Choice_Individual { + UEID_t ueID; + RANParameter_Testing_t ranParameterTesting; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EventTrigger_UE_Info_Item_Choice_Individual_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UE_Info_Item_Choice_Individual_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_UE_Info_Item_Choice_Individual_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EventTrigger_UE_Info_Item_Choice_Individual_H_ */ +#include diff --git a/e2sm/headers/EventTrigger-UE-Info-Item.h b/e2sm/headers/EventTrigger-UE-Info-Item.h new file mode 100755 index 0000000..8124db8 --- /dev/null +++ b/e2sm/headers/EventTrigger-UE-Info-Item.h @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EventTrigger_UE_Info_Item_H_ +#define _EventTrigger_UE_Info_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-EventTrigger-UE-ID.h" +#include "LogicalOR.h" +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum EventTrigger_UE_Info_Item__ueType_PR { + EventTrigger_UE_Info_Item__ueType_PR_NOTHING, /* No components present */ + EventTrigger_UE_Info_Item__ueType_PR_ueType_Choice_Individual, + EventTrigger_UE_Info_Item__ueType_PR_ueType_Choice_Group + /* Extensions may appear below */ + +} EventTrigger_UE_Info_Item__ueType_PR; + +/* Forward declarations */ +struct EventTrigger_UE_Info_Item_Choice_Individual; +struct EventTrigger_UE_Info_Item_Choice_Group; + +/* EventTrigger-UE-Info-Item */ +typedef struct EventTrigger_UE_Info_Item { + RIC_EventTrigger_UE_ID_t eventTriggerUEID; + struct EventTrigger_UE_Info_Item__ueType { + EventTrigger_UE_Info_Item__ueType_PR present; + union EventTrigger_UE_Info_Item__ueType_u { + struct EventTrigger_UE_Info_Item_Choice_Individual *ueType_Choice_Individual; + struct EventTrigger_UE_Info_Item_Choice_Group *ueType_Choice_Group; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ueType; + LogicalOR_t *logicalOR; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EventTrigger_UE_Info_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_UE_Info_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UE_Info_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_UE_Info_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EventTrigger_UE_Info_Item_H_ */ +#include diff --git a/e2sm/headers/EPC-DU-PM-Container.h b/e2sm/headers/EventTrigger-UE-Info.h old mode 100644 new mode 100755 similarity index 54% rename from e2sm/headers/EPC-DU-PM-Container.h rename to e2sm/headers/EventTrigger-UE-Info.h index 354e3fd..951e3b3 --- a/e2sm/headers/EPC-DU-PM-Container.h +++ b/e2sm/headers/EventTrigger-UE-Info.h @@ -1,12 +1,12 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _EPC_DU_PM_Container_H_ -#define _EPC_DU_PM_Container_H_ +#ifndef _EventTrigger_UE_Info_H_ +#define _EventTrigger_UE_Info_H_ #include @@ -21,16 +21,16 @@ extern "C" { #endif /* Forward declarations */ -struct PerQCIReportListItem; +struct EventTrigger_UE_Info_Item; -/* EPC-DU-PM-Container */ -typedef struct EPC_DU_PM_Container { - struct EPC_DU_PM_Container__perQCIReportList_du { - A_SEQUENCE_OF(struct PerQCIReportListItem) list; +/* EventTrigger-UE-Info */ +typedef struct EventTrigger_UE_Info { + struct EventTrigger_UE_Info__ueInfo_List { + A_SEQUENCE_OF(struct EventTrigger_UE_Info_Item) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; - } perQCIReportList_du; + } ueInfo_List; /* * This type is extensible, * possible extensions are below. @@ -38,16 +38,16 @@ typedef struct EPC_DU_PM_Container { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} EPC_DU_PM_Container_t; +} EventTrigger_UE_Info_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EPC_DU_PM_Container; -extern asn_SEQUENCE_specifics_t asn_SPC_EPC_DU_PM_Container_specs_1; -extern asn_TYPE_member_t asn_MBR_EPC_DU_PM_Container_1[1]; +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_UE_Info; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UE_Info_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_UE_Info_1[1]; #ifdef __cplusplus } #endif -#endif /* _EPC_DU_PM_Container_H_ */ +#endif /* _EventTrigger_UE_Info_H_ */ #include diff --git a/e2sm/headers/EventTrigger-UEevent-Info-Item.h b/e2sm/headers/EventTrigger-UEevent-Info-Item.h new file mode 100755 index 0000000..a546e61 --- /dev/null +++ b/e2sm/headers/EventTrigger-UEevent-Info-Item.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _EventTrigger_UEevent_Info_Item_H_ +#define _EventTrigger_UEevent_Info_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-EventTrigger-UEevent-ID.h" +#include "LogicalOR.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* EventTrigger-UEevent-Info-Item */ +typedef struct EventTrigger_UEevent_Info_Item { + RIC_EventTrigger_UEevent_ID_t ueEventID; + LogicalOR_t *logicalOR; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} EventTrigger_UEevent_Info_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_UEevent_Info_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UEevent_Info_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_UEevent_Info_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _EventTrigger_UEevent_Info_Item_H_ */ +#include diff --git a/e2sm/headers/EPC-CUUP-PM-Format.h b/e2sm/headers/EventTrigger-UEevent-Info.h old mode 100644 new mode 100755 similarity index 52% rename from e2sm/headers/EPC-CUUP-PM-Format.h rename to e2sm/headers/EventTrigger-UEevent-Info.h index 0846bdc..d1ef88e --- a/e2sm/headers/EPC-CUUP-PM-Format.h +++ b/e2sm/headers/EventTrigger-UEevent-Info.h @@ -1,12 +1,12 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _EPC_CUUP_PM_Format_H_ -#define _EPC_CUUP_PM_Format_H_ +#ifndef _EventTrigger_UEevent_Info_H_ +#define _EventTrigger_UEevent_Info_H_ #include @@ -21,16 +21,16 @@ extern "C" { #endif /* Forward declarations */ -struct PerQCIReportListItemFormat; +struct EventTrigger_UEevent_Info_Item; -/* EPC-CUUP-PM-Format */ -typedef struct EPC_CUUP_PM_Format { - struct EPC_CUUP_PM_Format__perQCIReportList_cuup { - A_SEQUENCE_OF(struct PerQCIReportListItemFormat) list; +/* EventTrigger-UEevent-Info */ +typedef struct EventTrigger_UEevent_Info { + struct EventTrigger_UEevent_Info__ueEvent_List { + A_SEQUENCE_OF(struct EventTrigger_UEevent_Info_Item) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; - } perQCIReportList_cuup; + } ueEvent_List; /* * This type is extensible, * possible extensions are below. @@ -38,16 +38,16 @@ typedef struct EPC_CUUP_PM_Format { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} EPC_CUUP_PM_Format_t; +} EventTrigger_UEevent_Info_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_EPC_CUUP_PM_Format; -extern asn_SEQUENCE_specifics_t asn_SPC_EPC_CUUP_PM_Format_specs_1; -extern asn_TYPE_member_t asn_MBR_EPC_CUUP_PM_Format_1[1]; +extern asn_TYPE_descriptor_t asn_DEF_EventTrigger_UEevent_Info; +extern asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UEevent_Info_specs_1; +extern asn_TYPE_member_t asn_MBR_EventTrigger_UEevent_Info_1[1]; #ifdef __cplusplus } #endif -#endif /* _EPC_CUUP_PM_Format_H_ */ +#endif /* _EventTrigger_UEevent_Info_H_ */ #include diff --git a/e2sm/headers/FGC-DU-PM-Container.h b/e2sm/headers/FGC-DU-PM-Container.h deleted file mode 100644 index 0d7c224..0000000 --- a/e2sm/headers/FGC-DU-PM-Container.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _FGC_DU_PM_Container_H_ -#define _FGC_DU_PM_Container_H_ - - -#include - -/* Including external dependencies */ -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct SlicePerPlmnPerCellListItem; - -/* FGC-DU-PM-Container */ -typedef struct FGC_DU_PM_Container { - struct FGC_DU_PM_Container__slicePerPlmnPerCellList { - A_SEQUENCE_OF(struct SlicePerPlmnPerCellListItem) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } slicePerPlmnPerCellList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} FGC_DU_PM_Container_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_FGC_DU_PM_Container; -extern asn_SEQUENCE_specifics_t asn_SPC_FGC_DU_PM_Container_specs_1; -extern asn_TYPE_member_t asn_MBR_FGC_DU_PM_Container_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _FGC_DU_PM_Container_H_ */ -#include diff --git a/e2sm/headers/FQIPERSlicesPerPlmnListItem.h b/e2sm/headers/FQIPERSlicesPerPlmnListItem.h deleted file mode 100644 index 93cbd5f..0000000 --- a/e2sm/headers/FQIPERSlicesPerPlmnListItem.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _FQIPERSlicesPerPlmnListItem_H_ -#define _FQIPERSlicesPerPlmnListItem_H_ - - -#include - -/* Including external dependencies */ -#include "FiveQI.h" -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* FQIPERSlicesPerPlmnListItem */ -typedef struct FQIPERSlicesPerPlmnListItem { - FiveQI_t fiveQI; - INTEGER_t *pDCPBytesDL; /* OPTIONAL */ - INTEGER_t *pDCPBytesUL; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} FQIPERSlicesPerPlmnListItem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_FQIPERSlicesPerPlmnListItem; -extern asn_SEQUENCE_specifics_t asn_SPC_FQIPERSlicesPerPlmnListItem_specs_1; -extern asn_TYPE_member_t asn_MBR_FQIPERSlicesPerPlmnListItem_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _FQIPERSlicesPerPlmnListItem_H_ */ -#include diff --git a/e2sm/headers/FQIPERSlicesPerPlmnPerCellListItem.h b/e2sm/headers/FQIPERSlicesPerPlmnPerCellListItem.h deleted file mode 100644 index c805b5f..0000000 --- a/e2sm/headers/FQIPERSlicesPerPlmnPerCellListItem.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _FQIPERSlicesPerPlmnPerCellListItem_H_ -#define _FQIPERSlicesPerPlmnPerCellListItem_H_ - - -#include - -/* Including external dependencies */ -#include "FiveQI.h" -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* FQIPERSlicesPerPlmnPerCellListItem */ -typedef struct FQIPERSlicesPerPlmnPerCellListItem { - FiveQI_t fiveQI; - long *dl_PRBUsage; /* OPTIONAL */ - long *ul_PRBUsage; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} FQIPERSlicesPerPlmnPerCellListItem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_FQIPERSlicesPerPlmnPerCellListItem; -extern asn_SEQUENCE_specifics_t asn_SPC_FQIPERSlicesPerPlmnPerCellListItem_specs_1; -extern asn_TYPE_member_t asn_MBR_FQIPERSlicesPerPlmnPerCellListItem_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _FQIPERSlicesPerPlmnPerCellListItem_H_ */ -#include diff --git a/e2sm/headers/FiveGS-TAC.h b/e2sm/headers/FiveGS-TAC.h new file mode 100755 index 0000000..4231728 --- /dev/null +++ b/e2sm/headers/FiveGS-TAC.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _FiveGS_TAC_H_ +#define _FiveGS_TAC_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* FiveGS-TAC */ +typedef OCTET_STRING_t FiveGS_TAC_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_FiveGS_TAC_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_FiveGS_TAC; +asn_struct_free_f FiveGS_TAC_free; +asn_struct_print_f FiveGS_TAC_print; +asn_constr_check_f FiveGS_TAC_constraint; +ber_type_decoder_f FiveGS_TAC_decode_ber; +der_type_encoder_f FiveGS_TAC_encode_der; +xer_type_decoder_f FiveGS_TAC_decode_xer; +xer_type_encoder_f FiveGS_TAC_encode_xer; +oer_type_decoder_f FiveGS_TAC_decode_oer; +oer_type_encoder_f FiveGS_TAC_encode_oer; +per_type_decoder_f FiveGS_TAC_decode_uper; +per_type_encoder_f FiveGS_TAC_encode_uper; +per_type_decoder_f FiveGS_TAC_decode_aper; +per_type_encoder_f FiveGS_TAC_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _FiveGS_TAC_H_ */ +#include diff --git a/e2sm/headers/FiveQI.h b/e2sm/headers/FiveQI.h old mode 100644 new mode 100755 index 79e7340..c03dd83 --- a/e2sm/headers/FiveQI.h +++ b/e2sm/headers/FiveQI.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/FreqBandNrItem.h b/e2sm/headers/FreqBandNrItem.h new file mode 100755 index 0000000..b8aefe4 --- /dev/null +++ b/e2sm/headers/FreqBandNrItem.h @@ -0,0 +1,42 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _FreqBandNrItem_H_ +#define _FreqBandNrItem_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* FreqBandNrItem */ +typedef struct FreqBandNrItem { + long freqBandIndicatorNr; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} FreqBandNrItem_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_FreqBandNrItem; + +#ifdef __cplusplus +} +#endif + +#endif /* _FreqBandNrItem_H_ */ +#include diff --git a/e2sm/headers/GNB-CU-CP-UE-E1AP-ID.h b/e2sm/headers/GNB-CU-CP-UE-E1AP-ID.h new file mode 100755 index 0000000..00a88a0 --- /dev/null +++ b/e2sm/headers/GNB-CU-CP-UE-E1AP-ID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _GNB_CU_CP_UE_E1AP_ID_H_ +#define _GNB_CU_CP_UE_E1AP_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* GNB-CU-CP-UE-E1AP-ID */ +typedef unsigned long GNB_CU_CP_UE_E1AP_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GNB_CU_CP_UE_E1AP_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GNB_CU_CP_UE_E1AP_ID; +extern const asn_INTEGER_specifics_t asn_SPC_GNB_CU_CP_UE_E1AP_ID_specs_1; +asn_struct_free_f GNB_CU_CP_UE_E1AP_ID_free; +asn_struct_print_f GNB_CU_CP_UE_E1AP_ID_print; +asn_constr_check_f GNB_CU_CP_UE_E1AP_ID_constraint; +ber_type_decoder_f GNB_CU_CP_UE_E1AP_ID_decode_ber; +der_type_encoder_f GNB_CU_CP_UE_E1AP_ID_encode_der; +xer_type_decoder_f GNB_CU_CP_UE_E1AP_ID_decode_xer; +xer_type_encoder_f GNB_CU_CP_UE_E1AP_ID_encode_xer; +oer_type_decoder_f GNB_CU_CP_UE_E1AP_ID_decode_oer; +oer_type_encoder_f GNB_CU_CP_UE_E1AP_ID_encode_oer; +per_type_decoder_f GNB_CU_CP_UE_E1AP_ID_decode_uper; +per_type_encoder_f GNB_CU_CP_UE_E1AP_ID_encode_uper; +per_type_decoder_f GNB_CU_CP_UE_E1AP_ID_decode_aper; +per_type_encoder_f GNB_CU_CP_UE_E1AP_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GNB_CU_CP_UE_E1AP_ID_H_ */ +#include diff --git a/e2sm/headers/GNB-CU-UE-F1AP-ID.h b/e2sm/headers/GNB-CU-UE-F1AP-ID.h new file mode 100755 index 0000000..343ebaa --- /dev/null +++ b/e2sm/headers/GNB-CU-UE-F1AP-ID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _GNB_CU_UE_F1AP_ID_H_ +#define _GNB_CU_UE_F1AP_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* GNB-CU-UE-F1AP-ID */ +typedef unsigned long GNB_CU_UE_F1AP_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_GNB_CU_UE_F1AP_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GNB_CU_UE_F1AP_ID; +extern const asn_INTEGER_specifics_t asn_SPC_GNB_CU_UE_F1AP_ID_specs_1; +asn_struct_free_f GNB_CU_UE_F1AP_ID_free; +asn_struct_print_f GNB_CU_UE_F1AP_ID_print; +asn_constr_check_f GNB_CU_UE_F1AP_ID_constraint; +ber_type_decoder_f GNB_CU_UE_F1AP_ID_decode_ber; +der_type_encoder_f GNB_CU_UE_F1AP_ID_encode_der; +xer_type_decoder_f GNB_CU_UE_F1AP_ID_decode_xer; +xer_type_encoder_f GNB_CU_UE_F1AP_ID_encode_xer; +oer_type_decoder_f GNB_CU_UE_F1AP_ID_decode_oer; +oer_type_encoder_f GNB_CU_UE_F1AP_ID_encode_oer; +per_type_decoder_f GNB_CU_UE_F1AP_ID_decode_uper; +per_type_encoder_f GNB_CU_UE_F1AP_ID_encode_uper; +per_type_decoder_f GNB_CU_UE_F1AP_ID_decode_aper; +per_type_encoder_f GNB_CU_UE_F1AP_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _GNB_CU_UE_F1AP_ID_H_ */ +#include diff --git a/e2sm/headers/GNB-CU-UP-ID.h b/e2sm/headers/GNB-CU-UP-ID.h old mode 100644 new mode 100755 index 23b6f3b..5b6b19c --- a/e2sm/headers/GNB-CU-UP-ID.h +++ b/e2sm/headers/GNB-CU-UP-ID.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/GNB-DU-ID.h b/e2sm/headers/GNB-DU-ID.h old mode 100644 new mode 100755 index d97a542..6de06ec --- a/e2sm/headers/GNB-DU-ID.h +++ b/e2sm/headers/GNB-DU-ID.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/GNB-ID-Choice.h b/e2sm/headers/GNB-ID-Choice.h deleted file mode 100644 index fd8b7ca..0000000 --- a/e2sm/headers/GNB-ID-Choice.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _GNB_ID_Choice_H_ -#define _GNB_ID_Choice_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GNB_ID_Choice_PR { - GNB_ID_Choice_PR_NOTHING, /* No components present */ - GNB_ID_Choice_PR_gnb_ID - /* Extensions may appear below */ - -} GNB_ID_Choice_PR; - -/* GNB-ID-Choice */ -typedef struct GNB_ID_Choice { - GNB_ID_Choice_PR present; - union GNB_ID_Choice_u { - BIT_STRING_t gnb_ID; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GNB_ID_Choice_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GNB_ID_Choice; -extern asn_CHOICE_specifics_t asn_SPC_GNB_ID_Choice_specs_1; -extern asn_TYPE_member_t asn_MBR_GNB_ID_Choice_1[1]; -extern asn_per_constraints_t asn_PER_type_GNB_ID_Choice_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _GNB_ID_Choice_H_ */ -#include diff --git a/e2sm/headers/ENGNB-ID.h b/e2sm/headers/GNB-ID.h old mode 100644 new mode 100755 similarity index 54% rename from e2sm/headers/ENGNB-ID.h rename to e2sm/headers/GNB-ID.h index 8f1994c..b1aa95d --- a/e2sm/headers/ENGNB-ID.h +++ b/e2sm/headers/GNB-ID.h @@ -1,12 +1,12 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _ENGNB_ID_H_ -#define _ENGNB_ID_H_ +#ifndef _GNB_ID_H_ +#define _GNB_ID_H_ #include @@ -20,17 +20,17 @@ extern "C" { #endif /* Dependencies */ -typedef enum ENGNB_ID_PR { - ENGNB_ID_PR_NOTHING, /* No components present */ - ENGNB_ID_PR_gNB_ID +typedef enum GNB_ID_PR { + GNB_ID_PR_NOTHING, /* No components present */ + GNB_ID_PR_gNB_ID /* Extensions may appear below */ -} ENGNB_ID_PR; +} GNB_ID_PR; -/* ENGNB-ID */ -typedef struct ENGNB_ID { - ENGNB_ID_PR present; - union ENGNB_ID_u { +/* GNB-ID */ +typedef struct GNB_ID { + GNB_ID_PR present; + union GNB_ID_u { BIT_STRING_t gNB_ID; /* * This type is extensible, @@ -40,17 +40,17 @@ typedef struct ENGNB_ID { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ENGNB_ID_t; +} GNB_ID_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ENGNB_ID; -extern asn_CHOICE_specifics_t asn_SPC_ENGNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_ENGNB_ID_1[1]; -extern asn_per_constraints_t asn_PER_type_ENGNB_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_GNB_ID; +extern asn_CHOICE_specifics_t asn_SPC_GNB_ID_specs_1; +extern asn_TYPE_member_t asn_MBR_GNB_ID_1[1]; +extern asn_per_constraints_t asn_PER_type_GNB_ID_constr_1; #ifdef __cplusplus } #endif -#endif /* _ENGNB_ID_H_ */ +#endif /* _GNB_ID_H_ */ #include diff --git a/e2sm/headers/GUAMI.h b/e2sm/headers/GUAMI.h new file mode 100755 index 0000000..aef3e6e --- /dev/null +++ b/e2sm/headers/GUAMI.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _GUAMI_H_ +#define _GUAMI_H_ + + +#include + +/* Including external dependencies */ +#include "PLMNIdentity.h" +#include "AMFRegionID.h" +#include "AMFSetID.h" +#include "AMFPointer.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* GUAMI */ +typedef struct GUAMI { + PLMNIdentity_t pLMNIdentity; + AMFRegionID_t aMFRegionID; + AMFSetID_t aMFSetID; + AMFPointer_t aMFPointer; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GUAMI_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GUAMI; +extern asn_SEQUENCE_specifics_t asn_SPC_GUAMI_specs_1; +extern asn_TYPE_member_t asn_MBR_GUAMI_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _GUAMI_H_ */ +#include diff --git a/e2sm/headers/GUMMEI.h b/e2sm/headers/GUMMEI.h new file mode 100755 index 0000000..34c6025 --- /dev/null +++ b/e2sm/headers/GUMMEI.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _GUMMEI_H_ +#define _GUMMEI_H_ + + +#include + +/* Including external dependencies */ +#include "PLMNIdentity.h" +#include "MME-Group-ID.h" +#include "MME-Code.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* GUMMEI */ +typedef struct GUMMEI { + PLMNIdentity_t pLMN_Identity; + MME_Group_ID_t mME_Group_ID; + MME_Code_t mME_Code; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GUMMEI_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GUMMEI; +extern asn_SEQUENCE_specifics_t asn_SPC_GUMMEI_specs_1; +extern asn_TYPE_member_t asn_MBR_GUMMEI_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _GUMMEI_H_ */ +#include diff --git a/e2sm/headers/GlobalE2node-ID.h b/e2sm/headers/GlobalE2node-ID.h deleted file mode 100644 index 4c1f1be..0000000 --- a/e2sm/headers/GlobalE2node-ID.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _GlobalE2node_ID_H_ -#define _GlobalE2node_ID_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GlobalE2node_ID_PR { - GlobalE2node_ID_PR_NOTHING, /* No components present */ - GlobalE2node_ID_PR_gNB, - GlobalE2node_ID_PR_en_gNB, - GlobalE2node_ID_PR_ng_eNB, - GlobalE2node_ID_PR_eNB - /* Extensions may appear below */ - -} GlobalE2node_ID_PR; - -/* Forward declarations */ -struct GlobalE2node_gNB_ID; -struct GlobalE2node_en_gNB_ID; -struct GlobalE2node_ng_eNB_ID; -struct GlobalE2node_eNB_ID; - -/* GlobalE2node-ID */ -typedef struct GlobalE2node_ID { - GlobalE2node_ID_PR present; - union GlobalE2node_ID_u { - struct GlobalE2node_gNB_ID *gNB; - struct GlobalE2node_en_gNB_ID *en_gNB; - struct GlobalE2node_ng_eNB_ID *ng_eNB; - struct GlobalE2node_eNB_ID *eNB; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GlobalE2node_ID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ID; -extern asn_CHOICE_specifics_t asn_SPC_GlobalE2node_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalE2node_ID_1[4]; -extern asn_per_constraints_t asn_PER_type_GlobalE2node_ID_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _GlobalE2node_ID_H_ */ -#include diff --git a/e2sm/headers/GlobalE2node-gNB-ID.h b/e2sm/headers/GlobalE2node-gNB-ID.h deleted file mode 100644 index d8121fe..0000000 --- a/e2sm/headers/GlobalE2node-gNB-ID.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _GlobalE2node_gNB_ID_H_ -#define _GlobalE2node_gNB_ID_H_ - - -#include - -/* Including external dependencies */ -#include "GlobalgNB-ID.h" -#include "GNB-CU-UP-ID.h" -#include "GNB-DU-ID.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* GlobalE2node-gNB-ID */ -typedef struct GlobalE2node_gNB_ID { - GlobalgNB_ID_t global_gNB_ID; - GNB_CU_UP_ID_t *gNB_CU_UP_ID; /* OPTIONAL */ - GNB_DU_ID_t *gNB_DU_ID; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GlobalE2node_gNB_ID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_gNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_gNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _GlobalE2node_gNB_ID_H_ */ -#include diff --git a/e2sm/headers/GlobalENB-ID.h b/e2sm/headers/GlobalENB-ID.h old mode 100644 new mode 100755 index 274bd8c..df70c24 --- a/e2sm/headers/GlobalENB-ID.h +++ b/e2sm/headers/GlobalENB-ID.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -12,7 +12,7 @@ #include /* Including external dependencies */ -#include "PLMN-Identity.h" +#include "PLMNIdentity.h" #include "ENB-ID.h" #include @@ -22,7 +22,7 @@ extern "C" { /* GlobalENB-ID */ typedef struct GlobalENB_ID { - PLMN_Identity_t pLMN_Identity; + PLMNIdentity_t pLMNIdentity; ENB_ID_t eNB_ID; /* * This type is extensible, diff --git a/e2sm/headers/GlobalGNB-ID.h b/e2sm/headers/GlobalGNB-ID.h new file mode 100755 index 0000000..a5d2a1a --- /dev/null +++ b/e2sm/headers/GlobalGNB-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _GlobalGNB_ID_H_ +#define _GlobalGNB_ID_H_ + + +#include + +/* Including external dependencies */ +#include "PLMNIdentity.h" +#include "GNB-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* GlobalGNB-ID */ +typedef struct GlobalGNB_ID { + PLMNIdentity_t pLMNIdentity; + GNB_ID_t gNB_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GlobalGNB_ID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GlobalGNB_ID; +extern asn_SEQUENCE_specifics_t asn_SPC_GlobalGNB_ID_specs_1; +extern asn_TYPE_member_t asn_MBR_GlobalGNB_ID_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _GlobalGNB_ID_H_ */ +#include diff --git a/e2sm/headers/GlobalKPMnode-ID.h b/e2sm/headers/GlobalKPMnode-ID.h deleted file mode 100644 index bbac962..0000000 --- a/e2sm/headers/GlobalKPMnode-ID.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#ifndef _GlobalKPMnode_ID_H_ -#define _GlobalKPMnode_ID_H_ - - -#include - -/* Including external dependencies */ -#include "GlobalKPMnode-gNB-ID.h" -#include "GlobalKPMnode-en-gNB-ID.h" -#include "GlobalKPMnode-ng-eNB-ID.h" -#include "GlobalKPMnode-eNB-ID.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum GlobalKPMnode_ID_PR { - GlobalKPMnode_ID_PR_NOTHING, /* No components present */ - GlobalKPMnode_ID_PR_gNB, - GlobalKPMnode_ID_PR_en_gNB, - GlobalKPMnode_ID_PR_ng_eNB, - GlobalKPMnode_ID_PR_eNB - /* Extensions may appear below */ - -} GlobalKPMnode_ID_PR; - -/* GlobalKPMnode-ID */ -typedef struct GlobalKPMnode_ID { - GlobalKPMnode_ID_PR present; - union GlobalKPMnode_ID_u { - GlobalKPMnode_gNB_ID_t gNB; - GlobalKPMnode_en_gNB_ID_t en_gNB; - GlobalKPMnode_ng_eNB_ID_t ng_eNB; - GlobalKPMnode_eNB_ID_t eNB; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GlobalKPMnode_ID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_ID; -extern asn_CHOICE_specifics_t asn_SPC_GlobalKPMnode_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalKPMnode_ID_1[4]; -extern asn_per_constraints_t asn_PER_type_GlobalKPMnode_ID_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _GlobalKPMnode_ID_H_ */ -#include diff --git a/e2sm/headers/GlobalKPMnode-eNB-ID.h b/e2sm/headers/GlobalKPMnode-eNB-ID.h deleted file mode 100644 index 7ebf223..0000000 --- a/e2sm/headers/GlobalKPMnode-eNB-ID.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#ifndef _GlobalKPMnode_eNB_ID_H_ -#define _GlobalKPMnode_eNB_ID_H_ - - -#include - -/* Including external dependencies */ -#include "GlobalENB-ID.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* GlobalKPMnode-eNB-ID */ -typedef struct GlobalKPMnode_eNB_ID { - GlobalENB_ID_t global_eNB_ID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GlobalKPMnode_eNB_ID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_eNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalKPMnode_eNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalKPMnode_eNB_ID_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _GlobalKPMnode_eNB_ID_H_ */ -#include diff --git a/e2sm/headers/GlobalKPMnode-en-gNB-ID.h b/e2sm/headers/GlobalKPMnode-en-gNB-ID.h deleted file mode 100644 index 37f8a0d..0000000 --- a/e2sm/headers/GlobalKPMnode-en-gNB-ID.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#ifndef _GlobalKPMnode_en_gNB_ID_H_ -#define _GlobalKPMnode_en_gNB_ID_H_ - - -#include - -/* Including external dependencies */ -#include "GlobalenGNB-ID.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* GlobalKPMnode-en-gNB-ID */ -typedef struct GlobalKPMnode_en_gNB_ID { - GlobalenGNB_ID_t global_gNB_ID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GlobalKPMnode_en_gNB_ID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_en_gNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalKPMnode_en_gNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalKPMnode_en_gNB_ID_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _GlobalKPMnode_en_gNB_ID_H_ */ -#include diff --git a/e2sm/headers/GlobalKPMnode-gNB-ID.h b/e2sm/headers/GlobalKPMnode-gNB-ID.h deleted file mode 100644 index f0dcc67..0000000 --- a/e2sm/headers/GlobalKPMnode-gNB-ID.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#ifndef _GlobalKPMnode_gNB_ID_H_ -#define _GlobalKPMnode_gNB_ID_H_ - - -#include - -/* Including external dependencies */ -#include "GlobalgNB-ID.h" -#include "GNB-CU-UP-ID.h" -#include "GNB-DU-ID.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* GlobalKPMnode-gNB-ID */ -typedef struct GlobalKPMnode_gNB_ID { - GlobalgNB_ID_t global_gNB_ID; - GNB_CU_UP_ID_t *gNB_CU_UP_ID; /* OPTIONAL */ - GNB_DU_ID_t *gNB_DU_ID; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GlobalKPMnode_gNB_ID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_gNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalKPMnode_gNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalKPMnode_gNB_ID_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _GlobalKPMnode_gNB_ID_H_ */ -#include diff --git a/e2sm/headers/GlobalKPMnode-ng-eNB-ID.h b/e2sm/headers/GlobalKPMnode-ng-eNB-ID.h deleted file mode 100644 index faa0a22..0000000 --- a/e2sm/headers/GlobalKPMnode-ng-eNB-ID.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#ifndef _GlobalKPMnode_ng_eNB_ID_H_ -#define _GlobalKPMnode_ng_eNB_ID_H_ - - -#include - -/* Including external dependencies */ -#include "GlobalngeNB-ID.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* GlobalKPMnode-ng-eNB-ID */ -typedef struct GlobalKPMnode_ng_eNB_ID { - GlobalngeNB_ID_t global_ng_eNB_ID; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} GlobalKPMnode_ng_eNB_ID_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_ng_eNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalKPMnode_ng_eNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalKPMnode_ng_eNB_ID_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _GlobalKPMnode_ng_eNB_ID_H_ */ -#include diff --git a/e2sm/headers/GlobalNGRANNodeID.h b/e2sm/headers/GlobalNGRANNodeID.h new file mode 100755 index 0000000..4ccdab0 --- /dev/null +++ b/e2sm/headers/GlobalNGRANNodeID.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _GlobalNGRANNodeID_H_ +#define _GlobalNGRANNodeID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GlobalNGRANNodeID_PR { + GlobalNGRANNodeID_PR_NOTHING, /* No components present */ + GlobalNGRANNodeID_PR_gNB, + GlobalNGRANNodeID_PR_ng_eNB + /* Extensions may appear below */ + +} GlobalNGRANNodeID_PR; + +/* Forward declarations */ +struct GlobalGNB_ID; +struct GlobalNgENB_ID; + +/* GlobalNGRANNodeID */ +typedef struct GlobalNGRANNodeID { + GlobalNGRANNodeID_PR present; + union GlobalNGRANNodeID_u { + struct GlobalGNB_ID *gNB; + struct GlobalNgENB_ID *ng_eNB; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GlobalNGRANNodeID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GlobalNGRANNodeID; +extern asn_CHOICE_specifics_t asn_SPC_GlobalNGRANNodeID_specs_1; +extern asn_TYPE_member_t asn_MBR_GlobalNGRANNodeID_1[2]; +extern asn_per_constraints_t asn_PER_type_GlobalNGRANNodeID_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _GlobalNGRANNodeID_H_ */ +#include diff --git a/e2sm/headers/MeasurementInfoItem.h b/e2sm/headers/GlobalNgENB-ID.h old mode 100644 new mode 100755 similarity index 52% rename from e2sm/headers/MeasurementInfoItem.h rename to e2sm/headers/GlobalNgENB-ID.h index 171c1c5..339339b --- a/e2sm/headers/MeasurementInfoItem.h +++ b/e2sm/headers/GlobalNgENB-ID.h @@ -1,27 +1,29 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _MeasurementInfoItem_H_ -#define _MeasurementInfoItem_H_ +#ifndef _GlobalNgENB_ID_H_ +#define _GlobalNgENB_ID_H_ #include /* Including external dependencies */ -#include "MeasurementType.h" +#include "PLMNIdentity.h" +#include "NgENB-ID.h" #include #ifdef __cplusplus extern "C" { #endif -/* MeasurementInfoItem */ -typedef struct MeasurementInfoItem { - MeasurementType_t measType; +/* GlobalNgENB-ID */ +typedef struct GlobalNgENB_ID { + PLMNIdentity_t pLMNIdentity; + NgENB_ID_t ngENB_ID; /* * This type is extensible, * possible extensions are below. @@ -29,16 +31,16 @@ typedef struct MeasurementInfoItem { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} MeasurementInfoItem_t; +} GlobalNgENB_ID_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasurementInfoItem; -extern asn_SEQUENCE_specifics_t asn_SPC_MeasurementInfoItem_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasurementInfoItem_1[1]; +extern asn_TYPE_descriptor_t asn_DEF_GlobalNgENB_ID; +extern asn_SEQUENCE_specifics_t asn_SPC_GlobalNgENB_ID_specs_1; +extern asn_TYPE_member_t asn_MBR_GlobalNgENB_ID_1[2]; #ifdef __cplusplus } #endif -#endif /* _MeasurementInfoItem_H_ */ +#endif /* _GlobalNgENB_ID_H_ */ #include diff --git a/e2sm/headers/GlobalenGNB-ID.h b/e2sm/headers/GlobalenGNB-ID.h old mode 100644 new mode 100755 index 40f06c8..c80d0c5 --- a/e2sm/headers/GlobalenGNB-ID.h +++ b/e2sm/headers/GlobalenGNB-ID.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -12,8 +12,8 @@ #include /* Including external dependencies */ -#include "PLMN-Identity.h" -#include "ENGNB-ID.h" +#include "PLMNIdentity.h" +#include "EN-GNB-ID.h" #include #ifdef __cplusplus @@ -22,8 +22,8 @@ extern "C" { /* GlobalenGNB-ID */ typedef struct GlobalenGNB_ID { - PLMN_Identity_t pLMN_Identity; - ENGNB_ID_t gNB_ID; + PLMNIdentity_t pLMN_Identity; + EN_GNB_ID_t en_gNB_ID; /* * This type is extensible, * possible extensions are below. diff --git a/e2sm/headers/GroupID.h b/e2sm/headers/GroupID.h new file mode 100755 index 0000000..bc418bb --- /dev/null +++ b/e2sm/headers/GroupID.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _GroupID_H_ +#define _GroupID_H_ + + +#include + +/* Including external dependencies */ +#include "FiveQI.h" +#include "QCI.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum GroupID_PR { + GroupID_PR_NOTHING, /* No components present */ + GroupID_PR_fiveGC, + GroupID_PR_ePC + /* Extensions may appear below */ + +} GroupID_PR; + +/* GroupID */ +typedef struct GroupID { + GroupID_PR present; + union GroupID_u { + FiveQI_t fiveGC; + QCI_t ePC; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} GroupID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_GroupID; + +#ifdef __cplusplus +} +#endif + +#endif /* _GroupID_H_ */ +#include diff --git a/e2sm/headers/INTEGER.h b/e2sm/headers/INTEGER.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/IndexToRFSP.h b/e2sm/headers/IndexToRFSP.h new file mode 100755 index 0000000..75a8d3b --- /dev/null +++ b/e2sm/headers/IndexToRFSP.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _IndexToRFSP_H_ +#define _IndexToRFSP_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* IndexToRFSP */ +typedef long IndexToRFSP_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_IndexToRFSP; +asn_struct_free_f IndexToRFSP_free; +asn_struct_print_f IndexToRFSP_print; +asn_constr_check_f IndexToRFSP_constraint; +ber_type_decoder_f IndexToRFSP_decode_ber; +der_type_encoder_f IndexToRFSP_encode_der; +xer_type_decoder_f IndexToRFSP_decode_xer; +xer_type_encoder_f IndexToRFSP_encode_xer; +oer_type_decoder_f IndexToRFSP_decode_oer; +oer_type_encoder_f IndexToRFSP_encode_oer; +per_type_decoder_f IndexToRFSP_decode_uper; +per_type_encoder_f IndexToRFSP_encode_uper; +per_type_decoder_f IndexToRFSP_decode_aper; +per_type_encoder_f IndexToRFSP_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _IndexToRFSP_H_ */ +#include diff --git a/e2sm/headers/InsertIndication-RANParameter-Item.h b/e2sm/headers/InsertIndication-RANParameter-Item.h new file mode 100755 index 0000000..41c9327 --- /dev/null +++ b/e2sm/headers/InsertIndication-RANParameter-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _InsertIndication_RANParameter_Item_H_ +#define _InsertIndication_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* InsertIndication-RANParameter-Item */ +typedef struct InsertIndication_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + /* + * This type is extensible, + * possible extensions are below. + */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} InsertIndication_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_InsertIndication_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_InsertIndication_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_InsertIndication_RANParameter_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _InsertIndication_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/Interface-MessageID.h b/e2sm/headers/Interface-MessageID.h new file mode 100755 index 0000000..5a9fbb0 --- /dev/null +++ b/e2sm/headers/Interface-MessageID.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _Interface_MessageID_H_ +#define _Interface_MessageID_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum Interface_MessageID__messageType { + Interface_MessageID__messageType_initiatingMessage = 0, + Interface_MessageID__messageType_successfulOutcome = 1, + Interface_MessageID__messageType_unsuccessfulOutcome = 2 + /* + * Enumeration is extensible + */ +} e_Interface_MessageID__messageType; + +/* Interface-MessageID */ +typedef struct Interface_MessageID { + long interfaceProcedureID; + long messageType; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Interface_MessageID_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_messageType_3; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_Interface_MessageID; +extern asn_SEQUENCE_specifics_t asn_SPC_Interface_MessageID_specs_1; +extern asn_TYPE_member_t asn_MBR_Interface_MessageID_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Interface_MessageID_H_ */ +#include diff --git a/e2sm/headers/InterfaceID-E1.h b/e2sm/headers/InterfaceID-E1.h new file mode 100755 index 0000000..e015a36 --- /dev/null +++ b/e2sm/headers/InterfaceID-E1.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _InterfaceID_E1_H_ +#define _InterfaceID_E1_H_ + + +#include + +/* Including external dependencies */ +#include "GlobalGNB-ID.h" +#include "GNB-CU-UP-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* InterfaceID-E1 */ +typedef struct InterfaceID_E1 { + GlobalGNB_ID_t globalGNB_ID; + GNB_CU_UP_ID_t gNB_CU_UP_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} InterfaceID_E1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_InterfaceID_E1; +extern asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_E1_specs_1; +extern asn_TYPE_member_t asn_MBR_InterfaceID_E1_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _InterfaceID_E1_H_ */ +#include diff --git a/e2sm/headers/InterfaceID-F1.h b/e2sm/headers/InterfaceID-F1.h new file mode 100755 index 0000000..e072442 --- /dev/null +++ b/e2sm/headers/InterfaceID-F1.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _InterfaceID_F1_H_ +#define _InterfaceID_F1_H_ + + +#include + +/* Including external dependencies */ +#include "GlobalGNB-ID.h" +#include "GNB-DU-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* InterfaceID-F1 */ +typedef struct InterfaceID_F1 { + GlobalGNB_ID_t globalGNB_ID; + GNB_DU_ID_t gNB_DU_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} InterfaceID_F1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_InterfaceID_F1; +extern asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_F1_specs_1; +extern asn_TYPE_member_t asn_MBR_InterfaceID_F1_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _InterfaceID_F1_H_ */ +#include diff --git a/e2sm/headers/InterfaceID-NG.h b/e2sm/headers/InterfaceID-NG.h new file mode 100755 index 0000000..8a3b0b4 --- /dev/null +++ b/e2sm/headers/InterfaceID-NG.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _InterfaceID_NG_H_ +#define _InterfaceID_NG_H_ + + +#include + +/* Including external dependencies */ +#include "GUAMI.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* InterfaceID-NG */ +typedef struct InterfaceID_NG { + GUAMI_t guami; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} InterfaceID_NG_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_InterfaceID_NG; +extern asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_NG_specs_1; +extern asn_TYPE_member_t asn_MBR_InterfaceID_NG_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _InterfaceID_NG_H_ */ +#include diff --git a/e2sm/headers/GlobalE2node-ng-eNB-ID.h b/e2sm/headers/InterfaceID-S1.h old mode 100644 new mode 100755 similarity index 53% rename from e2sm/headers/GlobalE2node-ng-eNB-ID.h rename to e2sm/headers/InterfaceID-S1.h index f959fb8..cb4267c --- a/e2sm/headers/GlobalE2node-ng-eNB-ID.h +++ b/e2sm/headers/InterfaceID-S1.h @@ -1,27 +1,27 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _GlobalE2node_ng_eNB_ID_H_ -#define _GlobalE2node_ng_eNB_ID_H_ +#ifndef _InterfaceID_S1_H_ +#define _InterfaceID_S1_H_ #include /* Including external dependencies */ -#include "GlobalngeNB-ID.h" +#include "GUMMEI.h" #include #ifdef __cplusplus extern "C" { #endif -/* GlobalE2node-ng-eNB-ID */ -typedef struct GlobalE2node_ng_eNB_ID { - GlobalngeNB_ID_t global_ng_eNB_ID; +/* InterfaceID-S1 */ +typedef struct InterfaceID_S1 { + GUMMEI_t gUMMEI; /* * This type is extensible, * possible extensions are below. @@ -29,16 +29,16 @@ typedef struct GlobalE2node_ng_eNB_ID { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} GlobalE2node_ng_eNB_ID_t; +} InterfaceID_S1_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ng_eNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_ng_eNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalE2node_ng_eNB_ID_1[1]; +extern asn_TYPE_descriptor_t asn_DEF_InterfaceID_S1; +extern asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_S1_specs_1; +extern asn_TYPE_member_t asn_MBR_InterfaceID_S1_1[1]; #ifdef __cplusplus } #endif -#endif /* _GlobalE2node_ng_eNB_ID_H_ */ +#endif /* _InterfaceID_S1_H_ */ #include diff --git a/e2sm/headers/InterfaceID-W1.h b/e2sm/headers/InterfaceID-W1.h new file mode 100755 index 0000000..7005ac9 --- /dev/null +++ b/e2sm/headers/InterfaceID-W1.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _InterfaceID_W1_H_ +#define _InterfaceID_W1_H_ + + +#include + +/* Including external dependencies */ +#include "GlobalNgENB-ID.h" +#include "NGENB-DU-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* InterfaceID-W1 */ +typedef struct InterfaceID_W1 { + GlobalNgENB_ID_t global_ng_eNB_ID; + NGENB_DU_ID_t ng_eNB_DU_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} InterfaceID_W1_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_InterfaceID_W1; +extern asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_W1_specs_1; +extern asn_TYPE_member_t asn_MBR_InterfaceID_W1_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _InterfaceID_W1_H_ */ +#include diff --git a/e2sm/headers/InterfaceID-X2.h b/e2sm/headers/InterfaceID-X2.h new file mode 100755 index 0000000..c036b5f --- /dev/null +++ b/e2sm/headers/InterfaceID-X2.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _InterfaceID_X2_H_ +#define _InterfaceID_X2_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum InterfaceID_X2__nodeType_PR { + InterfaceID_X2__nodeType_PR_NOTHING, /* No components present */ + InterfaceID_X2__nodeType_PR_global_eNB_ID, + InterfaceID_X2__nodeType_PR_global_en_gNB_ID + /* Extensions may appear below */ + +} InterfaceID_X2__nodeType_PR; + +/* Forward declarations */ +struct GlobalENB_ID; +struct GlobalenGNB_ID; + +/* InterfaceID-X2 */ +typedef struct InterfaceID_X2 { + struct InterfaceID_X2__nodeType { + InterfaceID_X2__nodeType_PR present; + union InterfaceID_X2__nodeType_u { + struct GlobalENB_ID *global_eNB_ID; + struct GlobalenGNB_ID *global_en_gNB_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } nodeType; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} InterfaceID_X2_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_InterfaceID_X2; +extern asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_X2_specs_1; +extern asn_TYPE_member_t asn_MBR_InterfaceID_X2_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _InterfaceID_X2_H_ */ +#include diff --git a/e2sm/headers/InterfaceID-Xn.h b/e2sm/headers/InterfaceID-Xn.h new file mode 100755 index 0000000..1cc807a --- /dev/null +++ b/e2sm/headers/InterfaceID-Xn.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _InterfaceID_Xn_H_ +#define _InterfaceID_Xn_H_ + + +#include + +/* Including external dependencies */ +#include "GlobalNGRANNodeID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* InterfaceID-Xn */ +typedef struct InterfaceID_Xn { + GlobalNGRANNodeID_t global_NG_RAN_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} InterfaceID_Xn_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_InterfaceID_Xn; +extern asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_Xn_specs_1; +extern asn_TYPE_member_t asn_MBR_InterfaceID_Xn_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _InterfaceID_Xn_H_ */ +#include diff --git a/e2sm/headers/InterfaceIdentifier.h b/e2sm/headers/InterfaceIdentifier.h new file mode 100755 index 0000000..041c122 --- /dev/null +++ b/e2sm/headers/InterfaceIdentifier.h @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _InterfaceIdentifier_H_ +#define _InterfaceIdentifier_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum InterfaceIdentifier_PR { + InterfaceIdentifier_PR_NOTHING, /* No components present */ + InterfaceIdentifier_PR_nG, + InterfaceIdentifier_PR_xN, + InterfaceIdentifier_PR_f1, + InterfaceIdentifier_PR_e1, + InterfaceIdentifier_PR_s1, + InterfaceIdentifier_PR_x2, + InterfaceIdentifier_PR_w1 + /* Extensions may appear below */ + +} InterfaceIdentifier_PR; + +/* Forward declarations */ +struct InterfaceID_NG; +struct InterfaceID_Xn; +struct InterfaceID_F1; +struct InterfaceID_E1; +struct InterfaceID_S1; +struct InterfaceID_X2; +struct InterfaceID_W1; + +/* InterfaceIdentifier */ +typedef struct InterfaceIdentifier { + InterfaceIdentifier_PR present; + union InterfaceIdentifier_u { + struct InterfaceID_NG *nG; + struct InterfaceID_Xn *xN; + struct InterfaceID_F1 *f1; + struct InterfaceID_E1 *e1; + struct InterfaceID_S1 *s1; + struct InterfaceID_X2 *x2; + struct InterfaceID_W1 *w1; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} InterfaceIdentifier_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_InterfaceIdentifier; +extern asn_CHOICE_specifics_t asn_SPC_InterfaceIdentifier_specs_1; +extern asn_TYPE_member_t asn_MBR_InterfaceIdentifier_1[7]; +extern asn_per_constraints_t asn_PER_type_InterfaceIdentifier_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _InterfaceIdentifier_H_ */ +#include diff --git a/e2sm/headers/InterfaceType.h b/e2sm/headers/InterfaceType.h new file mode 100755 index 0000000..1c2f84e --- /dev/null +++ b/e2sm/headers/InterfaceType.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _InterfaceType_H_ +#define _InterfaceType_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum InterfaceType { + InterfaceType_nG = 0, + InterfaceType_xn = 1, + InterfaceType_f1 = 2, + InterfaceType_e1 = 3, + InterfaceType_s1 = 4, + InterfaceType_x2 = 5, + InterfaceType_w1 = 6 + /* + * Enumeration is extensible + */ +} e_InterfaceType; + +/* InterfaceType */ +typedef long InterfaceType_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_InterfaceType_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_InterfaceType; +extern const asn_INTEGER_specifics_t asn_SPC_InterfaceType_specs_1; +asn_struct_free_f InterfaceType_free; +asn_struct_print_f InterfaceType_print; +asn_constr_check_f InterfaceType_constraint; +ber_type_decoder_f InterfaceType_decode_ber; +der_type_encoder_f InterfaceType_encode_der; +xer_type_decoder_f InterfaceType_decode_xer; +xer_type_encoder_f InterfaceType_encode_xer; +oer_type_decoder_f InterfaceType_decode_oer; +oer_type_encoder_f InterfaceType_encode_oer; +per_type_decoder_f InterfaceType_decode_uper; +per_type_encoder_f InterfaceType_encode_uper; +per_type_decoder_f InterfaceType_decode_aper; +per_type_encoder_f InterfaceType_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _InterfaceType_H_ */ +#include diff --git a/e2sm/headers/RAN-ControlParameter-Item.h b/e2sm/headers/L2Parameters-RANParameter-Item.h old mode 100644 new mode 100755 similarity index 50% rename from e2sm/headers/RAN-ControlParameter-Item.h rename to e2sm/headers/L2Parameters-RANParameter-Item.h index 68f5082..cddc6d4 --- a/e2sm/headers/RAN-ControlParameter-Item.h +++ b/e2sm/headers/L2Parameters-RANParameter-Item.h @@ -1,12 +1,12 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _RAN_ControlParameter_Item_H_ -#define _RAN_ControlParameter_Item_H_ +#ifndef _L2Parameters_RANParameter_Item_H_ +#define _L2Parameters_RANParameter_Item_H_ #include @@ -20,27 +20,31 @@ extern "C" { #endif -/* RAN-ControlParameter-Item */ -typedef struct RAN_ControlParameter_Item { +/* Forward declarations */ +struct RANParameter_Definition; + +/* L2Parameters-RANParameter-Item */ +typedef struct L2Parameters_RANParameter_Item { RANParameter_ID_t ranParameter_ID; RANParameter_Name_t ranParameter_Name; /* * This type is extensible, * possible extensions are below. */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} RAN_ControlParameter_Item_t; +} L2Parameters_RANParameter_Item_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RAN_ControlParameter_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_RAN_ControlParameter_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_RAN_ControlParameter_Item_1[2]; +extern asn_TYPE_descriptor_t asn_DEF_L2Parameters_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_L2Parameters_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_L2Parameters_RANParameter_Item_1[3]; #ifdef __cplusplus } #endif -#endif /* _RAN_ControlParameter_Item_H_ */ +#endif /* _L2Parameters_RANParameter_Item_H_ */ #include diff --git a/e2sm/headers/L3-RRC-Measurements.h b/e2sm/headers/L3-RRC-Measurements.h deleted file mode 100644 index eb51c5c..0000000 --- a/e2sm/headers/L3-RRC-Measurements.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _L3_RRC_Measurements_H_ -#define _L3_RRC_Measurements_H_ - - -#include - -/* Including external dependencies */ -#include "RRCEvent.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ServingCellMeasurements; -struct MeasResultNeighCells; - -/* L3-RRC-Measurements */ -typedef struct L3_RRC_Measurements { - RRCEvent_t rrcEvent; - struct ServingCellMeasurements *servingCellMeasurements; /* OPTIONAL */ - struct MeasResultNeighCells *measResultNeighCells; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} L3_RRC_Measurements_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_L3_RRC_Measurements; -extern asn_SEQUENCE_specifics_t asn_SPC_L3_RRC_Measurements_specs_1; -extern asn_TYPE_member_t asn_MBR_L3_RRC_Measurements_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _L3_RRC_Measurements_H_ */ -#include diff --git a/e2sm/headers/LogicalOR.h b/e2sm/headers/LogicalOR.h new file mode 100755 index 0000000..e3464be --- /dev/null +++ b/e2sm/headers/LogicalOR.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _LogicalOR_H_ +#define _LogicalOR_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum LogicalOR { + LogicalOR_true = 0, + LogicalOR_false = 1 + /* + * Enumeration is extensible + */ +} e_LogicalOR; + +/* LogicalOR */ +typedef long LogicalOR_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_LogicalOR_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_LogicalOR; +extern const asn_INTEGER_specifics_t asn_SPC_LogicalOR_specs_1; +asn_struct_free_f LogicalOR_free; +asn_struct_print_f LogicalOR_print; +asn_constr_check_f LogicalOR_constraint; +ber_type_decoder_f LogicalOR_decode_ber; +der_type_encoder_f LogicalOR_encode_der; +xer_type_decoder_f LogicalOR_decode_xer; +xer_type_encoder_f LogicalOR_encode_xer; +oer_type_decoder_f LogicalOR_decode_oer; +oer_type_encoder_f LogicalOR_encode_oer; +per_type_decoder_f LogicalOR_decode_uper; +per_type_encoder_f LogicalOR_encode_uper; +per_type_decoder_f LogicalOR_decode_aper; +per_type_encoder_f LogicalOR_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _LogicalOR_H_ */ +#include diff --git a/e2sm/headers/MME-Code.h b/e2sm/headers/MME-Code.h new file mode 100755 index 0000000..b2819e3 --- /dev/null +++ b/e2sm/headers/MME-Code.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _MME_Code_H_ +#define _MME_Code_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* MME-Code */ +typedef OCTET_STRING_t MME_Code_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MME_Code_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MME_Code; +asn_struct_free_f MME_Code_free; +asn_struct_print_f MME_Code_print; +asn_constr_check_f MME_Code_constraint; +ber_type_decoder_f MME_Code_decode_ber; +der_type_encoder_f MME_Code_encode_der; +xer_type_decoder_f MME_Code_decode_xer; +xer_type_encoder_f MME_Code_encode_xer; +oer_type_decoder_f MME_Code_decode_oer; +oer_type_encoder_f MME_Code_encode_oer; +per_type_decoder_f MME_Code_decode_uper; +per_type_encoder_f MME_Code_encode_uper; +per_type_decoder_f MME_Code_decode_aper; +per_type_encoder_f MME_Code_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MME_Code_H_ */ +#include diff --git a/e2sm/headers/MME-Group-ID.h b/e2sm/headers/MME-Group-ID.h new file mode 100755 index 0000000..9c06267 --- /dev/null +++ b/e2sm/headers/MME-Group-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _MME_Group_ID_H_ +#define _MME_Group_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* MME-Group-ID */ +typedef OCTET_STRING_t MME_Group_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MME_Group_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MME_Group_ID; +asn_struct_free_f MME_Group_ID_free; +asn_struct_print_f MME_Group_ID_print; +asn_constr_check_f MME_Group_ID_constraint; +ber_type_decoder_f MME_Group_ID_decode_ber; +der_type_encoder_f MME_Group_ID_encode_der; +xer_type_decoder_f MME_Group_ID_decode_xer; +xer_type_encoder_f MME_Group_ID_encode_xer; +oer_type_decoder_f MME_Group_ID_decode_oer; +oer_type_encoder_f MME_Group_ID_encode_oer; +per_type_decoder_f MME_Group_ID_decode_uper; +per_type_encoder_f MME_Group_ID_encode_uper; +per_type_decoder_f MME_Group_ID_decode_aper; +per_type_encoder_f MME_Group_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MME_Group_ID_H_ */ +#include diff --git a/e2sm/headers/MME-UE-S1AP-ID.h b/e2sm/headers/MME-UE-S1AP-ID.h new file mode 100755 index 0000000..b7d95e3 --- /dev/null +++ b/e2sm/headers/MME-UE-S1AP-ID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _MME_UE_S1AP_ID_H_ +#define _MME_UE_S1AP_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* MME-UE-S1AP-ID */ +typedef unsigned long MME_UE_S1AP_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_MME_UE_S1AP_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_MME_UE_S1AP_ID; +extern const asn_INTEGER_specifics_t asn_SPC_MME_UE_S1AP_ID_specs_1; +asn_struct_free_f MME_UE_S1AP_ID_free; +asn_struct_print_f MME_UE_S1AP_ID_print; +asn_constr_check_f MME_UE_S1AP_ID_constraint; +ber_type_decoder_f MME_UE_S1AP_ID_decode_ber; +der_type_encoder_f MME_UE_S1AP_ID_encode_der; +xer_type_decoder_f MME_UE_S1AP_ID_decode_xer; +xer_type_encoder_f MME_UE_S1AP_ID_encode_xer; +oer_type_decoder_f MME_UE_S1AP_ID_decode_oer; +oer_type_encoder_f MME_UE_S1AP_ID_encode_oer; +per_type_decoder_f MME_UE_S1AP_ID_decode_uper; +per_type_encoder_f MME_UE_S1AP_ID_encode_uper; +per_type_decoder_f MME_UE_S1AP_ID_decode_aper; +per_type_encoder_f MME_UE_S1AP_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _MME_UE_S1AP_ID_H_ */ +#include diff --git a/e2sm/headers/Makefile.am.libasncodec b/e2sm/headers/Makefile.am.libasncodec deleted file mode 100644 index accc816..0000000 --- a/e2sm/headers/Makefile.am.libasncodec +++ /dev/null @@ -1,344 +0,0 @@ -ASN_MODULE_SRCS= \ - ./gen_files/Criticality.c \ - ./gen_files/Presence.c \ - ./gen_files/ProcedureCode.c \ - ./gen_files/ProtocolIE-ID.c \ - ./gen_files/TriggeringMessage.c \ - ./gen_files/E2SM-KPM-RANFunctionDefinition.c \ - ./gen_files/RIC-ReportStyle-Item.c \ - ./gen_files/E2SM-KPM-ActionDefinition.c \ - ./gen_files/E2SM-KPM-ActionDefinition-Format1.c \ - ./gen_files/E2SM-KPM-IndicationHeader.c \ - ./gen_files/E2SM-KPM-IndicationHeader-Format1.c \ - ./gen_files/E2SM-KPM-IndicationMessage.c \ - ./gen_files/E2SM-KPM-IndicationMessage-Format1.c \ - ./gen_files/PM-Containers-Item.c \ - ./gen_files/PerUE-PM-Item.c \ - ./gen_files/PM-Info-Item.c \ - ./gen_files/PF-Container.c \ - ./gen_files/ODU-PF-Container.c \ - ./gen_files/CellResourceReportListItem.c \ - ./gen_files/ServedPlmnPerCellListItem.c \ - ./gen_files/FGC-DU-PM-Container.c \ - ./gen_files/SlicePerPlmnPerCellListItem.c \ - ./gen_files/FQIPERSlicesPerPlmnPerCellListItem.c \ - ./gen_files/EPC-DU-PM-Container.c \ - ./gen_files/PerQCIReportListItem.c \ - ./gen_files/OCUCP-PF-Container.c \ - ./gen_files/OCUUP-PF-Container.c \ - ./gen_files/PF-ContainerListItem.c \ - ./gen_files/CUUPMeasurement-Container.c \ - ./gen_files/PlmnID-Item.c \ - ./gen_files/FGC-CUUP-PM-Format.c \ - ./gen_files/SliceToReportListItem.c \ - ./gen_files/FQIPERSlicesPerPlmnListItem.c \ - ./gen_files/EPC-CUUP-PM-Format.c \ - ./gen_files/PerQCIReportListItemFormat.c \ - ./gen_files/MeasurementValue.c \ - ./gen_files/L3-RRC-Measurements.c \ - ./gen_files/RRCEvent.c \ - ./gen_files/ServingCellMeasurements.c \ - ./gen_files/MeasResultServMOList.c \ - ./gen_files/MeasResultServMO.c \ - ./gen_files/MeasResultNR.c \ - ./gen_files/MeasResultListEUTRA.c \ - ./gen_files/MeasResultEUTRA.c \ - ./gen_files/MeasResultPCell.c \ - ./gen_files/MeasResultNeighCells.c \ - ./gen_files/MeasResultListNR.c \ - ./gen_files/PhysCellId.c \ - ./gen_files/ServCellIndex.c \ - ./gen_files/MeasQuantityResults.c \ - ./gen_files/MeasQuantityResultsEUTRA.c \ - ./gen_files/RSRP-RangeEUTRA.c \ - ./gen_files/RSRQ-RangeEUTRA.c \ - ./gen_files/SINR-RangeEUTRA.c \ - ./gen_files/ResultsPerSSB-IndexList.c \ - ./gen_files/ResultsPerSSB-Index.c \ - ./gen_files/ResultsPerCSI-RS-IndexList.c \ - ./gen_files/ResultsPerCSI-RS-Index.c \ - ./gen_files/SSB-Index.c \ - ./gen_files/CSI-RS-Index.c \ - ./gen_files/RSRP-Range.c \ - ./gen_files/RSRQ-Range.c \ - ./gen_files/SINR-Range.c \ - ./gen_files/TimeStamp.c \ - ./gen_files/CellObjectID.c \ - ./gen_files/MeasurementInfoList.c \ - ./gen_files/MeasurementInfoItem.c \ - ./gen_files/MeasurementType.c \ - ./gen_files/NRCGI.c \ - ./gen_files/NRCellIdentity.c \ - ./gen_files/S-NSSAI.c \ - ./gen_files/MeasurementTypeName.c \ - ./gen_files/MeasurementTypeID.c \ - ./gen_files/FiveQI.c \ - ./gen_files/QCI.c \ - ./gen_files/NI-Type.c \ - ./gen_files/RAN-Container.c \ - ./gen_files/E2SM-RC-RANFunctionDefinition.c \ - ./gen_files/RANfunction-Name.c \ - ./gen_files/RIC-EventTriggerStyle-Item.c \ - ./gen_files/RIC-ControlStyle-Item.c \ - ./gen_files/RIC-ControlAction-Item.c \ - ./gen_files/RAN-ControlParameter-Item.c \ - ./gen_files/E2SM-RC-ControlHeader.c \ - ./gen_files/E2SM-RC-ControlHeader-Format1.c \ - ./gen_files/E2SM-RC-ControlMessage.c \ - ./gen_files/E2SM-RC-ControlMessage-Format1.c \ - ./gen_files/RANParameter-Item.c \ - ./gen_files/RANParameter-ValueType.c \ - ./gen_files/RANParameter-ELEMENT.c \ - ./gen_files/RANParameter-STRUCTURE.c \ - ./gen_files/RANParameter-LIST.c \ - ./gen_files/RANParameter-Value.c \ - ./gen_files/UE-Identity.c \ - ./gen_files/RIC-Style-Type.c \ - ./gen_files/RIC-Style-Name.c \ - ./gen_files/RIC-Format-Type.c \ - ./gen_files/RANParameter-ID.c \ - ./gen_files/RANParameter-Name.c \ - ./gen_files/RIC-ControlAction-ID.c \ - ./gen_files/RIC-ControlAction-Name.c \ - ./gen_files/E2SM-KPM-EventTriggerDefinition.c \ - ./gen_files/E2SM-KPM-EventTriggerDefinition-Format1.c \ - ./gen_files/Trigger-ConditionIE-Item.c \ - ./gen_files/RT-Period-IE.c \ - ./gen_files/RANcallProcess-ID-string.c \ - ./gen_files/PLMN-Identity.c \ - ./gen_files/GlobalE2node-ID.c \ - ./gen_files/GlobalE2node-en-gNB-ID.c \ - ./gen_files/GlobalE2node-eNB-ID.c \ - ./gen_files/GlobalE2node-gNB-ID.c \ - ./gen_files/GlobalE2node-ng-eNB-ID.c \ - ./gen_files/GlobalENB-ID.c \ - ./gen_files/GlobalenGNB-ID.c \ - ./gen_files/GlobalgNB-ID.c \ - ./gen_files/GlobalngeNB-ID.c \ - ./gen_files/GNB-ID-Choice.c \ - ./gen_files/ENB-ID-Choice.c \ - ./gen_files/ENB-ID.c \ - ./gen_files/ENGNB-ID.c \ - ./gen_files/GNB-CU-UP-ID.c \ - ./gen_files/GNB-DU-ID.c - -ASN_MODULE_HDRS= \ - ./gen_files/Criticality.h \ - ./gen_files/Presence.h \ - ./gen_files/ProcedureCode.h \ - ./gen_files/ProtocolIE-ID.h \ - ./gen_files/TriggeringMessage.h \ - ./gen_files/E2SM-KPM-RANFunctionDefinition.h \ - ./gen_files/RIC-ReportStyle-Item.h \ - ./gen_files/E2SM-KPM-ActionDefinition.h \ - ./gen_files/E2SM-KPM-ActionDefinition-Format1.h \ - ./gen_files/E2SM-KPM-IndicationHeader.h \ - ./gen_files/E2SM-KPM-IndicationHeader-Format1.h \ - ./gen_files/E2SM-KPM-IndicationMessage.h \ - ./gen_files/E2SM-KPM-IndicationMessage-Format1.h \ - ./gen_files/PM-Containers-Item.h \ - ./gen_files/PerUE-PM-Item.h \ - ./gen_files/PM-Info-Item.h \ - ./gen_files/PF-Container.h \ - ./gen_files/ODU-PF-Container.h \ - ./gen_files/CellResourceReportListItem.h \ - ./gen_files/ServedPlmnPerCellListItem.h \ - ./gen_files/FGC-DU-PM-Container.h \ - ./gen_files/SlicePerPlmnPerCellListItem.h \ - ./gen_files/FQIPERSlicesPerPlmnPerCellListItem.h \ - ./gen_files/EPC-DU-PM-Container.h \ - ./gen_files/PerQCIReportListItem.h \ - ./gen_files/OCUCP-PF-Container.h \ - ./gen_files/OCUUP-PF-Container.h \ - ./gen_files/PF-ContainerListItem.h \ - ./gen_files/CUUPMeasurement-Container.h \ - ./gen_files/PlmnID-Item.h \ - ./gen_files/FGC-CUUP-PM-Format.h \ - ./gen_files/SliceToReportListItem.h \ - ./gen_files/FQIPERSlicesPerPlmnListItem.h \ - ./gen_files/EPC-CUUP-PM-Format.h \ - ./gen_files/PerQCIReportListItemFormat.h \ - ./gen_files/MeasurementValue.h \ - ./gen_files/L3-RRC-Measurements.h \ - ./gen_files/RRCEvent.h \ - ./gen_files/ServingCellMeasurements.h \ - ./gen_files/MeasResultServMOList.h \ - ./gen_files/MeasResultServMO.h \ - ./gen_files/MeasResultNR.h \ - ./gen_files/MeasResultListEUTRA.h \ - ./gen_files/MeasResultEUTRA.h \ - ./gen_files/MeasResultPCell.h \ - ./gen_files/MeasResultNeighCells.h \ - ./gen_files/MeasResultListNR.h \ - ./gen_files/PhysCellId.h \ - ./gen_files/ServCellIndex.h \ - ./gen_files/MeasQuantityResults.h \ - ./gen_files/MeasQuantityResultsEUTRA.h \ - ./gen_files/RSRP-RangeEUTRA.h \ - ./gen_files/RSRQ-RangeEUTRA.h \ - ./gen_files/SINR-RangeEUTRA.h \ - ./gen_files/ResultsPerSSB-IndexList.h \ - ./gen_files/ResultsPerSSB-Index.h \ - ./gen_files/ResultsPerCSI-RS-IndexList.h \ - ./gen_files/ResultsPerCSI-RS-Index.h \ - ./gen_files/SSB-Index.h \ - ./gen_files/CSI-RS-Index.h \ - ./gen_files/RSRP-Range.h \ - ./gen_files/RSRQ-Range.h \ - ./gen_files/SINR-Range.h \ - ./gen_files/TimeStamp.h \ - ./gen_files/CellObjectID.h \ - ./gen_files/MeasurementInfoList.h \ - ./gen_files/MeasurementInfoItem.h \ - ./gen_files/MeasurementType.h \ - ./gen_files/NRCGI.h \ - ./gen_files/NRCellIdentity.h \ - ./gen_files/S-NSSAI.h \ - ./gen_files/MeasurementTypeName.h \ - ./gen_files/MeasurementTypeID.h \ - ./gen_files/FiveQI.h \ - ./gen_files/QCI.h \ - ./gen_files/NI-Type.h \ - ./gen_files/RAN-Container.h \ - ./gen_files/E2SM-RC-RANFunctionDefinition.h \ - ./gen_files/RANfunction-Name.h \ - ./gen_files/RIC-EventTriggerStyle-Item.h \ - ./gen_files/RIC-ControlStyle-Item.h \ - ./gen_files/RIC-ControlAction-Item.h \ - ./gen_files/RAN-ControlParameter-Item.h \ - ./gen_files/E2SM-RC-ControlHeader.h \ - ./gen_files/E2SM-RC-ControlHeader-Format1.h \ - ./gen_files/E2SM-RC-ControlMessage.h \ - ./gen_files/E2SM-RC-ControlMessage-Format1.h \ - ./gen_files/RANParameter-Item.h \ - ./gen_files/RANParameter-ValueType.h \ - ./gen_files/RANParameter-ELEMENT.h \ - ./gen_files/RANParameter-STRUCTURE.h \ - ./gen_files/RANParameter-LIST.h \ - ./gen_files/RANParameter-Value.h \ - ./gen_files/UE-Identity.h \ - ./gen_files/RIC-Style-Type.h \ - ./gen_files/RIC-Style-Name.h \ - ./gen_files/RIC-Format-Type.h \ - ./gen_files/RANParameter-ID.h \ - ./gen_files/RANParameter-Name.h \ - ./gen_files/RIC-ControlAction-ID.h \ - ./gen_files/RIC-ControlAction-Name.h \ - ./gen_files/E2SM-KPM-EventTriggerDefinition.h \ - ./gen_files/E2SM-KPM-EventTriggerDefinition-Format1.h \ - ./gen_files/Trigger-ConditionIE-Item.h \ - ./gen_files/RT-Period-IE.h \ - ./gen_files/RANcallProcess-ID-string.h \ - ./gen_files/PLMN-Identity.h \ - ./gen_files/GlobalE2node-ID.h \ - ./gen_files/GlobalE2node-en-gNB-ID.h \ - ./gen_files/GlobalE2node-eNB-ID.h \ - ./gen_files/GlobalE2node-gNB-ID.h \ - ./gen_files/GlobalE2node-ng-eNB-ID.h \ - ./gen_files/GlobalENB-ID.h \ - ./gen_files/GlobalenGNB-ID.h \ - ./gen_files/GlobalgNB-ID.h \ - ./gen_files/GlobalngeNB-ID.h \ - ./gen_files/GNB-ID-Choice.h \ - ./gen_files/ENB-ID-Choice.h \ - ./gen_files/ENB-ID.h \ - ./gen_files/ENGNB-ID.h \ - ./gen_files/GNB-CU-UP-ID.h \ - ./gen_files/GNB-DU-ID.h - -ASN_MODULE_HDRS+=./gen_files/OPEN_TYPE.h -ASN_MODULE_SRCS+=./gen_files/OPEN_TYPE.c -ASN_MODULE_HDRS+=./gen_files/constr_CHOICE.h -ASN_MODULE_HDRS+=./gen_files/BOOLEAN.h -ASN_MODULE_SRCS+=./gen_files/BOOLEAN.c -ASN_MODULE_HDRS+=./gen_files/INTEGER.h -ASN_MODULE_SRCS+=./gen_files/INTEGER.c -ASN_MODULE_HDRS+=./gen_files/NULL.h -ASN_MODULE_SRCS+=./gen_files/NULL.c -ASN_MODULE_HDRS+=./gen_files/NativeEnumerated.h -ASN_MODULE_SRCS+=./gen_files/NativeEnumerated.c -ASN_MODULE_HDRS+=./gen_files/NativeInteger.h -ASN_MODULE_SRCS+=./gen_files/NativeInteger.c -ASN_MODULE_HDRS+=./gen_files/NativeReal.h -ASN_MODULE_SRCS+=./gen_files/NativeReal.c -ASN_MODULE_HDRS+=./gen_files/REAL.h -ASN_MODULE_HDRS+=./gen_files/PrintableString.h -ASN_MODULE_SRCS+=./gen_files/PrintableString.c -ASN_MODULE_HDRS+=./gen_files/OCTET_STRING.h -ASN_MODULE_SRCS+=./gen_files/REAL.c -ASN_MODULE_HDRS+=./gen_files/asn_SEQUENCE_OF.h -ASN_MODULE_SRCS+=./gen_files/asn_SEQUENCE_OF.c -ASN_MODULE_HDRS+=./gen_files/asn_SET_OF.h -ASN_MODULE_SRCS+=./gen_files/asn_SET_OF.c -ASN_MODULE_SRCS+=./gen_files/constr_CHOICE.c -ASN_MODULE_HDRS+=./gen_files/constr_SEQUENCE.h -ASN_MODULE_SRCS+=./gen_files/constr_SEQUENCE.c -ASN_MODULE_HDRS+=./gen_files/constr_SEQUENCE_OF.h -ASN_MODULE_SRCS+=./gen_files/constr_SEQUENCE_OF.c -ASN_MODULE_HDRS+=./gen_files/constr_SET_OF.h -ASN_MODULE_SRCS+=./gen_files/constr_SET_OF.c -ASN_MODULE_HDRS+=./gen_files/asn_application.h -ASN_MODULE_SRCS+=./gen_files/asn_application.c -ASN_MODULE_HDRS+=./gen_files/asn_ioc.h -ASN_MODULE_HDRS+=./gen_files/asn_system.h -ASN_MODULE_HDRS+=./gen_files/asn_codecs.h -ASN_MODULE_HDRS+=./gen_files/asn_internal.h -ASN_MODULE_SRCS+=./gen_files/asn_internal.c -ASN_MODULE_HDRS+=./gen_files/asn_random_fill.h -ASN_MODULE_SRCS+=./gen_files/asn_random_fill.c -ASN_MODULE_HDRS+=./gen_files/asn_bit_data.h -ASN_MODULE_SRCS+=./gen_files/asn_bit_data.c -ASN_MODULE_SRCS+=./gen_files/OCTET_STRING.c -ASN_MODULE_HDRS+=./gen_files/BIT_STRING.h -ASN_MODULE_SRCS+=./gen_files/BIT_STRING.c -ASN_MODULE_SRCS+=./gen_files/asn_codecs_prim.c -ASN_MODULE_HDRS+=./gen_files/asn_codecs_prim.h -ASN_MODULE_HDRS+=./gen_files/ber_tlv_length.h -ASN_MODULE_SRCS+=./gen_files/ber_tlv_length.c -ASN_MODULE_HDRS+=./gen_files/ber_tlv_tag.h -ASN_MODULE_SRCS+=./gen_files/ber_tlv_tag.c -ASN_MODULE_HDRS+=./gen_files/ber_decoder.h -ASN_MODULE_SRCS+=./gen_files/ber_decoder.c -ASN_MODULE_HDRS+=./gen_files/der_encoder.h -ASN_MODULE_SRCS+=./gen_files/der_encoder.c -ASN_MODULE_HDRS+=./gen_files/constr_TYPE.h -ASN_MODULE_SRCS+=./gen_files/constr_TYPE.c -ASN_MODULE_HDRS+=./gen_files/constraints.h -ASN_MODULE_SRCS+=./gen_files/constraints.c -ASN_MODULE_HDRS+=./gen_files/xer_support.h -ASN_MODULE_SRCS+=./gen_files/xer_support.c -ASN_MODULE_HDRS+=./gen_files/xer_decoder.h -ASN_MODULE_SRCS+=./gen_files/xer_decoder.c -ASN_MODULE_HDRS+=./gen_files/xer_encoder.h -ASN_MODULE_SRCS+=./gen_files/xer_encoder.c -ASN_MODULE_HDRS+=./gen_files/per_support.h -ASN_MODULE_SRCS+=./gen_files/per_support.c -ASN_MODULE_HDRS+=./gen_files/per_decoder.h -ASN_MODULE_SRCS+=./gen_files/per_decoder.c -ASN_MODULE_HDRS+=./gen_files/per_encoder.h -ASN_MODULE_SRCS+=./gen_files/per_encoder.c -ASN_MODULE_HDRS+=./gen_files/per_opentype.h -ASN_MODULE_SRCS+=./gen_files/per_opentype.c -ASN_MODULE_HDRS+=./gen_files/oer_decoder.h -ASN_MODULE_HDRS+=./gen_files/oer_encoder.h -ASN_MODULE_HDRS+=./gen_files/oer_support.h -ASN_MODULE_SRCS+=./gen_files/oer_decoder.c -ASN_MODULE_SRCS+=./gen_files/oer_encoder.c -ASN_MODULE_SRCS+=./gen_files/oer_support.c -ASN_MODULE_SRCS+=./gen_files/OPEN_TYPE_oer.c -ASN_MODULE_SRCS+=./gen_files/INTEGER_oer.c -ASN_MODULE_SRCS+=./gen_files/BIT_STRING_oer.c -ASN_MODULE_SRCS+=./gen_files/OCTET_STRING_oer.c -ASN_MODULE_SRCS+=./gen_files/NativeInteger_oer.c -ASN_MODULE_SRCS+=./gen_files/NativeEnumerated_oer.c -ASN_MODULE_SRCS+=./gen_files/constr_CHOICE_oer.c -ASN_MODULE_SRCS+=./gen_files/constr_SEQUENCE_oer.c -ASN_MODULE_SRCS+=./gen_files/constr_SET_OF_oer.c - -ASN_MODULE_CFLAGS= - -lib_LTLIBRARIES+=libasncodec.la -libasncodec_la_SOURCES=$(ASN_MODULE_SRCS) $(ASN_MODULE_HDRS) -libasncodec_la_CPPFLAGS=-I$(top_srcdir)/./gen_files/ -libasncodec_la_CFLAGS=$(ASN_MODULE_CFLAGS) -libasncodec_la_LDFLAGS=-lm diff --git a/e2sm/headers/MatchingUEidList.h b/e2sm/headers/MatchingUEidList.h deleted file mode 100644 index b03c075..0000000 --- a/e2sm/headers/MatchingUEidList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-v02.00.03.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example -D E2SM-KPM-v02.00.03` - */ - -#ifndef _MatchingUEidList_H_ -#define _MatchingUEidList_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MatchingUEidItem; - -/* MatchingUEidList */ -typedef struct MatchingUEidList { - A_SEQUENCE_OF(struct MatchingUEidItem) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MatchingUEidList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MatchingUEidList; -extern asn_SET_OF_specifics_t asn_SPC_MatchingUEidList_specs_1; -extern asn_TYPE_member_t asn_MBR_MatchingUEidList_1[1]; -extern asn_per_constraints_t asn_PER_type_MatchingUEidList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MatchingUEidList_H_ */ -#include diff --git a/e2sm/headers/MeasQuantityResults.h b/e2sm/headers/MeasQuantityResults.h deleted file mode 100644 index a597b72..0000000 --- a/e2sm/headers/MeasQuantityResults.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasQuantityResults_H_ -#define _MeasQuantityResults_H_ - - -#include - -/* Including external dependencies */ -#include "RSRP-Range.h" -#include "RSRQ-Range.h" -#include "SINR-Range.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* MeasQuantityResults */ -typedef struct MeasQuantityResults { - RSRP_Range_t *rsrp; /* OPTIONAL */ - RSRQ_Range_t *rsrq; /* OPTIONAL */ - SINR_Range_t *sinr; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasQuantityResults_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasQuantityResults; -extern asn_SEQUENCE_specifics_t asn_SPC_MeasQuantityResults_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasQuantityResults_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasQuantityResults_H_ */ -#include diff --git a/e2sm/headers/MeasQuantityResultsEUTRA.h b/e2sm/headers/MeasQuantityResultsEUTRA.h deleted file mode 100644 index 1be9197..0000000 --- a/e2sm/headers/MeasQuantityResultsEUTRA.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasQuantityResultsEUTRA_H_ -#define _MeasQuantityResultsEUTRA_H_ - - -#include - -/* Including external dependencies */ -#include "RSRP-RangeEUTRA.h" -#include "RSRQ-RangeEUTRA.h" -#include "SINR-RangeEUTRA.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* MeasQuantityResultsEUTRA */ -typedef struct MeasQuantityResultsEUTRA { - RSRP_RangeEUTRA_t *rsrp; /* OPTIONAL */ - RSRQ_RangeEUTRA_t *rsrq; /* OPTIONAL */ - SINR_RangeEUTRA_t *sinr; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasQuantityResultsEUTRA_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasQuantityResultsEUTRA; -extern asn_SEQUENCE_specifics_t asn_SPC_MeasQuantityResultsEUTRA_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasQuantityResultsEUTRA_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasQuantityResultsEUTRA_H_ */ -#include diff --git a/e2sm/headers/MeasResultListEUTRA.h b/e2sm/headers/MeasResultListEUTRA.h deleted file mode 100644 index 5f9d8e6..0000000 --- a/e2sm/headers/MeasResultListEUTRA.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasResultListEUTRA_H_ -#define _MeasResultListEUTRA_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MeasResultEUTRA; - -/* MeasResultListEUTRA */ -typedef struct MeasResultListEUTRA { - A_SEQUENCE_OF(struct MeasResultEUTRA) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasResultListEUTRA_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasResultListEUTRA; -extern asn_SET_OF_specifics_t asn_SPC_MeasResultListEUTRA_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasResultListEUTRA_1[1]; -extern asn_per_constraints_t asn_PER_type_MeasResultListEUTRA_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasResultListEUTRA_H_ */ -#include diff --git a/e2sm/headers/MeasResultListNR.h b/e2sm/headers/MeasResultListNR.h deleted file mode 100644 index 3617658..0000000 --- a/e2sm/headers/MeasResultListNR.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasResultListNR_H_ -#define _MeasResultListNR_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MeasResultNR; - -/* MeasResultListNR */ -typedef struct MeasResultListNR { - A_SEQUENCE_OF(struct MeasResultNR) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasResultListNR_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasResultListNR; -extern asn_SET_OF_specifics_t asn_SPC_MeasResultListNR_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasResultListNR_1[1]; -extern asn_per_constraints_t asn_PER_type_MeasResultListNR_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasResultListNR_H_ */ -#include diff --git a/e2sm/headers/MeasResultNR.h b/e2sm/headers/MeasResultNR.h deleted file mode 100644 index 8f9e1d4..0000000 --- a/e2sm/headers/MeasResultNR.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasResultNR_H_ -#define _MeasResultNR_H_ - - -#include - -/* Including external dependencies */ -#include "PhysCellId.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MeasQuantityResults; -struct ResultsPerSSB_IndexList; -struct ResultsPerCSI_RS_IndexList; - -/* MeasResultNR */ -typedef struct MeasResultNR { - PhysCellId_t *physCellId; /* OPTIONAL */ - struct MeasResultNR__measResult { - struct MeasResultNR__measResult__cellResults { - struct MeasQuantityResults *resultsSSB_Cell; /* OPTIONAL */ - struct MeasQuantityResults *resultsCSI_RS_Cell; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } cellResults; - struct MeasResultNR__measResult__rsIndexResults { - struct ResultsPerSSB_IndexList *resultsSSB_Indexes; /* OPTIONAL */ - struct ResultsPerCSI_RS_IndexList *resultsCSI_RS_Indexes; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *rsIndexResults; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } measResult; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasResultNR_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasResultNR; -extern asn_SEQUENCE_specifics_t asn_SPC_MeasResultNR_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasResultNR_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasResultNR_H_ */ -#include diff --git a/e2sm/headers/MeasResultNeighCells.h b/e2sm/headers/MeasResultNeighCells.h deleted file mode 100644 index f841bb5..0000000 --- a/e2sm/headers/MeasResultNeighCells.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasResultNeighCells_H_ -#define _MeasResultNeighCells_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MeasResultNeighCells_PR { - MeasResultNeighCells_PR_NOTHING, /* No components present */ - MeasResultNeighCells_PR_measResultListNR, - MeasResultNeighCells_PR_measResultListEUTRA - /* Extensions may appear below */ - -} MeasResultNeighCells_PR; - -/* Forward declarations */ -struct MeasResultListNR; -struct MeasResultListEUTRA; - -/* MeasResultNeighCells */ -typedef struct MeasResultNeighCells { - MeasResultNeighCells_PR present; - union MeasResultNeighCells_u { - struct MeasResultListNR *measResultListNR; - struct MeasResultListEUTRA *measResultListEUTRA; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasResultNeighCells_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasResultNeighCells; -extern asn_CHOICE_specifics_t asn_SPC_MeasResultNeighCells_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasResultNeighCells_1[2]; -extern asn_per_constraints_t asn_PER_type_MeasResultNeighCells_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasResultNeighCells_H_ */ -#include diff --git a/e2sm/headers/MeasResultPCell.h b/e2sm/headers/MeasResultPCell.h deleted file mode 100644 index ad0fb7e..0000000 --- a/e2sm/headers/MeasResultPCell.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasResultPCell_H_ -#define _MeasResultPCell_H_ - - -#include - -/* Including external dependencies */ -#include "PhysCellId.h" -#include "RSRP-Range.h" -#include "RSRQ-Range.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* MeasResultPCell */ -typedef struct MeasResultPCell { - PhysCellId_t eutra_PhysCellId; - RSRP_Range_t rsrpResult; - RSRQ_Range_t rsrqResult; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasResultPCell_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasResultPCell; -extern asn_SEQUENCE_specifics_t asn_SPC_MeasResultPCell_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasResultPCell_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasResultPCell_H_ */ -#include diff --git a/e2sm/headers/MeasResultServMO.h b/e2sm/headers/MeasResultServMO.h deleted file mode 100644 index 67e3676..0000000 --- a/e2sm/headers/MeasResultServMO.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasResultServMO_H_ -#define _MeasResultServMO_H_ - - -#include - -/* Including external dependencies */ -#include "ServCellIndex.h" -#include "MeasResultNR.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MeasResultNR; - -/* MeasResultServMO */ -typedef struct MeasResultServMO { - ServCellIndex_t servCellId; - MeasResultNR_t measResultServingCell; - struct MeasResultNR *measResultBestNeighCell; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasResultServMO_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasResultServMO; -extern asn_SEQUENCE_specifics_t asn_SPC_MeasResultServMO_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasResultServMO_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasResultServMO_H_ */ -#include diff --git a/e2sm/headers/MeasResultServMOList.h b/e2sm/headers/MeasResultServMOList.h deleted file mode 100644 index 422db0f..0000000 --- a/e2sm/headers/MeasResultServMOList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasResultServMOList_H_ -#define _MeasResultServMOList_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MeasResultServMO; - -/* MeasResultServMOList */ -typedef struct MeasResultServMOList { - A_SEQUENCE_OF(struct MeasResultServMO) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasResultServMOList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasResultServMOList; -extern asn_SET_OF_specifics_t asn_SPC_MeasResultServMOList_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasResultServMOList_1[1]; -extern asn_per_constraints_t asn_PER_type_MeasResultServMOList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasResultServMOList_H_ */ -#include diff --git a/e2sm/headers/MeasurementCondUEidItem.h b/e2sm/headers/MeasurementCondUEidItem.h deleted file mode 100644 index e49d2b9..0000000 --- a/e2sm/headers/MeasurementCondUEidItem.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-v02.00.03.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example -D E2SM-KPM-v02.00.03` - */ - -#ifndef _MeasurementCondUEidItem_H_ -#define _MeasurementCondUEidItem_H_ - - -#include - -/* Including external dependencies */ -#include "MeasurementType.h" -#include "MatchingCondList.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MatchingUEidList; - -/* MeasurementCondUEidItem */ -typedef struct MeasurementCondUEidItem { - MeasurementType_t measType; - MatchingCondList_t matchingCond; - struct MatchingUEidList *matchingUEidList; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasurementCondUEidItem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasurementCondUEidItem; -extern asn_SEQUENCE_specifics_t asn_SPC_MeasurementCondUEidItem_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasurementCondUEidItem_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasurementCondUEidItem_H_ */ -#include diff --git a/e2sm/headers/MeasurementCondUEidList.h b/e2sm/headers/MeasurementCondUEidList.h deleted file mode 100644 index 88768c1..0000000 --- a/e2sm/headers/MeasurementCondUEidList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-v02.00.03.asn" - * `asn1c -pdu=auto -fno-include-deps -fcompound-names -findirect-choice -gen-PER -gen-OER -no-gen-example -D E2SM-KPM-v02.00.03` - */ - -#ifndef _MeasurementCondUEidList_H_ -#define _MeasurementCondUEidList_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MeasurementCondUEidItem; - -/* MeasurementCondUEidList */ -typedef struct MeasurementCondUEidList { - A_SEQUENCE_OF(struct MeasurementCondUEidItem) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasurementCondUEidList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasurementCondUEidList; -extern asn_SET_OF_specifics_t asn_SPC_MeasurementCondUEidList_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasurementCondUEidList_1[1]; -extern asn_per_constraints_t asn_PER_type_MeasurementCondUEidList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasurementCondUEidList_H_ */ -#include diff --git a/e2sm/headers/MeasurementInfoList.h b/e2sm/headers/MeasurementInfoList.h deleted file mode 100644 index f58fabe..0000000 --- a/e2sm/headers/MeasurementInfoList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasurementInfoList_H_ -#define _MeasurementInfoList_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MeasurementInfoItem; - -/* MeasurementInfoList */ -typedef struct MeasurementInfoList { - A_SEQUENCE_OF(struct MeasurementInfoItem) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasurementInfoList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasurementInfoList; -extern asn_SET_OF_specifics_t asn_SPC_MeasurementInfoList_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasurementInfoList_1[1]; -extern asn_per_constraints_t asn_PER_type_MeasurementInfoList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasurementInfoList_H_ */ -#include diff --git a/e2sm/headers/MeasurementType.h b/e2sm/headers/MeasurementType.h deleted file mode 100644 index 89b0266..0000000 --- a/e2sm/headers/MeasurementType.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasurementType_H_ -#define _MeasurementType_H_ - - -#include - -/* Including external dependencies */ -#include "MeasurementTypeName.h" -#include "MeasurementTypeID.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MeasurementType_PR { - MeasurementType_PR_NOTHING, /* No components present */ - MeasurementType_PR_measName, - MeasurementType_PR_measID - /* Extensions may appear below */ - -} MeasurementType_PR; - -/* MeasurementType */ -typedef struct MeasurementType { - MeasurementType_PR present; - union MeasurementType_u { - MeasurementTypeName_t measName; - MeasurementTypeID_t measID; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasurementType_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasurementType; -extern asn_CHOICE_specifics_t asn_SPC_MeasurementType_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasurementType_1[2]; -extern asn_per_constraints_t asn_PER_type_MeasurementType_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasurementType_H_ */ -#include diff --git a/e2sm/headers/MeasurementTypeID.h b/e2sm/headers/MeasurementTypeID.h deleted file mode 100644 index bec93a3..0000000 --- a/e2sm/headers/MeasurementTypeID.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasurementTypeID_H_ -#define _MeasurementTypeID_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* MeasurementTypeID */ -typedef long MeasurementTypeID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MeasurementTypeID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MeasurementTypeID; -asn_struct_free_f MeasurementTypeID_free; -asn_struct_print_f MeasurementTypeID_print; -asn_constr_check_f MeasurementTypeID_constraint; -ber_type_decoder_f MeasurementTypeID_decode_ber; -der_type_encoder_f MeasurementTypeID_encode_der; -xer_type_decoder_f MeasurementTypeID_decode_xer; -xer_type_encoder_f MeasurementTypeID_encode_xer; -oer_type_decoder_f MeasurementTypeID_decode_oer; -oer_type_encoder_f MeasurementTypeID_encode_oer; -per_type_decoder_f MeasurementTypeID_decode_uper; -per_type_encoder_f MeasurementTypeID_encode_uper; -per_type_decoder_f MeasurementTypeID_decode_aper; -per_type_encoder_f MeasurementTypeID_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasurementTypeID_H_ */ -#include diff --git a/e2sm/headers/MeasurementTypeName.h b/e2sm/headers/MeasurementTypeName.h deleted file mode 100644 index 0d21344..0000000 --- a/e2sm/headers/MeasurementTypeName.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasurementTypeName_H_ -#define _MeasurementTypeName_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* MeasurementTypeName */ -typedef PrintableString_t MeasurementTypeName_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_MeasurementTypeName_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_MeasurementTypeName; -asn_struct_free_f MeasurementTypeName_free; -asn_struct_print_f MeasurementTypeName_print; -asn_constr_check_f MeasurementTypeName_constraint; -ber_type_decoder_f MeasurementTypeName_decode_ber; -der_type_encoder_f MeasurementTypeName_encode_der; -xer_type_decoder_f MeasurementTypeName_decode_xer; -xer_type_encoder_f MeasurementTypeName_encode_xer; -oer_type_decoder_f MeasurementTypeName_decode_oer; -oer_type_encoder_f MeasurementTypeName_encode_oer; -per_type_decoder_f MeasurementTypeName_decode_uper; -per_type_encoder_f MeasurementTypeName_encode_uper; -per_type_decoder_f MeasurementTypeName_decode_aper; -per_type_encoder_f MeasurementTypeName_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasurementTypeName_H_ */ -#include diff --git a/e2sm/headers/MeasurementValue.h b/e2sm/headers/MeasurementValue.h deleted file mode 100644 index f1d874a..0000000 --- a/e2sm/headers/MeasurementValue.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _MeasurementValue_H_ -#define _MeasurementValue_H_ - - -#include - -/* Including external dependencies */ -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum MeasurementValue_PR { - MeasurementValue_PR_NOTHING, /* No components present */ - MeasurementValue_PR_valueInt, - MeasurementValue_PR_valueReal, - MeasurementValue_PR_noValue, - MeasurementValue_PR_valueRRC - /* Extensions may appear below */ - -} MeasurementValue_PR; - -/* Forward declarations */ -struct L3_RRC_Measurements; - -/* MeasurementValue */ -typedef struct MeasurementValue { - MeasurementValue_PR present; - union MeasurementValue_u { - long valueInt; - double valueReal; - NULL_t noValue; - struct L3_RRC_Measurements *valueRRC; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} MeasurementValue_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_MeasurementValue; -extern asn_CHOICE_specifics_t asn_SPC_MeasurementValue_specs_1; -extern asn_TYPE_member_t asn_MBR_MeasurementValue_1[4]; -extern asn_per_constraints_t asn_PER_type_MeasurementValue_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _MeasurementValue_H_ */ -#include diff --git a/e2sm/headers/MessageType-Choice-NI.h b/e2sm/headers/MessageType-Choice-NI.h new file mode 100755 index 0000000..faad2fe --- /dev/null +++ b/e2sm/headers/MessageType-Choice-NI.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _MessageType_Choice_NI_H_ +#define _MessageType_Choice_NI_H_ + + +#include + +/* Including external dependencies */ +#include "InterfaceType.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct InterfaceIdentifier; +struct Interface_MessageID; + +/* MessageType-Choice-NI */ +typedef struct MessageType_Choice_NI { + InterfaceType_t nI_Type; + struct InterfaceIdentifier *nI_Identifier; /* OPTIONAL */ + struct Interface_MessageID *nI_Message; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MessageType_Choice_NI_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MessageType_Choice_NI; +extern asn_SEQUENCE_specifics_t asn_SPC_MessageType_Choice_NI_specs_1; +extern asn_TYPE_member_t asn_MBR_MessageType_Choice_NI_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _MessageType_Choice_NI_H_ */ +#include diff --git a/e2sm/headers/GlobalE2node-en-gNB-ID.h b/e2sm/headers/MessageType-Choice-RRC.h old mode 100644 new mode 100755 similarity index 51% rename from e2sm/headers/GlobalE2node-en-gNB-ID.h rename to e2sm/headers/MessageType-Choice-RRC.h index 795bc84..72df617 --- a/e2sm/headers/GlobalE2node-en-gNB-ID.h +++ b/e2sm/headers/MessageType-Choice-RRC.h @@ -1,27 +1,27 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _GlobalE2node_en_gNB_ID_H_ -#define _GlobalE2node_en_gNB_ID_H_ +#ifndef _MessageType_Choice_RRC_H_ +#define _MessageType_Choice_RRC_H_ #include /* Including external dependencies */ -#include "GlobalenGNB-ID.h" +#include "RRC-MessageID.h" #include #ifdef __cplusplus extern "C" { #endif -/* GlobalE2node-en-gNB-ID */ -typedef struct GlobalE2node_en_gNB_ID { - GlobalenGNB_ID_t global_gNB_ID; +/* MessageType-Choice-RRC */ +typedef struct MessageType_Choice_RRC { + RRC_MessageID_t rRC_Message; /* * This type is extensible, * possible extensions are below. @@ -29,16 +29,16 @@ typedef struct GlobalE2node_en_gNB_ID { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} GlobalE2node_en_gNB_ID_t; +} MessageType_Choice_RRC_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_en_gNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_en_gNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalE2node_en_gNB_ID_1[1]; +extern asn_TYPE_descriptor_t asn_DEF_MessageType_Choice_RRC; +extern asn_SEQUENCE_specifics_t asn_SPC_MessageType_Choice_RRC_specs_1; +extern asn_TYPE_member_t asn_MBR_MessageType_Choice_RRC_1[1]; #ifdef __cplusplus } #endif -#endif /* _GlobalE2node_en_gNB_ID_H_ */ +#endif /* _MessageType_Choice_RRC_H_ */ #include diff --git a/e2sm/headers/MessageType-Choice.h b/e2sm/headers/MessageType-Choice.h new file mode 100755 index 0000000..bd0cbff --- /dev/null +++ b/e2sm/headers/MessageType-Choice.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _MessageType_Choice_H_ +#define _MessageType_Choice_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum MessageType_Choice_PR { + MessageType_Choice_PR_NOTHING, /* No components present */ + MessageType_Choice_PR_messageType_Choice_NI, + MessageType_Choice_PR_messageType_Choice_RRC + /* Extensions may appear below */ + +} MessageType_Choice_PR; + +/* Forward declarations */ +struct MessageType_Choice_NI; +struct MessageType_Choice_RRC; + +/* MessageType-Choice */ +typedef struct MessageType_Choice { + MessageType_Choice_PR present; + union MessageType_Choice_u { + struct MessageType_Choice_NI *messageType_Choice_NI; + struct MessageType_Choice_RRC *messageType_Choice_RRC; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} MessageType_Choice_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_MessageType_Choice; +extern asn_CHOICE_specifics_t asn_SPC_MessageType_Choice_specs_1; +extern asn_TYPE_member_t asn_MBR_MessageType_Choice_1[2]; +extern asn_per_constraints_t asn_PER_type_MessageType_Choice_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _MessageType_Choice_H_ */ +#include diff --git a/e2sm/headers/NG-RANnodeUEXnAPID.h b/e2sm/headers/NG-RANnodeUEXnAPID.h new file mode 100755 index 0000000..6bd8295 --- /dev/null +++ b/e2sm/headers/NG-RANnodeUEXnAPID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NG_RANnodeUEXnAPID_H_ +#define _NG_RANnodeUEXnAPID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* NG-RANnodeUEXnAPID */ +typedef unsigned long NG_RANnodeUEXnAPID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NG_RANnodeUEXnAPID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NG_RANnodeUEXnAPID; +extern const asn_INTEGER_specifics_t asn_SPC_NG_RANnodeUEXnAPID_specs_1; +asn_struct_free_f NG_RANnodeUEXnAPID_free; +asn_struct_print_f NG_RANnodeUEXnAPID_print; +asn_constr_check_f NG_RANnodeUEXnAPID_constraint; +ber_type_decoder_f NG_RANnodeUEXnAPID_decode_ber; +der_type_encoder_f NG_RANnodeUEXnAPID_encode_der; +xer_type_decoder_f NG_RANnodeUEXnAPID_decode_xer; +xer_type_encoder_f NG_RANnodeUEXnAPID_encode_xer; +oer_type_decoder_f NG_RANnodeUEXnAPID_decode_oer; +oer_type_encoder_f NG_RANnodeUEXnAPID_encode_oer; +per_type_decoder_f NG_RANnodeUEXnAPID_decode_uper; +per_type_encoder_f NG_RANnodeUEXnAPID_encode_uper; +per_type_decoder_f NG_RANnodeUEXnAPID_decode_aper; +per_type_encoder_f NG_RANnodeUEXnAPID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NG_RANnodeUEXnAPID_H_ */ +#include diff --git a/e2sm/headers/NGENB-CU-UE-W1AP-ID.h b/e2sm/headers/NGENB-CU-UE-W1AP-ID.h new file mode 100755 index 0000000..dac9299 --- /dev/null +++ b/e2sm/headers/NGENB-CU-UE-W1AP-ID.h @@ -0,0 +1,47 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NGENB_CU_UE_W1AP_ID_H_ +#define _NGENB_CU_UE_W1AP_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* NGENB-CU-UE-W1AP-ID */ +typedef unsigned long NGENB_CU_UE_W1AP_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NGENB_CU_UE_W1AP_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NGENB_CU_UE_W1AP_ID; +extern const asn_INTEGER_specifics_t asn_SPC_NGENB_CU_UE_W1AP_ID_specs_1; +asn_struct_free_f NGENB_CU_UE_W1AP_ID_free; +asn_struct_print_f NGENB_CU_UE_W1AP_ID_print; +asn_constr_check_f NGENB_CU_UE_W1AP_ID_constraint; +ber_type_decoder_f NGENB_CU_UE_W1AP_ID_decode_ber; +der_type_encoder_f NGENB_CU_UE_W1AP_ID_encode_der; +xer_type_decoder_f NGENB_CU_UE_W1AP_ID_decode_xer; +xer_type_encoder_f NGENB_CU_UE_W1AP_ID_encode_xer; +oer_type_decoder_f NGENB_CU_UE_W1AP_ID_decode_oer; +oer_type_encoder_f NGENB_CU_UE_W1AP_ID_encode_oer; +per_type_decoder_f NGENB_CU_UE_W1AP_ID_decode_uper; +per_type_encoder_f NGENB_CU_UE_W1AP_ID_encode_uper; +per_type_decoder_f NGENB_CU_UE_W1AP_ID_decode_aper; +per_type_encoder_f NGENB_CU_UE_W1AP_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NGENB_CU_UE_W1AP_ID_H_ */ +#include diff --git a/e2sm/headers/NGENB-DU-ID.h b/e2sm/headers/NGENB-DU-ID.h new file mode 100755 index 0000000..126de2f --- /dev/null +++ b/e2sm/headers/NGENB-DU-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NGENB_DU_ID_H_ +#define _NGENB_DU_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* NGENB-DU-ID */ +typedef INTEGER_t NGENB_DU_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NGENB_DU_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NGENB_DU_ID; +asn_struct_free_f NGENB_DU_ID_free; +asn_struct_print_f NGENB_DU_ID_print; +asn_constr_check_f NGENB_DU_ID_constraint; +ber_type_decoder_f NGENB_DU_ID_decode_ber; +der_type_encoder_f NGENB_DU_ID_encode_der; +xer_type_decoder_f NGENB_DU_ID_decode_xer; +xer_type_encoder_f NGENB_DU_ID_encode_xer; +oer_type_decoder_f NGENB_DU_ID_decode_oer; +oer_type_encoder_f NGENB_DU_ID_encode_oer; +per_type_decoder_f NGENB_DU_ID_decode_uper; +per_type_encoder_f NGENB_DU_ID_encode_uper; +per_type_decoder_f NGENB_DU_ID_decode_aper; +per_type_encoder_f NGENB_DU_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NGENB_DU_ID_H_ */ +#include diff --git a/e2sm/headers/NI-Type.h b/e2sm/headers/NI-Type.h deleted file mode 100644 index f57d977..0000000 --- a/e2sm/headers/NI-Type.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _NI_Type_H_ -#define _NI_Type_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum NI_Type { - NI_Type_x2_u = 0, - NI_Type_xn_u = 1, - NI_Type_f1_u = 2 - /* - * Enumeration is extensible - */ -} e_NI_Type; - -/* NI-Type */ -typedef long NI_Type_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_NI_Type_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_NI_Type; -extern const asn_INTEGER_specifics_t asn_SPC_NI_Type_specs_1; -asn_struct_free_f NI_Type_free; -asn_struct_print_f NI_Type_print; -asn_constr_check_f NI_Type_constraint; -ber_type_decoder_f NI_Type_decode_ber; -der_type_encoder_f NI_Type_encode_der; -xer_type_decoder_f NI_Type_decode_xer; -xer_type_encoder_f NI_Type_encode_xer; -oer_type_decoder_f NI_Type_decode_oer; -oer_type_encoder_f NI_Type_encode_oer; -per_type_decoder_f NI_Type_decode_uper; -per_type_encoder_f NI_Type_encode_uper; -per_type_decoder_f NI_Type_decode_aper; -per_type_encoder_f NI_Type_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _NI_Type_H_ */ -#include diff --git a/e2sm/headers/NR-ARFCN.h b/e2sm/headers/NR-ARFCN.h new file mode 100755 index 0000000..909dc06 --- /dev/null +++ b/e2sm/headers/NR-ARFCN.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NR_ARFCN_H_ +#define _NR_ARFCN_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* NR-ARFCN */ +typedef struct NR_ARFCN { + long nRARFCN; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NR_ARFCN_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NR_ARFCN; +extern asn_SEQUENCE_specifics_t asn_SPC_NR_ARFCN_specs_1; +extern asn_TYPE_member_t asn_MBR_NR_ARFCN_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NR_ARFCN_H_ */ +#include diff --git a/e2sm/headers/NRCGI.h b/e2sm/headers/NR-CGI.h old mode 100644 new mode 100755 similarity index 61% rename from e2sm/headers/NRCGI.h rename to e2sm/headers/NR-CGI.h index 11239c7..fbac091 --- a/e2sm/headers/NRCGI.h +++ b/e2sm/headers/NR-CGI.h @@ -1,18 +1,18 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _NRCGI_H_ -#define _NRCGI_H_ +#ifndef _NR_CGI_H_ +#define _NR_CGI_H_ #include /* Including external dependencies */ -#include "PLMN-Identity.h" +#include "PLMNIdentity.h" #include "NRCellIdentity.h" #include @@ -20,9 +20,9 @@ extern "C" { #endif -/* NRCGI */ -typedef struct NRCGI { - PLMN_Identity_t pLMN_Identity; +/* NR-CGI */ +typedef struct NR_CGI { + PLMNIdentity_t pLMNIdentity; NRCellIdentity_t nRCellIdentity; /* * This type is extensible, @@ -31,16 +31,16 @@ typedef struct NRCGI { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} NRCGI_t; +} NR_CGI_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_NRCGI; -extern asn_SEQUENCE_specifics_t asn_SPC_NRCGI_specs_1; -extern asn_TYPE_member_t asn_MBR_NRCGI_1[2]; +extern asn_TYPE_descriptor_t asn_DEF_NR_CGI; +extern asn_SEQUENCE_specifics_t asn_SPC_NR_CGI_specs_1; +extern asn_TYPE_member_t asn_MBR_NR_CGI_1[2]; #ifdef __cplusplus } #endif -#endif /* _NRCGI_H_ */ +#endif /* _NR_CGI_H_ */ #include diff --git a/e2sm/headers/NR-PCI.h b/e2sm/headers/NR-PCI.h new file mode 100755 index 0000000..ecbc7b3 --- /dev/null +++ b/e2sm/headers/NR-PCI.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NR_PCI_H_ +#define _NR_PCI_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* NR-PCI */ +typedef long NR_PCI_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NR_PCI_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NR_PCI; +asn_struct_free_f NR_PCI_free; +asn_struct_print_f NR_PCI_print; +asn_constr_check_f NR_PCI_constraint; +ber_type_decoder_f NR_PCI_decode_ber; +der_type_encoder_f NR_PCI_encode_der; +xer_type_decoder_f NR_PCI_decode_xer; +xer_type_encoder_f NR_PCI_encode_xer; +oer_type_decoder_f NR_PCI_decode_oer; +oer_type_encoder_f NR_PCI_encode_oer; +per_type_decoder_f NR_PCI_decode_uper; +per_type_encoder_f NR_PCI_encode_uper; +per_type_decoder_f NR_PCI_decode_aper; +per_type_encoder_f NR_PCI_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NR_PCI_H_ */ +#include diff --git a/e2sm/headers/NRCellIdentity.h b/e2sm/headers/NRCellIdentity.h old mode 100644 new mode 100755 index fc489c7..6c7a264 --- a/e2sm/headers/NRCellIdentity.h +++ b/e2sm/headers/NRCellIdentity.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/NRFrequencyBand-List.h b/e2sm/headers/NRFrequencyBand-List.h new file mode 100755 index 0000000..362abd3 --- /dev/null +++ b/e2sm/headers/NRFrequencyBand-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NRFrequencyBand_List_H_ +#define _NRFrequencyBand_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NRFrequencyBandItem; + +/* NRFrequencyBand-List */ +typedef struct NRFrequencyBand_List { + A_SEQUENCE_OF(struct NRFrequencyBandItem) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NRFrequencyBand_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NRFrequencyBand_List; +extern asn_SET_OF_specifics_t asn_SPC_NRFrequencyBand_List_specs_1; +extern asn_TYPE_member_t asn_MBR_NRFrequencyBand_List_1[1]; +extern asn_per_constraints_t asn_PER_type_NRFrequencyBand_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NRFrequencyBand_List_H_ */ +#include diff --git a/e2sm/headers/NRFrequencyBandItem.h b/e2sm/headers/NRFrequencyBandItem.h new file mode 100755 index 0000000..95e118a --- /dev/null +++ b/e2sm/headers/NRFrequencyBandItem.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NRFrequencyBandItem_H_ +#define _NRFrequencyBandItem_H_ + + +#include + +/* Including external dependencies */ +#include +#include "SupportedSULBandList.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* NRFrequencyBandItem */ +typedef struct NRFrequencyBandItem { + long freqBandIndicatorNr; + SupportedSULBandList_t supportedSULBandList; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NRFrequencyBandItem_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NRFrequencyBandItem; +extern asn_SEQUENCE_specifics_t asn_SPC_NRFrequencyBandItem_specs_1; +extern asn_TYPE_member_t asn_MBR_NRFrequencyBandItem_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NRFrequencyBandItem_H_ */ +#include diff --git a/e2sm/headers/NRFrequencyInfo.h b/e2sm/headers/NRFrequencyInfo.h new file mode 100755 index 0000000..f5a868d --- /dev/null +++ b/e2sm/headers/NRFrequencyInfo.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NRFrequencyInfo_H_ +#define _NRFrequencyInfo_H_ + + +#include + +/* Including external dependencies */ +#include "NR-ARFCN.h" +#include "NRFrequencyBand-List.h" +#include "NRFrequencyShift7p5khz.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* NRFrequencyInfo */ +typedef struct NRFrequencyInfo { + NR_ARFCN_t nrARFCN; + NRFrequencyBand_List_t frequencyBand_List; + NRFrequencyShift7p5khz_t *frequencyShift7p5khz; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NRFrequencyInfo_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NRFrequencyInfo; + +#ifdef __cplusplus +} +#endif + +#endif /* _NRFrequencyInfo_H_ */ +#include diff --git a/e2sm/headers/NRFrequencyShift7p5khz.h b/e2sm/headers/NRFrequencyShift7p5khz.h new file mode 100755 index 0000000..d3f0304 --- /dev/null +++ b/e2sm/headers/NRFrequencyShift7p5khz.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NRFrequencyShift7p5khz_H_ +#define _NRFrequencyShift7p5khz_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NRFrequencyShift7p5khz { + NRFrequencyShift7p5khz_false = 0, + NRFrequencyShift7p5khz_true = 1 + /* + * Enumeration is extensible + */ +} e_NRFrequencyShift7p5khz; + +/* NRFrequencyShift7p5khz */ +typedef long NRFrequencyShift7p5khz_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_NRFrequencyShift7p5khz_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_NRFrequencyShift7p5khz; +extern const asn_INTEGER_specifics_t asn_SPC_NRFrequencyShift7p5khz_specs_1; +asn_struct_free_f NRFrequencyShift7p5khz_free; +asn_struct_print_f NRFrequencyShift7p5khz_print; +asn_constr_check_f NRFrequencyShift7p5khz_constraint; +ber_type_decoder_f NRFrequencyShift7p5khz_decode_ber; +der_type_encoder_f NRFrequencyShift7p5khz_encode_der; +xer_type_decoder_f NRFrequencyShift7p5khz_decode_xer; +xer_type_encoder_f NRFrequencyShift7p5khz_encode_xer; +oer_type_decoder_f NRFrequencyShift7p5khz_decode_oer; +oer_type_encoder_f NRFrequencyShift7p5khz_encode_oer; +per_type_decoder_f NRFrequencyShift7p5khz_decode_uper; +per_type_encoder_f NRFrequencyShift7p5khz_encode_uper; +per_type_decoder_f NRFrequencyShift7p5khz_decode_aper; +per_type_encoder_f NRFrequencyShift7p5khz_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _NRFrequencyShift7p5khz_H_ */ +#include diff --git a/e2sm/headers/NULL.h b/e2sm/headers/NULL.h deleted file mode 100644 index 802d12c..0000000 --- a/e2sm/headers/NULL.h +++ /dev/null @@ -1,45 +0,0 @@ -/*- - * Copyright (c) 2003-2017 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#ifndef ASN_TYPE_NULL_H -#define ASN_TYPE_NULL_H - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * The value of the NULL type is meaningless: see BOOLEAN if you want to - * carry true/false semantics. - */ -typedef int NULL_t; - -extern asn_TYPE_descriptor_t asn_DEF_NULL; -extern asn_TYPE_operation_t asn_OP_NULL; - -asn_struct_print_f NULL_print; -asn_struct_compare_f NULL_compare; -der_type_encoder_f NULL_encode_der; -xer_type_decoder_f NULL_decode_xer; -xer_type_encoder_f NULL_encode_xer; -oer_type_decoder_f NULL_decode_oer; -oer_type_encoder_f NULL_encode_oer; -per_type_decoder_f NULL_decode_uper; -per_type_encoder_f NULL_encode_uper; -per_type_decoder_f NULL_decode_aper; -per_type_encoder_f NULL_encode_aper; -asn_random_fill_f NULL_random_fill; - -#define NULL_free BOOLEAN_free -#define NULL_decode_ber BOOLEAN_decode_ber -#define NULL_constraint asn_generic_no_constraint - -#ifdef __cplusplus -} -#endif - -#endif /* NULL_H */ diff --git a/e2sm/headers/NativeEnumerated.h b/e2sm/headers/NativeEnumerated.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/NativeInteger.h b/e2sm/headers/NativeInteger.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/NativeReal.h b/e2sm/headers/NativeReal.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/NeighborCell-Item-Choice-E-UTRA.h b/e2sm/headers/NeighborCell-Item-Choice-E-UTRA.h new file mode 100755 index 0000000..1c807b3 --- /dev/null +++ b/e2sm/headers/NeighborCell-Item-Choice-E-UTRA.h @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NeighborCell_Item_Choice_E_UTRA_H_ +#define _NeighborCell_Item_Choice_E_UTRA_H_ + + +#include + +/* Including external dependencies */ +#include "EUTRA-CGI.h" +#include "E-UTRA-PCI.h" +#include "E-UTRA-ARFCN.h" +#include "E-UTRA-TAC.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NeighborCell_Item_Choice_E_UTRA__x2_Xn_established { + NeighborCell_Item_Choice_E_UTRA__x2_Xn_established_true = 0, + NeighborCell_Item_Choice_E_UTRA__x2_Xn_established_false = 1 + /* + * Enumeration is extensible + */ +} e_NeighborCell_Item_Choice_E_UTRA__x2_Xn_established; +typedef enum NeighborCell_Item_Choice_E_UTRA__hO_validated { + NeighborCell_Item_Choice_E_UTRA__hO_validated_true = 0, + NeighborCell_Item_Choice_E_UTRA__hO_validated_false = 1 + /* + * Enumeration is extensible + */ +} e_NeighborCell_Item_Choice_E_UTRA__hO_validated; + +/* NeighborCell-Item-Choice-E-UTRA */ +typedef struct NeighborCell_Item_Choice_E_UTRA { + EUTRA_CGI_t eUTRA_CGI; + E_UTRA_PCI_t eUTRA_PCI; + E_UTRA_ARFCN_t eUTRA_ARFCN; + E_UTRA_TAC_t eUTRA_TAC; + long x2_Xn_established; + long hO_validated; + long version; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NeighborCell_Item_Choice_E_UTRA_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_x2_Xn_established_6; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_hO_validated_10; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_NeighborCell_Item_Choice_E_UTRA; +extern asn_SEQUENCE_specifics_t asn_SPC_NeighborCell_Item_Choice_E_UTRA_specs_1; +extern asn_TYPE_member_t asn_MBR_NeighborCell_Item_Choice_E_UTRA_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NeighborCell_Item_Choice_E_UTRA_H_ */ +#include diff --git a/e2sm/headers/NeighborCell-Item-Choice-NR.h b/e2sm/headers/NeighborCell-Item-Choice-NR.h new file mode 100755 index 0000000..526f742 --- /dev/null +++ b/e2sm/headers/NeighborCell-Item-Choice-NR.h @@ -0,0 +1,82 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NeighborCell_Item_Choice_NR_H_ +#define _NeighborCell_Item_Choice_NR_H_ + + +#include + +/* Including external dependencies */ +#include "NR-CGI.h" +#include "NR-PCI.h" +#include "FiveGS-TAC.h" +#include +#include "NR-ARFCN.h" +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NeighborCell_Item_Choice_NR__nR_mode_info { + NeighborCell_Item_Choice_NR__nR_mode_info_fdd = 0, + NeighborCell_Item_Choice_NR__nR_mode_info_tdd = 1 + /* + * Enumeration is extensible + */ +} e_NeighborCell_Item_Choice_NR__nR_mode_info; +typedef enum NeighborCell_Item_Choice_NR__x2_Xn_established { + NeighborCell_Item_Choice_NR__x2_Xn_established_true = 0, + NeighborCell_Item_Choice_NR__x2_Xn_established_false = 1 + /* + * Enumeration is extensible + */ +} e_NeighborCell_Item_Choice_NR__x2_Xn_established; +typedef enum NeighborCell_Item_Choice_NR__hO_validated { + NeighborCell_Item_Choice_NR__hO_validated_true = 0, + NeighborCell_Item_Choice_NR__hO_validated_false = 1 + /* + * Enumeration is extensible + */ +} e_NeighborCell_Item_Choice_NR__hO_validated; + +/* NeighborCell-Item-Choice-NR */ +typedef struct NeighborCell_Item_Choice_NR { + NR_CGI_t nR_CGI; + NR_PCI_t nR_PCI; + FiveGS_TAC_t fiveGS_TAC; + long nR_mode_info; + NR_ARFCN_t nR_ARFCN; + long x2_Xn_established; + long hO_validated; + long version; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NeighborCell_Item_Choice_NR_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_nR_mode_info_5; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_x2_Xn_established_10; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_hO_validated_14; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_NeighborCell_Item_Choice_NR; +extern asn_SEQUENCE_specifics_t asn_SPC_NeighborCell_Item_Choice_NR_specs_1; +extern asn_TYPE_member_t asn_MBR_NeighborCell_Item_Choice_NR_1[8]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NeighborCell_Item_Choice_NR_H_ */ +#include diff --git a/e2sm/headers/NeighborCell-Item.h b/e2sm/headers/NeighborCell-Item.h new file mode 100755 index 0000000..e17e94c --- /dev/null +++ b/e2sm/headers/NeighborCell-Item.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NeighborCell_Item_H_ +#define _NeighborCell_Item_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NeighborCell_Item_PR { + NeighborCell_Item_PR_NOTHING, /* No components present */ + NeighborCell_Item_PR_ranType_Choice_NR, + NeighborCell_Item_PR_ranType_Choice_EUTRA + /* Extensions may appear below */ + +} NeighborCell_Item_PR; + +/* Forward declarations */ +struct NeighborCell_Item_Choice_NR; +struct NeighborCell_Item_Choice_E_UTRA; + +/* NeighborCell-Item */ +typedef struct NeighborCell_Item { + NeighborCell_Item_PR present; + union NeighborCell_Item_u { + struct NeighborCell_Item_Choice_NR *ranType_Choice_NR; + struct NeighborCell_Item_Choice_E_UTRA *ranType_Choice_EUTRA; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NeighborCell_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NeighborCell_Item; +extern asn_CHOICE_specifics_t asn_SPC_NeighborCell_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_NeighborCell_Item_1[2]; +extern asn_per_constraints_t asn_PER_type_NeighborCell_Item_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NeighborCell_Item_H_ */ +#include diff --git a/e2sm/headers/NeighborCell-List.h b/e2sm/headers/NeighborCell-List.h new file mode 100755 index 0000000..e27559c --- /dev/null +++ b/e2sm/headers/NeighborCell-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NeighborCell_List_H_ +#define _NeighborCell_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct NeighborCell_Item; + +/* NeighborCell-List */ +typedef struct NeighborCell_List { + A_SEQUENCE_OF(struct NeighborCell_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NeighborCell_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NeighborCell_List; +extern asn_SET_OF_specifics_t asn_SPC_NeighborCell_List_specs_1; +extern asn_TYPE_member_t asn_MBR_NeighborCell_List_1[1]; +extern asn_per_constraints_t asn_PER_type_NeighborCell_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NeighborCell_List_H_ */ +#include diff --git a/e2sm/headers/NeighborRelation-Info.h b/e2sm/headers/NeighborRelation-Info.h new file mode 100755 index 0000000..c7d489d --- /dev/null +++ b/e2sm/headers/NeighborRelation-Info.h @@ -0,0 +1,48 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NeighborRelation_Info_H_ +#define _NeighborRelation_Info_H_ + + +#include + +/* Including external dependencies */ +#include "ServingCell-PCI.h" +#include "ServingCell-ARFCN.h" +#include "NeighborCell-List.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* NeighborRelation-Info */ +typedef struct NeighborRelation_Info { + ServingCell_PCI_t servingCellPCI; + ServingCell_ARFCN_t servingCellARFCN; + NeighborCell_List_t neighborCell_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NeighborRelation_Info_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NeighborRelation_Info; +extern asn_SEQUENCE_specifics_t asn_SPC_NeighborRelation_Info_specs_1; +extern asn_TYPE_member_t asn_MBR_NeighborRelation_Info_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _NeighborRelation_Info_H_ */ +#include diff --git a/e2sm/headers/NgENB-ID.h b/e2sm/headers/NgENB-ID.h new file mode 100755 index 0000000..28554b7 --- /dev/null +++ b/e2sm/headers/NgENB-ID.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _NgENB_ID_H_ +#define _NgENB_ID_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum NgENB_ID_PR { + NgENB_ID_PR_NOTHING, /* No components present */ + NgENB_ID_PR_macroNgENB_ID, + NgENB_ID_PR_shortMacroNgENB_ID, + NgENB_ID_PR_longMacroNgENB_ID + /* Extensions may appear below */ + +} NgENB_ID_PR; + +/* NgENB-ID */ +typedef struct NgENB_ID { + NgENB_ID_PR present; + union NgENB_ID_u { + BIT_STRING_t macroNgENB_ID; + BIT_STRING_t shortMacroNgENB_ID; + BIT_STRING_t longMacroNgENB_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} NgENB_ID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_NgENB_ID; +extern asn_CHOICE_specifics_t asn_SPC_NgENB_ID_specs_1; +extern asn_TYPE_member_t asn_MBR_NgENB_ID_1[3]; +extern asn_per_constraints_t asn_PER_type_NgENB_ID_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _NgENB_ID_H_ */ +#include diff --git a/e2sm/headers/OCTET_STRING.h b/e2sm/headers/OCTET_STRING.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/OCUCP-PF-Container.h b/e2sm/headers/OCUCP-PF-Container.h deleted file mode 100644 index 5c1adfe..0000000 --- a/e2sm/headers/OCUCP-PF-Container.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _OCUCP_PF_Container_H_ -#define _OCUCP_PF_Container_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* OCUCP-PF-Container */ -typedef struct OCUCP_PF_Container { - struct OCUCP_PF_Container__cu_CP_Resource_Status { - long *numberOfActive_UEs; /* OPTIONAL */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } cu_CP_Resource_Status; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} OCUCP_PF_Container_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_OCUCP_PF_Container; -extern asn_SEQUENCE_specifics_t asn_SPC_OCUCP_PF_Container_specs_1; -extern asn_TYPE_member_t asn_MBR_OCUCP_PF_Container_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _OCUCP_PF_Container_H_ */ -#include diff --git a/e2sm/headers/OCUUP-PF-Container.h b/e2sm/headers/OCUUP-PF-Container.h deleted file mode 100644 index c1fc638..0000000 --- a/e2sm/headers/OCUUP-PF-Container.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _OCUUP_PF_Container_H_ -#define _OCUUP_PF_Container_H_ - - -#include - -/* Including external dependencies */ -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PF_ContainerListItem; - -/* OCUUP-PF-Container */ -typedef struct OCUUP_PF_Container { - struct OCUUP_PF_Container__pf_ContainerList { - A_SEQUENCE_OF(struct PF_ContainerListItem) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } pf_ContainerList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} OCUUP_PF_Container_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_OCUUP_PF_Container; -extern asn_SEQUENCE_specifics_t asn_SPC_OCUUP_PF_Container_specs_1; -extern asn_TYPE_member_t asn_MBR_OCUUP_PF_Container_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _OCUUP_PF_Container_H_ */ -#include diff --git a/e2sm/headers/OPEN_TYPE.h b/e2sm/headers/OPEN_TYPE.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/PF-Container.h b/e2sm/headers/PF-Container.h deleted file mode 100644 index 4dd9e95..0000000 --- a/e2sm/headers/PF-Container.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _PF_Container_H_ -#define _PF_Container_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum PF_Container_PR { - PF_Container_PR_NOTHING, /* No components present */ - PF_Container_PR_oDU, - PF_Container_PR_oCU_CP, - PF_Container_PR_oCU_UP -} PF_Container_PR; - -/* Forward declarations */ -struct ODU_PF_Container; -struct OCUCP_PF_Container; -struct OCUUP_PF_Container; - -/* PF-Container */ -typedef struct PF_Container { - PF_Container_PR present; - union PF_Container_u { - struct ODU_PF_Container *oDU; - struct OCUCP_PF_Container *oCU_CP; - struct OCUUP_PF_Container *oCU_UP; - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PF_Container_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PF_Container; -extern asn_CHOICE_specifics_t asn_SPC_PF_Container_specs_1; -extern asn_TYPE_member_t asn_MBR_PF_Container_1[3]; -extern asn_per_constraints_t asn_PER_type_PF_Container_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _PF_Container_H_ */ -#include diff --git a/e2sm/headers/PF-ContainerListItem.h b/e2sm/headers/PF-ContainerListItem.h deleted file mode 100644 index 9d12f97..0000000 --- a/e2sm/headers/PF-ContainerListItem.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _PF_ContainerListItem_H_ -#define _PF_ContainerListItem_H_ - - -#include - -/* Including external dependencies */ -#include "NI-Type.h" -#include "CUUPMeasurement-Container.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* PF-ContainerListItem */ -typedef struct PF_ContainerListItem { - NI_Type_t interface_type; - CUUPMeasurement_Container_t o_CU_UP_PM_Container; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PF_ContainerListItem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PF_ContainerListItem; -extern asn_SEQUENCE_specifics_t asn_SPC_PF_ContainerListItem_specs_1; -extern asn_TYPE_member_t asn_MBR_PF_ContainerListItem_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PF_ContainerListItem_H_ */ -#include diff --git a/e2sm/headers/PLMN-Identity.h b/e2sm/headers/PLMN-Identity.h deleted file mode 100644 index c35c11f..0000000 --- a/e2sm/headers/PLMN-Identity.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _PLMN_Identity_H_ -#define _PLMN_Identity_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* PLMN-Identity */ -typedef OCTET_STRING_t PLMN_Identity_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PLMN_Identity_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PLMN_Identity; -asn_struct_free_f PLMN_Identity_free; -asn_struct_print_f PLMN_Identity_print; -asn_constr_check_f PLMN_Identity_constraint; -ber_type_decoder_f PLMN_Identity_decode_ber; -der_type_encoder_f PLMN_Identity_encode_der; -xer_type_decoder_f PLMN_Identity_decode_xer; -xer_type_encoder_f PLMN_Identity_encode_xer; -oer_type_decoder_f PLMN_Identity_decode_oer; -oer_type_encoder_f PLMN_Identity_encode_oer; -per_type_decoder_f PLMN_Identity_decode_uper; -per_type_encoder_f PLMN_Identity_encode_uper; -per_type_decoder_f PLMN_Identity_decode_aper; -per_type_encoder_f PLMN_Identity_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PLMN_Identity_H_ */ -#include diff --git a/e2sm/headers/PLMNIdentity.h b/e2sm/headers/PLMNIdentity.h new file mode 100755 index 0000000..93c6631 --- /dev/null +++ b/e2sm/headers/PLMNIdentity.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _PLMNIdentity_H_ +#define _PLMNIdentity_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* PLMNIdentity */ +typedef OCTET_STRING_t PLMNIdentity_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_PLMNIdentity_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_PLMNIdentity; +asn_struct_free_f PLMNIdentity_free; +asn_struct_print_f PLMNIdentity_print; +asn_constr_check_f PLMNIdentity_constraint; +ber_type_decoder_f PLMNIdentity_decode_ber; +der_type_encoder_f PLMNIdentity_encode_der; +xer_type_decoder_f PLMNIdentity_decode_xer; +xer_type_encoder_f PLMNIdentity_encode_xer; +oer_type_decoder_f PLMNIdentity_decode_oer; +oer_type_encoder_f PLMNIdentity_encode_oer; +per_type_decoder_f PLMNIdentity_decode_uper; +per_type_encoder_f PLMNIdentity_encode_uper; +per_type_decoder_f PLMNIdentity_decode_aper; +per_type_encoder_f PLMNIdentity_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _PLMNIdentity_H_ */ +#include diff --git a/e2sm/headers/PM-Containers-Item.h b/e2sm/headers/PM-Containers-Item.h deleted file mode 100644 index 2525e83..0000000 --- a/e2sm/headers/PM-Containers-Item.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _PM_Containers_Item_H_ -#define _PM_Containers_Item_H_ - - -#include - -/* Including external dependencies */ -#include "RAN-Container.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PF_Container; - -/* PM-Containers-Item */ -typedef struct PM_Containers_Item { - struct PF_Container *performanceContainer; /* OPTIONAL */ - RAN_Container_t *theRANContainer; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PM_Containers_Item_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PM_Containers_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_PM_Containers_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_PM_Containers_Item_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PM_Containers_Item_H_ */ -#include diff --git a/e2sm/headers/PerQCIReportListItemFormat.h b/e2sm/headers/PerQCIReportListItemFormat.h deleted file mode 100644 index 46b588e..0000000 --- a/e2sm/headers/PerQCIReportListItemFormat.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _PerQCIReportListItemFormat_H_ -#define _PerQCIReportListItemFormat_H_ - - -#include - -/* Including external dependencies */ -#include "QCI.h" -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* PerQCIReportListItemFormat */ -typedef struct PerQCIReportListItemFormat { - QCI_t drbqci; - INTEGER_t *pDCPBytesDL; /* OPTIONAL */ - INTEGER_t *pDCPBytesUL; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PerQCIReportListItemFormat_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PerQCIReportListItemFormat; -extern asn_SEQUENCE_specifics_t asn_SPC_PerQCIReportListItemFormat_specs_1; -extern asn_TYPE_member_t asn_MBR_PerQCIReportListItemFormat_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PerQCIReportListItemFormat_H_ */ -#include diff --git a/e2sm/headers/PerUE-PM-Item.h b/e2sm/headers/PerUE-PM-Item.h deleted file mode 100644 index b2b2c4f..0000000 --- a/e2sm/headers/PerUE-PM-Item.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _PerUE_PM_Item_H_ -#define _PerUE_PM_Item_H_ - - -#include - -/* Including external dependencies */ -#include "UE-Identity.h" -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct PM_Info_Item; - -/* PerUE-PM-Item */ -typedef struct PerUE_PM_Item { - UE_Identity_t ueId; - struct PerUE_PM_Item__list_of_PM_Information { - A_SEQUENCE_OF(struct PM_Info_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *list_of_PM_Information; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PerUE_PM_Item_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PerUE_PM_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_PerUE_PM_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_PerUE_PM_Item_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PerUE_PM_Item_H_ */ -#include diff --git a/e2sm/headers/PhysCellId.h b/e2sm/headers/PhysCellId.h deleted file mode 100644 index c5de886..0000000 --- a/e2sm/headers/PhysCellId.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _PhysCellId_H_ -#define _PhysCellId_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* PhysCellId */ -typedef long PhysCellId_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_PhysCellId_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_PhysCellId; -asn_struct_free_f PhysCellId_free; -asn_struct_print_f PhysCellId_print; -asn_constr_check_f PhysCellId_constraint; -ber_type_decoder_f PhysCellId_decode_ber; -der_type_encoder_f PhysCellId_encode_der; -xer_type_decoder_f PhysCellId_decode_xer; -xer_type_encoder_f PhysCellId_encode_xer; -oer_type_decoder_f PhysCellId_decode_oer; -oer_type_encoder_f PhysCellId_encode_oer; -per_type_decoder_f PhysCellId_decode_uper; -per_type_encoder_f PhysCellId_encode_uper; -per_type_decoder_f PhysCellId_decode_aper; -per_type_encoder_f PhysCellId_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _PhysCellId_H_ */ -#include diff --git a/e2sm/headers/PlmnID-Item.h b/e2sm/headers/PlmnID-Item.h deleted file mode 100644 index 803068c..0000000 --- a/e2sm/headers/PlmnID-Item.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _PlmnID_Item_H_ -#define _PlmnID_Item_H_ - - -#include - -/* Including external dependencies */ -#include "PLMN-Identity.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FGC_CUUP_PM_Format; -struct EPC_CUUP_PM_Format; - -/* PlmnID-Item */ -typedef struct PlmnID_Item { - PLMN_Identity_t pLMN_Identity; - struct FGC_CUUP_PM_Format *cu_UP_PM_5GC; /* OPTIONAL */ - struct EPC_CUUP_PM_Format *cu_UP_PM_EPC; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} PlmnID_Item_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PlmnID_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_PlmnID_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_PlmnID_Item_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _PlmnID_Item_H_ */ -#include diff --git a/e2sm/headers/PolicyAction-RANParameter-Item.h b/e2sm/headers/PolicyAction-RANParameter-Item.h new file mode 100755 index 0000000..3b39c3f --- /dev/null +++ b/e2sm/headers/PolicyAction-RANParameter-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _PolicyAction_RANParameter_Item_H_ +#define _PolicyAction_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* PolicyAction-RANParameter-Item */ +typedef struct PolicyAction_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + /* + * This type is extensible, + * possible extensions are below. + */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PolicyAction_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PolicyAction_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_PolicyAction_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_PolicyAction_RANParameter_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PolicyAction_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/PolicyCondition-RANParameter-Item.h b/e2sm/headers/PolicyCondition-RANParameter-Item.h new file mode 100755 index 0000000..ccc4803 --- /dev/null +++ b/e2sm/headers/PolicyCondition-RANParameter-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _PolicyCondition_RANParameter_Item_H_ +#define _PolicyCondition_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* PolicyCondition-RANParameter-Item */ +typedef struct PolicyCondition_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + /* + * This type is extensible, + * possible extensions are below. + */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} PolicyCondition_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_PolicyCondition_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_PolicyCondition_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_PolicyCondition_RANParameter_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _PolicyCondition_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/Presence.h b/e2sm/headers/Presence.h deleted file mode 100644 index 40bf8ff..0000000 --- a/e2sm/headers/Presence.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _Presence_H_ -#define _Presence_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum Presence { - Presence_optional = 0, - Presence_conditional = 1, - Presence_mandatory = 2 -} e_Presence; - -/* Presence */ -typedef long Presence_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Presence; -asn_struct_free_f Presence_free; -asn_struct_print_f Presence_print; -asn_constr_check_f Presence_constraint; -ber_type_decoder_f Presence_decode_ber; -der_type_encoder_f Presence_encode_der; -xer_type_decoder_f Presence_decode_xer; -xer_type_encoder_f Presence_encode_xer; -oer_type_decoder_f Presence_decode_oer; -oer_type_encoder_f Presence_encode_oer; -per_type_decoder_f Presence_decode_uper; -per_type_encoder_f Presence_encode_uper; -per_type_decoder_f Presence_decode_aper; -per_type_encoder_f Presence_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _Presence_H_ */ -#include diff --git a/e2sm/headers/PrintableString.h b/e2sm/headers/PrintableString.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/ProcedureCode.h b/e2sm/headers/ProcedureCode.h deleted file mode 100644 index 61daec2..0000000 --- a/e2sm/headers/ProcedureCode.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ProcedureCode_H_ -#define _ProcedureCode_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* ProcedureCode */ -typedef long ProcedureCode_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ProcedureCode; -asn_struct_free_f ProcedureCode_free; -asn_struct_print_f ProcedureCode_print; -asn_constr_check_f ProcedureCode_constraint; -ber_type_decoder_f ProcedureCode_decode_ber; -der_type_encoder_f ProcedureCode_encode_der; -xer_type_decoder_f ProcedureCode_decode_xer; -xer_type_encoder_f ProcedureCode_encode_xer; -oer_type_decoder_f ProcedureCode_decode_oer; -oer_type_encoder_f ProcedureCode_encode_oer; -per_type_decoder_f ProcedureCode_decode_uper; -per_type_encoder_f ProcedureCode_encode_uper; -per_type_decoder_f ProcedureCode_decode_aper; -per_type_encoder_f ProcedureCode_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ProcedureCode_H_ */ -#include diff --git a/e2sm/headers/ProtocolIE-ID.h b/e2sm/headers/ProtocolIE-ID.h deleted file mode 100644 index c306f09..0000000 --- a/e2sm/headers/ProtocolIE-ID.h +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ProtocolIE_ID_H_ -#define _ProtocolIE_ID_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* ProtocolIE-ID */ -typedef long ProtocolIE_ID_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ProtocolIE_ID_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_ID; -asn_struct_free_f ProtocolIE_ID_free; -asn_struct_print_f ProtocolIE_ID_print; -asn_constr_check_f ProtocolIE_ID_constraint; -ber_type_decoder_f ProtocolIE_ID_decode_ber; -der_type_encoder_f ProtocolIE_ID_encode_der; -xer_type_decoder_f ProtocolIE_ID_decode_xer; -xer_type_encoder_f ProtocolIE_ID_encode_xer; -oer_type_decoder_f ProtocolIE_ID_decode_oer; -oer_type_encoder_f ProtocolIE_ID_encode_oer; -per_type_decoder_f ProtocolIE_ID_decode_uper; -per_type_encoder_f ProtocolIE_ID_encode_uper; -per_type_decoder_f ProtocolIE_ID_decode_aper; -per_type_encoder_f ProtocolIE_ID_encode_aper; -#define ProtocolIE_ID_id_Cause ((ProtocolIE_ID_t)1) -#define ProtocolIE_ID_id_CriticalityDiagnostics ((ProtocolIE_ID_t)2) -#define ProtocolIE_ID_id_GlobalE2node_ID ((ProtocolIE_ID_t)3) -#define ProtocolIE_ID_id_GlobalRIC_ID ((ProtocolIE_ID_t)4) -#define ProtocolIE_ID_id_RANfunctionID ((ProtocolIE_ID_t)5) -#define ProtocolIE_ID_id_RANfunctionID_Item ((ProtocolIE_ID_t)6) -#define ProtocolIE_ID_id_RANfunctionIEcause_Item ((ProtocolIE_ID_t)7) -#define ProtocolIE_ID_id_RANfunction_Item ((ProtocolIE_ID_t)8) -#define ProtocolIE_ID_id_RANfunctionsAccepted ((ProtocolIE_ID_t)9) -#define ProtocolIE_ID_id_RANfunctionsAdded ((ProtocolIE_ID_t)10) -#define ProtocolIE_ID_id_RANfunctionsDeleted ((ProtocolIE_ID_t)11) -#define ProtocolIE_ID_id_RANfunctionsModified ((ProtocolIE_ID_t)12) -#define ProtocolIE_ID_id_RANfunctionsRejected ((ProtocolIE_ID_t)13) -#define ProtocolIE_ID_id_RICaction_Admitted_Item ((ProtocolIE_ID_t)14) -#define ProtocolIE_ID_id_RICactionID ((ProtocolIE_ID_t)15) -#define ProtocolIE_ID_id_RICaction_NotAdmitted_Item ((ProtocolIE_ID_t)16) -#define ProtocolIE_ID_id_RICactions_Admitted ((ProtocolIE_ID_t)17) -#define ProtocolIE_ID_id_RICactions_NotAdmitted ((ProtocolIE_ID_t)18) -#define ProtocolIE_ID_id_RICaction_ToBeSetup_Item ((ProtocolIE_ID_t)19) -#define ProtocolIE_ID_id_RICcallProcessID ((ProtocolIE_ID_t)20) -#define ProtocolIE_ID_id_RICcontrolAckRequest ((ProtocolIE_ID_t)21) -#define ProtocolIE_ID_id_RICcontrolHeader ((ProtocolIE_ID_t)22) -#define ProtocolIE_ID_id_RICcontrolMessage ((ProtocolIE_ID_t)23) -#define ProtocolIE_ID_id_RICcontrolStatus ((ProtocolIE_ID_t)24) -#define ProtocolIE_ID_id_RICindicationHeader ((ProtocolIE_ID_t)25) -#define ProtocolIE_ID_id_RICindicationMessage ((ProtocolIE_ID_t)26) -#define ProtocolIE_ID_id_RICindicationSN ((ProtocolIE_ID_t)27) -#define ProtocolIE_ID_id_RICindicationType ((ProtocolIE_ID_t)28) -#define ProtocolIE_ID_id_RICrequestID ((ProtocolIE_ID_t)29) -#define ProtocolIE_ID_id_RICsubscriptionDetails ((ProtocolIE_ID_t)30) -#define ProtocolIE_ID_id_TimeToWait ((ProtocolIE_ID_t)31) -#define ProtocolIE_ID_id_RICcontrolOutcome ((ProtocolIE_ID_t)32) -#define ProtocolIE_ID_id_E2nodeComponentConfigUpdate ((ProtocolIE_ID_t)33) -#define ProtocolIE_ID_id_E2nodeComponentConfigUpdate_Item ((ProtocolIE_ID_t)34) -#define ProtocolIE_ID_id_E2nodeComponentConfigUpdateAck ((ProtocolIE_ID_t)35) -#define ProtocolIE_ID_id_E2nodeComponentConfigUpdateAck_Item ((ProtocolIE_ID_t)36) -#define ProtocolIE_ID_id_E2connectionSetup ((ProtocolIE_ID_t)39) -#define ProtocolIE_ID_id_E2connectionSetupFailed ((ProtocolIE_ID_t)40) -#define ProtocolIE_ID_id_E2connectionSetupFailed_Item ((ProtocolIE_ID_t)41) -#define ProtocolIE_ID_id_E2connectionFailed_Item ((ProtocolIE_ID_t)42) -#define ProtocolIE_ID_id_E2connectionUpdate_Item ((ProtocolIE_ID_t)43) -#define ProtocolIE_ID_id_E2connectionUpdateAdd ((ProtocolIE_ID_t)44) -#define ProtocolIE_ID_id_E2connectionUpdateModify ((ProtocolIE_ID_t)45) -#define ProtocolIE_ID_id_E2connectionUpdateRemove ((ProtocolIE_ID_t)46) -#define ProtocolIE_ID_id_E2connectionUpdateRemove_Item ((ProtocolIE_ID_t)47) -#define ProtocolIE_ID_id_TNLinformation ((ProtocolIE_ID_t)48) - -#ifdef __cplusplus -} -#endif - -#endif /* _ProtocolIE_ID_H_ */ -#include diff --git a/e2sm/headers/QCI.h b/e2sm/headers/QCI.h old mode 100644 new mode 100755 index 41fd4c0..5a6efc2 --- a/e2sm/headers/QCI.h +++ b/e2sm/headers/QCI.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/QoSID.h b/e2sm/headers/QoSID.h new file mode 100755 index 0000000..3165105 --- /dev/null +++ b/e2sm/headers/QoSID.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _QoSID_H_ +#define _QoSID_H_ + + +#include + +/* Including external dependencies */ +#include "FiveQI.h" +#include "QCI.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum QoSID_PR { + QoSID_PR_NOTHING, /* No components present */ + QoSID_PR_fiveGC, + QoSID_PR_ePC + /* Extensions may appear below */ + +} QoSID_PR; + +/* QoSID */ +typedef struct QoSID { + QoSID_PR present; + union QoSID_u { + FiveQI_t fiveGC; + QCI_t ePC; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} QoSID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_QoSID; + +#ifdef __cplusplus +} +#endif + +#endif /* _QoSID_H_ */ +#include diff --git a/e2sm/headers/QosFlowIdentifier.h b/e2sm/headers/QosFlowIdentifier.h new file mode 100755 index 0000000..86ef499 --- /dev/null +++ b/e2sm/headers/QosFlowIdentifier.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _QosFlowIdentifier_H_ +#define _QosFlowIdentifier_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* QosFlowIdentifier */ +typedef long QosFlowIdentifier_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_QosFlowIdentifier; +asn_struct_free_f QosFlowIdentifier_free; +asn_struct_print_f QosFlowIdentifier_print; +asn_constr_check_f QosFlowIdentifier_constraint; +ber_type_decoder_f QosFlowIdentifier_decode_ber; +der_type_encoder_f QosFlowIdentifier_encode_der; +xer_type_decoder_f QosFlowIdentifier_decode_xer; +xer_type_encoder_f QosFlowIdentifier_encode_xer; +oer_type_decoder_f QosFlowIdentifier_decode_oer; +oer_type_encoder_f QosFlowIdentifier_encode_oer; +per_type_decoder_f QosFlowIdentifier_decode_uper; +per_type_encoder_f QosFlowIdentifier_encode_uper; +per_type_decoder_f QosFlowIdentifier_decode_aper; +per_type_encoder_f QosFlowIdentifier_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _QosFlowIdentifier_H_ */ +#include diff --git a/e2sm/headers/RAN-CallProcess-ID.h b/e2sm/headers/RAN-CallProcess-ID.h new file mode 100755 index 0000000..fd51354 --- /dev/null +++ b/e2sm/headers/RAN-CallProcess-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RAN_CallProcess_ID_H_ +#define _RAN_CallProcess_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RAN-CallProcess-ID */ +typedef long RAN_CallProcess_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RAN_CallProcess_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RAN_CallProcess_ID; +asn_struct_free_f RAN_CallProcess_ID_free; +asn_struct_print_f RAN_CallProcess_ID_print; +asn_constr_check_f RAN_CallProcess_ID_constraint; +ber_type_decoder_f RAN_CallProcess_ID_decode_ber; +der_type_encoder_f RAN_CallProcess_ID_encode_der; +xer_type_decoder_f RAN_CallProcess_ID_decode_xer; +xer_type_encoder_f RAN_CallProcess_ID_encode_xer; +oer_type_decoder_f RAN_CallProcess_ID_decode_oer; +oer_type_encoder_f RAN_CallProcess_ID_encode_oer; +per_type_decoder_f RAN_CallProcess_ID_decode_uper; +per_type_encoder_f RAN_CallProcess_ID_encode_uper; +per_type_decoder_f RAN_CallProcess_ID_decode_aper; +per_type_encoder_f RAN_CallProcess_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RAN_CallProcess_ID_H_ */ +#include diff --git a/e2sm/headers/RAN-Container.h b/e2sm/headers/RAN-Container.h deleted file mode 100644 index ad65e6f..0000000 --- a/e2sm/headers/RAN-Container.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RAN_Container_H_ -#define _RAN_Container_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RAN-Container */ -typedef OCTET_STRING_t RAN_Container_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RAN_Container; -asn_struct_free_f RAN_Container_free; -asn_struct_print_f RAN_Container_print; -asn_constr_check_f RAN_Container_constraint; -ber_type_decoder_f RAN_Container_decode_ber; -der_type_encoder_f RAN_Container_encode_der; -xer_type_decoder_f RAN_Container_decode_xer; -xer_type_encoder_f RAN_Container_encode_xer; -oer_type_decoder_f RAN_Container_decode_oer; -oer_type_encoder_f RAN_Container_encode_oer; -per_type_decoder_f RAN_Container_decode_uper; -per_type_encoder_f RAN_Container_encode_uper; -per_type_decoder_f RAN_Container_decode_aper; -per_type_encoder_f RAN_Container_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RAN_Container_H_ */ -#include diff --git a/e2sm/headers/RIC-ControlAction-Item.h b/e2sm/headers/RANFunctionDefinition-Control-Action-Item.h old mode 100644 new mode 100755 similarity index 50% rename from e2sm/headers/RIC-ControlAction-Item.h rename to e2sm/headers/RANFunctionDefinition-Control-Action-Item.h index c064c3a..cbcfe8e --- a/e2sm/headers/RIC-ControlAction-Item.h +++ b/e2sm/headers/RANFunctionDefinition-Control-Action-Item.h @@ -1,12 +1,12 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _RIC_ControlAction_Item_H_ -#define _RIC_ControlAction_Item_H_ +#ifndef _RANFunctionDefinition_Control_Action_Item_H_ +#define _RANFunctionDefinition_Control_Action_Item_H_ #include @@ -23,18 +23,18 @@ extern "C" { #endif /* Forward declarations */ -struct RAN_ControlParameter_Item; +struct ControlAction_RANParameter_Item; -/* RIC-ControlAction-Item */ -typedef struct RIC_ControlAction_Item { +/* RANFunctionDefinition-Control-Action-Item */ +typedef struct RANFunctionDefinition_Control_Action_Item { RIC_ControlAction_ID_t ric_ControlAction_ID; RIC_ControlAction_Name_t ric_ControlAction_Name; - struct RIC_ControlAction_Item__ran_ControlParameters_List { - A_SEQUENCE_OF(struct RAN_ControlParameter_Item) list; + struct RANFunctionDefinition_Control_Action_Item__ran_ControlActionParameters_List { + A_SEQUENCE_OF(struct ControlAction_RANParameter_Item) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; - } *ran_ControlParameters_List; + } *ran_ControlActionParameters_List; /* * This type is extensible, * possible extensions are below. @@ -42,16 +42,16 @@ typedef struct RIC_ControlAction_Item { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} RIC_ControlAction_Item_t; +} RANFunctionDefinition_Control_Action_Item_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RIC_ControlAction_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_RIC_ControlAction_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_RIC_ControlAction_Item_1[3]; +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Control_Action_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Control_Action_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Control_Action_Item_1[3]; #ifdef __cplusplus } #endif -#endif /* _RIC_ControlAction_Item_H_ */ +#endif /* _RANFunctionDefinition_Control_Action_Item_H_ */ #include diff --git a/e2sm/headers/RANFunctionDefinition-Control-Item.h b/e2sm/headers/RANFunctionDefinition-Control-Item.h new file mode 100755 index 0000000..e4033ec --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Control-Item.h @@ -0,0 +1,69 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Control_Item_H_ +#define _RANFunctionDefinition_Control_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-Style-Type.h" +#include "RIC-Style-Name.h" +#include "RIC-Format-Type.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANFunctionDefinition_Control_Action_Item; +struct ControlOutcome_RANParameter_Item; + +/* RANFunctionDefinition-Control-Item */ +typedef struct RANFunctionDefinition_Control_Item { + RIC_Style_Type_t ric_ControlStyle_Type; + RIC_Style_Name_t ric_ControlStyle_Name; + struct RANFunctionDefinition_Control_Item__ric_ControlAction_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_Control_Action_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ric_ControlAction_List; + RIC_Format_Type_t ric_ControlHeaderFormat_Type; + RIC_Format_Type_t ric_ControlMessageFormat_Type; + RIC_Format_Type_t *ric_CallProcessIDFormat_Type; /* OPTIONAL */ + RIC_Format_Type_t ric_ControlOutcomeFormat_Type; + struct RANFunctionDefinition_Control_Item__ran_ControlOutcomeParameters_List { + A_SEQUENCE_OF(struct ControlOutcome_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_ControlOutcomeParameters_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Control_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Control_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Control_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Control_Item_1[8]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Control_Item_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-Control.h b/e2sm/headers/RANFunctionDefinition-Control.h new file mode 100755 index 0000000..d222a50 --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Control.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Control_H_ +#define _RANFunctionDefinition_Control_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANFunctionDefinition_Control_Item; + +/* RANFunctionDefinition-Control */ +typedef struct RANFunctionDefinition_Control { + struct RANFunctionDefinition_Control__ric_ControlStyle_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_Control_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_ControlStyle_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Control_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Control; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Control_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Control_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Control_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-EventTrigger-Breakpoint-Item.h b/e2sm/headers/RANFunctionDefinition-EventTrigger-Breakpoint-Item.h new file mode 100755 index 0000000..e8b263e --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-EventTrigger-Breakpoint-Item.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_EventTrigger_Breakpoint_Item_H_ +#define _RANFunctionDefinition_EventTrigger_Breakpoint_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-CallProcessBreakpoint-ID.h" +#include "RIC-CallProcessBreakpoint-Name.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct CallProcessBreakpoint_RANParameter_Item; + +/* RANFunctionDefinition-EventTrigger-Breakpoint-Item */ +typedef struct RANFunctionDefinition_EventTrigger_Breakpoint_Item { + RIC_CallProcessBreakpoint_ID_t callProcessBreakpoint_ID; + RIC_CallProcessBreakpoint_Name_t callProcessBreakpoint_Name; + struct RANFunctionDefinition_EventTrigger_Breakpoint_Item__ran_CallProcessBreakpointParameters_List { + A_SEQUENCE_OF(struct CallProcessBreakpoint_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_CallProcessBreakpointParameters_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_EventTrigger_Breakpoint_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_EventTrigger_Breakpoint_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_EventTrigger_Breakpoint_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_EventTrigger_Breakpoint_Item_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-EventTrigger-CallProcess-Item.h b/e2sm/headers/RANFunctionDefinition-EventTrigger-CallProcess-Item.h new file mode 100755 index 0000000..c3137de --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-EventTrigger-CallProcess-Item.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_EventTrigger_CallProcess_Item_H_ +#define _RANFunctionDefinition_EventTrigger_CallProcess_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-CallProcessType-ID.h" +#include "RIC-CallProcessType-Name.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANFunctionDefinition_EventTrigger_Breakpoint_Item; + +/* RANFunctionDefinition-EventTrigger-CallProcess-Item */ +typedef struct RANFunctionDefinition_EventTrigger_CallProcess_Item { + RIC_CallProcessType_ID_t callProcessType_ID; + RIC_CallProcessType_Name_t callProcessType_Name; + struct RANFunctionDefinition_EventTrigger_CallProcess_Item__callProcessBreakpoints_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_EventTrigger_Breakpoint_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } callProcessBreakpoints_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_EventTrigger_CallProcess_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_EventTrigger_CallProcess_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_EventTrigger_CallProcess_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_EventTrigger_CallProcess_Item_H_ */ +#include diff --git a/e2sm/headers/RIC-EventTriggerStyle-Item.h b/e2sm/headers/RANFunctionDefinition-EventTrigger-Style-Item.h old mode 100644 new mode 100755 similarity index 53% rename from e2sm/headers/RIC-EventTriggerStyle-Item.h rename to e2sm/headers/RANFunctionDefinition-EventTrigger-Style-Item.h index dbff4fc..3cd426c --- a/e2sm/headers/RIC-EventTriggerStyle-Item.h +++ b/e2sm/headers/RANFunctionDefinition-EventTrigger-Style-Item.h @@ -1,12 +1,12 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _RIC_EventTriggerStyle_Item_H_ -#define _RIC_EventTriggerStyle_Item_H_ +#ifndef _RANFunctionDefinition_EventTrigger_Style_Item_H_ +#define _RANFunctionDefinition_EventTrigger_Style_Item_H_ #include @@ -21,8 +21,8 @@ extern "C" { #endif -/* RIC-EventTriggerStyle-Item */ -typedef struct RIC_EventTriggerStyle_Item { +/* RANFunctionDefinition-EventTrigger-Style-Item */ +typedef struct RANFunctionDefinition_EventTrigger_Style_Item { RIC_Style_Type_t ric_EventTriggerStyle_Type; RIC_Style_Name_t ric_EventTriggerStyle_Name; RIC_Format_Type_t ric_EventTriggerFormat_Type; @@ -33,16 +33,16 @@ typedef struct RIC_EventTriggerStyle_Item { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} RIC_EventTriggerStyle_Item_t; +} RANFunctionDefinition_EventTrigger_Style_Item_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RIC_EventTriggerStyle_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_RIC_EventTriggerStyle_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_RIC_EventTriggerStyle_Item_1[3]; +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_EventTrigger_Style_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_EventTrigger_Style_Item_1[3]; #ifdef __cplusplus } #endif -#endif /* _RIC_EventTriggerStyle_Item_H_ */ +#endif /* _RANFunctionDefinition_EventTrigger_Style_Item_H_ */ #include diff --git a/e2sm/headers/RANFunctionDefinition-EventTrigger.h b/e2sm/headers/RANFunctionDefinition-EventTrigger.h new file mode 100755 index 0000000..c08d4d2 --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-EventTrigger.h @@ -0,0 +1,81 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_EventTrigger_H_ +#define _RANFunctionDefinition_EventTrigger_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANFunctionDefinition_EventTrigger_Style_Item; +struct L2Parameters_RANParameter_Item; +struct RANFunctionDefinition_EventTrigger_CallProcess_Item; +struct UEIdentification_RANParameter_Item; +struct CellIdentification_RANParameter_Item; + +/* RANFunctionDefinition-EventTrigger */ +typedef struct RANFunctionDefinition_EventTrigger { + struct RANFunctionDefinition_EventTrigger__ric_EventTriggerStyle_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_EventTrigger_Style_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_EventTriggerStyle_List; + struct RANFunctionDefinition_EventTrigger__ran_L2Parameters_List { + A_SEQUENCE_OF(struct L2Parameters_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_L2Parameters_List; + struct RANFunctionDefinition_EventTrigger__ran_CallProcessTypes_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_EventTrigger_CallProcess_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_CallProcessTypes_List; + struct RANFunctionDefinition_EventTrigger__ran_UEIdentificationParameters_List { + A_SEQUENCE_OF(struct UEIdentification_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_UEIdentificationParameters_List; + struct RANFunctionDefinition_EventTrigger__ran_CellIdentificationParameters_List { + A_SEQUENCE_OF(struct CellIdentification_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_CellIdentificationParameters_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_EventTrigger_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_EventTrigger; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_EventTrigger_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_EventTrigger_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_EventTrigger_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-Insert-Indication-Item.h b/e2sm/headers/RANFunctionDefinition-Insert-Indication-Item.h new file mode 100755 index 0000000..2d87885 --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Insert-Indication-Item.h @@ -0,0 +1,57 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Insert_Indication_Item_H_ +#define _RANFunctionDefinition_Insert_Indication_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-InsertIndication-ID.h" +#include "RIC-InsertIndication-Name.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct InsertIndication_RANParameter_Item; + +/* RANFunctionDefinition-Insert-Indication-Item */ +typedef struct RANFunctionDefinition_Insert_Indication_Item { + RIC_InsertIndication_ID_t ric_InsertIndication_ID; + RIC_InsertIndication_Name_t ric_InsertIndication_Name; + struct RANFunctionDefinition_Insert_Indication_Item__ran_InsertIndicationParameters_List { + A_SEQUENCE_OF(struct InsertIndication_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_InsertIndicationParameters_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Insert_Indication_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Insert_Indication_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Insert_Indication_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Insert_Indication_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Insert_Indication_Item_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-Insert-Item.h b/e2sm/headers/RANFunctionDefinition-Insert-Item.h new file mode 100755 index 0000000..dfe347f --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Insert-Item.h @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Insert_Item_H_ +#define _RANFunctionDefinition_Insert_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-Style-Type.h" +#include "RIC-Style-Name.h" +#include "RIC-Format-Type.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANFunctionDefinition_Insert_Indication_Item; + +/* RANFunctionDefinition-Insert-Item */ +typedef struct RANFunctionDefinition_Insert_Item { + RIC_Style_Type_t ric_InsertStyle_Type; + RIC_Style_Name_t ric_InsertStyle_Name; + RIC_Style_Type_t ric_SupportedEventTriggerStyle_Type; + RIC_Format_Type_t ric_ActionDefinitionFormat_Type; + struct RANFunctionDefinition_Insert_Item__ric_InsertIndication_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_Insert_Indication_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ric_InsertIndication_List; + RIC_Format_Type_t ric_IndicationHeaderFormat_Type; + RIC_Format_Type_t ric_IndicationMessageFormat_Type; + RIC_Format_Type_t ric_CallProcessIDFormat_Type; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Insert_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Insert_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Insert_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Insert_Item_1[8]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Insert_Item_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-Insert.h b/e2sm/headers/RANFunctionDefinition-Insert.h new file mode 100755 index 0000000..9e63c3d --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Insert.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Insert_H_ +#define _RANFunctionDefinition_Insert_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANFunctionDefinition_Insert_Item; + +/* RANFunctionDefinition-Insert */ +typedef struct RANFunctionDefinition_Insert { + struct RANFunctionDefinition_Insert__ric_InsertStyle_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_Insert_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_InsertStyle_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Insert_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Insert; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Insert_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Insert_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Insert_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-Policy-Action-Item.h b/e2sm/headers/RANFunctionDefinition-Policy-Action-Item.h new file mode 100755 index 0000000..4c0ead9 --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Policy-Action-Item.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Policy_Action_Item_H_ +#define _RANFunctionDefinition_Policy_Action_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-ControlAction-ID.h" +#include "RIC-ControlAction-Name.h" +#include "RIC-Format-Type.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct PolicyAction_RANParameter_Item; +struct PolicyCondition_RANParameter_Item; + +/* RANFunctionDefinition-Policy-Action-Item */ +typedef struct RANFunctionDefinition_Policy_Action_Item { + RIC_ControlAction_ID_t ric_PolicyAction_ID; + RIC_ControlAction_Name_t ric_PolicyAction_Name; + RIC_Format_Type_t ric_ActionDefinitionFormat_Type; + struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyActionParameters_List { + A_SEQUENCE_OF(struct PolicyAction_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_PolicyActionParameters_List; + struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyConditionParameters_List { + A_SEQUENCE_OF(struct PolicyCondition_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_PolicyConditionParameters_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Policy_Action_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Policy_Action_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Policy_Action_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Policy_Action_Item_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Policy_Action_Item_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-Policy-Item.h b/e2sm/headers/RANFunctionDefinition-Policy-Item.h new file mode 100755 index 0000000..58752ca --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Policy-Item.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Policy_Item_H_ +#define _RANFunctionDefinition_Policy_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-Style-Type.h" +#include "RIC-Style-Name.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANFunctionDefinition_Policy_Action_Item; + +/* RANFunctionDefinition-Policy-Item */ +typedef struct RANFunctionDefinition_Policy_Item { + RIC_Style_Type_t ric_PolicyStyle_Type; + RIC_Style_Name_t ric_PolicyStyle_Name; + RIC_Style_Type_t ric_SupportedEventTriggerStyle_Type; + struct RANFunctionDefinition_Policy_Item__ric_PolicyAction_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_Policy_Action_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ric_PolicyAction_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Policy_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Policy_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Policy_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Policy_Item_1[4]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Policy_Item_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-Policy.h b/e2sm/headers/RANFunctionDefinition-Policy.h new file mode 100755 index 0000000..11743ba --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Policy.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Policy_H_ +#define _RANFunctionDefinition_Policy_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANFunctionDefinition_Policy_Item; + +/* RANFunctionDefinition-Policy */ +typedef struct RANFunctionDefinition_Policy { + struct RANFunctionDefinition_Policy__ric_PolicyStyle_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_Policy_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_PolicyStyle_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Policy_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Policy; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Policy_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Policy_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Policy_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-Report-Item.h b/e2sm/headers/RANFunctionDefinition-Report-Item.h new file mode 100755 index 0000000..c951556 --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Report-Item.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Report_Item_H_ +#define _RANFunctionDefinition_Report_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RIC-Style-Type.h" +#include "RIC-Style-Name.h" +#include "RIC-Format-Type.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct Report_RANParameter_Item; + +/* RANFunctionDefinition-Report-Item */ +typedef struct RANFunctionDefinition_Report_Item { + RIC_Style_Type_t ric_ReportStyle_Type; + RIC_Style_Name_t ric_ReportStyle_Name; + RIC_Style_Type_t ric_SupportedEventTriggerStyle_Type; + RIC_Format_Type_t ric_ReportActionFormat_Type; + RIC_Format_Type_t ric_IndicationHeaderFormat_Type; + RIC_Format_Type_t ric_IndicationMessageFormat_Type; + struct RANFunctionDefinition_Report_Item__ran_ReportParameters_List { + A_SEQUENCE_OF(struct Report_RANParameter_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } *ran_ReportParameters_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Report_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Report_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Report_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Report_Item_1[7]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Report_Item_H_ */ +#include diff --git a/e2sm/headers/RANFunctionDefinition-Report.h b/e2sm/headers/RANFunctionDefinition-Report.h new file mode 100755 index 0000000..1b9d203 --- /dev/null +++ b/e2sm/headers/RANFunctionDefinition-Report.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANFunctionDefinition_Report_H_ +#define _RANFunctionDefinition_Report_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANFunctionDefinition_Report_Item; + +/* RANFunctionDefinition-Report */ +typedef struct RANFunctionDefinition_Report { + struct RANFunctionDefinition_Report__ric_ReportStyle_List { + A_SEQUENCE_OF(struct RANFunctionDefinition_Report_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ric_ReportStyle_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANFunctionDefinition_Report_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Report; +extern asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Report_specs_1; +extern asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Report_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANFunctionDefinition_Report_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Definition-Choice-LIST-Item.h b/e2sm/headers/RANParameter-Definition-Choice-LIST-Item.h new file mode 100755 index 0000000..1be0c9a --- /dev/null +++ b/e2sm/headers/RANParameter-Definition-Choice-LIST-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Definition_Choice_LIST_Item_H_ +#define _RANParameter_Definition_Choice_LIST_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* RANParameter-Definition-Choice-LIST-Item */ +typedef struct RANParameter_Definition_Choice_LIST_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Definition_Choice_LIST_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice_LIST_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_Choice_LIST_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_LIST_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Definition_Choice_LIST_Item_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Definition-Choice-LIST.h b/e2sm/headers/RANParameter-Definition-Choice-LIST.h new file mode 100755 index 0000000..c0c035e --- /dev/null +++ b/e2sm/headers/RANParameter-Definition-Choice-LIST.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Definition_Choice_LIST_H_ +#define _RANParameter_Definition_Choice_LIST_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition_Choice_LIST_Item; + +/* RANParameter-Definition-Choice-LIST */ +typedef struct RANParameter_Definition_Choice_LIST { + struct RANParameter_Definition_Choice_LIST__ranParameter_List { + A_SEQUENCE_OF(struct RANParameter_Definition_Choice_LIST_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ranParameter_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Definition_Choice_LIST_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice_LIST; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_Choice_LIST_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_LIST_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Definition_Choice_LIST_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Definition-Choice-STRUCTURE-Item.h b/e2sm/headers/RANParameter-Definition-Choice-STRUCTURE-Item.h new file mode 100755 index 0000000..2cf8f46 --- /dev/null +++ b/e2sm/headers/RANParameter-Definition-Choice-STRUCTURE-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Definition_Choice_STRUCTURE_Item_H_ +#define _RANParameter_Definition_Choice_STRUCTURE_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* RANParameter-Definition-Choice-STRUCTURE-Item */ +typedef struct RANParameter_Definition_Choice_STRUCTURE_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Definition_Choice_STRUCTURE_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_Choice_STRUCTURE_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_STRUCTURE_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Definition_Choice_STRUCTURE_Item_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Definition-Choice-STRUCTURE.h b/e2sm/headers/RANParameter-Definition-Choice-STRUCTURE.h new file mode 100755 index 0000000..6c004fa --- /dev/null +++ b/e2sm/headers/RANParameter-Definition-Choice-STRUCTURE.h @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Definition_Choice_STRUCTURE_H_ +#define _RANParameter_Definition_Choice_STRUCTURE_H_ + + +#include + +/* Including external dependencies */ +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition_Choice_STRUCTURE_Item; + +/* RANParameter-Definition-Choice-STRUCTURE */ +typedef struct RANParameter_Definition_Choice_STRUCTURE { + struct RANParameter_Definition_Choice_STRUCTURE__ranParameter_STRUCTURE { + A_SEQUENCE_OF(struct RANParameter_Definition_Choice_STRUCTURE_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ranParameter_STRUCTURE; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Definition_Choice_STRUCTURE_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice_STRUCTURE; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_Choice_STRUCTURE_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_STRUCTURE_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Definition_Choice_STRUCTURE_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Definition-Choice.h b/e2sm/headers/RANParameter-Definition-Choice.h new file mode 100755 index 0000000..f60f05e --- /dev/null +++ b/e2sm/headers/RANParameter-Definition-Choice.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Definition_Choice_H_ +#define _RANParameter_Definition_Choice_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RANParameter_Definition_Choice_PR { + RANParameter_Definition_Choice_PR_NOTHING, /* No components present */ + RANParameter_Definition_Choice_PR_choiceLIST, + RANParameter_Definition_Choice_PR_choiceSTRUCTURE + /* Extensions may appear below */ + +} RANParameter_Definition_Choice_PR; + +/* Forward declarations */ +struct RANParameter_Definition_Choice_LIST; +struct RANParameter_Definition_Choice_STRUCTURE; + +/* RANParameter-Definition-Choice */ +typedef struct RANParameter_Definition_Choice { + RANParameter_Definition_Choice_PR present; + union RANParameter_Definition_Choice_u { + struct RANParameter_Definition_Choice_LIST *choiceLIST; + struct RANParameter_Definition_Choice_STRUCTURE *choiceSTRUCTURE; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Definition_Choice_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice; +extern asn_CHOICE_specifics_t asn_SPC_RANParameter_Definition_Choice_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_1[2]; +extern asn_per_constraints_t asn_PER_type_RANParameter_Definition_Choice_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Definition_Choice_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Definition.h b/e2sm/headers/RANParameter-Definition.h new file mode 100755 index 0000000..71b63cd --- /dev/null +++ b/e2sm/headers/RANParameter-Definition.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Definition_H_ +#define _RANParameter_Definition_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition_Choice; + +/* RANParameter-Definition */ +typedef struct RANParameter_Definition { + struct RANParameter_Definition_Choice *ranParameter_Definition_Choice; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Definition_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Definition_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Definition_H_ */ +#include diff --git a/e2sm/headers/RANParameter-ELEMENT.h b/e2sm/headers/RANParameter-ELEMENT.h deleted file mode 100644 index 200e3ed..0000000 --- a/e2sm/headers/RANParameter-ELEMENT.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RANParameter_ELEMENT_H_ -#define _RANParameter_ELEMENT_H_ - - -#include - -/* Including external dependencies */ -#include -#include "RANParameter-Value.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RANParameter-ELEMENT */ -typedef struct RANParameter_ELEMENT { - BOOLEAN_t keyFlag; - RANParameter_Value_t ranParameter_Value; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RANParameter_ELEMENT_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RANParameter_ELEMENT; -extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ELEMENT_specs_1; -extern asn_TYPE_member_t asn_MBR_RANParameter_ELEMENT_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RANParameter_ELEMENT_H_ */ -#include diff --git a/e2sm/headers/RANParameter-ID.h b/e2sm/headers/RANParameter-ID.h old mode 100644 new mode 100755 index 74f3479..4135c39 --- a/e2sm/headers/RANParameter-ID.h +++ b/e2sm/headers/RANParameter-ID.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -19,12 +19,11 @@ extern "C" { #endif /* RANParameter-ID */ -typedef unsigned long RANParameter_ID_t; +typedef long RANParameter_ID_t; /* Implementation */ extern asn_per_constraints_t asn_PER_type_RANParameter_ID_constr_1; extern asn_TYPE_descriptor_t asn_DEF_RANParameter_ID; -extern const asn_INTEGER_specifics_t asn_SPC_RANParameter_ID_specs_1; asn_struct_free_f RANParameter_ID_free; asn_struct_print_f RANParameter_ID_print; asn_constr_check_f RANParameter_ID_constraint; diff --git a/e2sm/headers/RANParameter-LIST.h b/e2sm/headers/RANParameter-LIST.h old mode 100644 new mode 100755 index 603482c..daba313 --- a/e2sm/headers/RANParameter-LIST.h +++ b/e2sm/headers/RANParameter-LIST.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -25,12 +25,12 @@ struct RANParameter_STRUCTURE; /* RANParameter-LIST */ typedef struct RANParameter_LIST { - struct RANParameter_LIST__list_of_ranParameter_Structures { + struct RANParameter_LIST__list_of_ranParameter { A_SEQUENCE_OF(struct RANParameter_STRUCTURE) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; - } list_of_ranParameter_Structures; + } list_of_ranParameter; /* * This type is extensible, * possible extensions are below. diff --git a/e2sm/headers/RANParameter-Name.h b/e2sm/headers/RANParameter-Name.h old mode 100644 new mode 100755 index 5f1b997..6efd1a5 --- a/e2sm/headers/RANParameter-Name.h +++ b/e2sm/headers/RANParameter-Name.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/RANParameter-Item.h b/e2sm/headers/RANParameter-STRUCTURE-Item.h old mode 100644 new mode 100755 similarity index 51% rename from e2sm/headers/RANParameter-Item.h rename to e2sm/headers/RANParameter-STRUCTURE-Item.h index 922c61a..6a702d7 --- a/e2sm/headers/RANParameter-Item.h +++ b/e2sm/headers/RANParameter-STRUCTURE-Item.h @@ -1,12 +1,12 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _RANParameter_Item_H_ -#define _RANParameter_Item_H_ +#ifndef _RANParameter_STRUCTURE_Item_H_ +#define _RANParameter_STRUCTURE_Item_H_ #include @@ -22,10 +22,10 @@ extern "C" { /* Forward declarations */ struct RANParameter_ValueType; -/* RANParameter-Item */ -typedef struct RANParameter_Item { - RANParameter_ID_t ranParameterItem_ID; - struct RANParameter_ValueType *ranParameterItem_valueType; +/* RANParameter-STRUCTURE-Item */ +typedef struct RANParameter_STRUCTURE_Item { + RANParameter_ID_t ranParameter_ID; + struct RANParameter_ValueType *ranParameter_valueType; /* * This type is extensible, * possible extensions are below. @@ -33,16 +33,16 @@ typedef struct RANParameter_Item { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} RANParameter_Item_t; +} RANParameter_STRUCTURE_Item_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_RANParameter_Item_1[2]; +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_STRUCTURE_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_STRUCTURE_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_STRUCTURE_Item_1[2]; #ifdef __cplusplus } #endif -#endif /* _RANParameter_Item_H_ */ +#endif /* _RANParameter_STRUCTURE_Item_H_ */ #include diff --git a/e2sm/headers/RANParameter-STRUCTURE.h b/e2sm/headers/RANParameter-STRUCTURE.h old mode 100644 new mode 100755 index 7904936..0b1c4d4 --- a/e2sm/headers/RANParameter-STRUCTURE.h +++ b/e2sm/headers/RANParameter-STRUCTURE.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -21,16 +21,16 @@ extern "C" { #endif /* Forward declarations */ -struct RANParameter_Item; +struct RANParameter_STRUCTURE_Item; /* RANParameter-STRUCTURE */ typedef struct RANParameter_STRUCTURE { struct RANParameter_STRUCTURE__sequence_of_ranParameters { - A_SEQUENCE_OF(struct RANParameter_Item) list; + A_SEQUENCE_OF(struct RANParameter_STRUCTURE_Item) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; - } sequence_of_ranParameters; + } *sequence_of_ranParameters; /* * This type is extensible, * possible extensions are below. diff --git a/e2sm/headers/RANParameter-Testing-Item-Choice-ElementFalse.h b/e2sm/headers/RANParameter-Testing-Item-Choice-ElementFalse.h new file mode 100755 index 0000000..cc87683 --- /dev/null +++ b/e2sm/headers/RANParameter-Testing-Item-Choice-ElementFalse.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Testing_Item_Choice_ElementFalse_H_ +#define _RANParameter_Testing_Item_Choice_ElementFalse_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-TestingCondition.h" +#include "LogicalOR.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Value; + +/* RANParameter-Testing-Item-Choice-ElementFalse */ +typedef struct RANParameter_Testing_Item_Choice_ElementFalse { + RANParameter_TestingCondition_t ranParameter_TestCondition; + struct RANParameter_Value *ranParameter_Value; /* OPTIONAL */ + LogicalOR_t *logicalOR; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Testing_Item_Choice_ElementFalse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_Choice_ElementFalse_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_Choice_ElementFalse_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Testing_Item_Choice_ElementFalse_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Testing-Item-Choice-ElementTrue.h b/e2sm/headers/RANParameter-Testing-Item-Choice-ElementTrue.h new file mode 100755 index 0000000..85554f6 --- /dev/null +++ b/e2sm/headers/RANParameter-Testing-Item-Choice-ElementTrue.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Testing_Item_Choice_ElementTrue_H_ +#define _RANParameter_Testing_Item_Choice_ElementTrue_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-Value.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RANParameter-Testing-Item-Choice-ElementTrue */ +typedef struct RANParameter_Testing_Item_Choice_ElementTrue { + RANParameter_Value_t ranParameter_value; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Testing_Item_Choice_ElementTrue_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_Choice_ElementTrue_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_Choice_ElementTrue_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Testing_Item_Choice_ElementTrue_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Testing-Item-Choice-List.h b/e2sm/headers/RANParameter-Testing-Item-Choice-List.h new file mode 100755 index 0000000..43de60a --- /dev/null +++ b/e2sm/headers/RANParameter-Testing-Item-Choice-List.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Testing_Item_Choice_List_H_ +#define _RANParameter_Testing_Item_Choice_List_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Testing_LIST; + +/* RANParameter-Testing-Item-Choice-List */ +typedef struct RANParameter_Testing_Item_Choice_List { + struct RANParameter_Testing_LIST *ranParameter_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Testing_Item_Choice_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item_Choice_List; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_Choice_List_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_Choice_List_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Testing_Item_Choice_List_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Testing-Item-Choice-Structure.h b/e2sm/headers/RANParameter-Testing-Item-Choice-Structure.h new file mode 100755 index 0000000..7c9a516 --- /dev/null +++ b/e2sm/headers/RANParameter-Testing-Item-Choice-Structure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Testing_Item_Choice_Structure_H_ +#define _RANParameter_Testing_Item_Choice_Structure_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Testing_STRUCTURE; + +/* RANParameter-Testing-Item-Choice-Structure */ +typedef struct RANParameter_Testing_Item_Choice_Structure { + struct RANParameter_Testing_STRUCTURE *ranParameter_Structure; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Testing_Item_Choice_Structure_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item_Choice_Structure; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_Choice_Structure_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_Choice_Structure_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Testing_Item_Choice_Structure_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Testing-Item.h b/e2sm/headers/RANParameter-Testing-Item.h new file mode 100755 index 0000000..218c8f0 --- /dev/null +++ b/e2sm/headers/RANParameter-Testing-Item.h @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Testing_Item_H_ +#define _RANParameter_Testing_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RANParameter_Testing_Item__ranParameter_Type_PR { + RANParameter_Testing_Item__ranParameter_Type_PR_NOTHING, /* No components present */ + RANParameter_Testing_Item__ranParameter_Type_PR_ranP_Choice_List, + RANParameter_Testing_Item__ranParameter_Type_PR_ranP_Choice_Structure, + RANParameter_Testing_Item__ranParameter_Type_PR_ranP_Choice_ElementTrue, + RANParameter_Testing_Item__ranParameter_Type_PR_ranP_Choice_ElementFalse + /* Extensions may appear below */ + +} RANParameter_Testing_Item__ranParameter_Type_PR; + +/* Forward declarations */ +struct RANParameter_Testing_Item_Choice_List; +struct RANParameter_Testing_Item_Choice_Structure; +struct RANParameter_Testing_Item_Choice_ElementTrue; +struct RANParameter_Testing_Item_Choice_ElementFalse; + +/* RANParameter-Testing-Item */ +typedef struct RANParameter_Testing_Item { + RANParameter_ID_t ranParameter_ID; + struct RANParameter_Testing_Item__ranParameter_Type { + RANParameter_Testing_Item__ranParameter_Type_PR present; + union RANParameter_Testing_Item__ranParameter_Type_u { + struct RANParameter_Testing_Item_Choice_List *ranP_Choice_List; + struct RANParameter_Testing_Item_Choice_Structure *ranP_Choice_Structure; + struct RANParameter_Testing_Item_Choice_ElementTrue *ranP_Choice_ElementTrue; + struct RANParameter_Testing_Item_Choice_ElementFalse *ranP_Choice_ElementFalse; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } ranParameter_Type; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Testing_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Testing_Item_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Testing-LIST.h b/e2sm/headers/RANParameter-Testing-LIST.h new file mode 100755 index 0000000..8c43900 --- /dev/null +++ b/e2sm/headers/RANParameter-Testing-LIST.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Testing_LIST_H_ +#define _RANParameter_Testing_LIST_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Testing_Item; + +/* RANParameter-Testing-LIST */ +typedef struct RANParameter_Testing_LIST { + A_SEQUENCE_OF(struct RANParameter_Testing_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Testing_LIST_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_LIST; +extern asn_SET_OF_specifics_t asn_SPC_RANParameter_Testing_LIST_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Testing_LIST_1[1]; +extern asn_per_constraints_t asn_PER_type_RANParameter_Testing_LIST_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Testing_LIST_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Testing-STRUCTURE.h b/e2sm/headers/RANParameter-Testing-STRUCTURE.h new file mode 100755 index 0000000..e3cd354 --- /dev/null +++ b/e2sm/headers/RANParameter-Testing-STRUCTURE.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Testing_STRUCTURE_H_ +#define _RANParameter_Testing_STRUCTURE_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Testing_Item; + +/* RANParameter-Testing-STRUCTURE */ +typedef struct RANParameter_Testing_STRUCTURE { + A_SEQUENCE_OF(struct RANParameter_Testing_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Testing_STRUCTURE_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_STRUCTURE; +extern asn_SET_OF_specifics_t asn_SPC_RANParameter_Testing_STRUCTURE_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Testing_STRUCTURE_1[1]; +extern asn_per_constraints_t asn_PER_type_RANParameter_Testing_STRUCTURE_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Testing_STRUCTURE_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Testing.h b/e2sm/headers/RANParameter-Testing.h new file mode 100755 index 0000000..4c4bf1a --- /dev/null +++ b/e2sm/headers/RANParameter-Testing.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_Testing_H_ +#define _RANParameter_Testing_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Testing_Item; + +/* RANParameter-Testing */ +typedef struct RANParameter_Testing { + A_SEQUENCE_OF(struct RANParameter_Testing_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_Testing_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing; +extern asn_SET_OF_specifics_t asn_SPC_RANParameter_Testing_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_Testing_1[1]; +extern asn_per_constraints_t asn_PER_type_RANParameter_Testing_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_Testing_H_ */ +#include diff --git a/e2sm/headers/RANParameter-TestingCondition.h b/e2sm/headers/RANParameter-TestingCondition.h new file mode 100755 index 0000000..2ece0f0 --- /dev/null +++ b/e2sm/headers/RANParameter-TestingCondition.h @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_TestingCondition_H_ +#define _RANParameter_TestingCondition_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RANParameter_TestingCondition_PR { + RANParameter_TestingCondition_PR_NOTHING, /* No components present */ + RANParameter_TestingCondition_PR_ranP_Choice_comparison, + RANParameter_TestingCondition_PR_ranP_Choice_presence + /* Extensions may appear below */ + +} RANParameter_TestingCondition_PR; +typedef enum RANParameter_TestingCondition__ranP_Choice_comparison { + RANParameter_TestingCondition__ranP_Choice_comparison_equal = 0, + RANParameter_TestingCondition__ranP_Choice_comparison_difference = 1, + RANParameter_TestingCondition__ranP_Choice_comparison_greaterthan = 2, + RANParameter_TestingCondition__ranP_Choice_comparison_lessthan = 3, + RANParameter_TestingCondition__ranP_Choice_comparison_contains = 4, + RANParameter_TestingCondition__ranP_Choice_comparison_starts_with = 5 + /* + * Enumeration is extensible + */ +} e_RANParameter_TestingCondition__ranP_Choice_comparison; +typedef enum RANParameter_TestingCondition__ranP_Choice_presence { + RANParameter_TestingCondition__ranP_Choice_presence_present = 0, + RANParameter_TestingCondition__ranP_Choice_presence_configured = 1, + RANParameter_TestingCondition__ranP_Choice_presence_rollover = 2, + RANParameter_TestingCondition__ranP_Choice_presence_non_zero = 3 + /* + * Enumeration is extensible + */ +} e_RANParameter_TestingCondition__ranP_Choice_presence; + +/* RANParameter-TestingCondition */ +typedef struct RANParameter_TestingCondition { + RANParameter_TestingCondition_PR present; + union RANParameter_TestingCondition_u { + long ranP_Choice_comparison; + long ranP_Choice_presence; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_TestingCondition_t; + +/* Implementation */ +/* extern asn_TYPE_descriptor_t asn_DEF_ranP_Choice_comparison_2; // (Use -fall-defs-global to expose) */ +/* extern asn_TYPE_descriptor_t asn_DEF_ranP_Choice_presence_10; // (Use -fall-defs-global to expose) */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_TestingCondition; +extern asn_CHOICE_specifics_t asn_SPC_RANParameter_TestingCondition_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_TestingCondition_1[2]; +extern asn_per_constraints_t asn_PER_type_RANParameter_TestingCondition_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_TestingCondition_H_ */ +#include diff --git a/e2sm/headers/RANParameter-Value.h b/e2sm/headers/RANParameter-Value.h old mode 100644 new mode 100755 index 92e3759..2ef91a4 --- a/e2sm/headers/RANParameter-Value.h +++ b/e2sm/headers/RANParameter-Value.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -12,8 +12,12 @@ #include /* Including external dependencies */ +#include #include +#include +#include #include +#include #include #ifdef __cplusplus @@ -23,8 +27,12 @@ extern "C" { /* Dependencies */ typedef enum RANParameter_Value_PR { RANParameter_Value_PR_NOTHING, /* No components present */ + RANParameter_Value_PR_valueBoolean, RANParameter_Value_PR_valueInt, - RANParameter_Value_PR_valueOctS + RANParameter_Value_PR_valueReal, + RANParameter_Value_PR_valueBitS, + RANParameter_Value_PR_valueOctS, + RANParameter_Value_PR_valuePrintableString /* Extensions may appear below */ } RANParameter_Value_PR; @@ -33,8 +41,12 @@ typedef enum RANParameter_Value_PR { typedef struct RANParameter_Value { RANParameter_Value_PR present; union RANParameter_Value_u { + BOOLEAN_t valueBoolean; long valueInt; + double valueReal; + BIT_STRING_t valueBitS; OCTET_STRING_t valueOctS; + PrintableString_t valuePrintableString; /* * This type is extensible, * possible extensions are below. @@ -48,7 +60,7 @@ typedef struct RANParameter_Value { /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_RANParameter_Value; extern asn_CHOICE_specifics_t asn_SPC_RANParameter_Value_specs_1; -extern asn_TYPE_member_t asn_MBR_RANParameter_Value_1[2]; +extern asn_TYPE_member_t asn_MBR_RANParameter_Value_1[6]; extern asn_per_constraints_t asn_PER_type_RANParameter_Value_constr_1; #ifdef __cplusplus diff --git a/e2sm/headers/RANParameter-ValueType-Choice-ElementFalse.h b/e2sm/headers/RANParameter-ValueType-Choice-ElementFalse.h new file mode 100755 index 0000000..d8d925a --- /dev/null +++ b/e2sm/headers/RANParameter-ValueType-Choice-ElementFalse.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_ValueType_Choice_ElementFalse_H_ +#define _RANParameter_ValueType_Choice_ElementFalse_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Value; + +/* RANParameter-ValueType-Choice-ElementFalse */ +typedef struct RANParameter_ValueType_Choice_ElementFalse { + struct RANParameter_Value *ranParameter_value; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_ValueType_Choice_ElementFalse_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType_Choice_ElementFalse; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ValueType_Choice_ElementFalse_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_ValueType_Choice_ElementFalse_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_ValueType_Choice_ElementFalse_H_ */ +#include diff --git a/e2sm/headers/RANParameter-ValueType-Choice-ElementTrue.h b/e2sm/headers/RANParameter-ValueType-Choice-ElementTrue.h new file mode 100755 index 0000000..efd275a --- /dev/null +++ b/e2sm/headers/RANParameter-ValueType-Choice-ElementTrue.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_ValueType_Choice_ElementTrue_H_ +#define _RANParameter_ValueType_Choice_ElementTrue_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-Value.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RANParameter-ValueType-Choice-ElementTrue */ +typedef struct RANParameter_ValueType_Choice_ElementTrue { + RANParameter_Value_t ranParameter_value; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_ValueType_Choice_ElementTrue_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType_Choice_ElementTrue; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ValueType_Choice_ElementTrue_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_ValueType_Choice_ElementTrue_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_ValueType_Choice_ElementTrue_H_ */ +#include diff --git a/e2sm/headers/RANParameter-ValueType-Choice-List.h b/e2sm/headers/RANParameter-ValueType-Choice-List.h new file mode 100755 index 0000000..f06bc9b --- /dev/null +++ b/e2sm/headers/RANParameter-ValueType-Choice-List.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_ValueType_Choice_List_H_ +#define _RANParameter_ValueType_Choice_List_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_LIST; + +/* RANParameter-ValueType-Choice-List */ +typedef struct RANParameter_ValueType_Choice_List { + struct RANParameter_LIST *ranParameter_List; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_ValueType_Choice_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType_Choice_List; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ValueType_Choice_List_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_ValueType_Choice_List_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_ValueType_Choice_List_H_ */ +#include diff --git a/e2sm/headers/RANParameter-ValueType-Choice-Structure.h b/e2sm/headers/RANParameter-ValueType-Choice-Structure.h new file mode 100755 index 0000000..9931c70 --- /dev/null +++ b/e2sm/headers/RANParameter-ValueType-Choice-Structure.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANParameter_ValueType_Choice_Structure_H_ +#define _RANParameter_ValueType_Choice_Structure_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_STRUCTURE; + +/* RANParameter-ValueType-Choice-Structure */ +typedef struct RANParameter_ValueType_Choice_Structure { + struct RANParameter_STRUCTURE *ranParameter_Structure; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RANParameter_ValueType_Choice_Structure_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType_Choice_Structure; +extern asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ValueType_Choice_Structure_specs_1; +extern asn_TYPE_member_t asn_MBR_RANParameter_ValueType_Choice_Structure_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANParameter_ValueType_Choice_Structure_H_ */ +#include diff --git a/e2sm/headers/RANParameter-ValueType.h b/e2sm/headers/RANParameter-ValueType.h old mode 100644 new mode 100755 index 162ad29..09941b1 --- a/e2sm/headers/RANParameter-ValueType.h +++ b/e2sm/headers/RANParameter-ValueType.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -21,25 +21,28 @@ extern "C" { /* Dependencies */ typedef enum RANParameter_ValueType_PR { RANParameter_ValueType_PR_NOTHING, /* No components present */ - RANParameter_ValueType_PR_ranParameter_Element, - RANParameter_ValueType_PR_ranParameter_Structure, - RANParameter_ValueType_PR_ranParameter_List + RANParameter_ValueType_PR_ranP_Choice_ElementTrue, + RANParameter_ValueType_PR_ranP_Choice_ElementFalse, + RANParameter_ValueType_PR_ranP_Choice_Structure, + RANParameter_ValueType_PR_ranP_Choice_List /* Extensions may appear below */ } RANParameter_ValueType_PR; /* Forward declarations */ -struct RANParameter_ELEMENT; -struct RANParameter_STRUCTURE; -struct RANParameter_LIST; +struct RANParameter_ValueType_Choice_ElementTrue; +struct RANParameter_ValueType_Choice_ElementFalse; +struct RANParameter_ValueType_Choice_Structure; +struct RANParameter_ValueType_Choice_List; /* RANParameter-ValueType */ typedef struct RANParameter_ValueType { RANParameter_ValueType_PR present; union RANParameter_ValueType_u { - struct RANParameter_ELEMENT *ranParameter_Element; - struct RANParameter_STRUCTURE *ranParameter_Structure; - struct RANParameter_LIST *ranParameter_List; + struct RANParameter_ValueType_Choice_ElementTrue *ranP_Choice_ElementTrue; + struct RANParameter_ValueType_Choice_ElementFalse *ranP_Choice_ElementFalse; + struct RANParameter_ValueType_Choice_Structure *ranP_Choice_Structure; + struct RANParameter_ValueType_Choice_List *ranP_Choice_List; /* * This type is extensible, * possible extensions are below. @@ -53,7 +56,7 @@ typedef struct RANParameter_ValueType { /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType; extern asn_CHOICE_specifics_t asn_SPC_RANParameter_ValueType_specs_1; -extern asn_TYPE_member_t asn_MBR_RANParameter_ValueType_1[3]; +extern asn_TYPE_member_t asn_MBR_RANParameter_ValueType_1[4]; extern asn_per_constraints_t asn_PER_type_RANParameter_ValueType_constr_1; #ifdef __cplusplus diff --git a/e2sm/headers/RANUEID.h b/e2sm/headers/RANUEID.h new file mode 100755 index 0000000..bfd9fa8 --- /dev/null +++ b/e2sm/headers/RANUEID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RANUEID_H_ +#define _RANUEID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RANUEID */ +typedef OCTET_STRING_t RANUEID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RANUEID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RANUEID; +asn_struct_free_f RANUEID_free; +asn_struct_print_f RANUEID_print; +asn_constr_check_f RANUEID_constraint; +ber_type_decoder_f RANUEID_decode_ber; +der_type_encoder_f RANUEID_encode_der; +xer_type_decoder_f RANUEID_decode_xer; +xer_type_encoder_f RANUEID_encode_xer; +oer_type_decoder_f RANUEID_decode_oer; +oer_type_encoder_f RANUEID_encode_oer; +per_type_decoder_f RANUEID_decode_uper; +per_type_encoder_f RANUEID_encode_uper; +per_type_decoder_f RANUEID_decode_aper; +per_type_encoder_f RANUEID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RANUEID_H_ */ +#include diff --git a/e2sm/headers/RANcallProcess-ID-string.h b/e2sm/headers/RANcallProcess-ID-string.h deleted file mode 100644 index c24a061..0000000 --- a/e2sm/headers/RANcallProcess-ID-string.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RANcallProcess_ID_string_H_ -#define _RANcallProcess_ID_string_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RANcallProcess-ID-string */ -typedef PrintableString_t RANcallProcess_ID_string_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RANcallProcess_ID_string; -asn_struct_free_f RANcallProcess_ID_string_free; -asn_struct_print_f RANcallProcess_ID_string_print; -asn_constr_check_f RANcallProcess_ID_string_constraint; -ber_type_decoder_f RANcallProcess_ID_string_decode_ber; -der_type_encoder_f RANcallProcess_ID_string_encode_der; -xer_type_decoder_f RANcallProcess_ID_string_decode_xer; -xer_type_encoder_f RANcallProcess_ID_string_encode_xer; -oer_type_decoder_f RANcallProcess_ID_string_decode_oer; -oer_type_encoder_f RANcallProcess_ID_string_encode_oer; -per_type_decoder_f RANcallProcess_ID_string_decode_uper; -per_type_encoder_f RANcallProcess_ID_string_encode_uper; -per_type_decoder_f RANcallProcess_ID_string_decode_aper; -per_type_encoder_f RANcallProcess_ID_string_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RANcallProcess_ID_string_H_ */ -#include diff --git a/e2sm/headers/RANfunction-Name.h b/e2sm/headers/RANfunction-Name.h old mode 100644 new mode 100755 index 22f5c95..9262ade --- a/e2sm/headers/RANfunction-Name.h +++ b/e2sm/headers/RANfunction-Name.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/REAL.h b/e2sm/headers/REAL.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/RIC-CallProcessBreakpoint-ID.h b/e2sm/headers/RIC-CallProcessBreakpoint-ID.h new file mode 100755 index 0000000..c228957 --- /dev/null +++ b/e2sm/headers/RIC-CallProcessBreakpoint-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_CallProcessBreakpoint_ID_H_ +#define _RIC_CallProcessBreakpoint_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-CallProcessBreakpoint-ID */ +typedef long RIC_CallProcessBreakpoint_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_CallProcessBreakpoint_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_CallProcessBreakpoint_ID; +asn_struct_free_f RIC_CallProcessBreakpoint_ID_free; +asn_struct_print_f RIC_CallProcessBreakpoint_ID_print; +asn_constr_check_f RIC_CallProcessBreakpoint_ID_constraint; +ber_type_decoder_f RIC_CallProcessBreakpoint_ID_decode_ber; +der_type_encoder_f RIC_CallProcessBreakpoint_ID_encode_der; +xer_type_decoder_f RIC_CallProcessBreakpoint_ID_decode_xer; +xer_type_encoder_f RIC_CallProcessBreakpoint_ID_encode_xer; +oer_type_decoder_f RIC_CallProcessBreakpoint_ID_decode_oer; +oer_type_encoder_f RIC_CallProcessBreakpoint_ID_encode_oer; +per_type_decoder_f RIC_CallProcessBreakpoint_ID_decode_uper; +per_type_encoder_f RIC_CallProcessBreakpoint_ID_encode_uper; +per_type_decoder_f RIC_CallProcessBreakpoint_ID_decode_aper; +per_type_encoder_f RIC_CallProcessBreakpoint_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_CallProcessBreakpoint_ID_H_ */ +#include diff --git a/e2sm/headers/RIC-CallProcessBreakpoint-Name.h b/e2sm/headers/RIC-CallProcessBreakpoint-Name.h new file mode 100755 index 0000000..e25b00d --- /dev/null +++ b/e2sm/headers/RIC-CallProcessBreakpoint-Name.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_CallProcessBreakpoint_Name_H_ +#define _RIC_CallProcessBreakpoint_Name_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-CallProcessBreakpoint-Name */ +typedef PrintableString_t RIC_CallProcessBreakpoint_Name_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_CallProcessBreakpoint_Name_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_CallProcessBreakpoint_Name; +asn_struct_free_f RIC_CallProcessBreakpoint_Name_free; +asn_struct_print_f RIC_CallProcessBreakpoint_Name_print; +asn_constr_check_f RIC_CallProcessBreakpoint_Name_constraint; +ber_type_decoder_f RIC_CallProcessBreakpoint_Name_decode_ber; +der_type_encoder_f RIC_CallProcessBreakpoint_Name_encode_der; +xer_type_decoder_f RIC_CallProcessBreakpoint_Name_decode_xer; +xer_type_encoder_f RIC_CallProcessBreakpoint_Name_encode_xer; +oer_type_decoder_f RIC_CallProcessBreakpoint_Name_decode_oer; +oer_type_encoder_f RIC_CallProcessBreakpoint_Name_encode_oer; +per_type_decoder_f RIC_CallProcessBreakpoint_Name_decode_uper; +per_type_encoder_f RIC_CallProcessBreakpoint_Name_encode_uper; +per_type_decoder_f RIC_CallProcessBreakpoint_Name_decode_aper; +per_type_encoder_f RIC_CallProcessBreakpoint_Name_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_CallProcessBreakpoint_Name_H_ */ +#include diff --git a/e2sm/headers/RIC-CallProcessType-ID.h b/e2sm/headers/RIC-CallProcessType-ID.h new file mode 100755 index 0000000..ec6f05c --- /dev/null +++ b/e2sm/headers/RIC-CallProcessType-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_CallProcessType_ID_H_ +#define _RIC_CallProcessType_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-CallProcessType-ID */ +typedef long RIC_CallProcessType_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_CallProcessType_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_CallProcessType_ID; +asn_struct_free_f RIC_CallProcessType_ID_free; +asn_struct_print_f RIC_CallProcessType_ID_print; +asn_constr_check_f RIC_CallProcessType_ID_constraint; +ber_type_decoder_f RIC_CallProcessType_ID_decode_ber; +der_type_encoder_f RIC_CallProcessType_ID_encode_der; +xer_type_decoder_f RIC_CallProcessType_ID_decode_xer; +xer_type_encoder_f RIC_CallProcessType_ID_encode_xer; +oer_type_decoder_f RIC_CallProcessType_ID_decode_oer; +oer_type_encoder_f RIC_CallProcessType_ID_encode_oer; +per_type_decoder_f RIC_CallProcessType_ID_decode_uper; +per_type_encoder_f RIC_CallProcessType_ID_encode_uper; +per_type_decoder_f RIC_CallProcessType_ID_decode_aper; +per_type_encoder_f RIC_CallProcessType_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_CallProcessType_ID_H_ */ +#include diff --git a/e2sm/headers/RIC-CallProcessType-Name.h b/e2sm/headers/RIC-CallProcessType-Name.h new file mode 100755 index 0000000..787cb02 --- /dev/null +++ b/e2sm/headers/RIC-CallProcessType-Name.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_CallProcessType_Name_H_ +#define _RIC_CallProcessType_Name_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-CallProcessType-Name */ +typedef PrintableString_t RIC_CallProcessType_Name_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_CallProcessType_Name_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_CallProcessType_Name; +asn_struct_free_f RIC_CallProcessType_Name_free; +asn_struct_print_f RIC_CallProcessType_Name_print; +asn_constr_check_f RIC_CallProcessType_Name_constraint; +ber_type_decoder_f RIC_CallProcessType_Name_decode_ber; +der_type_encoder_f RIC_CallProcessType_Name_encode_der; +xer_type_decoder_f RIC_CallProcessType_Name_decode_xer; +xer_type_encoder_f RIC_CallProcessType_Name_encode_xer; +oer_type_decoder_f RIC_CallProcessType_Name_decode_oer; +oer_type_encoder_f RIC_CallProcessType_Name_encode_oer; +per_type_decoder_f RIC_CallProcessType_Name_decode_uper; +per_type_encoder_f RIC_CallProcessType_Name_encode_uper; +per_type_decoder_f RIC_CallProcessType_Name_decode_aper; +per_type_encoder_f RIC_CallProcessType_Name_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_CallProcessType_Name_H_ */ +#include diff --git a/e2sm/headers/RIC-ControlAction-ID.h b/e2sm/headers/RIC-ControlAction-ID.h old mode 100644 new mode 100755 index 78dab02..5c62283 --- a/e2sm/headers/RIC-ControlAction-ID.h +++ b/e2sm/headers/RIC-ControlAction-ID.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/RIC-ControlAction-Name.h b/e2sm/headers/RIC-ControlAction-Name.h old mode 100644 new mode 100755 index 7e2d351..30eb1b5 --- a/e2sm/headers/RIC-ControlAction-Name.h +++ b/e2sm/headers/RIC-ControlAction-Name.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/RIC-ControlStyle-Item.h b/e2sm/headers/RIC-ControlStyle-Item.h deleted file mode 100644 index a24d639..0000000 --- a/e2sm/headers/RIC-ControlStyle-Item.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RIC_ControlStyle_Item_H_ -#define _RIC_ControlStyle_Item_H_ - - -#include - -/* Including external dependencies */ -#include "RIC-Style-Type.h" -#include "RIC-Style-Name.h" -#include "RIC-Format-Type.h" -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct RIC_ControlAction_Item; - -/* RIC-ControlStyle-Item */ -typedef struct RIC_ControlStyle_Item { - RIC_Style_Type_t ric_ControlStyle_Type; - RIC_Style_Name_t ric_ControlStyle_Name; - struct RIC_ControlStyle_Item__ric_ControlAction_List { - A_SEQUENCE_OF(struct RIC_ControlAction_Item) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } *ric_ControlAction_List; - RIC_Format_Type_t ric_ControlHeaderFormat_Type; - RIC_Format_Type_t ric_ControlMessageFormat_Type; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RIC_ControlStyle_Item_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RIC_ControlStyle_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_RIC_ControlStyle_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_RIC_ControlStyle_Item_1[5]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RIC_ControlStyle_Item_H_ */ -#include diff --git a/e2sm/headers/RIC-EventTrigger-Cell-ID.h b/e2sm/headers/RIC-EventTrigger-Cell-ID.h new file mode 100755 index 0000000..9fd9ebe --- /dev/null +++ b/e2sm/headers/RIC-EventTrigger-Cell-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_EventTrigger_Cell_ID_H_ +#define _RIC_EventTrigger_Cell_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-EventTrigger-Cell-ID */ +typedef long RIC_EventTrigger_Cell_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_EventTrigger_Cell_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_EventTrigger_Cell_ID; +asn_struct_free_f RIC_EventTrigger_Cell_ID_free; +asn_struct_print_f RIC_EventTrigger_Cell_ID_print; +asn_constr_check_f RIC_EventTrigger_Cell_ID_constraint; +ber_type_decoder_f RIC_EventTrigger_Cell_ID_decode_ber; +der_type_encoder_f RIC_EventTrigger_Cell_ID_encode_der; +xer_type_decoder_f RIC_EventTrigger_Cell_ID_decode_xer; +xer_type_encoder_f RIC_EventTrigger_Cell_ID_encode_xer; +oer_type_decoder_f RIC_EventTrigger_Cell_ID_decode_oer; +oer_type_encoder_f RIC_EventTrigger_Cell_ID_encode_oer; +per_type_decoder_f RIC_EventTrigger_Cell_ID_decode_uper; +per_type_encoder_f RIC_EventTrigger_Cell_ID_encode_uper; +per_type_decoder_f RIC_EventTrigger_Cell_ID_decode_aper; +per_type_encoder_f RIC_EventTrigger_Cell_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_EventTrigger_Cell_ID_H_ */ +#include diff --git a/e2sm/headers/RIC-EventTrigger-UE-ID.h b/e2sm/headers/RIC-EventTrigger-UE-ID.h new file mode 100755 index 0000000..d5c32f3 --- /dev/null +++ b/e2sm/headers/RIC-EventTrigger-UE-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_EventTrigger_UE_ID_H_ +#define _RIC_EventTrigger_UE_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-EventTrigger-UE-ID */ +typedef long RIC_EventTrigger_UE_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_EventTrigger_UE_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_EventTrigger_UE_ID; +asn_struct_free_f RIC_EventTrigger_UE_ID_free; +asn_struct_print_f RIC_EventTrigger_UE_ID_print; +asn_constr_check_f RIC_EventTrigger_UE_ID_constraint; +ber_type_decoder_f RIC_EventTrigger_UE_ID_decode_ber; +der_type_encoder_f RIC_EventTrigger_UE_ID_encode_der; +xer_type_decoder_f RIC_EventTrigger_UE_ID_decode_xer; +xer_type_encoder_f RIC_EventTrigger_UE_ID_encode_xer; +oer_type_decoder_f RIC_EventTrigger_UE_ID_decode_oer; +oer_type_encoder_f RIC_EventTrigger_UE_ID_encode_oer; +per_type_decoder_f RIC_EventTrigger_UE_ID_decode_uper; +per_type_encoder_f RIC_EventTrigger_UE_ID_encode_uper; +per_type_decoder_f RIC_EventTrigger_UE_ID_decode_aper; +per_type_encoder_f RIC_EventTrigger_UE_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_EventTrigger_UE_ID_H_ */ +#include diff --git a/e2sm/headers/RIC-EventTrigger-UEevent-ID.h b/e2sm/headers/RIC-EventTrigger-UEevent-ID.h new file mode 100755 index 0000000..51c9aa0 --- /dev/null +++ b/e2sm/headers/RIC-EventTrigger-UEevent-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_EventTrigger_UEevent_ID_H_ +#define _RIC_EventTrigger_UEevent_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-EventTrigger-UEevent-ID */ +typedef long RIC_EventTrigger_UEevent_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_EventTrigger_UEevent_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_EventTrigger_UEevent_ID; +asn_struct_free_f RIC_EventTrigger_UEevent_ID_free; +asn_struct_print_f RIC_EventTrigger_UEevent_ID_print; +asn_constr_check_f RIC_EventTrigger_UEevent_ID_constraint; +ber_type_decoder_f RIC_EventTrigger_UEevent_ID_decode_ber; +der_type_encoder_f RIC_EventTrigger_UEevent_ID_encode_der; +xer_type_decoder_f RIC_EventTrigger_UEevent_ID_decode_xer; +xer_type_encoder_f RIC_EventTrigger_UEevent_ID_encode_xer; +oer_type_decoder_f RIC_EventTrigger_UEevent_ID_decode_oer; +oer_type_encoder_f RIC_EventTrigger_UEevent_ID_encode_oer; +per_type_decoder_f RIC_EventTrigger_UEevent_ID_decode_uper; +per_type_encoder_f RIC_EventTrigger_UEevent_ID_encode_uper; +per_type_decoder_f RIC_EventTrigger_UEevent_ID_decode_aper; +per_type_encoder_f RIC_EventTrigger_UEevent_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_EventTrigger_UEevent_ID_H_ */ +#include diff --git a/e2sm/headers/RIC-EventTriggerCondition-ID.h b/e2sm/headers/RIC-EventTriggerCondition-ID.h new file mode 100755 index 0000000..5079e45 --- /dev/null +++ b/e2sm/headers/RIC-EventTriggerCondition-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_EventTriggerCondition_ID_H_ +#define _RIC_EventTriggerCondition_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-EventTriggerCondition-ID */ +typedef long RIC_EventTriggerCondition_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_EventTriggerCondition_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_EventTriggerCondition_ID; +asn_struct_free_f RIC_EventTriggerCondition_ID_free; +asn_struct_print_f RIC_EventTriggerCondition_ID_print; +asn_constr_check_f RIC_EventTriggerCondition_ID_constraint; +ber_type_decoder_f RIC_EventTriggerCondition_ID_decode_ber; +der_type_encoder_f RIC_EventTriggerCondition_ID_encode_der; +xer_type_decoder_f RIC_EventTriggerCondition_ID_decode_xer; +xer_type_encoder_f RIC_EventTriggerCondition_ID_encode_xer; +oer_type_decoder_f RIC_EventTriggerCondition_ID_decode_oer; +oer_type_encoder_f RIC_EventTriggerCondition_ID_encode_oer; +per_type_decoder_f RIC_EventTriggerCondition_ID_decode_uper; +per_type_encoder_f RIC_EventTriggerCondition_ID_encode_uper; +per_type_decoder_f RIC_EventTriggerCondition_ID_decode_aper; +per_type_encoder_f RIC_EventTriggerCondition_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_EventTriggerCondition_ID_H_ */ +#include diff --git a/e2sm/headers/RIC-Format-Type.h b/e2sm/headers/RIC-Format-Type.h old mode 100644 new mode 100755 index 7d06e5f..a81c54a --- a/e2sm/headers/RIC-Format-Type.h +++ b/e2sm/headers/RIC-Format-Type.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/RIC-InsertIndication-ID.h b/e2sm/headers/RIC-InsertIndication-ID.h new file mode 100755 index 0000000..55b4384 --- /dev/null +++ b/e2sm/headers/RIC-InsertIndication-ID.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_InsertIndication_ID_H_ +#define _RIC_InsertIndication_ID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-InsertIndication-ID */ +typedef long RIC_InsertIndication_ID_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_InsertIndication_ID_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_InsertIndication_ID; +asn_struct_free_f RIC_InsertIndication_ID_free; +asn_struct_print_f RIC_InsertIndication_ID_print; +asn_constr_check_f RIC_InsertIndication_ID_constraint; +ber_type_decoder_f RIC_InsertIndication_ID_decode_ber; +der_type_encoder_f RIC_InsertIndication_ID_encode_der; +xer_type_decoder_f RIC_InsertIndication_ID_decode_xer; +xer_type_encoder_f RIC_InsertIndication_ID_encode_xer; +oer_type_decoder_f RIC_InsertIndication_ID_decode_oer; +oer_type_encoder_f RIC_InsertIndication_ID_encode_oer; +per_type_decoder_f RIC_InsertIndication_ID_decode_uper; +per_type_encoder_f RIC_InsertIndication_ID_encode_uper; +per_type_decoder_f RIC_InsertIndication_ID_decode_aper; +per_type_encoder_f RIC_InsertIndication_ID_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_InsertIndication_ID_H_ */ +#include diff --git a/e2sm/headers/RIC-InsertIndication-Name.h b/e2sm/headers/RIC-InsertIndication-Name.h new file mode 100755 index 0000000..2387e30 --- /dev/null +++ b/e2sm/headers/RIC-InsertIndication-Name.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_InsertIndication_Name_H_ +#define _RIC_InsertIndication_Name_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-InsertIndication-Name */ +typedef PrintableString_t RIC_InsertIndication_Name_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RIC_InsertIndication_Name_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RIC_InsertIndication_Name; +asn_struct_free_f RIC_InsertIndication_Name_free; +asn_struct_print_f RIC_InsertIndication_Name_print; +asn_constr_check_f RIC_InsertIndication_Name_constraint; +ber_type_decoder_f RIC_InsertIndication_Name_decode_ber; +der_type_encoder_f RIC_InsertIndication_Name_encode_der; +xer_type_decoder_f RIC_InsertIndication_Name_decode_xer; +xer_type_encoder_f RIC_InsertIndication_Name_encode_xer; +oer_type_decoder_f RIC_InsertIndication_Name_decode_oer; +oer_type_encoder_f RIC_InsertIndication_Name_encode_oer; +per_type_decoder_f RIC_InsertIndication_Name_decode_uper; +per_type_encoder_f RIC_InsertIndication_Name_encode_uper; +per_type_decoder_f RIC_InsertIndication_Name_decode_aper; +per_type_encoder_f RIC_InsertIndication_Name_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_InsertIndication_Name_H_ */ +#include diff --git a/e2sm/headers/RIC-PolicyAction-RANParameter-Item.h b/e2sm/headers/RIC-PolicyAction-RANParameter-Item.h new file mode 100755 index 0000000..83a93ef --- /dev/null +++ b/e2sm/headers/RIC-PolicyAction-RANParameter-Item.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RIC_PolicyAction_RANParameter_Item_H_ +#define _RIC_PolicyAction_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-ValueType.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* RIC-PolicyAction-RANParameter-Item */ +typedef struct RIC_PolicyAction_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_ValueType_t ranParameter_valueType; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RIC_PolicyAction_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RIC_PolicyAction_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_RIC_PolicyAction_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_RIC_PolicyAction_RANParameter_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RIC_PolicyAction_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/ODU-PF-Container.h b/e2sm/headers/RIC-PolicyAction.h old mode 100644 new mode 100755 similarity index 51% rename from e2sm/headers/ODU-PF-Container.h rename to e2sm/headers/RIC-PolicyAction.h index c49a4f7..92e63d1 --- a/e2sm/headers/ODU-PF-Container.h +++ b/e2sm/headers/RIC-PolicyAction.h @@ -1,17 +1,18 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _ODU_PF_Container_H_ -#define _ODU_PF_Container_H_ +#ifndef _RIC_PolicyAction_H_ +#define _RIC_PolicyAction_H_ #include /* Including external dependencies */ +#include "RIC-ControlAction-ID.h" #include #include #include @@ -21,16 +22,17 @@ extern "C" { #endif /* Forward declarations */ -struct CellResourceReportListItem; +struct RIC_PolicyAction_RANParameter_Item; -/* ODU-PF-Container */ -typedef struct ODU_PF_Container { - struct ODU_PF_Container__cellResourceReportList { - A_SEQUENCE_OF(struct CellResourceReportListItem) list; +/* RIC-PolicyAction */ +typedef struct RIC_PolicyAction { + RIC_ControlAction_ID_t ric_PolicyAction_ID; + struct RIC_PolicyAction__ranParameters_List { + A_SEQUENCE_OF(struct RIC_PolicyAction_RANParameter_Item) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; - } cellResourceReportList; + } *ranParameters_List; /* * This type is extensible, * possible extensions are below. @@ -38,16 +40,16 @@ typedef struct ODU_PF_Container { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} ODU_PF_Container_t; +} RIC_PolicyAction_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ODU_PF_Container; -extern asn_SEQUENCE_specifics_t asn_SPC_ODU_PF_Container_specs_1; -extern asn_TYPE_member_t asn_MBR_ODU_PF_Container_1[1]; +extern asn_TYPE_descriptor_t asn_DEF_RIC_PolicyAction; +extern asn_SEQUENCE_specifics_t asn_SPC_RIC_PolicyAction_specs_1; +extern asn_TYPE_member_t asn_MBR_RIC_PolicyAction_1[2]; #ifdef __cplusplus } #endif -#endif /* _ODU_PF_Container_H_ */ +#endif /* _RIC_PolicyAction_H_ */ #include diff --git a/e2sm/headers/RIC-ReportStyle-Item.h b/e2sm/headers/RIC-ReportStyle-Item.h deleted file mode 100644 index 7e963fb..0000000 --- a/e2sm/headers/RIC-ReportStyle-Item.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RIC_ReportStyle_Item_H_ -#define _RIC_ReportStyle_Item_H_ - - -#include - -/* Including external dependencies */ -#include "RIC-Style-Type.h" -#include "RIC-Style-Name.h" -#include "RIC-Format-Type.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RIC-ReportStyle-Item */ -typedef struct RIC_ReportStyle_Item { - RIC_Style_Type_t ric_ReportStyle_Type; - RIC_Style_Name_t ric_ReportStyle_Name; - RIC_Format_Type_t ric_ReportIndicationHeaderFormat_Type; - RIC_Format_Type_t ric_ReportIndicationMessageFormat_Type; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} RIC_ReportStyle_Item_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_RIC_ReportStyle_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_RIC_ReportStyle_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_RIC_ReportStyle_Item_1[4]; - -#ifdef __cplusplus -} -#endif - -#endif /* _RIC_ReportStyle_Item_H_ */ -#include diff --git a/e2sm/headers/RIC-Style-Name.h b/e2sm/headers/RIC-Style-Name.h old mode 100644 new mode 100755 index 95f3cdd..1d870ce --- a/e2sm/headers/RIC-Style-Name.h +++ b/e2sm/headers/RIC-Style-Name.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/RIC-Style-Type.h b/e2sm/headers/RIC-Style-Type.h old mode 100644 new mode 100755 index aad553e..efc0e91 --- a/e2sm/headers/RIC-Style-Type.h +++ b/e2sm/headers/RIC-Style-Type.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/headers/RRC-MessageID.h b/e2sm/headers/RRC-MessageID.h new file mode 100755 index 0000000..0a2f333 --- /dev/null +++ b/e2sm/headers/RRC-MessageID.h @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RRC_MessageID_H_ +#define _RRC_MessageID_H_ + + +#include + +/* Including external dependencies */ +#include +#include "RRCclass-LTE.h" +#include "RRCclass-NR.h" +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RRC_MessageID__rrcType_PR { + RRC_MessageID__rrcType_PR_NOTHING, /* No components present */ + RRC_MessageID__rrcType_PR_lTE, + RRC_MessageID__rrcType_PR_nR + /* Extensions may appear below */ + +} RRC_MessageID__rrcType_PR; + +/* RRC-MessageID */ +typedef struct RRC_MessageID { + struct RRC_MessageID__rrcType { + RRC_MessageID__rrcType_PR present; + union RRC_MessageID__rrcType_u { + RRCclass_LTE_t lTE; + RRCclass_NR_t nR; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; + } rrcType; + long messageID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} RRC_MessageID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_RRC_MessageID; +extern asn_SEQUENCE_specifics_t asn_SPC_RRC_MessageID_specs_1; +extern asn_TYPE_member_t asn_MBR_RRC_MessageID_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _RRC_MessageID_H_ */ +#include diff --git a/e2sm/headers/RRC-State.h b/e2sm/headers/RRC-State.h new file mode 100755 index 0000000..bdc3146 --- /dev/null +++ b/e2sm/headers/RRC-State.h @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RRC_State_H_ +#define _RRC_State_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RRC_State { + RRC_State_rrc_connected = 0, + RRC_State_rrc_inactive = 1, + RRC_State_rrc_idle = 2, + RRC_State_any = 3 + /* + * Enumeration is extensible + */ +} e_RRC_State; + +/* RRC-State */ +typedef long RRC_State_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RRC_State_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RRC_State; +extern const asn_INTEGER_specifics_t asn_SPC_RRC_State_specs_1; +asn_struct_free_f RRC_State_free; +asn_struct_print_f RRC_State_print; +asn_constr_check_f RRC_State_constraint; +ber_type_decoder_f RRC_State_decode_ber; +der_type_encoder_f RRC_State_encode_der; +xer_type_decoder_f RRC_State_decode_xer; +xer_type_encoder_f RRC_State_encode_xer; +oer_type_decoder_f RRC_State_decode_oer; +oer_type_encoder_f RRC_State_encode_oer; +per_type_decoder_f RRC_State_decode_uper; +per_type_encoder_f RRC_State_encode_uper; +per_type_decoder_f RRC_State_decode_aper; +per_type_encoder_f RRC_State_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RRC_State_H_ */ +#include diff --git a/e2sm/headers/RRCEvent.h b/e2sm/headers/RRCEvent.h deleted file mode 100644 index ea91c31..0000000 --- a/e2sm/headers/RRCEvent.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RRCEvent_H_ -#define _RRCEvent_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RRCEvent { - RRCEvent_b1 = 0, - RRCEvent_a3 = 1, - RRCEvent_a5 = 2, - RRCEvent_periodic = 3 - /* - * Enumeration is extensible - */ -} e_RRCEvent; - -/* RRCEvent */ -typedef long RRCEvent_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RRCEvent_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RRCEvent; -extern const asn_INTEGER_specifics_t asn_SPC_RRCEvent_specs_1; -asn_struct_free_f RRCEvent_free; -asn_struct_print_f RRCEvent_print; -asn_constr_check_f RRCEvent_constraint; -ber_type_decoder_f RRCEvent_decode_ber; -der_type_encoder_f RRCEvent_encode_der; -xer_type_decoder_f RRCEvent_decode_xer; -xer_type_encoder_f RRCEvent_encode_xer; -oer_type_decoder_f RRCEvent_decode_oer; -oer_type_encoder_f RRCEvent_encode_oer; -per_type_decoder_f RRCEvent_decode_uper; -per_type_encoder_f RRCEvent_encode_uper; -per_type_decoder_f RRCEvent_decode_aper; -per_type_encoder_f RRCEvent_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RRCEvent_H_ */ -#include diff --git a/e2sm/headers/RRCclass-LTE.h b/e2sm/headers/RRCclass-LTE.h new file mode 100755 index 0000000..f7b019e --- /dev/null +++ b/e2sm/headers/RRCclass-LTE.h @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RRCclass_LTE_H_ +#define _RRCclass_LTE_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RRCclass_LTE { + RRCclass_LTE_bCCH_BCH = 0, + RRCclass_LTE_bCCH_BCH_MBMS = 1, + RRCclass_LTE_bCCH_DL_SCH = 2, + RRCclass_LTE_bCCH_DL_SCH_BR = 3, + RRCclass_LTE_bCCH_DL_SCH_MBMS = 4, + RRCclass_LTE_mCCH = 5, + RRCclass_LTE_pCCH = 6, + RRCclass_LTE_dL_CCCH = 7, + RRCclass_LTE_dL_DCCH = 8, + RRCclass_LTE_uL_CCCH = 9, + RRCclass_LTE_uL_DCCH = 10, + RRCclass_LTE_sC_MCCH = 11 + /* + * Enumeration is extensible + */ +} e_RRCclass_LTE; + +/* RRCclass-LTE */ +typedef long RRCclass_LTE_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RRCclass_LTE_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RRCclass_LTE; +extern const asn_INTEGER_specifics_t asn_SPC_RRCclass_LTE_specs_1; +asn_struct_free_f RRCclass_LTE_free; +asn_struct_print_f RRCclass_LTE_print; +asn_constr_check_f RRCclass_LTE_constraint; +ber_type_decoder_f RRCclass_LTE_decode_ber; +der_type_encoder_f RRCclass_LTE_encode_der; +xer_type_decoder_f RRCclass_LTE_decode_xer; +xer_type_encoder_f RRCclass_LTE_encode_xer; +oer_type_decoder_f RRCclass_LTE_decode_oer; +oer_type_encoder_f RRCclass_LTE_encode_oer; +per_type_decoder_f RRCclass_LTE_decode_uper; +per_type_encoder_f RRCclass_LTE_encode_uper; +per_type_decoder_f RRCclass_LTE_decode_aper; +per_type_encoder_f RRCclass_LTE_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RRCclass_LTE_H_ */ +#include diff --git a/e2sm/headers/RRCclass-NR.h b/e2sm/headers/RRCclass-NR.h new file mode 100755 index 0000000..20ad1ef --- /dev/null +++ b/e2sm/headers/RRCclass-NR.h @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _RRCclass_NR_H_ +#define _RRCclass_NR_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum RRCclass_NR { + RRCclass_NR_bCCH_BCH = 0, + RRCclass_NR_bCCH_DL_SCH = 1, + RRCclass_NR_dL_CCCH = 2, + RRCclass_NR_dL_DCCH = 3, + RRCclass_NR_pCCH = 4, + RRCclass_NR_uL_CCCH = 5, + RRCclass_NR_uL_CCCH1 = 6, + RRCclass_NR_uL_DCCH = 7 + /* + * Enumeration is extensible + */ +} e_RRCclass_NR; + +/* RRCclass-NR */ +typedef long RRCclass_NR_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_RRCclass_NR_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_RRCclass_NR; +extern const asn_INTEGER_specifics_t asn_SPC_RRCclass_NR_specs_1; +asn_struct_free_f RRCclass_NR_free; +asn_struct_print_f RRCclass_NR_print; +asn_constr_check_f RRCclass_NR_constraint; +ber_type_decoder_f RRCclass_NR_decode_ber; +der_type_encoder_f RRCclass_NR_encode_der; +xer_type_decoder_f RRCclass_NR_decode_xer; +xer_type_encoder_f RRCclass_NR_encode_xer; +oer_type_decoder_f RRCclass_NR_decode_oer; +oer_type_encoder_f RRCclass_NR_encode_oer; +per_type_decoder_f RRCclass_NR_decode_uper; +per_type_encoder_f RRCclass_NR_encode_uper; +per_type_decoder_f RRCclass_NR_decode_aper; +per_type_encoder_f RRCclass_NR_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _RRCclass_NR_H_ */ +#include diff --git a/e2sm/headers/RSRP-Range.h b/e2sm/headers/RSRP-Range.h deleted file mode 100644 index 1d1caa4..0000000 --- a/e2sm/headers/RSRP-Range.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RSRP_Range_H_ -#define _RSRP_Range_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RSRP-Range */ -typedef long RSRP_Range_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RSRP_Range_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RSRP_Range; -asn_struct_free_f RSRP_Range_free; -asn_struct_print_f RSRP_Range_print; -asn_constr_check_f RSRP_Range_constraint; -ber_type_decoder_f RSRP_Range_decode_ber; -der_type_encoder_f RSRP_Range_encode_der; -xer_type_decoder_f RSRP_Range_decode_xer; -xer_type_encoder_f RSRP_Range_encode_xer; -oer_type_decoder_f RSRP_Range_decode_oer; -oer_type_encoder_f RSRP_Range_encode_oer; -per_type_decoder_f RSRP_Range_decode_uper; -per_type_encoder_f RSRP_Range_encode_uper; -per_type_decoder_f RSRP_Range_decode_aper; -per_type_encoder_f RSRP_Range_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RSRP_Range_H_ */ -#include diff --git a/e2sm/headers/RSRP-RangeEUTRA.h b/e2sm/headers/RSRP-RangeEUTRA.h deleted file mode 100644 index 98352ab..0000000 --- a/e2sm/headers/RSRP-RangeEUTRA.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RSRP_RangeEUTRA_H_ -#define _RSRP_RangeEUTRA_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RSRP-RangeEUTRA */ -typedef long RSRP_RangeEUTRA_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RSRP_RangeEUTRA_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RSRP_RangeEUTRA; -asn_struct_free_f RSRP_RangeEUTRA_free; -asn_struct_print_f RSRP_RangeEUTRA_print; -asn_constr_check_f RSRP_RangeEUTRA_constraint; -ber_type_decoder_f RSRP_RangeEUTRA_decode_ber; -der_type_encoder_f RSRP_RangeEUTRA_encode_der; -xer_type_decoder_f RSRP_RangeEUTRA_decode_xer; -xer_type_encoder_f RSRP_RangeEUTRA_encode_xer; -oer_type_decoder_f RSRP_RangeEUTRA_decode_oer; -oer_type_encoder_f RSRP_RangeEUTRA_encode_oer; -per_type_decoder_f RSRP_RangeEUTRA_decode_uper; -per_type_encoder_f RSRP_RangeEUTRA_encode_uper; -per_type_decoder_f RSRP_RangeEUTRA_decode_aper; -per_type_encoder_f RSRP_RangeEUTRA_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RSRP_RangeEUTRA_H_ */ -#include diff --git a/e2sm/headers/RSRQ-Range.h b/e2sm/headers/RSRQ-Range.h deleted file mode 100644 index 81543fb..0000000 --- a/e2sm/headers/RSRQ-Range.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RSRQ_Range_H_ -#define _RSRQ_Range_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RSRQ-Range */ -typedef long RSRQ_Range_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RSRQ_Range_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RSRQ_Range; -asn_struct_free_f RSRQ_Range_free; -asn_struct_print_f RSRQ_Range_print; -asn_constr_check_f RSRQ_Range_constraint; -ber_type_decoder_f RSRQ_Range_decode_ber; -der_type_encoder_f RSRQ_Range_encode_der; -xer_type_decoder_f RSRQ_Range_decode_xer; -xer_type_encoder_f RSRQ_Range_encode_xer; -oer_type_decoder_f RSRQ_Range_decode_oer; -oer_type_encoder_f RSRQ_Range_encode_oer; -per_type_decoder_f RSRQ_Range_decode_uper; -per_type_encoder_f RSRQ_Range_encode_uper; -per_type_decoder_f RSRQ_Range_decode_aper; -per_type_encoder_f RSRQ_Range_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RSRQ_Range_H_ */ -#include diff --git a/e2sm/headers/RSRQ-RangeEUTRA.h b/e2sm/headers/RSRQ-RangeEUTRA.h deleted file mode 100644 index 28a4e2b..0000000 --- a/e2sm/headers/RSRQ-RangeEUTRA.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RSRQ_RangeEUTRA_H_ -#define _RSRQ_RangeEUTRA_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* RSRQ-RangeEUTRA */ -typedef long RSRQ_RangeEUTRA_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RSRQ_RangeEUTRA_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RSRQ_RangeEUTRA; -asn_struct_free_f RSRQ_RangeEUTRA_free; -asn_struct_print_f RSRQ_RangeEUTRA_print; -asn_constr_check_f RSRQ_RangeEUTRA_constraint; -ber_type_decoder_f RSRQ_RangeEUTRA_decode_ber; -der_type_encoder_f RSRQ_RangeEUTRA_encode_der; -xer_type_decoder_f RSRQ_RangeEUTRA_decode_xer; -xer_type_encoder_f RSRQ_RangeEUTRA_encode_xer; -oer_type_decoder_f RSRQ_RangeEUTRA_decode_oer; -oer_type_encoder_f RSRQ_RangeEUTRA_encode_oer; -per_type_decoder_f RSRQ_RangeEUTRA_decode_uper; -per_type_encoder_f RSRQ_RangeEUTRA_encode_uper; -per_type_decoder_f RSRQ_RangeEUTRA_decode_aper; -per_type_encoder_f RSRQ_RangeEUTRA_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RSRQ_RangeEUTRA_H_ */ -#include diff --git a/e2sm/headers/RT-Period-IE.h b/e2sm/headers/RT-Period-IE.h deleted file mode 100644 index 33bcf46..0000000 --- a/e2sm/headers/RT-Period-IE.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _RT_Period_IE_H_ -#define _RT_Period_IE_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum RT_Period_IE { - RT_Period_IE_ms10 = 0, - RT_Period_IE_ms20 = 1, - RT_Period_IE_ms32 = 2, - RT_Period_IE_ms40 = 3, - RT_Period_IE_ms60 = 4, - RT_Period_IE_ms64 = 5, - RT_Period_IE_ms70 = 6, - RT_Period_IE_ms80 = 7, - RT_Period_IE_ms128 = 8, - RT_Period_IE_ms160 = 9, - RT_Period_IE_ms256 = 10, - RT_Period_IE_ms320 = 11, - RT_Period_IE_ms512 = 12, - RT_Period_IE_ms640 = 13, - RT_Period_IE_ms1024 = 14, - RT_Period_IE_ms1280 = 15, - RT_Period_IE_ms2048 = 16, - RT_Period_IE_ms2560 = 17, - RT_Period_IE_ms5120 = 18, - RT_Period_IE_ms10240 = 19 - /* - * Enumeration is extensible - */ -} e_RT_Period_IE; - -/* RT-Period-IE */ -typedef long RT_Period_IE_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_RT_Period_IE_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_RT_Period_IE; -extern const asn_INTEGER_specifics_t asn_SPC_RT_Period_IE_specs_1; -asn_struct_free_f RT_Period_IE_free; -asn_struct_print_f RT_Period_IE_print; -asn_constr_check_f RT_Period_IE_constraint; -ber_type_decoder_f RT_Period_IE_decode_ber; -der_type_encoder_f RT_Period_IE_encode_der; -xer_type_decoder_f RT_Period_IE_decode_xer; -xer_type_encoder_f RT_Period_IE_encode_xer; -oer_type_decoder_f RT_Period_IE_decode_oer; -oer_type_encoder_f RT_Period_IE_encode_oer; -per_type_decoder_f RT_Period_IE_decode_uper; -per_type_encoder_f RT_Period_IE_encode_uper; -per_type_decoder_f RT_Period_IE_decode_aper; -per_type_encoder_f RT_Period_IE_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _RT_Period_IE_H_ */ -#include diff --git a/e2sm/headers/Report-RANParameter-Item.h b/e2sm/headers/Report-RANParameter-Item.h new file mode 100755 index 0000000..4ba5ccb --- /dev/null +++ b/e2sm/headers/Report-RANParameter-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _Report_RANParameter_Item_H_ +#define _Report_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* Report-RANParameter-Item */ +typedef struct Report_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + /* + * This type is extensible, + * possible extensions are below. + */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} Report_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_Report_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_Report_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_Report_RANParameter_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _Report_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/ResultsPerCSI-RS-Index.h b/e2sm/headers/ResultsPerCSI-RS-Index.h deleted file mode 100644 index ba43d10..0000000 --- a/e2sm/headers/ResultsPerCSI-RS-Index.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ResultsPerCSI_RS_Index_H_ -#define _ResultsPerCSI_RS_Index_H_ - - -#include - -/* Including external dependencies */ -#include "CSI-RS-Index.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MeasQuantityResults; - -/* ResultsPerCSI-RS-Index */ -typedef struct ResultsPerCSI_RS_Index { - CSI_RS_Index_t csi_RS_Index; - struct MeasQuantityResults *csi_RS_Results; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ResultsPerCSI_RS_Index_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ResultsPerCSI_RS_Index; -extern asn_SEQUENCE_specifics_t asn_SPC_ResultsPerCSI_RS_Index_specs_1; -extern asn_TYPE_member_t asn_MBR_ResultsPerCSI_RS_Index_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResultsPerCSI_RS_Index_H_ */ -#include diff --git a/e2sm/headers/ResultsPerCSI-RS-IndexList.h b/e2sm/headers/ResultsPerCSI-RS-IndexList.h deleted file mode 100644 index 5cde4f3..0000000 --- a/e2sm/headers/ResultsPerCSI-RS-IndexList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ResultsPerCSI_RS_IndexList_H_ -#define _ResultsPerCSI_RS_IndexList_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ResultsPerCSI_RS_Index; - -/* ResultsPerCSI-RS-IndexList */ -typedef struct ResultsPerCSI_RS_IndexList { - A_SEQUENCE_OF(struct ResultsPerCSI_RS_Index) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ResultsPerCSI_RS_IndexList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ResultsPerCSI_RS_IndexList; -extern asn_SET_OF_specifics_t asn_SPC_ResultsPerCSI_RS_IndexList_specs_1; -extern asn_TYPE_member_t asn_MBR_ResultsPerCSI_RS_IndexList_1[1]; -extern asn_per_constraints_t asn_PER_type_ResultsPerCSI_RS_IndexList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResultsPerCSI_RS_IndexList_H_ */ -#include diff --git a/e2sm/headers/ResultsPerSSB-Index.h b/e2sm/headers/ResultsPerSSB-Index.h deleted file mode 100644 index df936b6..0000000 --- a/e2sm/headers/ResultsPerSSB-Index.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ResultsPerSSB_Index_H_ -#define _ResultsPerSSB_Index_H_ - - -#include - -/* Including external dependencies */ -#include "SSB-Index.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct MeasQuantityResults; - -/* ResultsPerSSB-Index */ -typedef struct ResultsPerSSB_Index { - SSB_Index_t ssb_Index; - struct MeasQuantityResults *ssb_Results; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ResultsPerSSB_Index_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ResultsPerSSB_Index; -extern asn_SEQUENCE_specifics_t asn_SPC_ResultsPerSSB_Index_specs_1; -extern asn_TYPE_member_t asn_MBR_ResultsPerSSB_Index_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResultsPerSSB_Index_H_ */ -#include diff --git a/e2sm/headers/ResultsPerSSB-IndexList.h b/e2sm/headers/ResultsPerSSB-IndexList.h deleted file mode 100644 index 209f40c..0000000 --- a/e2sm/headers/ResultsPerSSB-IndexList.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ResultsPerSSB_IndexList_H_ -#define _ResultsPerSSB_IndexList_H_ - - -#include - -/* Including external dependencies */ -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct ResultsPerSSB_Index; - -/* ResultsPerSSB-IndexList */ -typedef struct ResultsPerSSB_IndexList { - A_SEQUENCE_OF(struct ResultsPerSSB_Index) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ResultsPerSSB_IndexList_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ResultsPerSSB_IndexList; -extern asn_SET_OF_specifics_t asn_SPC_ResultsPerSSB_IndexList_specs_1; -extern asn_TYPE_member_t asn_MBR_ResultsPerSSB_IndexList_1[1]; -extern asn_per_constraints_t asn_PER_type_ResultsPerSSB_IndexList_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ResultsPerSSB_IndexList_H_ */ -#include diff --git a/e2sm/headers/S-NSSAI.h b/e2sm/headers/S-NSSAI.h old mode 100644 new mode 100755 index c379f99..529fa19 --- a/e2sm/headers/S-NSSAI.h +++ b/e2sm/headers/S-NSSAI.h @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -12,7 +12,8 @@ #include /* Including external dependencies */ -#include +#include "SST.h" +#include "SD.h" #include #ifdef __cplusplus @@ -21,8 +22,12 @@ extern "C" { /* S-NSSAI */ typedef struct S_NSSAI { - OCTET_STRING_t sST; - OCTET_STRING_t *sD; /* OPTIONAL */ + SST_t sST; + SD_t *sD; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; @@ -30,8 +35,6 @@ typedef struct S_NSSAI { /* Implementation */ extern asn_TYPE_descriptor_t asn_DEF_S_NSSAI; -extern asn_SEQUENCE_specifics_t asn_SPC_S_NSSAI_specs_1; -extern asn_TYPE_member_t asn_MBR_S_NSSAI_1[2]; #ifdef __cplusplus } diff --git a/e2sm/headers/SD.h b/e2sm/headers/SD.h new file mode 100755 index 0000000..e1f8205 --- /dev/null +++ b/e2sm/headers/SD.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _SD_H_ +#define _SD_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* SD */ +typedef OCTET_STRING_t SD_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SD_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SD; +asn_struct_free_f SD_free; +asn_struct_print_f SD_print; +asn_constr_check_f SD_constraint; +ber_type_decoder_f SD_decode_ber; +der_type_encoder_f SD_encode_der; +xer_type_decoder_f SD_decode_xer; +xer_type_encoder_f SD_encode_xer; +oer_type_decoder_f SD_decode_oer; +oer_type_encoder_f SD_encode_oer; +per_type_decoder_f SD_decode_uper; +per_type_encoder_f SD_encode_uper; +per_type_decoder_f SD_decode_aper; +per_type_encoder_f SD_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SD_H_ */ +#include diff --git a/e2sm/headers/SINR-Range.h b/e2sm/headers/SINR-Range.h deleted file mode 100644 index 8caa08b..0000000 --- a/e2sm/headers/SINR-Range.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _SINR_Range_H_ -#define _SINR_Range_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* SINR-Range */ -typedef long SINR_Range_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SINR_Range_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SINR_Range; -asn_struct_free_f SINR_Range_free; -asn_struct_print_f SINR_Range_print; -asn_constr_check_f SINR_Range_constraint; -ber_type_decoder_f SINR_Range_decode_ber; -der_type_encoder_f SINR_Range_encode_der; -xer_type_decoder_f SINR_Range_decode_xer; -xer_type_encoder_f SINR_Range_encode_xer; -oer_type_decoder_f SINR_Range_decode_oer; -oer_type_encoder_f SINR_Range_encode_oer; -per_type_decoder_f SINR_Range_decode_uper; -per_type_encoder_f SINR_Range_encode_uper; -per_type_decoder_f SINR_Range_decode_aper; -per_type_encoder_f SINR_Range_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SINR_Range_H_ */ -#include diff --git a/e2sm/headers/SINR-RangeEUTRA.h b/e2sm/headers/SINR-RangeEUTRA.h deleted file mode 100644 index 5cbb7dc..0000000 --- a/e2sm/headers/SINR-RangeEUTRA.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _SINR_RangeEUTRA_H_ -#define _SINR_RangeEUTRA_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* SINR-RangeEUTRA */ -typedef long SINR_RangeEUTRA_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SINR_RangeEUTRA_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SINR_RangeEUTRA; -asn_struct_free_f SINR_RangeEUTRA_free; -asn_struct_print_f SINR_RangeEUTRA_print; -asn_constr_check_f SINR_RangeEUTRA_constraint; -ber_type_decoder_f SINR_RangeEUTRA_decode_ber; -der_type_encoder_f SINR_RangeEUTRA_encode_der; -xer_type_decoder_f SINR_RangeEUTRA_decode_xer; -xer_type_encoder_f SINR_RangeEUTRA_encode_xer; -oer_type_decoder_f SINR_RangeEUTRA_decode_oer; -oer_type_encoder_f SINR_RangeEUTRA_encode_oer; -per_type_decoder_f SINR_RangeEUTRA_decode_uper; -per_type_encoder_f SINR_RangeEUTRA_encode_uper; -per_type_decoder_f SINR_RangeEUTRA_decode_aper; -per_type_encoder_f SINR_RangeEUTRA_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SINR_RangeEUTRA_H_ */ -#include diff --git a/e2sm/headers/SSB-Index.h b/e2sm/headers/SSB-Index.h deleted file mode 100644 index 3d9d6fc..0000000 --- a/e2sm/headers/SSB-Index.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _SSB_Index_H_ -#define _SSB_Index_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* SSB-Index */ -typedef long SSB_Index_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_SSB_Index_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_SSB_Index; -asn_struct_free_f SSB_Index_free; -asn_struct_print_f SSB_Index_print; -asn_constr_check_f SSB_Index_constraint; -ber_type_decoder_f SSB_Index_decode_ber; -der_type_encoder_f SSB_Index_encode_der; -xer_type_decoder_f SSB_Index_decode_xer; -xer_type_encoder_f SSB_Index_encode_xer; -oer_type_decoder_f SSB_Index_decode_oer; -oer_type_encoder_f SSB_Index_encode_oer; -per_type_decoder_f SSB_Index_decode_uper; -per_type_encoder_f SSB_Index_encode_uper; -per_type_decoder_f SSB_Index_decode_aper; -per_type_encoder_f SSB_Index_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _SSB_Index_H_ */ -#include diff --git a/e2sm/headers/SST.h b/e2sm/headers/SST.h new file mode 100755 index 0000000..1b75898 --- /dev/null +++ b/e2sm/headers/SST.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _SST_H_ +#define _SST_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* SST */ +typedef OCTET_STRING_t SST_t; + +/* Implementation */ +extern asn_per_constraints_t asn_PER_type_SST_constr_1; +extern asn_TYPE_descriptor_t asn_DEF_SST; +asn_struct_free_f SST_free; +asn_struct_print_f SST_print; +asn_constr_check_f SST_constraint; +ber_type_decoder_f SST_decode_ber; +der_type_encoder_f SST_encode_der; +xer_type_decoder_f SST_decode_xer; +xer_type_encoder_f SST_encode_xer; +oer_type_decoder_f SST_decode_oer; +oer_type_encoder_f SST_encode_oer; +per_type_decoder_f SST_decode_uper; +per_type_encoder_f SST_encode_uper; +per_type_decoder_f SST_decode_aper; +per_type_encoder_f SST_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SST_H_ */ +#include diff --git a/e2sm/headers/ServCellIndex.h b/e2sm/headers/ServCellIndex.h deleted file mode 100644 index 27f2d62..0000000 --- a/e2sm/headers/ServCellIndex.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ServCellIndex_H_ -#define _ServCellIndex_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* ServCellIndex */ -typedef long ServCellIndex_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_ServCellIndex_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_ServCellIndex; -asn_struct_free_f ServCellIndex_free; -asn_struct_print_f ServCellIndex_print; -asn_constr_check_f ServCellIndex_constraint; -ber_type_decoder_f ServCellIndex_decode_ber; -der_type_encoder_f ServCellIndex_encode_der; -xer_type_decoder_f ServCellIndex_decode_xer; -xer_type_encoder_f ServCellIndex_encode_xer; -oer_type_decoder_f ServCellIndex_decode_oer; -oer_type_encoder_f ServCellIndex_encode_oer; -per_type_decoder_f ServCellIndex_decode_uper; -per_type_encoder_f ServCellIndex_encode_uper; -per_type_decoder_f ServCellIndex_decode_aper; -per_type_encoder_f ServCellIndex_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _ServCellIndex_H_ */ -#include diff --git a/e2sm/headers/ServedPlmnPerCellListItem.h b/e2sm/headers/ServedPlmnPerCellListItem.h deleted file mode 100644 index fbde179..0000000 --- a/e2sm/headers/ServedPlmnPerCellListItem.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ServedPlmnPerCellListItem_H_ -#define _ServedPlmnPerCellListItem_H_ - - -#include - -/* Including external dependencies */ -#include "PLMN-Identity.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FGC_DU_PM_Container; -struct EPC_DU_PM_Container; - -/* ServedPlmnPerCellListItem */ -typedef struct ServedPlmnPerCellListItem { - PLMN_Identity_t pLMN_Identity; - struct FGC_DU_PM_Container *du_PM_5GC; /* OPTIONAL */ - struct EPC_DU_PM_Container *du_PM_EPC; /* OPTIONAL */ - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ServedPlmnPerCellListItem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ServedPlmnPerCellListItem; -extern asn_SEQUENCE_specifics_t asn_SPC_ServedPlmnPerCellListItem_specs_1; -extern asn_TYPE_member_t asn_MBR_ServedPlmnPerCellListItem_1[3]; - -#ifdef __cplusplus -} -#endif - -#endif /* _ServedPlmnPerCellListItem_H_ */ -#include diff --git a/e2sm/headers/ServingCell-ARFCN.h b/e2sm/headers/ServingCell-ARFCN.h new file mode 100755 index 0000000..f5bcac5 --- /dev/null +++ b/e2sm/headers/ServingCell-ARFCN.h @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _ServingCell_ARFCN_H_ +#define _ServingCell_ARFCN_H_ + + +#include + +/* Including external dependencies */ +#include "E-UTRA-ARFCN.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ServingCell_ARFCN_PR { + ServingCell_ARFCN_PR_NOTHING, /* No components present */ + ServingCell_ARFCN_PR_nR, + ServingCell_ARFCN_PR_eUTRA + /* Extensions may appear below */ + +} ServingCell_ARFCN_PR; + +/* Forward declarations */ +struct NR_ARFCN; + +/* ServingCell-ARFCN */ +typedef struct ServingCell_ARFCN { + ServingCell_ARFCN_PR present; + union ServingCell_ARFCN_u { + struct NR_ARFCN *nR; + E_UTRA_ARFCN_t eUTRA; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ServingCell_ARFCN_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ServingCell_ARFCN; +extern asn_CHOICE_specifics_t asn_SPC_ServingCell_ARFCN_specs_1; +extern asn_TYPE_member_t asn_MBR_ServingCell_ARFCN_1[2]; +extern asn_per_constraints_t asn_PER_type_ServingCell_ARFCN_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ServingCell_ARFCN_H_ */ +#include diff --git a/e2sm/headers/ServingCell-PCI.h b/e2sm/headers/ServingCell-PCI.h new file mode 100755 index 0000000..872be1f --- /dev/null +++ b/e2sm/headers/ServingCell-PCI.h @@ -0,0 +1,59 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _ServingCell_PCI_H_ +#define _ServingCell_PCI_H_ + + +#include + +/* Including external dependencies */ +#include "NR-PCI.h" +#include "E-UTRA-PCI.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum ServingCell_PCI_PR { + ServingCell_PCI_PR_NOTHING, /* No components present */ + ServingCell_PCI_PR_nR, + ServingCell_PCI_PR_eUTRA + /* Extensions may appear below */ + +} ServingCell_PCI_PR; + +/* ServingCell-PCI */ +typedef struct ServingCell_PCI { + ServingCell_PCI_PR present; + union ServingCell_PCI_u { + NR_PCI_t nR; + E_UTRA_PCI_t eUTRA; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} ServingCell_PCI_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_ServingCell_PCI; +extern asn_CHOICE_specifics_t asn_SPC_ServingCell_PCI_specs_1; +extern asn_TYPE_member_t asn_MBR_ServingCell_PCI_1[2]; +extern asn_per_constraints_t asn_PER_type_ServingCell_PCI_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _ServingCell_PCI_H_ */ +#include diff --git a/e2sm/headers/ServingCellMeasurements.h b/e2sm/headers/ServingCellMeasurements.h deleted file mode 100644 index 22f8aa2..0000000 --- a/e2sm/headers/ServingCellMeasurements.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _ServingCellMeasurements_H_ -#define _ServingCellMeasurements_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum ServingCellMeasurements_PR { - ServingCellMeasurements_PR_NOTHING, /* No components present */ - ServingCellMeasurements_PR_nr_measResultServingMOList, - ServingCellMeasurements_PR_eutra_measResultPCell - /* Extensions may appear below */ - -} ServingCellMeasurements_PR; - -/* Forward declarations */ -struct MeasResultServMOList; -struct MeasResultPCell; - -/* ServingCellMeasurements */ -typedef struct ServingCellMeasurements { - ServingCellMeasurements_PR present; - union ServingCellMeasurements_u { - struct MeasResultServMOList *nr_measResultServingMOList; - struct MeasResultPCell *eutra_measResultPCell; - /* - * This type is extensible, - * possible extensions are below. - */ - } choice; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} ServingCellMeasurements_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_ServingCellMeasurements; -extern asn_CHOICE_specifics_t asn_SPC_ServingCellMeasurements_specs_1; -extern asn_TYPE_member_t asn_MBR_ServingCellMeasurements_1[2]; -extern asn_per_constraints_t asn_PER_type_ServingCellMeasurements_constr_1; - -#ifdef __cplusplus -} -#endif - -#endif /* _ServingCellMeasurements_H_ */ -#include diff --git a/e2sm/headers/SlicePerPlmnPerCellListItem.h b/e2sm/headers/SlicePerPlmnPerCellListItem.h deleted file mode 100644 index 406a845..0000000 --- a/e2sm/headers/SlicePerPlmnPerCellListItem.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _SlicePerPlmnPerCellListItem_H_ -#define _SlicePerPlmnPerCellListItem_H_ - - -#include - -/* Including external dependencies */ -#include "S-NSSAI.h" -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FQIPERSlicesPerPlmnPerCellListItem; - -/* SlicePerPlmnPerCellListItem */ -typedef struct SlicePerPlmnPerCellListItem { - S_NSSAI_t sliceID; - struct SlicePerPlmnPerCellListItem__fQIPERSlicesPerPlmnPerCellList { - A_SEQUENCE_OF(struct FQIPERSlicesPerPlmnPerCellListItem) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } fQIPERSlicesPerPlmnPerCellList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SlicePerPlmnPerCellListItem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SlicePerPlmnPerCellListItem; -extern asn_SEQUENCE_specifics_t asn_SPC_SlicePerPlmnPerCellListItem_specs_1; -extern asn_TYPE_member_t asn_MBR_SlicePerPlmnPerCellListItem_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SlicePerPlmnPerCellListItem_H_ */ -#include diff --git a/e2sm/headers/SliceToReportListItem.h b/e2sm/headers/SliceToReportListItem.h deleted file mode 100644 index 9bc8c7e..0000000 --- a/e2sm/headers/SliceToReportListItem.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _SliceToReportListItem_H_ -#define _SliceToReportListItem_H_ - - -#include - -/* Including external dependencies */ -#include "S-NSSAI.h" -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Forward declarations */ -struct FQIPERSlicesPerPlmnListItem; - -/* SliceToReportListItem */ -typedef struct SliceToReportListItem { - S_NSSAI_t sliceID; - struct SliceToReportListItem__fQIPERSlicesPerPlmnList { - A_SEQUENCE_OF(struct FQIPERSlicesPerPlmnListItem) list; - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; - } fQIPERSlicesPerPlmnList; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} SliceToReportListItem_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_SliceToReportListItem; -extern asn_SEQUENCE_specifics_t asn_SPC_SliceToReportListItem_specs_1; -extern asn_TYPE_member_t asn_MBR_SliceToReportListItem_1[2]; - -#ifdef __cplusplus -} -#endif - -#endif /* _SliceToReportListItem_H_ */ -#include diff --git a/e2sm/headers/SubscriberProfileIDforRFP.h b/e2sm/headers/SubscriberProfileIDforRFP.h new file mode 100755 index 0000000..3c05cb9 --- /dev/null +++ b/e2sm/headers/SubscriberProfileIDforRFP.h @@ -0,0 +1,45 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _SubscriberProfileIDforRFP_H_ +#define _SubscriberProfileIDforRFP_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* SubscriberProfileIDforRFP */ +typedef long SubscriberProfileIDforRFP_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SubscriberProfileIDforRFP; +asn_struct_free_f SubscriberProfileIDforRFP_free; +asn_struct_print_f SubscriberProfileIDforRFP_print; +asn_constr_check_f SubscriberProfileIDforRFP_constraint; +ber_type_decoder_f SubscriberProfileIDforRFP_decode_ber; +der_type_encoder_f SubscriberProfileIDforRFP_encode_der; +xer_type_decoder_f SubscriberProfileIDforRFP_decode_xer; +xer_type_encoder_f SubscriberProfileIDforRFP_encode_xer; +oer_type_decoder_f SubscriberProfileIDforRFP_decode_oer; +oer_type_encoder_f SubscriberProfileIDforRFP_encode_oer; +per_type_decoder_f SubscriberProfileIDforRFP_decode_uper; +per_type_encoder_f SubscriberProfileIDforRFP_encode_uper; +per_type_decoder_f SubscriberProfileIDforRFP_decode_aper; +per_type_encoder_f SubscriberProfileIDforRFP_encode_aper; + +#ifdef __cplusplus +} +#endif + +#endif /* _SubscriberProfileIDforRFP_H_ */ +#include diff --git a/e2sm/headers/SupportedSULBandList.h b/e2sm/headers/SupportedSULBandList.h new file mode 100755 index 0000000..7985160 --- /dev/null +++ b/e2sm/headers/SupportedSULBandList.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _SupportedSULBandList_H_ +#define _SupportedSULBandList_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct SupportedSULFreqBandItem; + +/* SupportedSULBandList */ +typedef struct SupportedSULBandList { + A_SEQUENCE_OF(struct SupportedSULFreqBandItem) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} SupportedSULBandList_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_SupportedSULBandList; +extern asn_SET_OF_specifics_t asn_SPC_SupportedSULBandList_specs_1; +extern asn_TYPE_member_t asn_MBR_SupportedSULBandList_1[1]; +extern asn_per_constraints_t asn_PER_type_SupportedSULBandList_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _SupportedSULBandList_H_ */ +#include diff --git a/e2sm/headers/PerQCIReportListItem.h b/e2sm/headers/SupportedSULFreqBandItem.h old mode 100644 new mode 100755 similarity index 51% rename from e2sm/headers/PerQCIReportListItem.h rename to e2sm/headers/SupportedSULFreqBandItem.h index 1f4c6bb..e4fc2c1 --- a/e2sm/headers/PerQCIReportListItem.h +++ b/e2sm/headers/SupportedSULFreqBandItem.h @@ -1,18 +1,17 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _PerQCIReportListItem_H_ -#define _PerQCIReportListItem_H_ +#ifndef _SupportedSULFreqBandItem_H_ +#define _SupportedSULFreqBandItem_H_ #include /* Including external dependencies */ -#include "QCI.h" #include #include @@ -20,11 +19,9 @@ extern "C" { #endif -/* PerQCIReportListItem */ -typedef struct PerQCIReportListItem { - QCI_t qci; - long *dl_PRBUsage; /* OPTIONAL */ - long *ul_PRBUsage; /* OPTIONAL */ +/* SupportedSULFreqBandItem */ +typedef struct SupportedSULFreqBandItem { + long freqBandIndicatorNr; /* * This type is extensible, * possible extensions are below. @@ -32,16 +29,16 @@ typedef struct PerQCIReportListItem { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} PerQCIReportListItem_t; +} SupportedSULFreqBandItem_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_PerQCIReportListItem; -extern asn_SEQUENCE_specifics_t asn_SPC_PerQCIReportListItem_specs_1; -extern asn_TYPE_member_t asn_MBR_PerQCIReportListItem_1[3]; +extern asn_TYPE_descriptor_t asn_DEF_SupportedSULFreqBandItem; +extern asn_SEQUENCE_specifics_t asn_SPC_SupportedSULFreqBandItem_specs_1; +extern asn_TYPE_member_t asn_MBR_SupportedSULFreqBandItem_1[1]; #ifdef __cplusplus } #endif -#endif /* _PerQCIReportListItem_H_ */ +#endif /* _SupportedSULFreqBandItem_H_ */ #include diff --git a/e2sm/headers/TimeStamp.h b/e2sm/headers/TimeStamp.h deleted file mode 100644 index 71f9724..0000000 --- a/e2sm/headers/TimeStamp.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _TimeStamp_H_ -#define _TimeStamp_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* TimeStamp */ -typedef OCTET_STRING_t TimeStamp_t; - -/* Implementation */ -extern asn_per_constraints_t asn_PER_type_TimeStamp_constr_1; -extern asn_TYPE_descriptor_t asn_DEF_TimeStamp; -asn_struct_free_f TimeStamp_free; -asn_struct_print_f TimeStamp_print; -asn_constr_check_f TimeStamp_constraint; -ber_type_decoder_f TimeStamp_decode_ber; -der_type_encoder_f TimeStamp_encode_der; -xer_type_decoder_f TimeStamp_decode_xer; -xer_type_encoder_f TimeStamp_encode_xer; -oer_type_decoder_f TimeStamp_decode_oer; -oer_type_encoder_f TimeStamp_encode_oer; -per_type_decoder_f TimeStamp_decode_uper; -per_type_encoder_f TimeStamp_encode_uper; -per_type_decoder_f TimeStamp_decode_aper; -per_type_encoder_f TimeStamp_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TimeStamp_H_ */ -#include diff --git a/e2sm/headers/Trigger-ConditionIE-Item.h b/e2sm/headers/Trigger-ConditionIE-Item.h deleted file mode 100644 index fda0039..0000000 --- a/e2sm/headers/Trigger-ConditionIE-Item.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _Trigger_ConditionIE_Item_H_ -#define _Trigger_ConditionIE_Item_H_ - - -#include - -/* Including external dependencies */ -#include "RT-Period-IE.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Trigger-ConditionIE-Item */ -typedef struct Trigger_ConditionIE_Item { - RT_Period_IE_t report_Period_IE; - /* - * This type is extensible, - * possible extensions are below. - */ - - /* Context for parsing across buffer boundaries */ - asn_struct_ctx_t _asn_ctx; -} Trigger_ConditionIE_Item_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_Trigger_ConditionIE_Item; -extern asn_SEQUENCE_specifics_t asn_SPC_Trigger_ConditionIE_Item_specs_1; -extern asn_TYPE_member_t asn_MBR_Trigger_ConditionIE_Item_1[1]; - -#ifdef __cplusplus -} -#endif - -#endif /* _Trigger_ConditionIE_Item_H_ */ -#include diff --git a/e2sm/headers/TriggerType-Choice-L2state.h b/e2sm/headers/TriggerType-Choice-L2state.h new file mode 100755 index 0000000..d22cc96 --- /dev/null +++ b/e2sm/headers/TriggerType-Choice-L2state.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _TriggerType_Choice_L2state_H_ +#define _TriggerType_Choice_L2state_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-Testing.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* TriggerType-Choice-L2state */ +typedef struct TriggerType_Choice_L2state { + RANParameter_Testing_t associatedL2variables; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TriggerType_Choice_L2state_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice_L2state; +extern asn_SEQUENCE_specifics_t asn_SPC_TriggerType_Choice_L2state_specs_1; +extern asn_TYPE_member_t asn_MBR_TriggerType_Choice_L2state_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TriggerType_Choice_L2state_H_ */ +#include diff --git a/e2sm/headers/TriggerType-Choice-RRCstate-Item.h b/e2sm/headers/TriggerType-Choice-RRCstate-Item.h new file mode 100755 index 0000000..0ab1f55 --- /dev/null +++ b/e2sm/headers/TriggerType-Choice-RRCstate-Item.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _TriggerType_Choice_RRCstate_Item_H_ +#define _TriggerType_Choice_RRCstate_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RRC-State.h" +#include "LogicalOR.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* TriggerType-Choice-RRCstate-Item */ +typedef struct TriggerType_Choice_RRCstate_Item { + RRC_State_t stateChangedTo; + LogicalOR_t *logicalOR; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TriggerType_Choice_RRCstate_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice_RRCstate_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_TriggerType_Choice_RRCstate_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_TriggerType_Choice_RRCstate_Item_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TriggerType_Choice_RRCstate_Item_H_ */ +#include diff --git a/e2sm/headers/FGC-CUUP-PM-Format.h b/e2sm/headers/TriggerType-Choice-RRCstate.h old mode 100644 new mode 100755 similarity index 51% rename from e2sm/headers/FGC-CUUP-PM-Format.h rename to e2sm/headers/TriggerType-Choice-RRCstate.h index 73b91e8..ea2bcc5 --- a/e2sm/headers/FGC-CUUP-PM-Format.h +++ b/e2sm/headers/TriggerType-Choice-RRCstate.h @@ -1,12 +1,12 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _FGC_CUUP_PM_Format_H_ -#define _FGC_CUUP_PM_Format_H_ +#ifndef _TriggerType_Choice_RRCstate_H_ +#define _TriggerType_Choice_RRCstate_H_ #include @@ -21,16 +21,16 @@ extern "C" { #endif /* Forward declarations */ -struct SliceToReportListItem; +struct TriggerType_Choice_RRCstate_Item; -/* FGC-CUUP-PM-Format */ -typedef struct FGC_CUUP_PM_Format { - struct FGC_CUUP_PM_Format__sliceToReportList { - A_SEQUENCE_OF(struct SliceToReportListItem) list; +/* TriggerType-Choice-RRCstate */ +typedef struct TriggerType_Choice_RRCstate { + struct TriggerType_Choice_RRCstate__rrcState_List { + A_SEQUENCE_OF(struct TriggerType_Choice_RRCstate_Item) list; /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; - } sliceToReportList; + } rrcState_List; /* * This type is extensible, * possible extensions are below. @@ -38,16 +38,16 @@ typedef struct FGC_CUUP_PM_Format { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} FGC_CUUP_PM_Format_t; +} TriggerType_Choice_RRCstate_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_FGC_CUUP_PM_Format; -extern asn_SEQUENCE_specifics_t asn_SPC_FGC_CUUP_PM_Format_specs_1; -extern asn_TYPE_member_t asn_MBR_FGC_CUUP_PM_Format_1[1]; +extern asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice_RRCstate; +extern asn_SEQUENCE_specifics_t asn_SPC_TriggerType_Choice_RRCstate_specs_1; +extern asn_TYPE_member_t asn_MBR_TriggerType_Choice_RRCstate_1[1]; #ifdef __cplusplus } #endif -#endif /* _FGC_CUUP_PM_Format_H_ */ +#endif /* _TriggerType_Choice_RRCstate_H_ */ #include diff --git a/e2sm/headers/TriggerType-Choice-UEID.h b/e2sm/headers/TriggerType-Choice-UEID.h new file mode 100755 index 0000000..ad50aaf --- /dev/null +++ b/e2sm/headers/TriggerType-Choice-UEID.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _TriggerType_Choice_UEID_H_ +#define _TriggerType_Choice_UEID_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* TriggerType-Choice-UEID */ +typedef struct TriggerType_Choice_UEID { + long ueIDchange_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TriggerType_Choice_UEID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice_UEID; +extern asn_SEQUENCE_specifics_t asn_SPC_TriggerType_Choice_UEID_specs_1; +extern asn_TYPE_member_t asn_MBR_TriggerType_Choice_UEID_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _TriggerType_Choice_UEID_H_ */ +#include diff --git a/e2sm/headers/TriggerType-Choice.h b/e2sm/headers/TriggerType-Choice.h new file mode 100755 index 0000000..41dbff4 --- /dev/null +++ b/e2sm/headers/TriggerType-Choice.h @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _TriggerType_Choice_H_ +#define _TriggerType_Choice_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum TriggerType_Choice_PR { + TriggerType_Choice_PR_NOTHING, /* No components present */ + TriggerType_Choice_PR_triggerType_Choice_RRCstate, + TriggerType_Choice_PR_triggerType_Choice_UEID, + TriggerType_Choice_PR_triggerType_Choice_L2state + /* Extensions may appear below */ + +} TriggerType_Choice_PR; + +/* Forward declarations */ +struct TriggerType_Choice_RRCstate; +struct TriggerType_Choice_UEID; +struct TriggerType_Choice_L2state; + +/* TriggerType-Choice */ +typedef struct TriggerType_Choice { + TriggerType_Choice_PR present; + union TriggerType_Choice_u { + struct TriggerType_Choice_RRCstate *triggerType_Choice_RRCstate; + struct TriggerType_Choice_UEID *triggerType_Choice_UEID; + struct TriggerType_Choice_L2state *triggerType_Choice_L2state; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} TriggerType_Choice_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice; +extern asn_CHOICE_specifics_t asn_SPC_TriggerType_Choice_specs_1; +extern asn_TYPE_member_t asn_MBR_TriggerType_Choice_1[3]; +extern asn_per_constraints_t asn_PER_type_TriggerType_Choice_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _TriggerType_Choice_H_ */ +#include diff --git a/e2sm/headers/TriggeringMessage.h b/e2sm/headers/TriggeringMessage.h deleted file mode 100644 index c2c1987..0000000 --- a/e2sm/headers/TriggeringMessage.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _TriggeringMessage_H_ -#define _TriggeringMessage_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Dependencies */ -typedef enum TriggeringMessage { - TriggeringMessage_initiating_message = 0, - TriggeringMessage_successful_outcome = 1, - TriggeringMessage_unsuccessfull_outcome = 2 -} e_TriggeringMessage; - -/* TriggeringMessage */ -typedef long TriggeringMessage_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_TriggeringMessage; -asn_struct_free_f TriggeringMessage_free; -asn_struct_print_f TriggeringMessage_print; -asn_constr_check_f TriggeringMessage_constraint; -ber_type_decoder_f TriggeringMessage_decode_ber; -der_type_encoder_f TriggeringMessage_encode_der; -xer_type_decoder_f TriggeringMessage_decode_xer; -xer_type_encoder_f TriggeringMessage_encode_xer; -oer_type_decoder_f TriggeringMessage_decode_oer; -oer_type_encoder_f TriggeringMessage_encode_oer; -per_type_decoder_f TriggeringMessage_decode_uper; -per_type_encoder_f TriggeringMessage_encode_uper; -per_type_decoder_f TriggeringMessage_decode_aper; -per_type_encoder_f TriggeringMessage_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _TriggeringMessage_H_ */ -#include diff --git a/e2sm/headers/UE-Identity.h b/e2sm/headers/UE-Identity.h deleted file mode 100644 index 9f62ee5..0000000 --- a/e2sm/headers/UE-Identity.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#ifndef _UE_Identity_H_ -#define _UE_Identity_H_ - - -#include - -/* Including external dependencies */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* UE-Identity */ -typedef OCTET_STRING_t UE_Identity_t; - -/* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_UE_Identity; -asn_struct_free_f UE_Identity_free; -asn_struct_print_f UE_Identity_print; -asn_constr_check_f UE_Identity_constraint; -ber_type_decoder_f UE_Identity_decode_ber; -der_type_encoder_f UE_Identity_encode_der; -xer_type_decoder_f UE_Identity_decode_xer; -xer_type_encoder_f UE_Identity_encode_xer; -oer_type_decoder_f UE_Identity_decode_oer; -oer_type_encoder_f UE_Identity_encode_oer; -per_type_decoder_f UE_Identity_decode_uper; -per_type_encoder_f UE_Identity_encode_uper; -per_type_decoder_f UE_Identity_decode_aper; -per_type_encoder_f UE_Identity_encode_aper; - -#ifdef __cplusplus -} -#endif - -#endif /* _UE_Identity_H_ */ -#include diff --git a/e2sm/headers/UEID-EN-GNB.h b/e2sm/headers/UEID-EN-GNB.h new file mode 100755 index 0000000..b8f6104 --- /dev/null +++ b/e2sm/headers/UEID-EN-GNB.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_EN_GNB_H_ +#define _UEID_EN_GNB_H_ + + +#include + +/* Including external dependencies */ +#include "ENB-UE-X2AP-ID.h" +#include "ENB-UE-X2AP-ID-Extension.h" +#include "GlobalENB-ID.h" +#include "GNB-CU-UE-F1AP-ID.h" +#include "RANUEID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct UEID_GNB_CU_CP_E1AP_ID_List; + +/* UEID-EN-GNB */ +typedef struct UEID_EN_GNB { + ENB_UE_X2AP_ID_t m_eNB_UE_X2AP_ID; + ENB_UE_X2AP_ID_Extension_t *m_eNB_UE_X2AP_ID_Extension; /* OPTIONAL */ + GlobalENB_ID_t globalENB_ID; + GNB_CU_UE_F1AP_ID_t *gNB_CU_UE_F1AP_ID; /* OPTIONAL */ + struct UEID_GNB_CU_CP_E1AP_ID_List *gNB_CU_CP_UE_E1AP_ID_List; /* OPTIONAL */ + RANUEID_t *ran_UEID; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_EN_GNB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_EN_GNB; +extern asn_SEQUENCE_specifics_t asn_SPC_UEID_EN_GNB_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_EN_GNB_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_EN_GNB_H_ */ +#include diff --git a/e2sm/headers/UEID-ENB.h b/e2sm/headers/UEID-ENB.h new file mode 100755 index 0000000..0549076 --- /dev/null +++ b/e2sm/headers/UEID-ENB.h @@ -0,0 +1,54 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_ENB_H_ +#define _UEID_ENB_H_ + + +#include + +/* Including external dependencies */ +#include "MME-UE-S1AP-ID.h" +#include "GUMMEI.h" +#include "ENB-UE-X2AP-ID.h" +#include "ENB-UE-X2AP-ID-Extension.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct GlobalENB_ID; + +/* UEID-ENB */ +typedef struct UEID_ENB { + MME_UE_S1AP_ID_t mME_UE_S1AP_ID; + GUMMEI_t gUMMEI; + ENB_UE_X2AP_ID_t *m_eNB_UE_X2AP_ID; /* OPTIONAL */ + ENB_UE_X2AP_ID_Extension_t *m_eNB_UE_X2AP_ID_Extension; /* OPTIONAL */ + struct GlobalENB_ID *globalENB_ID; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_ENB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_ENB; +extern asn_SEQUENCE_specifics_t asn_SPC_UEID_ENB_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_ENB_1[5]; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_ENB_H_ */ +#include diff --git a/e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-Item.h b/e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-Item.h new file mode 100755 index 0000000..9818980 --- /dev/null +++ b/e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-Item.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_GNB_CU_CP_E1AP_ID_Item_H_ +#define _UEID_GNB_CU_CP_E1AP_ID_Item_H_ + + +#include + +/* Including external dependencies */ +#include "GNB-CU-CP-UE-E1AP-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* UEID-GNB-CU-CP-E1AP-ID-Item */ +typedef struct UEID_GNB_CU_CP_E1AP_ID_Item { + GNB_CU_CP_UE_E1AP_ID_t gNB_CU_CP_UE_E1AP_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_GNB_CU_CP_E1AP_ID_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_CU_CP_E1AP_ID_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_GNB_CU_CP_E1AP_ID_Item_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_GNB_CU_CP_E1AP_ID_Item_H_ */ +#include diff --git a/e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-List.h b/e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-List.h new file mode 100755 index 0000000..faca51a --- /dev/null +++ b/e2sm/headers/UEID-GNB-CU-CP-E1AP-ID-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_GNB_CU_CP_E1AP_ID_List_H_ +#define _UEID_GNB_CU_CP_E1AP_ID_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct UEID_GNB_CU_CP_E1AP_ID_Item; + +/* UEID-GNB-CU-CP-E1AP-ID-List */ +typedef struct UEID_GNB_CU_CP_E1AP_ID_List { + A_SEQUENCE_OF(struct UEID_GNB_CU_CP_E1AP_ID_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_GNB_CU_CP_E1AP_ID_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List; +extern asn_SET_OF_specifics_t asn_SPC_UEID_GNB_CU_CP_E1AP_ID_List_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_GNB_CU_CP_E1AP_ID_List_1[1]; +extern asn_per_constraints_t asn_PER_type_UEID_GNB_CU_CP_E1AP_ID_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_GNB_CU_CP_E1AP_ID_List_H_ */ +#include diff --git a/e2sm/headers/UEID-GNB-CU-CP-F1AP-ID-Item.h b/e2sm/headers/UEID-GNB-CU-CP-F1AP-ID-Item.h new file mode 100755 index 0000000..580de4c --- /dev/null +++ b/e2sm/headers/UEID-GNB-CU-CP-F1AP-ID-Item.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_GNB_CU_CP_F1AP_ID_Item_H_ +#define _UEID_GNB_CU_CP_F1AP_ID_Item_H_ + + +#include + +/* Including external dependencies */ +#include "GNB-CU-UE-F1AP-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* UEID-GNB-CU-CP-F1AP-ID-Item */ +typedef struct UEID_GNB_CU_CP_F1AP_ID_Item { + GNB_CU_UE_F1AP_ID_t gNB_CU_UE_F1AP_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_GNB_CU_CP_F1AP_ID_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_CU_CP_F1AP_ID_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_GNB_CU_CP_F1AP_ID_Item_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_GNB_CU_CP_F1AP_ID_Item_H_ */ +#include diff --git a/e2sm/headers/UEID-GNB-CU-F1AP-ID-List.h b/e2sm/headers/UEID-GNB-CU-F1AP-ID-List.h new file mode 100755 index 0000000..ff71811 --- /dev/null +++ b/e2sm/headers/UEID-GNB-CU-F1AP-ID-List.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_GNB_CU_F1AP_ID_List_H_ +#define _UEID_GNB_CU_F1AP_ID_List_H_ + + +#include + +/* Including external dependencies */ +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct UEID_GNB_CU_CP_F1AP_ID_Item; + +/* UEID-GNB-CU-F1AP-ID-List */ +typedef struct UEID_GNB_CU_F1AP_ID_List { + A_SEQUENCE_OF(struct UEID_GNB_CU_CP_F1AP_ID_Item) list; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_GNB_CU_F1AP_ID_List_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_F1AP_ID_List; +extern asn_SET_OF_specifics_t asn_SPC_UEID_GNB_CU_F1AP_ID_List_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_GNB_CU_F1AP_ID_List_1[1]; +extern asn_per_constraints_t asn_PER_type_UEID_GNB_CU_F1AP_ID_List_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_GNB_CU_F1AP_ID_List_H_ */ +#include diff --git a/e2sm/headers/UEID-GNB-CU-UP.h b/e2sm/headers/UEID-GNB-CU-UP.h new file mode 100755 index 0000000..d9e8fc0 --- /dev/null +++ b/e2sm/headers/UEID-GNB-CU-UP.h @@ -0,0 +1,46 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_GNB_CU_UP_H_ +#define _UEID_GNB_CU_UP_H_ + + +#include + +/* Including external dependencies */ +#include "GNB-CU-CP-UE-E1AP-ID.h" +#include "RANUEID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* UEID-GNB-CU-UP */ +typedef struct UEID_GNB_CU_UP { + GNB_CU_CP_UE_E1AP_ID_t gNB_CU_CP_UE_E1AP_ID; + RANUEID_t *ran_UEID; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_GNB_CU_UP_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_UP; +extern asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_CU_UP_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_GNB_CU_UP_1[2]; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_GNB_CU_UP_H_ */ +#include diff --git a/e2sm/headers/GlobalngeNB-ID.h b/e2sm/headers/UEID-GNB-DU.h old mode 100644 new mode 100755 similarity index 52% rename from e2sm/headers/GlobalngeNB-ID.h rename to e2sm/headers/UEID-GNB-DU.h index a6ab832..bf224c4 --- a/e2sm/headers/GlobalngeNB-ID.h +++ b/e2sm/headers/UEID-GNB-DU.h @@ -1,29 +1,29 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#ifndef _GlobalngeNB_ID_H_ -#define _GlobalngeNB_ID_H_ +#ifndef _UEID_GNB_DU_H_ +#define _UEID_GNB_DU_H_ #include /* Including external dependencies */ -#include "PLMN-Identity.h" -#include "ENB-ID-Choice.h" +#include "GNB-CU-UE-F1AP-ID.h" +#include "RANUEID.h" #include #ifdef __cplusplus extern "C" { #endif -/* GlobalngeNB-ID */ -typedef struct GlobalngeNB_ID { - PLMN_Identity_t plmn_id; - ENB_ID_Choice_t enb_id; +/* UEID-GNB-DU */ +typedef struct UEID_GNB_DU { + GNB_CU_UE_F1AP_ID_t gNB_CU_UE_F1AP_ID; + RANUEID_t *ran_UEID; /* OPTIONAL */ /* * This type is extensible, * possible extensions are below. @@ -31,16 +31,16 @@ typedef struct GlobalngeNB_ID { /* Context for parsing across buffer boundaries */ asn_struct_ctx_t _asn_ctx; -} GlobalngeNB_ID_t; +} UEID_GNB_DU_t; /* Implementation */ -extern asn_TYPE_descriptor_t asn_DEF_GlobalngeNB_ID; -extern asn_SEQUENCE_specifics_t asn_SPC_GlobalngeNB_ID_specs_1; -extern asn_TYPE_member_t asn_MBR_GlobalngeNB_ID_1[2]; +extern asn_TYPE_descriptor_t asn_DEF_UEID_GNB_DU; +extern asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_DU_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_GNB_DU_1[2]; #ifdef __cplusplus } #endif -#endif /* _GlobalngeNB_ID_H_ */ +#endif /* _UEID_GNB_DU_H_ */ #include diff --git a/e2sm/headers/UEID-GNB.h b/e2sm/headers/UEID-GNB.h new file mode 100755 index 0000000..4a76f62 --- /dev/null +++ b/e2sm/headers/UEID-GNB.h @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_GNB_H_ +#define _UEID_GNB_H_ + + +#include + +/* Including external dependencies */ +#include "AMF-UE-NGAP-ID.h" +#include "GUAMI.h" +#include "RANUEID.h" +#include "NG-RANnodeUEXnAPID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct UEID_GNB_CU_F1AP_ID_List; +struct UEID_GNB_CU_CP_E1AP_ID_List; +struct GlobalGNB_ID; +struct GlobalNGRANNodeID; + +/* UEID-GNB */ +typedef struct UEID_GNB { + AMF_UE_NGAP_ID_t amf_UE_NGAP_ID; + GUAMI_t guami; + struct UEID_GNB_CU_F1AP_ID_List *gNB_CU_UE_F1AP_ID_List; /* OPTIONAL */ + struct UEID_GNB_CU_CP_E1AP_ID_List *gNB_CU_CP_UE_E1AP_ID_List; /* OPTIONAL */ + RANUEID_t *ran_UEID; /* OPTIONAL */ + NG_RANnodeUEXnAPID_t *m_NG_RAN_UE_XnAP_ID; /* OPTIONAL */ + struct GlobalGNB_ID *globalGNB_ID; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + struct GlobalNGRANNodeID *globalNG_RANNode_ID; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_GNB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_GNB; +extern asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_GNB_1[8]; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_GNB_H_ */ +#include diff --git a/e2sm/headers/UEID-NG-ENB-DU.h b/e2sm/headers/UEID-NG-ENB-DU.h new file mode 100755 index 0000000..1aa0b27 --- /dev/null +++ b/e2sm/headers/UEID-NG-ENB-DU.h @@ -0,0 +1,44 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_NG_ENB_DU_H_ +#define _UEID_NG_ENB_DU_H_ + + +#include + +/* Including external dependencies */ +#include "NGENB-CU-UE-W1AP-ID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* UEID-NG-ENB-DU */ +typedef struct UEID_NG_ENB_DU { + NGENB_CU_UE_W1AP_ID_t ng_eNB_CU_UE_W1AP_ID; + /* + * This type is extensible, + * possible extensions are below. + */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_NG_ENB_DU_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_NG_ENB_DU; +extern asn_SEQUENCE_specifics_t asn_SPC_UEID_NG_ENB_DU_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_NG_ENB_DU_1[1]; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_NG_ENB_DU_H_ */ +#include diff --git a/e2sm/headers/UEID-NG-ENB.h b/e2sm/headers/UEID-NG-ENB.h new file mode 100755 index 0000000..bb19c7e --- /dev/null +++ b/e2sm/headers/UEID-NG-ENB.h @@ -0,0 +1,56 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_NG_ENB_H_ +#define _UEID_NG_ENB_H_ + + +#include + +/* Including external dependencies */ +#include "AMF-UE-NGAP-ID.h" +#include "GUAMI.h" +#include "NGENB-CU-UE-W1AP-ID.h" +#include "NG-RANnodeUEXnAPID.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct GlobalNgENB_ID; +struct GlobalNGRANNodeID; + +/* UEID-NG-ENB */ +typedef struct UEID_NG_ENB { + AMF_UE_NGAP_ID_t amf_UE_NGAP_ID; + GUAMI_t guami; + NGENB_CU_UE_W1AP_ID_t *ng_eNB_CU_UE_W1AP_ID; /* OPTIONAL */ + NG_RANnodeUEXnAPID_t *m_NG_RAN_UE_XnAP_ID; /* OPTIONAL */ + struct GlobalNgENB_ID *globalNgENB_ID; /* OPTIONAL */ + /* + * This type is extensible, + * possible extensions are below. + */ + struct GlobalNGRANNodeID *globalNG_RANNode_ID; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_NG_ENB_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID_NG_ENB; +extern asn_SEQUENCE_specifics_t asn_SPC_UEID_NG_ENB_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_NG_ENB_1[6]; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_NG_ENB_H_ */ +#include diff --git a/e2sm/headers/UEID.h b/e2sm/headers/UEID.h new file mode 100755 index 0000000..26988b5 --- /dev/null +++ b/e2sm/headers/UEID.h @@ -0,0 +1,76 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEID_H_ +#define _UEID_H_ + + +#include + +/* Including external dependencies */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Dependencies */ +typedef enum UEID_PR { + UEID_PR_NOTHING, /* No components present */ + UEID_PR_gNB_UEID, + UEID_PR_gNB_DU_UEID, + UEID_PR_gNB_CU_UP_UEID, + UEID_PR_ng_eNB_UEID, + UEID_PR_ng_eNB_DU_UEID, + UEID_PR_en_gNB_UEID, + UEID_PR_eNB_UEID + /* Extensions may appear below */ + +} UEID_PR; + +/* Forward declarations */ +struct UEID_GNB; +struct UEID_GNB_DU; +struct UEID_GNB_CU_UP; +struct UEID_NG_ENB; +struct UEID_NG_ENB_DU; +struct UEID_EN_GNB; +struct UEID_ENB; + +/* UEID */ +typedef struct UEID { + UEID_PR present; + union UEID_u { + struct UEID_GNB *gNB_UEID; + struct UEID_GNB_DU *gNB_DU_UEID; + struct UEID_GNB_CU_UP *gNB_CU_UP_UEID; + struct UEID_NG_ENB *ng_eNB_UEID; + struct UEID_NG_ENB_DU *ng_eNB_DU_UEID; + struct UEID_EN_GNB *en_gNB_UEID; + struct UEID_ENB *eNB_UEID; + /* + * This type is extensible, + * possible extensions are below. + */ + } choice; + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEID_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEID; +extern asn_CHOICE_specifics_t asn_SPC_UEID_specs_1; +extern asn_TYPE_member_t asn_MBR_UEID_1[7]; +extern asn_per_constraints_t asn_PER_type_UEID_constr_1; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEID_H_ */ +#include diff --git a/e2sm/headers/UEIdentification-RANParameter-Item.h b/e2sm/headers/UEIdentification-RANParameter-Item.h new file mode 100755 index 0000000..75f461f --- /dev/null +++ b/e2sm/headers/UEIdentification-RANParameter-Item.h @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#ifndef _UEIdentification_RANParameter_Item_H_ +#define _UEIdentification_RANParameter_Item_H_ + + +#include + +/* Including external dependencies */ +#include "RANParameter-ID.h" +#include "RANParameter-Name.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declarations */ +struct RANParameter_Definition; + +/* UEIdentification-RANParameter-Item */ +typedef struct UEIdentification_RANParameter_Item { + RANParameter_ID_t ranParameter_ID; + RANParameter_Name_t ranParameter_name; + /* + * This type is extensible, + * possible extensions are below. + */ + struct RANParameter_Definition *ranParameter_Definition; /* OPTIONAL */ + + /* Context for parsing across buffer boundaries */ + asn_struct_ctx_t _asn_ctx; +} UEIdentification_RANParameter_Item_t; + +/* Implementation */ +extern asn_TYPE_descriptor_t asn_DEF_UEIdentification_RANParameter_Item; +extern asn_SEQUENCE_specifics_t asn_SPC_UEIdentification_RANParameter_Item_specs_1; +extern asn_TYPE_member_t asn_MBR_UEIdentification_RANParameter_Item_1[3]; + +#ifdef __cplusplus +} +#endif + +#endif /* _UEIdentification_RANParameter_Item_H_ */ +#include diff --git a/e2sm/headers/asn_SEQUENCE_OF.h b/e2sm/headers/asn_SEQUENCE_OF.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/asn_SET_OF.h b/e2sm/headers/asn_SET_OF.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/asn_application.h b/e2sm/headers/asn_application.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/asn_bit_data.h b/e2sm/headers/asn_bit_data.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/asn_codecs.h b/e2sm/headers/asn_codecs.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/asn_codecs_prim.h b/e2sm/headers/asn_codecs_prim.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/asn_constant.h b/e2sm/headers/asn_constant.h old mode 100644 new mode 100755 index df0a143..4566a7a --- a/e2sm/headers/asn_constant.h +++ b/e2sm/headers/asn_constant.h @@ -9,28 +9,34 @@ extern "C" { #endif -#define maxCellReport (8) -#define maxNrofSSBs_1 (63) -#define maxNrofCSI_RS_ResourcesRRM_1 (95) -#define maxNrofServingCells (32) -#define maxNrofServingCells_1 (31) -#define maxNrofIndexesToReport2 (64) -#define maxnoofMeasurementInfo (65535) -#define maxofMessageProtocolTests (15) -#define maxnoofQCI (256) -#define maxnoofQoSFlows (64) -#define maxnoofSliceItems (1024) -#define maxnoofContainerListItems (3) -#define maxCellingNBDU (512) -#define maxofContainers (8) -#define maxPLMN (12) -#define maxnoofUEs (65535) -#define maxnoofPMMeasurements (2147483647) +#define maxE1APid (65535) +#define maxF1APid (4) +#define maxEARFCN (65535) +#define maxNRARFCN (3279165) +#define maxnoofNrCellBands (32) +#define maxnoofMessages (65535) +#define maxnoofE2InfoChanges (65535) +#define maxnoofUEInfoChanges (65535) +#define maxnoofRRCstate (8) +#define maxnoofParametersToReport (65535) +#define maxnoofPolicyConditions (65535) +#define maxnoofAssociatedRANParameters (65535) +#define maxnoofUEID (65535) +#define maxnoofCellID (65535) +#define maxnoofRANOutcomeParameters (255) +#define maxnoofParametersinStructure (65535) +#define maxnoofItemsinList (65535) +#define maxnoofUEInfo (65535) +#define maxnoofCellInfo (65535) +#define maxnoofUEeventInfo (65535) +#define maxnoofRANparamTest (255) +#define maxnoofNeighbourCell (65535) #define maxnoofRICStyles (63) -#define maxnoofAssociatedRANInfo (4294967295) -#define maxnoofParametersInStructure (4294967295) -#define maxnoofItemsInList (4294967295) +#define maxnoofCallProcessTypes (65535) +#define maxnoofCallProcessBreakpoints (65535) +#define maxnoofInsertIndication (65535) #define maxnoofControlAction (65535) +#define maxnoofPolicyAction (65535) #ifdef __cplusplus diff --git a/e2sm/headers/asn_internal.h b/e2sm/headers/asn_internal.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/asn_ioc.h b/e2sm/headers/asn_ioc.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/asn_random_fill.h b/e2sm/headers/asn_random_fill.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/asn_system.h b/e2sm/headers/asn_system.h old mode 100644 new mode 100755 index 898f122..fa8cf11 --- a/e2sm/headers/asn_system.h +++ b/e2sm/headers/asn_system.h @@ -63,11 +63,7 @@ typedef unsigned int uint32_t; #define isnan _isnan #define finite _finite #define copysign _copysign -#ifdef WIN32 //MCHECK - #define ilogb ilogb -#else - #define ilogb _logb -#endif +#define ilogb _logb #else /* !_MSC_VER */ #include #endif /* _MSC_VER */ diff --git a/e2sm/headers/ber_decoder.h b/e2sm/headers/ber_decoder.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/ber_tlv_length.h b/e2sm/headers/ber_tlv_length.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/ber_tlv_tag.h b/e2sm/headers/ber_tlv_tag.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/constr_CHOICE.h b/e2sm/headers/constr_CHOICE.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/constr_SEQUENCE.h b/e2sm/headers/constr_SEQUENCE.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/constr_SEQUENCE_OF.h b/e2sm/headers/constr_SEQUENCE_OF.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/constr_SET_OF.h b/e2sm/headers/constr_SET_OF.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/constr_TYPE.h b/e2sm/headers/constr_TYPE.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/constraints.h b/e2sm/headers/constraints.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/der_encoder.h b/e2sm/headers/der_encoder.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/oer_decoder.h b/e2sm/headers/oer_decoder.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/oer_encoder.h b/e2sm/headers/oer_encoder.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/oer_support.h b/e2sm/headers/oer_support.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/per_decoder.h b/e2sm/headers/per_decoder.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/per_encoder.h b/e2sm/headers/per_encoder.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/per_opentype.h b/e2sm/headers/per_opentype.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/per_support.h b/e2sm/headers/per_support.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/tags b/e2sm/headers/tags new file mode 100755 index 0000000..0f08eea --- /dev/null +++ b/e2sm/headers/tags @@ -0,0 +1,11 @@ +!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ +!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ +!_TAG_OUTPUT_EXCMD mixed /number, pattern, mixed, or combineV2/ +!_TAG_OUTPUT_FILESEP slash /slash or backslash/ +!_TAG_OUTPUT_MODE u-ctags /u-ctags or e-ctags/ +!_TAG_PATTERN_LENGTH_LIMIT 96 /0 for no limit/ +!_TAG_PROC_CWD /home/ubuntu/tm/rc/e2sm/headers/ // +!_TAG_PROGRAM_AUTHOR Universal Ctags Team // +!_TAG_PROGRAM_NAME Universal Ctags /Derived from Exuberant Ctags/ +!_TAG_PROGRAM_URL https://ctags.io/ /official site/ +!_TAG_PROGRAM_VERSION 5.9.0 /7877f202/ diff --git a/e2sm/headers/xer_decoder.h b/e2sm/headers/xer_decoder.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/xer_encoder.h b/e2sm/headers/xer_encoder.h old mode 100644 new mode 100755 diff --git a/e2sm/headers/xer_support.h b/e2sm/headers/xer_support.h old mode 100644 new mode 100755 diff --git a/e2sm/lib/AMF-UE-NGAP-ID.c b/e2sm/lib/AMF-UE-NGAP-ID.c new file mode 100644 index 0000000..403bacf --- /dev/null +++ b/e2sm/lib/AMF-UE-NGAP-ID.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "AMF-UE-NGAP-ID.h" + +int +AMF_UE_NGAP_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 1099511627775)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using INTEGER, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AMF_UE_NGAP_ID_constr_1 CC_NOTUSED = { + { 8, 1 } /* (0..1099511627775) */, + -1}; +asn_per_constraints_t asn_PER_type_AMF_UE_NGAP_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 40, -1, 0, 1099511627775 } /* (0..1099511627775) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AMF_UE_NGAP_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AMF_UE_NGAP_ID = { + "AMF-UE-NGAP-ID", + "AMF-UE-NGAP-ID", + &asn_OP_INTEGER, + asn_DEF_AMF_UE_NGAP_ID_tags_1, + sizeof(asn_DEF_AMF_UE_NGAP_ID_tags_1) + /sizeof(asn_DEF_AMF_UE_NGAP_ID_tags_1[0]), /* 1 */ + asn_DEF_AMF_UE_NGAP_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_AMF_UE_NGAP_ID_tags_1) + /sizeof(asn_DEF_AMF_UE_NGAP_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_AMF_UE_NGAP_ID_constr_1, &asn_PER_type_AMF_UE_NGAP_ID_constr_1, AMF_UE_NGAP_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/AMFPointer.c b/e2sm/lib/AMFPointer.c new file mode 100644 index 0000000..70592cd --- /dev/null +++ b/e2sm/lib/AMFPointer.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "AMFPointer.h" + +int +AMFPointer_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 6)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AMFPointer_constr_1 CC_NOTUSED = { + { 0, 0 }, + 6 /* (SIZE(6..6)) */}; +asn_per_constraints_t asn_PER_type_AMFPointer_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AMFPointer_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AMFPointer = { + "AMFPointer", + "AMFPointer", + &asn_OP_BIT_STRING, + asn_DEF_AMFPointer_tags_1, + sizeof(asn_DEF_AMFPointer_tags_1) + /sizeof(asn_DEF_AMFPointer_tags_1[0]), /* 1 */ + asn_DEF_AMFPointer_tags_1, /* Same as above */ + sizeof(asn_DEF_AMFPointer_tags_1) + /sizeof(asn_DEF_AMFPointer_tags_1[0]), /* 1 */ + { &asn_OER_type_AMFPointer_constr_1, &asn_PER_type_AMFPointer_constr_1, AMFPointer_constraint }, + 0, 0, /* No members */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/AMFRegionID.c b/e2sm/lib/AMFRegionID.c new file mode 100644 index 0000000..f686a27 --- /dev/null +++ b/e2sm/lib/AMFRegionID.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "AMFRegionID.h" + +int +AMFRegionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 8)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AMFRegionID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 8 /* (SIZE(8..8)) */}; +asn_per_constraints_t asn_PER_type_AMFRegionID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AMFRegionID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AMFRegionID = { + "AMFRegionID", + "AMFRegionID", + &asn_OP_BIT_STRING, + asn_DEF_AMFRegionID_tags_1, + sizeof(asn_DEF_AMFRegionID_tags_1) + /sizeof(asn_DEF_AMFRegionID_tags_1[0]), /* 1 */ + asn_DEF_AMFRegionID_tags_1, /* Same as above */ + sizeof(asn_DEF_AMFRegionID_tags_1) + /sizeof(asn_DEF_AMFRegionID_tags_1[0]), /* 1 */ + { &asn_OER_type_AMFRegionID_constr_1, &asn_PER_type_AMFRegionID_constr_1, AMFRegionID_constraint }, + 0, 0, /* No members */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/AMFSetID.c b/e2sm/lib/AMFSetID.c new file mode 100644 index 0000000..797bdba --- /dev/null +++ b/e2sm/lib/AMFSetID.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "AMFSetID.h" + +int +AMFSetID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 10)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_AMFSetID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 10 /* (SIZE(10..10)) */}; +asn_per_constraints_t asn_PER_type_AMFSetID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 10, 10 } /* (SIZE(10..10)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_AMFSetID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_AMFSetID = { + "AMFSetID", + "AMFSetID", + &asn_OP_BIT_STRING, + asn_DEF_AMFSetID_tags_1, + sizeof(asn_DEF_AMFSetID_tags_1) + /sizeof(asn_DEF_AMFSetID_tags_1[0]), /* 1 */ + asn_DEF_AMFSetID_tags_1, /* Same as above */ + sizeof(asn_DEF_AMFSetID_tags_1) + /sizeof(asn_DEF_AMFSetID_tags_1[0]), /* 1 */ + { &asn_OER_type_AMFSetID_constr_1, &asn_PER_type_AMFSetID_constr_1, AMFSetID_constraint }, + 0, 0, /* No members */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/CGI.c b/e2sm/lib/CGI.c new file mode 100644 index 0000000..a0f0d66 --- /dev/null +++ b/e2sm/lib/CGI.c @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "CGI.h" + +#include "NR-CGI.h" +#include "EUTRA-CGI.h" +static asn_oer_constraints_t asn_OER_type_CGI_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_CGI_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_CGI_1[] = { + { ATF_POINTER, 0, offsetof(struct CGI, choice.nR_CGI), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NR_CGI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nR-CGI" + }, + { ATF_POINTER, 0, offsetof(struct CGI, choice.eUTRA_CGI), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EUTRA_CGI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eUTRA-CGI" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_CGI_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nR-CGI */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* eUTRA-CGI */ +}; +asn_CHOICE_specifics_t asn_SPC_CGI_specs_1 = { + sizeof(struct CGI), + offsetof(struct CGI, _asn_ctx), + offsetof(struct CGI, present), + sizeof(((struct CGI *)0)->present), + asn_MAP_CGI_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_CGI = { + "CGI", + "CGI", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_CGI_constr_1, &asn_PER_type_CGI_constr_1, CHOICE_constraint }, + asn_MBR_CGI_1, + 2, /* Elements count */ + &asn_SPC_CGI_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/CSI-RS-Index.c b/e2sm/lib/CSI-RS-Index.c deleted file mode 100644 index 327aeb9..0000000 --- a/e2sm/lib/CSI-RS-Index.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "CSI-RS-Index.h" - -int -CSI_RS_Index_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 95)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_CSI_RS_Index_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..95) */, - -1}; -asn_per_constraints_t asn_PER_type_CSI_RS_Index_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 95 } /* (0..95) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_CSI_RS_Index_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_CSI_RS_Index = { - "CSI-RS-Index", - "CSI-RS-Index", - &asn_OP_NativeInteger, - asn_DEF_CSI_RS_Index_tags_1, - sizeof(asn_DEF_CSI_RS_Index_tags_1) - /sizeof(asn_DEF_CSI_RS_Index_tags_1[0]), /* 1 */ - asn_DEF_CSI_RS_Index_tags_1, /* Same as above */ - sizeof(asn_DEF_CSI_RS_Index_tags_1) - /sizeof(asn_DEF_CSI_RS_Index_tags_1[0]), /* 1 */ - { &asn_OER_type_CSI_RS_Index_constr_1, &asn_PER_type_CSI_RS_Index_constr_1, CSI_RS_Index_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/e2sm/lib/CUUPMeasurement-Container.c b/e2sm/lib/CUUPMeasurement-Container.c deleted file mode 100644 index 0e768d8..0000000 --- a/e2sm/lib/CUUPMeasurement-Container.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "CUUPMeasurement-Container.h" - -#include "PlmnID-Item.h" -static int -memb_plmnList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 12)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_plmnList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..12)) */}; -static asn_per_constraints_t asn_PER_type_plmnList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 12 } /* (SIZE(1..12)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_plmnList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..12)) */}; -static asn_per_constraints_t asn_PER_memb_plmnList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 12 } /* (SIZE(1..12)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_plmnList_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PlmnID_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_plmnList_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_plmnList_specs_2 = { - sizeof(struct CUUPMeasurement_Container__plmnList), - offsetof(struct CUUPMeasurement_Container__plmnList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_plmnList_2 = { - "plmnList", - "plmnList", - &asn_OP_SEQUENCE_OF, - asn_DEF_plmnList_tags_2, - sizeof(asn_DEF_plmnList_tags_2) - /sizeof(asn_DEF_plmnList_tags_2[0]) - 1, /* 1 */ - asn_DEF_plmnList_tags_2, /* Same as above */ - sizeof(asn_DEF_plmnList_tags_2) - /sizeof(asn_DEF_plmnList_tags_2[0]), /* 2 */ - { &asn_OER_type_plmnList_constr_2, &asn_PER_type_plmnList_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_plmnList_2, - 1, /* Single element */ - &asn_SPC_plmnList_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_CUUPMeasurement_Container_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct CUUPMeasurement_Container, plmnList), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_plmnList_2, - 0, - { &asn_OER_memb_plmnList_constr_2, &asn_PER_memb_plmnList_constr_2, memb_plmnList_constraint_1 }, - 0, 0, /* No default value */ - "plmnList" - }, -}; -static const ber_tlv_tag_t asn_DEF_CUUPMeasurement_Container_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_CUUPMeasurement_Container_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* plmnList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_CUUPMeasurement_Container_specs_1 = { - sizeof(struct CUUPMeasurement_Container), - offsetof(struct CUUPMeasurement_Container, _asn_ctx), - asn_MAP_CUUPMeasurement_Container_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_CUUPMeasurement_Container = { - "CUUPMeasurement-Container", - "CUUPMeasurement-Container", - &asn_OP_SEQUENCE, - asn_DEF_CUUPMeasurement_Container_tags_1, - sizeof(asn_DEF_CUUPMeasurement_Container_tags_1) - /sizeof(asn_DEF_CUUPMeasurement_Container_tags_1[0]), /* 1 */ - asn_DEF_CUUPMeasurement_Container_tags_1, /* Same as above */ - sizeof(asn_DEF_CUUPMeasurement_Container_tags_1) - /sizeof(asn_DEF_CUUPMeasurement_Container_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_CUUPMeasurement_Container_1, - 1, /* Elements count */ - &asn_SPC_CUUPMeasurement_Container_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/CallProcessBreakpoint-RANParameter-Item.c b/e2sm/lib/CallProcessBreakpoint-RANParameter-Item.c new file mode 100644 index 0000000..4825bb7 --- /dev/null +++ b/e2sm/lib/CallProcessBreakpoint-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "CallProcessBreakpoint-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_CallProcessBreakpoint_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct CallProcessBreakpoint_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct CallProcessBreakpoint_RANParameter_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct CallProcessBreakpoint_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_CallProcessBreakpoint_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_CallProcessBreakpoint_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_CallProcessBreakpoint_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_CallProcessBreakpoint_RANParameter_Item_specs_1 = { + sizeof(struct CallProcessBreakpoint_RANParameter_Item), + offsetof(struct CallProcessBreakpoint_RANParameter_Item, _asn_ctx), + asn_MAP_CallProcessBreakpoint_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_CallProcessBreakpoint_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_CallProcessBreakpoint_RANParameter_Item = { + "CallProcessBreakpoint-RANParameter-Item", + "CallProcessBreakpoint-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_CallProcessBreakpoint_RANParameter_Item_tags_1, + sizeof(asn_DEF_CallProcessBreakpoint_RANParameter_Item_tags_1) + /sizeof(asn_DEF_CallProcessBreakpoint_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_CallProcessBreakpoint_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_CallProcessBreakpoint_RANParameter_Item_tags_1) + /sizeof(asn_DEF_CallProcessBreakpoint_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_CallProcessBreakpoint_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_CallProcessBreakpoint_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/CellIdentification-RANParameter-Item.c b/e2sm/lib/CellIdentification-RANParameter-Item.c new file mode 100644 index 0000000..8c6f787 --- /dev/null +++ b/e2sm/lib/CellIdentification-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "CellIdentification-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_CellIdentification_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct CellIdentification_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct CellIdentification_RANParameter_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct CellIdentification_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_CellIdentification_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_CellIdentification_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_CellIdentification_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_CellIdentification_RANParameter_Item_specs_1 = { + sizeof(struct CellIdentification_RANParameter_Item), + offsetof(struct CellIdentification_RANParameter_Item, _asn_ctx), + asn_MAP_CellIdentification_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_CellIdentification_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_CellIdentification_RANParameter_Item = { + "CellIdentification-RANParameter-Item", + "CellIdentification-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_CellIdentification_RANParameter_Item_tags_1, + sizeof(asn_DEF_CellIdentification_RANParameter_Item_tags_1) + /sizeof(asn_DEF_CellIdentification_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_CellIdentification_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_CellIdentification_RANParameter_Item_tags_1) + /sizeof(asn_DEF_CellIdentification_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_CellIdentification_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_CellIdentification_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/CellResourceReportListItem.c b/e2sm/lib/CellResourceReportListItem.c deleted file mode 100644 index a7ce4ae..0000000 --- a/e2sm/lib/CellResourceReportListItem.c +++ /dev/null @@ -1,228 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "CellResourceReportListItem.h" - -#include "ServedPlmnPerCellListItem.h" -static int -memb_dl_TotalofAvailablePRBs_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 273)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_ul_TotalofAvailablePRBs_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 273)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_servedPlmnPerCellList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 12)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_servedPlmnPerCellList_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..12)) */}; -static asn_per_constraints_t asn_PER_type_servedPlmnPerCellList_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 12 } /* (SIZE(1..12)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_dl_TotalofAvailablePRBs_constr_3 CC_NOTUSED = { - { 2, 1 } /* (0..273) */, - -1}; -static asn_per_constraints_t asn_PER_memb_dl_TotalofAvailablePRBs_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, 0, 273 } /* (0..273) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ul_TotalofAvailablePRBs_constr_4 CC_NOTUSED = { - { 2, 1 } /* (0..273) */, - -1}; -static asn_per_constraints_t asn_PER_memb_ul_TotalofAvailablePRBs_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, 0, 273 } /* (0..273) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_servedPlmnPerCellList_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..12)) */}; -static asn_per_constraints_t asn_PER_memb_servedPlmnPerCellList_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 12 } /* (SIZE(1..12)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_servedPlmnPerCellList_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ServedPlmnPerCellListItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_servedPlmnPerCellList_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_servedPlmnPerCellList_specs_5 = { - sizeof(struct CellResourceReportListItem__servedPlmnPerCellList), - offsetof(struct CellResourceReportListItem__servedPlmnPerCellList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_servedPlmnPerCellList_5 = { - "servedPlmnPerCellList", - "servedPlmnPerCellList", - &asn_OP_SEQUENCE_OF, - asn_DEF_servedPlmnPerCellList_tags_5, - sizeof(asn_DEF_servedPlmnPerCellList_tags_5) - /sizeof(asn_DEF_servedPlmnPerCellList_tags_5[0]) - 1, /* 1 */ - asn_DEF_servedPlmnPerCellList_tags_5, /* Same as above */ - sizeof(asn_DEF_servedPlmnPerCellList_tags_5) - /sizeof(asn_DEF_servedPlmnPerCellList_tags_5[0]), /* 2 */ - { &asn_OER_type_servedPlmnPerCellList_constr_5, &asn_PER_type_servedPlmnPerCellList_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_servedPlmnPerCellList_5, - 1, /* Single element */ - &asn_SPC_servedPlmnPerCellList_specs_5 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_CellResourceReportListItem_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct CellResourceReportListItem, nRCGI), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NRCGI, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nRCGI" - }, - { ATF_POINTER, 2, offsetof(struct CellResourceReportListItem, dl_TotalofAvailablePRBs), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_dl_TotalofAvailablePRBs_constr_3, &asn_PER_memb_dl_TotalofAvailablePRBs_constr_3, memb_dl_TotalofAvailablePRBs_constraint_1 }, - 0, 0, /* No default value */ - "dl-TotalofAvailablePRBs" - }, - { ATF_POINTER, 1, offsetof(struct CellResourceReportListItem, ul_TotalofAvailablePRBs), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_ul_TotalofAvailablePRBs_constr_4, &asn_PER_memb_ul_TotalofAvailablePRBs_constr_4, memb_ul_TotalofAvailablePRBs_constraint_1 }, - 0, 0, /* No default value */ - "ul-TotalofAvailablePRBs" - }, - { ATF_NOFLAGS, 0, offsetof(struct CellResourceReportListItem, servedPlmnPerCellList), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_servedPlmnPerCellList_5, - 0, - { &asn_OER_memb_servedPlmnPerCellList_constr_5, &asn_PER_memb_servedPlmnPerCellList_constr_5, memb_servedPlmnPerCellList_constraint_1 }, - 0, 0, /* No default value */ - "servedPlmnPerCellList" - }, -}; -static const int asn_MAP_CellResourceReportListItem_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_CellResourceReportListItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_CellResourceReportListItem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nRCGI */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dl-TotalofAvailablePRBs */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ul-TotalofAvailablePRBs */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* servedPlmnPerCellList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_CellResourceReportListItem_specs_1 = { - sizeof(struct CellResourceReportListItem), - offsetof(struct CellResourceReportListItem, _asn_ctx), - asn_MAP_CellResourceReportListItem_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_CellResourceReportListItem_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_CellResourceReportListItem = { - "CellResourceReportListItem", - "CellResourceReportListItem", - &asn_OP_SEQUENCE, - asn_DEF_CellResourceReportListItem_tags_1, - sizeof(asn_DEF_CellResourceReportListItem_tags_1) - /sizeof(asn_DEF_CellResourceReportListItem_tags_1[0]), /* 1 */ - asn_DEF_CellResourceReportListItem_tags_1, /* Same as above */ - sizeof(asn_DEF_CellResourceReportListItem_tags_1) - /sizeof(asn_DEF_CellResourceReportListItem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_CellResourceReportListItem_1, - 4, /* Elements count */ - &asn_SPC_CellResourceReportListItem_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/ControlAction-RANParameter-Item.c b/e2sm/lib/ControlAction-RANParameter-Item.c new file mode 100644 index 0000000..c9cca4f --- /dev/null +++ b/e2sm/lib/ControlAction-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "ControlAction-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_ControlAction_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ControlAction_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct ControlAction_RANParameter_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct ControlAction_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_ControlAction_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_ControlAction_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ControlAction_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ControlAction_RANParameter_Item_specs_1 = { + sizeof(struct ControlAction_RANParameter_Item), + offsetof(struct ControlAction_RANParameter_Item, _asn_ctx), + asn_MAP_ControlAction_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ControlAction_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ControlAction_RANParameter_Item = { + "ControlAction-RANParameter-Item", + "ControlAction-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_ControlAction_RANParameter_Item_tags_1, + sizeof(asn_DEF_ControlAction_RANParameter_Item_tags_1) + /sizeof(asn_DEF_ControlAction_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_ControlAction_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_ControlAction_RANParameter_Item_tags_1) + /sizeof(asn_DEF_ControlAction_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ControlAction_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_ControlAction_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/ControlOutcome-RANParameter-Item.c b/e2sm/lib/ControlOutcome-RANParameter-Item.c new file mode 100644 index 0000000..30a3ff8 --- /dev/null +++ b/e2sm/lib/ControlOutcome-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "ControlOutcome-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_ControlOutcome_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ControlOutcome_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct ControlOutcome_RANParameter_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct ControlOutcome_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_ControlOutcome_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_ControlOutcome_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_ControlOutcome_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_ControlOutcome_RANParameter_Item_specs_1 = { + sizeof(struct ControlOutcome_RANParameter_Item), + offsetof(struct ControlOutcome_RANParameter_Item, _asn_ctx), + asn_MAP_ControlOutcome_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_ControlOutcome_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_ControlOutcome_RANParameter_Item = { + "ControlOutcome-RANParameter-Item", + "ControlOutcome-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_ControlOutcome_RANParameter_Item_tags_1, + sizeof(asn_DEF_ControlOutcome_RANParameter_Item_tags_1) + /sizeof(asn_DEF_ControlOutcome_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_ControlOutcome_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_ControlOutcome_RANParameter_Item_tags_1) + /sizeof(asn_DEF_ControlOutcome_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_ControlOutcome_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_ControlOutcome_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/CoreCPID.c b/e2sm/lib/CoreCPID.c new file mode 100644 index 0000000..1a5c8d4 --- /dev/null +++ b/e2sm/lib/CoreCPID.c @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "CoreCPID.h" + +#include "GUAMI.h" +#include "GUMMEI.h" +static asn_oer_constraints_t asn_OER_type_CoreCPID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_CoreCPID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_CoreCPID_1[] = { + { ATF_POINTER, 0, offsetof(struct CoreCPID, choice.fiveGC), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GUAMI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "fiveGC" + }, + { ATF_POINTER, 0, offsetof(struct CoreCPID, choice.ePC), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GUMMEI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ePC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_CoreCPID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* fiveGC */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ePC */ +}; +static asn_CHOICE_specifics_t asn_SPC_CoreCPID_specs_1 = { + sizeof(struct CoreCPID), + offsetof(struct CoreCPID, _asn_ctx), + offsetof(struct CoreCPID, present), + sizeof(((struct CoreCPID *)0)->present), + asn_MAP_CoreCPID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_CoreCPID = { + "CoreCPID", + "CoreCPID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_CoreCPID_constr_1, &asn_PER_type_CoreCPID_constr_1, CHOICE_constraint }, + asn_MBR_CoreCPID_1, + 2, /* Elements count */ + &asn_SPC_CoreCPID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/Criticality.c b/e2sm/lib/Criticality.c deleted file mode 100644 index 7f57c68..0000000 --- a/e2sm/lib/Criticality.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "Criticality.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Criticality_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_Criticality_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_Criticality_value2enum_1[] = { - { 0, 6, "reject" }, - { 1, 6, "ignore" }, - { 2, 6, "notify" } -}; -static const unsigned int asn_MAP_Criticality_enum2value_1[] = { - 1, /* ignore(1) */ - 2, /* notify(2) */ - 0 /* reject(0) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_Criticality_specs_1 = { - asn_MAP_Criticality_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Criticality_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Criticality_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Criticality = { - "Criticality", - "Criticality", - &asn_OP_NativeEnumerated, - asn_DEF_Criticality_tags_1, - sizeof(asn_DEF_Criticality_tags_1) - /sizeof(asn_DEF_Criticality_tags_1[0]), /* 1 */ - asn_DEF_Criticality_tags_1, /* Same as above */ - sizeof(asn_DEF_Criticality_tags_1) - /sizeof(asn_DEF_Criticality_tags_1[0]), /* 1 */ - { &asn_OER_type_Criticality_constr_1, &asn_PER_type_Criticality_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Criticality_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/ProtocolIE-ID.c b/e2sm/lib/E-UTRA-ARFCN.c similarity index 54% rename from e2sm/lib/ProtocolIE-ID.c rename to e2sm/lib/E-UTRA-ARFCN.c index fd10d9c..6fa8a7e 100644 --- a/e2sm/lib/ProtocolIE-ID.c +++ b/e2sm/lib/E-UTRA-ARFCN.c @@ -1,14 +1,14 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "ProtocolIE-ID.h" +#include "E-UTRA-ARFCN.h" int -ProtocolIE_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +E_UTRA_ARFCN_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; @@ -36,28 +36,28 @@ ProtocolIE_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using NativeInteger, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_ProtocolIE_ID_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_E_UTRA_ARFCN_constr_1 CC_NOTUSED = { { 2, 1 } /* (0..65535) */, -1}; -asn_per_constraints_t asn_PER_type_ProtocolIE_ID_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_E_UTRA_ARFCN_constr_1 CC_NOTUSED = { { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -static const ber_tlv_tag_t asn_DEF_ProtocolIE_ID_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_E_UTRA_ARFCN_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_ProtocolIE_ID = { - "ProtocolIE-ID", - "ProtocolIE-ID", +asn_TYPE_descriptor_t asn_DEF_E_UTRA_ARFCN = { + "E-UTRA-ARFCN", + "E-UTRA-ARFCN", &asn_OP_NativeInteger, - asn_DEF_ProtocolIE_ID_tags_1, - sizeof(asn_DEF_ProtocolIE_ID_tags_1) - /sizeof(asn_DEF_ProtocolIE_ID_tags_1[0]), /* 1 */ - asn_DEF_ProtocolIE_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_ProtocolIE_ID_tags_1) - /sizeof(asn_DEF_ProtocolIE_ID_tags_1[0]), /* 1 */ - { &asn_OER_type_ProtocolIE_ID_constr_1, &asn_PER_type_ProtocolIE_ID_constr_1, ProtocolIE_ID_constraint }, + asn_DEF_E_UTRA_ARFCN_tags_1, + sizeof(asn_DEF_E_UTRA_ARFCN_tags_1) + /sizeof(asn_DEF_E_UTRA_ARFCN_tags_1[0]), /* 1 */ + asn_DEF_E_UTRA_ARFCN_tags_1, /* Same as above */ + sizeof(asn_DEF_E_UTRA_ARFCN_tags_1) + /sizeof(asn_DEF_E_UTRA_ARFCN_tags_1[0]), /* 1 */ + { &asn_OER_type_E_UTRA_ARFCN_constr_1, &asn_PER_type_E_UTRA_ARFCN_constr_1, E_UTRA_ARFCN_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/e2sm/lib/SINR-Range.c b/e2sm/lib/E-UTRA-PCI.c similarity index 50% rename from e2sm/lib/SINR-Range.c rename to e2sm/lib/E-UTRA-PCI.c index 5c1f4ba..4d9f07d 100644 --- a/e2sm/lib/SINR-Range.c +++ b/e2sm/lib/E-UTRA-PCI.c @@ -1,14 +1,14 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "SINR-Range.h" +#include "E-UTRA-PCI.h" int -SINR_Range_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +E_UTRA_PCI_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; @@ -21,7 +21,7 @@ SINR_Range_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, value = *(const long *)sptr; - if((value >= 0 && value <= 127)) { + if((value >= 0 && value <= 503)) { /* Constraint check succeeded */ return 0; } else { @@ -36,28 +36,28 @@ SINR_Range_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using NativeInteger, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_SINR_Range_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, +static asn_oer_constraints_t asn_OER_type_E_UTRA_PCI_constr_1 CC_NOTUSED = { + { 0, 0 }, -1}; -asn_per_constraints_t asn_PER_type_SINR_Range_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, +asn_per_constraints_t asn_PER_type_E_UTRA_PCI_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 9, 9, 0, 503 } /* (0..503,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -static const ber_tlv_tag_t asn_DEF_SINR_Range_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_E_UTRA_PCI_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_SINR_Range = { - "SINR-Range", - "SINR-Range", +asn_TYPE_descriptor_t asn_DEF_E_UTRA_PCI = { + "E-UTRA-PCI", + "E-UTRA-PCI", &asn_OP_NativeInteger, - asn_DEF_SINR_Range_tags_1, - sizeof(asn_DEF_SINR_Range_tags_1) - /sizeof(asn_DEF_SINR_Range_tags_1[0]), /* 1 */ - asn_DEF_SINR_Range_tags_1, /* Same as above */ - sizeof(asn_DEF_SINR_Range_tags_1) - /sizeof(asn_DEF_SINR_Range_tags_1[0]), /* 1 */ - { &asn_OER_type_SINR_Range_constr_1, &asn_PER_type_SINR_Range_constr_1, SINR_Range_constraint }, + asn_DEF_E_UTRA_PCI_tags_1, + sizeof(asn_DEF_E_UTRA_PCI_tags_1) + /sizeof(asn_DEF_E_UTRA_PCI_tags_1[0]), /* 1 */ + asn_DEF_E_UTRA_PCI_tags_1, /* Same as above */ + sizeof(asn_DEF_E_UTRA_PCI_tags_1) + /sizeof(asn_DEF_E_UTRA_PCI_tags_1[0]), /* 1 */ + { &asn_OER_type_E_UTRA_PCI_constr_1, &asn_PER_type_E_UTRA_PCI_constr_1, E_UTRA_PCI_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/e2sm/lib/E-UTRA-TAC.c b/e2sm/lib/E-UTRA-TAC.c new file mode 100644 index 0000000..55ad809 --- /dev/null +++ b/e2sm/lib/E-UTRA-TAC.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E-UTRA-TAC.h" + +int +E_UTRA_TAC_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_E_UTRA_TAC_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +asn_per_constraints_t asn_PER_type_E_UTRA_TAC_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_E_UTRA_TAC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_E_UTRA_TAC = { + "E-UTRA-TAC", + "E-UTRA-TAC", + &asn_OP_OCTET_STRING, + asn_DEF_E_UTRA_TAC_tags_1, + sizeof(asn_DEF_E_UTRA_TAC_tags_1) + /sizeof(asn_DEF_E_UTRA_TAC_tags_1[0]), /* 1 */ + asn_DEF_E_UTRA_TAC_tags_1, /* Same as above */ + sizeof(asn_DEF_E_UTRA_TAC_tags_1) + /sizeof(asn_DEF_E_UTRA_TAC_tags_1[0]), /* 1 */ + { &asn_OER_type_E_UTRA_TAC_constr_1, &asn_PER_type_E_UTRA_TAC_constr_1, E_UTRA_TAC_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-KPM-ActionDefinition-Format1.c b/e2sm/lib/E2SM-KPM-ActionDefinition-Format1.c deleted file mode 100644 index 5d94a4d..0000000 --- a/e2sm/lib/E2SM-KPM-ActionDefinition-Format1.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "E2SM-KPM-ActionDefinition-Format1.h" - -asn_TYPE_member_t asn_MBR_E2SM_KPM_ActionDefinition_Format1_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2SM_KPM_ActionDefinition_Format1, cellObjID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CellObjectID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "cellObjID" - }, - { ATF_NOFLAGS, 0, offsetof(struct E2SM_KPM_ActionDefinition_Format1, measInfoList), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasurementInfoList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measInfoList" - }, -}; -static const ber_tlv_tag_t asn_DEF_E2SM_KPM_ActionDefinition_Format1_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_KPM_ActionDefinition_Format1_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cellObjID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* measInfoList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_ActionDefinition_Format1_specs_1 = { - sizeof(struct E2SM_KPM_ActionDefinition_Format1), - offsetof(struct E2SM_KPM_ActionDefinition_Format1, _asn_ctx), - asn_MAP_E2SM_KPM_ActionDefinition_Format1_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_ActionDefinition_Format1 = { - "E2SM-KPM-ActionDefinition-Format1", - "E2SM-KPM-ActionDefinition-Format1", - &asn_OP_SEQUENCE, - asn_DEF_E2SM_KPM_ActionDefinition_Format1_tags_1, - sizeof(asn_DEF_E2SM_KPM_ActionDefinition_Format1_tags_1) - /sizeof(asn_DEF_E2SM_KPM_ActionDefinition_Format1_tags_1[0]), /* 1 */ - asn_DEF_E2SM_KPM_ActionDefinition_Format1_tags_1, /* Same as above */ - sizeof(asn_DEF_E2SM_KPM_ActionDefinition_Format1_tags_1) - /sizeof(asn_DEF_E2SM_KPM_ActionDefinition_Format1_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_E2SM_KPM_ActionDefinition_Format1_1, - 2, /* Elements count */ - &asn_SPC_E2SM_KPM_ActionDefinition_Format1_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/E2SM-KPM-ActionDefinition.c b/e2sm/lib/E2SM-KPM-ActionDefinition.c deleted file mode 100644 index 1566aa5..0000000 --- a/e2sm/lib/E2SM-KPM-ActionDefinition.c +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "E2SM-KPM-ActionDefinition.h" - -#include "E2SM-KPM-ActionDefinition-Format1.h" -static asn_oer_constraints_t asn_OER_type_actionDefinition_formats_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_actionDefinition_formats_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_actionDefinition_formats_3[] = { - { ATF_POINTER, 0, offsetof(struct E2SM_KPM_ActionDefinition__actionDefinition_formats, choice.actionDefinition_Format1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_E2SM_KPM_ActionDefinition_Format1, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "actionDefinition-Format1" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_actionDefinition_formats_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* actionDefinition-Format1 */ -}; -static asn_CHOICE_specifics_t asn_SPC_actionDefinition_formats_specs_3 = { - sizeof(struct E2SM_KPM_ActionDefinition__actionDefinition_formats), - offsetof(struct E2SM_KPM_ActionDefinition__actionDefinition_formats, _asn_ctx), - offsetof(struct E2SM_KPM_ActionDefinition__actionDefinition_formats, present), - sizeof(((struct E2SM_KPM_ActionDefinition__actionDefinition_formats *)0)->present), - asn_MAP_actionDefinition_formats_tag2el_3, - 1, /* Count of tags in the map */ - 0, 0, - 1 /* Extensions start */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_actionDefinition_formats_3 = { - "actionDefinition-formats", - "actionDefinition-formats", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_actionDefinition_formats_constr_3, &asn_PER_type_actionDefinition_formats_constr_3, CHOICE_constraint }, - asn_MBR_actionDefinition_formats_3, - 1, /* Elements count */ - &asn_SPC_actionDefinition_formats_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_E2SM_KPM_ActionDefinition_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2SM_KPM_ActionDefinition, ric_ReportStyle_Type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Style_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ReportStyle-Type" - }, - { ATF_NOFLAGS, 0, offsetof(struct E2SM_KPM_ActionDefinition, actionDefinition_formats), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_actionDefinition_formats_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "actionDefinition-formats" - }, -}; -static const ber_tlv_tag_t asn_DEF_E2SM_KPM_ActionDefinition_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_KPM_ActionDefinition_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-ReportStyle-Type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* actionDefinition-formats */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_ActionDefinition_specs_1 = { - sizeof(struct E2SM_KPM_ActionDefinition), - offsetof(struct E2SM_KPM_ActionDefinition, _asn_ctx), - asn_MAP_E2SM_KPM_ActionDefinition_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_ActionDefinition = { - "E2SM-KPM-ActionDefinition", - "E2SM-KPM-ActionDefinition", - &asn_OP_SEQUENCE, - asn_DEF_E2SM_KPM_ActionDefinition_tags_1, - sizeof(asn_DEF_E2SM_KPM_ActionDefinition_tags_1) - /sizeof(asn_DEF_E2SM_KPM_ActionDefinition_tags_1[0]), /* 1 */ - asn_DEF_E2SM_KPM_ActionDefinition_tags_1, /* Same as above */ - sizeof(asn_DEF_E2SM_KPM_ActionDefinition_tags_1) - /sizeof(asn_DEF_E2SM_KPM_ActionDefinition_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_E2SM_KPM_ActionDefinition_1, - 2, /* Elements count */ - &asn_SPC_E2SM_KPM_ActionDefinition_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/E2SM-KPM-EventTriggerDefinition-Format1.c b/e2sm/lib/E2SM-KPM-EventTriggerDefinition-Format1.c deleted file mode 100644 index 314e7f6..0000000 --- a/e2sm/lib/E2SM-KPM-EventTriggerDefinition-Format1.c +++ /dev/null @@ -1,132 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "E2SM-KPM-EventTriggerDefinition-Format1.h" - -#include "Trigger-ConditionIE-Item.h" -static int -memb_policyTest_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 15)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_policyTest_List_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..15)) */}; -static asn_per_constraints_t asn_PER_type_policyTest_List_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 15 } /* (SIZE(1..15)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_policyTest_List_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..15)) */}; -static asn_per_constraints_t asn_PER_memb_policyTest_List_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 4, 4, 1, 15 } /* (SIZE(1..15)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_policyTest_List_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_Trigger_ConditionIE_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_policyTest_List_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_policyTest_List_specs_2 = { - sizeof(struct E2SM_KPM_EventTriggerDefinition_Format1__policyTest_List), - offsetof(struct E2SM_KPM_EventTriggerDefinition_Format1__policyTest_List, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_policyTest_List_2 = { - "policyTest-List", - "policyTest-List", - &asn_OP_SEQUENCE_OF, - asn_DEF_policyTest_List_tags_2, - sizeof(asn_DEF_policyTest_List_tags_2) - /sizeof(asn_DEF_policyTest_List_tags_2[0]) - 1, /* 1 */ - asn_DEF_policyTest_List_tags_2, /* Same as above */ - sizeof(asn_DEF_policyTest_List_tags_2) - /sizeof(asn_DEF_policyTest_List_tags_2[0]), /* 2 */ - { &asn_OER_type_policyTest_List_constr_2, &asn_PER_type_policyTest_List_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_policyTest_List_2, - 1, /* Single element */ - &asn_SPC_policyTest_List_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_E2SM_KPM_EventTriggerDefinition_Format1_1[] = { - { ATF_POINTER, 1, offsetof(struct E2SM_KPM_EventTriggerDefinition_Format1, policyTest_List), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_policyTest_List_2, - 0, - { &asn_OER_memb_policyTest_List_constr_2, &asn_PER_memb_policyTest_List_constr_2, memb_policyTest_List_constraint_1 }, - 0, 0, /* No default value */ - "policyTest-List" - }, -}; -static const int asn_MAP_E2SM_KPM_EventTriggerDefinition_Format1_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_KPM_EventTriggerDefinition_Format1_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* policyTest-List */ -}; -asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_EventTriggerDefinition_Format1_specs_1 = { - sizeof(struct E2SM_KPM_EventTriggerDefinition_Format1), - offsetof(struct E2SM_KPM_EventTriggerDefinition_Format1, _asn_ctx), - asn_MAP_E2SM_KPM_EventTriggerDefinition_Format1_tag2el_1, - 1, /* Count of tags in the map */ - asn_MAP_E2SM_KPM_EventTriggerDefinition_Format1_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1 = { - "E2SM-KPM-EventTriggerDefinition-Format1", - "E2SM-KPM-EventTriggerDefinition-Format1", - &asn_OP_SEQUENCE, - asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1_tags_1, - sizeof(asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1_tags_1) - /sizeof(asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1_tags_1[0]), /* 1 */ - asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1_tags_1, /* Same as above */ - sizeof(asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1_tags_1) - /sizeof(asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_E2SM_KPM_EventTriggerDefinition_Format1_1, - 1, /* Elements count */ - &asn_SPC_E2SM_KPM_EventTriggerDefinition_Format1_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/E2SM-KPM-EventTriggerDefinition.c b/e2sm/lib/E2SM-KPM-EventTriggerDefinition.c deleted file mode 100644 index 144313d..0000000 --- a/e2sm/lib/E2SM-KPM-EventTriggerDefinition.c +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "E2SM-KPM-EventTriggerDefinition.h" - -#include "E2SM-KPM-EventTriggerDefinition-Format1.h" -static asn_oer_constraints_t asn_OER_type_E2SM_KPM_EventTriggerDefinition_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_E2SM_KPM_EventTriggerDefinition_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_E2SM_KPM_EventTriggerDefinition_1[] = { - { ATF_POINTER, 0, offsetof(struct E2SM_KPM_EventTriggerDefinition, choice.eventDefinition_Format1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_E2SM_KPM_EventTriggerDefinition_Format1, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "eventDefinition-Format1" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_KPM_EventTriggerDefinition_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* eventDefinition-Format1 */ -}; -static asn_CHOICE_specifics_t asn_SPC_E2SM_KPM_EventTriggerDefinition_specs_1 = { - sizeof(struct E2SM_KPM_EventTriggerDefinition), - offsetof(struct E2SM_KPM_EventTriggerDefinition, _asn_ctx), - offsetof(struct E2SM_KPM_EventTriggerDefinition, present), - sizeof(((struct E2SM_KPM_EventTriggerDefinition *)0)->present), - asn_MAP_E2SM_KPM_EventTriggerDefinition_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, - 1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_EventTriggerDefinition = { - "E2SM-KPM-EventTriggerDefinition", - "E2SM-KPM-EventTriggerDefinition", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_E2SM_KPM_EventTriggerDefinition_constr_1, &asn_PER_type_E2SM_KPM_EventTriggerDefinition_constr_1, CHOICE_constraint }, - asn_MBR_E2SM_KPM_EventTriggerDefinition_1, - 1, /* Elements count */ - &asn_SPC_E2SM_KPM_EventTriggerDefinition_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/E2SM-KPM-IndicationHeader-Format1.c b/e2sm/lib/E2SM-KPM-IndicationHeader-Format1.c deleted file mode 100644 index be23bda..0000000 --- a/e2sm/lib/E2SM-KPM-IndicationHeader-Format1.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "E2SM-KPM-IndicationHeader-Format1.h" - -asn_TYPE_member_t asn_MBR_E2SM_KPM_IndicationHeader_Format1_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2SM_KPM_IndicationHeader_Format1, collectionStartTime), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_TimeStamp, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "collectionStartTime" - }, - { ATF_NOFLAGS, 0, offsetof(struct E2SM_KPM_IndicationHeader_Format1, id_GlobalE2node_ID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_GlobalE2node_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "id-GlobalE2node-ID" - }, -}; -static const ber_tlv_tag_t asn_DEF_E2SM_KPM_IndicationHeader_Format1_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_KPM_IndicationHeader_Format1_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* collectionStartTime */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* id-GlobalE2node-ID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_IndicationHeader_Format1_specs_1 = { - sizeof(struct E2SM_KPM_IndicationHeader_Format1), - offsetof(struct E2SM_KPM_IndicationHeader_Format1, _asn_ctx), - asn_MAP_E2SM_KPM_IndicationHeader_Format1_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_IndicationHeader_Format1 = { - "E2SM-KPM-IndicationHeader-Format1", - "E2SM-KPM-IndicationHeader-Format1", - &asn_OP_SEQUENCE, - asn_DEF_E2SM_KPM_IndicationHeader_Format1_tags_1, - sizeof(asn_DEF_E2SM_KPM_IndicationHeader_Format1_tags_1) - /sizeof(asn_DEF_E2SM_KPM_IndicationHeader_Format1_tags_1[0]), /* 1 */ - asn_DEF_E2SM_KPM_IndicationHeader_Format1_tags_1, /* Same as above */ - sizeof(asn_DEF_E2SM_KPM_IndicationHeader_Format1_tags_1) - /sizeof(asn_DEF_E2SM_KPM_IndicationHeader_Format1_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_E2SM_KPM_IndicationHeader_Format1_1, - 2, /* Elements count */ - &asn_SPC_E2SM_KPM_IndicationHeader_Format1_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/E2SM-KPM-IndicationHeader.c b/e2sm/lib/E2SM-KPM-IndicationHeader.c deleted file mode 100644 index 40f09a3..0000000 --- a/e2sm/lib/E2SM-KPM-IndicationHeader.c +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "E2SM-KPM-IndicationHeader.h" - -#include "E2SM-KPM-IndicationHeader-Format1.h" -static asn_oer_constraints_t asn_OER_type_E2SM_KPM_IndicationHeader_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_E2SM_KPM_IndicationHeader_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_E2SM_KPM_IndicationHeader_1[] = { - { ATF_POINTER, 0, offsetof(struct E2SM_KPM_IndicationHeader, choice.indicationHeader_Format1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_E2SM_KPM_IndicationHeader_Format1, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "indicationHeader-Format1" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_KPM_IndicationHeader_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* indicationHeader-Format1 */ -}; -static asn_CHOICE_specifics_t asn_SPC_E2SM_KPM_IndicationHeader_specs_1 = { - sizeof(struct E2SM_KPM_IndicationHeader), - offsetof(struct E2SM_KPM_IndicationHeader, _asn_ctx), - offsetof(struct E2SM_KPM_IndicationHeader, present), - sizeof(((struct E2SM_KPM_IndicationHeader *)0)->present), - asn_MAP_E2SM_KPM_IndicationHeader_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, - 1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_IndicationHeader = { - "E2SM-KPM-IndicationHeader", - "E2SM-KPM-IndicationHeader", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_E2SM_KPM_IndicationHeader_constr_1, &asn_PER_type_E2SM_KPM_IndicationHeader_constr_1, CHOICE_constraint }, - asn_MBR_E2SM_KPM_IndicationHeader_1, - 1, /* Elements count */ - &asn_SPC_E2SM_KPM_IndicationHeader_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/E2SM-KPM-IndicationMessage-Format1.c b/e2sm/lib/E2SM-KPM-IndicationMessage-Format1.c deleted file mode 100644 index ea21e14..0000000 --- a/e2sm/lib/E2SM-KPM-IndicationMessage-Format1.c +++ /dev/null @@ -1,322 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "E2SM-KPM-IndicationMessage-Format1.h" - -#include "PM-Containers-Item.h" -#include "PM-Info-Item.h" -#include "PerUE-PM-Item.h" -static int -memb_pm_Containers_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 8)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_list_of_PM_Information_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 2147483647)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_list_of_matched_UEs_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 65535)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_pm_Containers_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -static asn_per_constraints_t asn_PER_type_pm_Containers_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_list_of_PM_Information_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..2147483647)) */}; -static asn_per_constraints_t asn_PER_type_list_of_PM_Information_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 31, -1, 1, 2147483647 } /* (SIZE(1..2147483647)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_list_of_matched_UEs_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..65535)) */}; -static asn_per_constraints_t asn_PER_type_list_of_matched_UEs_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_pm_Containers_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -static asn_per_constraints_t asn_PER_memb_pm_Containers_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_list_of_PM_Information_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..2147483647)) */}; -static asn_per_constraints_t asn_PER_memb_list_of_PM_Information_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 31, -1, 1, 2147483647 } /* (SIZE(1..2147483647)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_list_of_matched_UEs_constr_7 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..65535)) */}; -static asn_per_constraints_t asn_PER_memb_list_of_matched_UEs_constr_7 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_pm_Containers_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PM_Containers_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_pm_Containers_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_pm_Containers_specs_2 = { - sizeof(struct E2SM_KPM_IndicationMessage_Format1__pm_Containers), - offsetof(struct E2SM_KPM_IndicationMessage_Format1__pm_Containers, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_pm_Containers_2 = { - "pm-Containers", - "pm-Containers", - &asn_OP_SEQUENCE_OF, - asn_DEF_pm_Containers_tags_2, - sizeof(asn_DEF_pm_Containers_tags_2) - /sizeof(asn_DEF_pm_Containers_tags_2[0]) - 1, /* 1 */ - asn_DEF_pm_Containers_tags_2, /* Same as above */ - sizeof(asn_DEF_pm_Containers_tags_2) - /sizeof(asn_DEF_pm_Containers_tags_2[0]), /* 2 */ - { &asn_OER_type_pm_Containers_constr_2, &asn_PER_type_pm_Containers_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_pm_Containers_2, - 1, /* Single element */ - &asn_SPC_pm_Containers_specs_2 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_list_of_PM_Information_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PM_Info_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_list_of_PM_Information_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_list_of_PM_Information_specs_5 = { - sizeof(struct E2SM_KPM_IndicationMessage_Format1__list_of_PM_Information), - offsetof(struct E2SM_KPM_IndicationMessage_Format1__list_of_PM_Information, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_list_of_PM_Information_5 = { - "list-of-PM-Information", - "list-of-PM-Information", - &asn_OP_SEQUENCE_OF, - asn_DEF_list_of_PM_Information_tags_5, - sizeof(asn_DEF_list_of_PM_Information_tags_5) - /sizeof(asn_DEF_list_of_PM_Information_tags_5[0]) - 1, /* 1 */ - asn_DEF_list_of_PM_Information_tags_5, /* Same as above */ - sizeof(asn_DEF_list_of_PM_Information_tags_5) - /sizeof(asn_DEF_list_of_PM_Information_tags_5[0]), /* 2 */ - { &asn_OER_type_list_of_PM_Information_constr_5, &asn_PER_type_list_of_PM_Information_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_list_of_PM_Information_5, - 1, /* Single element */ - &asn_SPC_list_of_PM_Information_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_list_of_matched_UEs_7[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PerUE_PM_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_list_of_matched_UEs_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_list_of_matched_UEs_specs_7 = { - sizeof(struct E2SM_KPM_IndicationMessage_Format1__list_of_matched_UEs), - offsetof(struct E2SM_KPM_IndicationMessage_Format1__list_of_matched_UEs, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_list_of_matched_UEs_7 = { - "list-of-matched-UEs", - "list-of-matched-UEs", - &asn_OP_SEQUENCE_OF, - asn_DEF_list_of_matched_UEs_tags_7, - sizeof(asn_DEF_list_of_matched_UEs_tags_7) - /sizeof(asn_DEF_list_of_matched_UEs_tags_7[0]) - 1, /* 1 */ - asn_DEF_list_of_matched_UEs_tags_7, /* Same as above */ - sizeof(asn_DEF_list_of_matched_UEs_tags_7) - /sizeof(asn_DEF_list_of_matched_UEs_tags_7[0]), /* 2 */ - { &asn_OER_type_list_of_matched_UEs_constr_7, &asn_PER_type_list_of_matched_UEs_constr_7, SEQUENCE_OF_constraint }, - asn_MBR_list_of_matched_UEs_7, - 1, /* Single element */ - &asn_SPC_list_of_matched_UEs_specs_7 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_E2SM_KPM_IndicationMessage_Format1_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2SM_KPM_IndicationMessage_Format1, pm_Containers), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_pm_Containers_2, - 0, - { &asn_OER_memb_pm_Containers_constr_2, &asn_PER_memb_pm_Containers_constr_2, memb_pm_Containers_constraint_1 }, - 0, 0, /* No default value */ - "pm-Containers" - }, - { ATF_NOFLAGS, 0, offsetof(struct E2SM_KPM_IndicationMessage_Format1, cellObjectID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CellObjectID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "cellObjectID" - }, - { ATF_POINTER, 2, offsetof(struct E2SM_KPM_IndicationMessage_Format1, list_of_PM_Information), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - 0, - &asn_DEF_list_of_PM_Information_5, - 0, - { &asn_OER_memb_list_of_PM_Information_constr_5, &asn_PER_memb_list_of_PM_Information_constr_5, memb_list_of_PM_Information_constraint_1 }, - 0, 0, /* No default value */ - "list-of-PM-Information" - }, - { ATF_POINTER, 1, offsetof(struct E2SM_KPM_IndicationMessage_Format1, list_of_matched_UEs), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - 0, - &asn_DEF_list_of_matched_UEs_7, - 0, - { &asn_OER_memb_list_of_matched_UEs_constr_7, &asn_PER_memb_list_of_matched_UEs_constr_7, memb_list_of_matched_UEs_constraint_1 }, - 0, 0, /* No default value */ - "list-of-matched-UEs" - }, -}; -static const int asn_MAP_E2SM_KPM_IndicationMessage_Format1_oms_1[] = { 2, 3 }; -static const ber_tlv_tag_t asn_DEF_E2SM_KPM_IndicationMessage_Format1_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_KPM_IndicationMessage_Format1_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pm-Containers */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cellObjectID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* list-of-PM-Information */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* list-of-matched-UEs */ -}; -asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_IndicationMessage_Format1_specs_1 = { - sizeof(struct E2SM_KPM_IndicationMessage_Format1), - offsetof(struct E2SM_KPM_IndicationMessage_Format1, _asn_ctx), - asn_MAP_E2SM_KPM_IndicationMessage_Format1_tag2el_1, - 4, /* Count of tags in the map */ - asn_MAP_E2SM_KPM_IndicationMessage_Format1_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_IndicationMessage_Format1 = { - "E2SM-KPM-IndicationMessage-Format1", - "E2SM-KPM-IndicationMessage-Format1", - &asn_OP_SEQUENCE, - asn_DEF_E2SM_KPM_IndicationMessage_Format1_tags_1, - sizeof(asn_DEF_E2SM_KPM_IndicationMessage_Format1_tags_1) - /sizeof(asn_DEF_E2SM_KPM_IndicationMessage_Format1_tags_1[0]), /* 1 */ - asn_DEF_E2SM_KPM_IndicationMessage_Format1_tags_1, /* Same as above */ - sizeof(asn_DEF_E2SM_KPM_IndicationMessage_Format1_tags_1) - /sizeof(asn_DEF_E2SM_KPM_IndicationMessage_Format1_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_E2SM_KPM_IndicationMessage_Format1_1, - 4, /* Elements count */ - &asn_SPC_E2SM_KPM_IndicationMessage_Format1_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/E2SM-KPM-IndicationMessage.c b/e2sm/lib/E2SM-KPM-IndicationMessage.c deleted file mode 100644 index 0b1e701..0000000 --- a/e2sm/lib/E2SM-KPM-IndicationMessage.c +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "E2SM-KPM-IndicationMessage.h" - -#include "E2SM-KPM-IndicationMessage-Format1.h" -static asn_oer_constraints_t asn_OER_type_E2SM_KPM_IndicationMessage_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_E2SM_KPM_IndicationMessage_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_E2SM_KPM_IndicationMessage_1[] = { - { ATF_POINTER, 0, offsetof(struct E2SM_KPM_IndicationMessage, choice.indicationMessage_Format1), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_E2SM_KPM_IndicationMessage_Format1, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "indicationMessage-Format1" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_KPM_IndicationMessage_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* indicationMessage-Format1 */ -}; -static asn_CHOICE_specifics_t asn_SPC_E2SM_KPM_IndicationMessage_specs_1 = { - sizeof(struct E2SM_KPM_IndicationMessage), - offsetof(struct E2SM_KPM_IndicationMessage, _asn_ctx), - offsetof(struct E2SM_KPM_IndicationMessage, present), - sizeof(((struct E2SM_KPM_IndicationMessage *)0)->present), - asn_MAP_E2SM_KPM_IndicationMessage_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, - 1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_IndicationMessage = { - "E2SM-KPM-IndicationMessage", - "E2SM-KPM-IndicationMessage", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_E2SM_KPM_IndicationMessage_constr_1, &asn_PER_type_E2SM_KPM_IndicationMessage_constr_1, CHOICE_constraint }, - asn_MBR_E2SM_KPM_IndicationMessage_1, - 1, /* Elements count */ - &asn_SPC_E2SM_KPM_IndicationMessage_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/E2SM-KPM-RANFunctionDefinition.c b/e2sm/lib/E2SM-KPM-RANFunctionDefinition.c deleted file mode 100644 index d87fe15..0000000 --- a/e2sm/lib/E2SM-KPM-RANFunctionDefinition.c +++ /dev/null @@ -1,232 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "E2SM-KPM-RANFunctionDefinition.h" - -#include "RIC-EventTriggerStyle-Item.h" -#include "RIC-ReportStyle-Item.h" -static int -memb_ric_EventTriggerStyle_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 63)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_ric_ReportStyle_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 63)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_ric_EventTriggerStyle_List_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_type_ric_EventTriggerStyle_List_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_ric_ReportStyle_List_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_type_ric_ReportStyle_List_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ric_EventTriggerStyle_List_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_memb_ric_EventTriggerStyle_List_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ric_ReportStyle_List_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_memb_ric_ReportStyle_List_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_ric_EventTriggerStyle_List_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RIC_EventTriggerStyle_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ric_EventTriggerStyle_List_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ric_EventTriggerStyle_List_specs_3 = { - sizeof(struct E2SM_KPM_RANFunctionDefinition__ric_EventTriggerStyle_List), - offsetof(struct E2SM_KPM_RANFunctionDefinition__ric_EventTriggerStyle_List, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_ric_EventTriggerStyle_List_3 = { - "ric-EventTriggerStyle-List", - "ric-EventTriggerStyle-List", - &asn_OP_SEQUENCE_OF, - asn_DEF_ric_EventTriggerStyle_List_tags_3, - sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_3) - /sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_3[0]) - 1, /* 1 */ - asn_DEF_ric_EventTriggerStyle_List_tags_3, /* Same as above */ - sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_3) - /sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_3[0]), /* 2 */ - { &asn_OER_type_ric_EventTriggerStyle_List_constr_3, &asn_PER_type_ric_EventTriggerStyle_List_constr_3, SEQUENCE_OF_constraint }, - asn_MBR_ric_EventTriggerStyle_List_3, - 1, /* Single element */ - &asn_SPC_ric_EventTriggerStyle_List_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_ric_ReportStyle_List_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RIC_ReportStyle_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ric_ReportStyle_List_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ric_ReportStyle_List_specs_5 = { - sizeof(struct E2SM_KPM_RANFunctionDefinition__ric_ReportStyle_List), - offsetof(struct E2SM_KPM_RANFunctionDefinition__ric_ReportStyle_List, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_ric_ReportStyle_List_5 = { - "ric-ReportStyle-List", - "ric-ReportStyle-List", - &asn_OP_SEQUENCE_OF, - asn_DEF_ric_ReportStyle_List_tags_5, - sizeof(asn_DEF_ric_ReportStyle_List_tags_5) - /sizeof(asn_DEF_ric_ReportStyle_List_tags_5[0]) - 1, /* 1 */ - asn_DEF_ric_ReportStyle_List_tags_5, /* Same as above */ - sizeof(asn_DEF_ric_ReportStyle_List_tags_5) - /sizeof(asn_DEF_ric_ReportStyle_List_tags_5[0]), /* 2 */ - { &asn_OER_type_ric_ReportStyle_List_constr_5, &asn_PER_type_ric_ReportStyle_List_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_ric_ReportStyle_List_5, - 1, /* Single element */ - &asn_SPC_ric_ReportStyle_List_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_E2SM_KPM_RANFunctionDefinition_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2SM_KPM_RANFunctionDefinition, ranFunction_Name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RANfunction_Name, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ranFunction-Name" - }, - { ATF_POINTER, 2, offsetof(struct E2SM_KPM_RANFunctionDefinition, ric_EventTriggerStyle_List), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_ric_EventTriggerStyle_List_3, - 0, - { &asn_OER_memb_ric_EventTriggerStyle_List_constr_3, &asn_PER_memb_ric_EventTriggerStyle_List_constr_3, memb_ric_EventTriggerStyle_List_constraint_1 }, - 0, 0, /* No default value */ - "ric-EventTriggerStyle-List" - }, - { ATF_POINTER, 1, offsetof(struct E2SM_KPM_RANFunctionDefinition, ric_ReportStyle_List), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - 0, - &asn_DEF_ric_ReportStyle_List_5, - 0, - { &asn_OER_memb_ric_ReportStyle_List_constr_5, &asn_PER_memb_ric_ReportStyle_List_constr_5, memb_ric_ReportStyle_List_constraint_1 }, - 0, 0, /* No default value */ - "ric-ReportStyle-List" - }, -}; -static const int asn_MAP_E2SM_KPM_RANFunctionDefinition_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_E2SM_KPM_RANFunctionDefinition_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_KPM_RANFunctionDefinition_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranFunction-Name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-EventTriggerStyle-List */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ric-ReportStyle-List */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_E2SM_KPM_RANFunctionDefinition_specs_1 = { - sizeof(struct E2SM_KPM_RANFunctionDefinition), - offsetof(struct E2SM_KPM_RANFunctionDefinition, _asn_ctx), - asn_MAP_E2SM_KPM_RANFunctionDefinition_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_E2SM_KPM_RANFunctionDefinition_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_E2SM_KPM_RANFunctionDefinition = { - "E2SM-KPM-RANFunctionDefinition", - "E2SM-KPM-RANFunctionDefinition", - &asn_OP_SEQUENCE, - asn_DEF_E2SM_KPM_RANFunctionDefinition_tags_1, - sizeof(asn_DEF_E2SM_KPM_RANFunctionDefinition_tags_1) - /sizeof(asn_DEF_E2SM_KPM_RANFunctionDefinition_tags_1[0]), /* 1 */ - asn_DEF_E2SM_KPM_RANFunctionDefinition_tags_1, /* Same as above */ - sizeof(asn_DEF_E2SM_KPM_RANFunctionDefinition_tags_1) - /sizeof(asn_DEF_E2SM_KPM_RANFunctionDefinition_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_E2SM_KPM_RANFunctionDefinition_1, - 3, /* Elements count */ - &asn_SPC_E2SM_KPM_RANFunctionDefinition_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/E2SM-RC-ActionDefinition-Format1-Item.c b/e2sm/lib/E2SM-RC-ActionDefinition-Format1-Item.c new file mode 100644 index 0000000..ae6439a --- /dev/null +++ b/e2sm/lib/E2SM-RC-ActionDefinition-Format1-Item.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ActionDefinition-Format1-Item.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format1_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ActionDefinition_Format1_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ActionDefinition_Format1_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ActionDefinition_Format1_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format1_Item_specs_1 = { + sizeof(struct E2SM_RC_ActionDefinition_Format1_Item), + offsetof(struct E2SM_RC_ActionDefinition_Format1_Item, _asn_ctx), + asn_MAP_E2SM_RC_ActionDefinition_Format1_Item_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format1_Item = { + "E2SM-RC-ActionDefinition-Format1-Item", + "E2SM-RC-ActionDefinition-Format1-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ActionDefinition_Format1_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format1_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ActionDefinition_Format1_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format1_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ActionDefinition_Format1_Item_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_ActionDefinition_Format1_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ActionDefinition-Format1.c b/e2sm/lib/E2SM-RC-ActionDefinition-Format1.c new file mode 100644 index 0000000..cfe2b5c --- /dev/null +++ b/e2sm/lib/E2SM-RC-ActionDefinition-Format1.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ActionDefinition-Format1.h" + +#include "E2SM-RC-ActionDefinition-Format1-Item.h" +static int +memb_ranP_ToBeReported_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ranP_ToBeReported_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ranP_ToBeReported_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ranP_ToBeReported_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ranP_ToBeReported_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranP_ToBeReported_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_ActionDefinition_Format1_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ranP_ToBeReported_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ranP_ToBeReported_List_specs_2 = { + sizeof(struct E2SM_RC_ActionDefinition_Format1__ranP_ToBeReported_List), + offsetof(struct E2SM_RC_ActionDefinition_Format1__ranP_ToBeReported_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranP_ToBeReported_List_2 = { + "ranP-ToBeReported-List", + "ranP-ToBeReported-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ranP_ToBeReported_List_tags_2, + sizeof(asn_DEF_ranP_ToBeReported_List_tags_2) + /sizeof(asn_DEF_ranP_ToBeReported_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ranP_ToBeReported_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ranP_ToBeReported_List_tags_2) + /sizeof(asn_DEF_ranP_ToBeReported_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ranP_ToBeReported_List_constr_2, &asn_PER_type_ranP_ToBeReported_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ranP_ToBeReported_List_2, + 1, /* Single element */ + &asn_SPC_ranP_ToBeReported_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ActionDefinition_Format1, ranP_ToBeReported_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ranP_ToBeReported_List_2, + 0, + { &asn_OER_memb_ranP_ToBeReported_List_constr_2, &asn_PER_memb_ranP_ToBeReported_List_constr_2, memb_ranP_ToBeReported_List_constraint_1 }, + 0, 0, /* No default value */ + "ranP-ToBeReported-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ActionDefinition_Format1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ActionDefinition_Format1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranP-ToBeReported-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format1_specs_1 = { + sizeof(struct E2SM_RC_ActionDefinition_Format1), + offsetof(struct E2SM_RC_ActionDefinition_Format1, _asn_ctx), + asn_MAP_E2SM_RC_ActionDefinition_Format1_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format1 = { + "E2SM-RC-ActionDefinition-Format1", + "E2SM-RC-ActionDefinition-Format1", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ActionDefinition_Format1_tags_1, + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format1_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ActionDefinition_Format1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ActionDefinition_Format1_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_ActionDefinition_Format1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ActionDefinition-Format2-Item.c b/e2sm/lib/E2SM-RC-ActionDefinition-Format2-Item.c new file mode 100644 index 0000000..3b48569 --- /dev/null +++ b/e2sm/lib/E2SM-RC-ActionDefinition-Format2-Item.c @@ -0,0 +1,63 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ActionDefinition-Format2-Item.h" + +#include "RANParameter-Testing.h" +asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format2_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ActionDefinition_Format2_Item, ric_PolicyAction), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_PolicyAction, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-PolicyAction" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_ActionDefinition_Format2_Item, ric_PolicyConditionDefinition), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-PolicyConditionDefinition" + }, +}; +static const int asn_MAP_E2SM_RC_ActionDefinition_Format2_Item_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ActionDefinition_Format2_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ActionDefinition_Format2_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-PolicyAction */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ric-PolicyConditionDefinition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format2_Item_specs_1 = { + sizeof(struct E2SM_RC_ActionDefinition_Format2_Item), + offsetof(struct E2SM_RC_ActionDefinition_Format2_Item, _asn_ctx), + asn_MAP_E2SM_RC_ActionDefinition_Format2_Item_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_E2SM_RC_ActionDefinition_Format2_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format2_Item = { + "E2SM-RC-ActionDefinition-Format2-Item", + "E2SM-RC-ActionDefinition-Format2-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ActionDefinition_Format2_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format2_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format2_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ActionDefinition_Format2_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format2_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format2_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ActionDefinition_Format2_Item_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_ActionDefinition_Format2_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ActionDefinition-Format2.c b/e2sm/lib/E2SM-RC-ActionDefinition-Format2.c new file mode 100644 index 0000000..f15018d --- /dev/null +++ b/e2sm/lib/E2SM-RC-ActionDefinition-Format2.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ActionDefinition-Format2.h" + +#include "E2SM-RC-ActionDefinition-Format2-Item.h" +static int +memb_ric_PolicyConditions_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ric_PolicyConditions_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ric_PolicyConditions_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ric_PolicyConditions_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ric_PolicyConditions_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_PolicyConditions_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_ActionDefinition_Format2_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ric_PolicyConditions_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ric_PolicyConditions_List_specs_2 = { + sizeof(struct E2SM_RC_ActionDefinition_Format2__ric_PolicyConditions_List), + offsetof(struct E2SM_RC_ActionDefinition_Format2__ric_PolicyConditions_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_PolicyConditions_List_2 = { + "ric-PolicyConditions-List", + "ric-PolicyConditions-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ric_PolicyConditions_List_tags_2, + sizeof(asn_DEF_ric_PolicyConditions_List_tags_2) + /sizeof(asn_DEF_ric_PolicyConditions_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ric_PolicyConditions_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ric_PolicyConditions_List_tags_2) + /sizeof(asn_DEF_ric_PolicyConditions_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ric_PolicyConditions_List_constr_2, &asn_PER_type_ric_PolicyConditions_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ric_PolicyConditions_List_2, + 1, /* Single element */ + &asn_SPC_ric_PolicyConditions_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ActionDefinition_Format2, ric_PolicyConditions_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ric_PolicyConditions_List_2, + 0, + { &asn_OER_memb_ric_PolicyConditions_List_constr_2, &asn_PER_memb_ric_PolicyConditions_List_constr_2, memb_ric_PolicyConditions_List_constraint_1 }, + 0, 0, /* No default value */ + "ric-PolicyConditions-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ActionDefinition_Format2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ActionDefinition_Format2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-PolicyConditions-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format2_specs_1 = { + sizeof(struct E2SM_RC_ActionDefinition_Format2), + offsetof(struct E2SM_RC_ActionDefinition_Format2, _asn_ctx), + asn_MAP_E2SM_RC_ActionDefinition_Format2_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format2 = { + "E2SM-RC-ActionDefinition-Format2", + "E2SM-RC-ActionDefinition-Format2", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ActionDefinition_Format2_tags_1, + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format2_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format2_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ActionDefinition_Format2_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format2_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format2_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ActionDefinition_Format2_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_ActionDefinition_Format2_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ActionDefinition-Format3-Item.c b/e2sm/lib/E2SM-RC-ActionDefinition-Format3-Item.c new file mode 100644 index 0000000..1390c44 --- /dev/null +++ b/e2sm/lib/E2SM-RC-ActionDefinition-Format3-Item.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ActionDefinition-Format3-Item.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format3_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ActionDefinition_Format3_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ActionDefinition_Format3_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ActionDefinition_Format3_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format3_Item_specs_1 = { + sizeof(struct E2SM_RC_ActionDefinition_Format3_Item), + offsetof(struct E2SM_RC_ActionDefinition_Format3_Item, _asn_ctx), + asn_MAP_E2SM_RC_ActionDefinition_Format3_Item_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format3_Item = { + "E2SM-RC-ActionDefinition-Format3-Item", + "E2SM-RC-ActionDefinition-Format3-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ActionDefinition_Format3_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format3_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format3_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ActionDefinition_Format3_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format3_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format3_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ActionDefinition_Format3_Item_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_ActionDefinition_Format3_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ActionDefinition-Format3.c b/e2sm/lib/E2SM-RC-ActionDefinition-Format3.c new file mode 100644 index 0000000..1413d05 --- /dev/null +++ b/e2sm/lib/E2SM-RC-ActionDefinition-Format3.c @@ -0,0 +1,153 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ActionDefinition-Format3.h" + +#include "UEID.h" +#include "E2SM-RC-ActionDefinition-Format3-Item.h" +static int +memb_ranP_InsertIndication_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ranP_InsertIndication_List_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ranP_InsertIndication_List_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ranP_InsertIndication_List_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ranP_InsertIndication_List_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranP_InsertIndication_List_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_ActionDefinition_Format3_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ranP_InsertIndication_List_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ranP_InsertIndication_List_specs_3 = { + sizeof(struct E2SM_RC_ActionDefinition_Format3__ranP_InsertIndication_List), + offsetof(struct E2SM_RC_ActionDefinition_Format3__ranP_InsertIndication_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranP_InsertIndication_List_3 = { + "ranP-InsertIndication-List", + "ranP-InsertIndication-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ranP_InsertIndication_List_tags_3, + sizeof(asn_DEF_ranP_InsertIndication_List_tags_3) + /sizeof(asn_DEF_ranP_InsertIndication_List_tags_3[0]) - 1, /* 1 */ + asn_DEF_ranP_InsertIndication_List_tags_3, /* Same as above */ + sizeof(asn_DEF_ranP_InsertIndication_List_tags_3) + /sizeof(asn_DEF_ranP_InsertIndication_List_tags_3[0]), /* 2 */ + { &asn_OER_type_ranP_InsertIndication_List_constr_3, &asn_PER_type_ranP_InsertIndication_List_constr_3, SEQUENCE_OF_constraint }, + asn_MBR_ranP_InsertIndication_List_3, + 1, /* Single element */ + &asn_SPC_ranP_InsertIndication_List_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_Format3_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ActionDefinition_Format3, ric_InsertIndication_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_InsertIndication_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-InsertIndication-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ActionDefinition_Format3, ranP_InsertIndication_List), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_ranP_InsertIndication_List_3, + 0, + { &asn_OER_memb_ranP_InsertIndication_List_constr_3, &asn_PER_memb_ranP_InsertIndication_List_constr_3, memb_ranP_InsertIndication_List_constraint_1 }, + 0, 0, /* No default value */ + "ranP-InsertIndication-List" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_ActionDefinition_Format3, ueID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_UEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueID" + }, +}; +static const int asn_MAP_E2SM_RC_ActionDefinition_Format3_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ActionDefinition_Format3_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ActionDefinition_Format3_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-InsertIndication-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranP-InsertIndication-List */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ueID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_Format3_specs_1 = { + sizeof(struct E2SM_RC_ActionDefinition_Format3), + offsetof(struct E2SM_RC_ActionDefinition_Format3, _asn_ctx), + asn_MAP_E2SM_RC_ActionDefinition_Format3_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_E2SM_RC_ActionDefinition_Format3_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition_Format3 = { + "E2SM-RC-ActionDefinition-Format3", + "E2SM-RC-ActionDefinition-Format3", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ActionDefinition_Format3_tags_1, + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format3_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format3_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ActionDefinition_Format3_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format3_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_Format3_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ActionDefinition_Format3_1, + 3, /* Elements count */ + &asn_SPC_E2SM_RC_ActionDefinition_Format3_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ActionDefinition.c b/e2sm/lib/E2SM-RC-ActionDefinition.c new file mode 100644 index 0000000..a8e2a57 --- /dev/null +++ b/e2sm/lib/E2SM-RC-ActionDefinition.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ActionDefinition.h" + +#include "E2SM-RC-ActionDefinition-Format1.h" +#include "E2SM-RC-ActionDefinition-Format2.h" +#include "E2SM-RC-ActionDefinition-Format3.h" +static asn_oer_constraints_t asn_OER_type_ric_actionDefinition_formats_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ric_actionDefinition_formats_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_actionDefinition_formats_3[] = { + { ATF_POINTER, 0, offsetof(struct E2SM_RC_ActionDefinition__ric_actionDefinition_formats, choice.actionDefinition_Format1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_ActionDefinition_Format1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "actionDefinition-Format1" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_ActionDefinition__ric_actionDefinition_formats, choice.actionDefinition_Format2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_ActionDefinition_Format2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "actionDefinition-Format2" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_ActionDefinition__ric_actionDefinition_formats, choice.actionDefinition_Format3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_ActionDefinition_Format3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "actionDefinition-Format3" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ric_actionDefinition_formats_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* actionDefinition-Format1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* actionDefinition-Format2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* actionDefinition-Format3 */ +}; +static asn_CHOICE_specifics_t asn_SPC_ric_actionDefinition_formats_specs_3 = { + sizeof(struct E2SM_RC_ActionDefinition__ric_actionDefinition_formats), + offsetof(struct E2SM_RC_ActionDefinition__ric_actionDefinition_formats, _asn_ctx), + offsetof(struct E2SM_RC_ActionDefinition__ric_actionDefinition_formats, present), + sizeof(((struct E2SM_RC_ActionDefinition__ric_actionDefinition_formats *)0)->present), + asn_MAP_ric_actionDefinition_formats_tag2el_3, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_actionDefinition_formats_3 = { + "ric-actionDefinition-formats", + "ric-actionDefinition-formats", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ric_actionDefinition_formats_constr_3, &asn_PER_type_ric_actionDefinition_formats_constr_3, CHOICE_constraint }, + asn_MBR_ric_actionDefinition_formats_3, + 3, /* Elements count */ + &asn_SPC_ric_actionDefinition_formats_specs_3 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2SM_RC_ActionDefinition_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ActionDefinition, ric_Style_Type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-Style-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ActionDefinition, ric_actionDefinition_formats), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ric_actionDefinition_formats_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-actionDefinition-formats" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ActionDefinition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ActionDefinition_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-Style-Type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ric-actionDefinition-formats */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ActionDefinition_specs_1 = { + sizeof(struct E2SM_RC_ActionDefinition), + offsetof(struct E2SM_RC_ActionDefinition, _asn_ctx), + asn_MAP_E2SM_RC_ActionDefinition_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ActionDefinition = { + "E2SM-RC-ActionDefinition", + "E2SM-RC-ActionDefinition", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ActionDefinition_tags_1, + sizeof(asn_DEF_E2SM_RC_ActionDefinition_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ActionDefinition_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ActionDefinition_tags_1) + /sizeof(asn_DEF_E2SM_RC_ActionDefinition_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ActionDefinition_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_ActionDefinition_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-CallProcessID-Format1.c b/e2sm/lib/E2SM-RC-CallProcessID-Format1.c new file mode 100644 index 0000000..d3a25c1 --- /dev/null +++ b/e2sm/lib/E2SM-RC-CallProcessID-Format1.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-CallProcessID-Format1.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_CallProcessID_Format1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_CallProcessID_Format1, ric_callProcess_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RAN_CallProcess_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-callProcess-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_CallProcessID_Format1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_CallProcessID_Format1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-callProcess-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_CallProcessID_Format1_specs_1 = { + sizeof(struct E2SM_RC_CallProcessID_Format1), + offsetof(struct E2SM_RC_CallProcessID_Format1, _asn_ctx), + asn_MAP_E2SM_RC_CallProcessID_Format1_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_CallProcessID_Format1 = { + "E2SM-RC-CallProcessID-Format1", + "E2SM-RC-CallProcessID-Format1", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_CallProcessID_Format1_tags_1, + sizeof(asn_DEF_E2SM_RC_CallProcessID_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_CallProcessID_Format1_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_CallProcessID_Format1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_CallProcessID_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_CallProcessID_Format1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_CallProcessID_Format1_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_CallProcessID_Format1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-CallProcessID.c b/e2sm/lib/E2SM-RC-CallProcessID.c new file mode 100644 index 0000000..f92d4aa --- /dev/null +++ b/e2sm/lib/E2SM-RC-CallProcessID.c @@ -0,0 +1,98 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-CallProcessID.h" + +#include "E2SM-RC-CallProcessID-Format1.h" +static asn_oer_constraints_t asn_OER_type_ric_callProcessID_formats_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ric_callProcessID_formats_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_callProcessID_formats_2[] = { + { ATF_POINTER, 0, offsetof(struct E2SM_RC_CallProcessID__ric_callProcessID_formats, choice.callProcessID_Format1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_CallProcessID_Format1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "callProcessID-Format1" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ric_callProcessID_formats_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* callProcessID-Format1 */ +}; +static asn_CHOICE_specifics_t asn_SPC_ric_callProcessID_formats_specs_2 = { + sizeof(struct E2SM_RC_CallProcessID__ric_callProcessID_formats), + offsetof(struct E2SM_RC_CallProcessID__ric_callProcessID_formats, _asn_ctx), + offsetof(struct E2SM_RC_CallProcessID__ric_callProcessID_formats, present), + sizeof(((struct E2SM_RC_CallProcessID__ric_callProcessID_formats *)0)->present), + asn_MAP_ric_callProcessID_formats_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, + 1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_callProcessID_formats_2 = { + "ric-callProcessID-formats", + "ric-callProcessID-formats", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ric_callProcessID_formats_constr_2, &asn_PER_type_ric_callProcessID_formats_constr_2, CHOICE_constraint }, + asn_MBR_ric_callProcessID_formats_2, + 1, /* Elements count */ + &asn_SPC_ric_callProcessID_formats_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2SM_RC_CallProcessID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_CallProcessID, ric_callProcessID_formats), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ric_callProcessID_formats_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-callProcessID-formats" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_CallProcessID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_CallProcessID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-callProcessID-formats */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_CallProcessID_specs_1 = { + sizeof(struct E2SM_RC_CallProcessID), + offsetof(struct E2SM_RC_CallProcessID, _asn_ctx), + asn_MAP_E2SM_RC_CallProcessID_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_CallProcessID = { + "E2SM-RC-CallProcessID", + "E2SM-RC-CallProcessID", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_CallProcessID_tags_1, + sizeof(asn_DEF_E2SM_RC_CallProcessID_tags_1) + /sizeof(asn_DEF_E2SM_RC_CallProcessID_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_CallProcessID_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_CallProcessID_tags_1) + /sizeof(asn_DEF_E2SM_RC_CallProcessID_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_CallProcessID_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_CallProcessID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ControlHeader-Format1.c b/e2sm/lib/E2SM-RC-ControlHeader-Format1.c index e953ec7..7388ce6 100644 --- a/e2sm/lib/E2SM-RC-ControlHeader-Format1.c +++ b/e2sm/lib/E2SM-RC-ControlHeader-Format1.c @@ -1,30 +1,81 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "E2SM-RC-ControlHeader-Format1.h" +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ric_ControlDecision_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ric_ControlDecision_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_ric_ControlDecision_value2enum_5[] = { + { 0, 6, "accept" }, + { 1, 6, "reject" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ric_ControlDecision_enum2value_5[] = { + 0, /* accept(0) */ + 1 /* reject(1) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_ric_ControlDecision_specs_5 = { + asn_MAP_ric_ControlDecision_value2enum_5, /* "tag" => N; sorted by tag */ + asn_MAP_ric_ControlDecision_enum2value_5, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ric_ControlDecision_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_ControlDecision_5 = { + "ric-ControlDecision", + "ric-ControlDecision", + &asn_OP_NativeEnumerated, + asn_DEF_ric_ControlDecision_tags_5, + sizeof(asn_DEF_ric_ControlDecision_tags_5) + /sizeof(asn_DEF_ric_ControlDecision_tags_5[0]) - 1, /* 1 */ + asn_DEF_ric_ControlDecision_tags_5, /* Same as above */ + sizeof(asn_DEF_ric_ControlDecision_tags_5) + /sizeof(asn_DEF_ric_ControlDecision_tags_5[0]), /* 2 */ + { &asn_OER_type_ric_ControlDecision_constr_5, &asn_PER_type_ric_ControlDecision_constr_5, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ric_ControlDecision_specs_5 /* Additional specs */ +}; + asn_TYPE_member_t asn_MBR_E2SM_RC_ControlHeader_Format1_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlHeader_Format1, ueId), + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlHeader_Format1, ueID), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UE_Identity, + +1, /* EXPLICIT tag at current level */ + &asn_DEF_UEID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "ueId" + "ueID" }, - { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlHeader_Format1, ric_ControlStyle_Type), + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlHeader_Format1, ric_Style_Type), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_RIC_Style_Type, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "ric-ControlStyle-Type" + "ric-Style-Type" }, { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlHeader_Format1, ric_ControlAction_ID), (ASN_TAG_CLASS_CONTEXT | (2 << 2)), @@ -35,22 +86,34 @@ asn_TYPE_member_t asn_MBR_E2SM_RC_ControlHeader_Format1_1[] = { 0, 0, /* No default value */ "ric-ControlAction-ID" }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_ControlHeader_Format1, ric_ControlDecision), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ric_ControlDecision_5, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ControlDecision" + }, }; +static const int asn_MAP_E2SM_RC_ControlHeader_Format1_oms_1[] = { 3 }; static const ber_tlv_tag_t asn_DEF_E2SM_RC_ControlHeader_Format1_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlHeader_Format1_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-ControlStyle-Type */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ric-ControlAction-ID */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-Style-Type */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ric-ControlAction-ID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ric-ControlDecision */ }; asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlHeader_Format1_specs_1 = { sizeof(struct E2SM_RC_ControlHeader_Format1), offsetof(struct E2SM_RC_ControlHeader_Format1, _asn_ctx), asn_MAP_E2SM_RC_ControlHeader_Format1_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ + 4, /* Count of tags in the map */ + asn_MAP_E2SM_RC_ControlHeader_Format1_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 4, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlHeader_Format1 = { "E2SM-RC-ControlHeader-Format1", @@ -64,7 +127,7 @@ asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlHeader_Format1 = { /sizeof(asn_DEF_E2SM_RC_ControlHeader_Format1_tags_1[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_E2SM_RC_ControlHeader_Format1_1, - 3, /* Elements count */ + 4, /* Elements count */ &asn_SPC_E2SM_RC_ControlHeader_Format1_specs_1 /* Additional specs */ }; diff --git a/e2sm/lib/E2SM-RC-ControlHeader.c b/e2sm/lib/E2SM-RC-ControlHeader.c index 8de1e6c..0a3ff61 100644 --- a/e2sm/lib/E2SM-RC-ControlHeader.c +++ b/e2sm/lib/E2SM-RC-ControlHeader.c @@ -1,23 +1,23 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "E2SM-RC-ControlHeader.h" #include "E2SM-RC-ControlHeader-Format1.h" -static asn_oer_constraints_t asn_OER_type_E2SM_RC_ControlHeader_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ric_controlHeader_formats_constr_2 CC_NOTUSED = { { 0, 0 }, -1}; -static asn_per_constraints_t asn_PER_type_E2SM_RC_ControlHeader_constr_1 CC_NOTUSED = { +static asn_per_constraints_t asn_PER_type_ric_controlHeader_formats_constr_2 CC_NOTUSED = { { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -static asn_TYPE_member_t asn_MBR_E2SM_RC_ControlHeader_1[] = { - { ATF_POINTER, 0, offsetof(struct E2SM_RC_ControlHeader, choice.controlHeader_Format1), +static asn_TYPE_member_t asn_MBR_ric_controlHeader_formats_2[] = { + { ATF_POINTER, 0, offsetof(struct E2SM_RC_ControlHeader__ric_controlHeader_formats, choice.controlHeader_Format1), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_E2SM_RC_ControlHeader_Format1, @@ -27,28 +27,70 @@ static asn_TYPE_member_t asn_MBR_E2SM_RC_ControlHeader_1[] = { "controlHeader-Format1" }, }; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlHeader_tag2el_1[] = { +static const asn_TYPE_tag2member_t asn_MAP_ric_controlHeader_formats_tag2el_2[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* controlHeader-Format1 */ }; -static asn_CHOICE_specifics_t asn_SPC_E2SM_RC_ControlHeader_specs_1 = { - sizeof(struct E2SM_RC_ControlHeader), - offsetof(struct E2SM_RC_ControlHeader, _asn_ctx), - offsetof(struct E2SM_RC_ControlHeader, present), - sizeof(((struct E2SM_RC_ControlHeader *)0)->present), - asn_MAP_E2SM_RC_ControlHeader_tag2el_1, +static asn_CHOICE_specifics_t asn_SPC_ric_controlHeader_formats_specs_2 = { + sizeof(struct E2SM_RC_ControlHeader__ric_controlHeader_formats), + offsetof(struct E2SM_RC_ControlHeader__ric_controlHeader_formats, _asn_ctx), + offsetof(struct E2SM_RC_ControlHeader__ric_controlHeader_formats, present), + sizeof(((struct E2SM_RC_ControlHeader__ric_controlHeader_formats *)0)->present), + asn_MAP_ric_controlHeader_formats_tag2el_2, 1, /* Count of tags in the map */ 0, 0, 1 /* Extensions start */ }; -asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlHeader = { - "E2SM-RC-ControlHeader", - "E2SM-RC-ControlHeader", +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_controlHeader_formats_2 = { + "ric-controlHeader-formats", + "ric-controlHeader-formats", &asn_OP_CHOICE, 0, /* No effective tags (pointer) */ 0, /* No effective tags (count) */ 0, /* No tags (pointer) */ 0, /* No tags (count) */ - { &asn_OER_type_E2SM_RC_ControlHeader_constr_1, &asn_PER_type_E2SM_RC_ControlHeader_constr_1, CHOICE_constraint }, + { &asn_OER_type_ric_controlHeader_formats_constr_2, &asn_PER_type_ric_controlHeader_formats_constr_2, CHOICE_constraint }, + asn_MBR_ric_controlHeader_formats_2, + 1, /* Elements count */ + &asn_SPC_ric_controlHeader_formats_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2SM_RC_ControlHeader_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlHeader, ric_controlHeader_formats), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ric_controlHeader_formats_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-controlHeader-formats" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ControlHeader_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlHeader_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-controlHeader-formats */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlHeader_specs_1 = { + sizeof(struct E2SM_RC_ControlHeader), + offsetof(struct E2SM_RC_ControlHeader, _asn_ctx), + asn_MAP_E2SM_RC_ControlHeader_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlHeader = { + "E2SM-RC-ControlHeader", + "E2SM-RC-ControlHeader", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ControlHeader_tags_1, + sizeof(asn_DEF_E2SM_RC_ControlHeader_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlHeader_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ControlHeader_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ControlHeader_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlHeader_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, asn_MBR_E2SM_RC_ControlHeader_1, 1, /* Elements count */ &asn_SPC_E2SM_RC_ControlHeader_specs_1 /* Additional specs */ diff --git a/e2sm/lib/E2SM-RC-ControlMessage-Format1-Item.c b/e2sm/lib/E2SM-RC-ControlMessage-Format1-Item.c new file mode 100644 index 0000000..4d3194c --- /dev/null +++ b/e2sm/lib/E2SM-RC-ControlMessage-Format1-Item.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ControlMessage-Format1-Item.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_ControlMessage_Format1_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlMessage_Format1_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlMessage_Format1_Item, ranParameter_valueType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_ValueType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-valueType" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ControlMessage_Format1_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlMessage_Format1_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-valueType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlMessage_Format1_Item_specs_1 = { + sizeof(struct E2SM_RC_ControlMessage_Format1_Item), + offsetof(struct E2SM_RC_ControlMessage_Format1_Item, _asn_ctx), + asn_MAP_E2SM_RC_ControlMessage_Format1_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlMessage_Format1_Item = { + "E2SM-RC-ControlMessage-Format1-Item", + "E2SM-RC-ControlMessage-Format1-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ControlMessage_Format1_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_ControlMessage_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlMessage_Format1_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ControlMessage_Format1_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ControlMessage_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlMessage_Format1_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ControlMessage_Format1_Item_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_ControlMessage_Format1_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ControlMessage-Format1.c b/e2sm/lib/E2SM-RC-ControlMessage-Format1.c index 7ba5bba..b7972a2 100644 --- a/e2sm/lib/E2SM-RC-ControlMessage-Format1.c +++ b/e2sm/lib/E2SM-RC-ControlMessage-Format1.c @@ -1,15 +1,15 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "E2SM-RC-ControlMessage-Format1.h" -#include "RANParameter-Item.h" +#include "E2SM-RC-ControlMessage-Format1-Item.h" static int -memb_ranParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, +memb_ranP_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { size_t size; @@ -23,7 +23,7 @@ memb_ranParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void /* Determine the number of elements */ size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - if((size >= 1 && size <= 4294967295)) { + if((size <= 65535)) { /* Perform validation of the inner elements */ return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); } else { @@ -34,84 +34,82 @@ memb_ranParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void } } -static asn_oer_constraints_t asn_OER_type_ranParameters_List_constr_2 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ranP_List_constr_2 CC_NOTUSED = { { 0, 0 }, - -1 /* (SIZE(1..4294967295)) */}; -static asn_per_constraints_t asn_PER_type_ranParameters_List_constr_2 CC_NOTUSED = { + -1 /* (SIZE(0..65535)) */}; +static asn_per_constraints_t asn_PER_type_ranP_List_constr_2 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 32, -1, 1, 4294967295 } /* (SIZE(1..4294967295)) */, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_memb_ranParameters_List_constr_2 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_memb_ranP_List_constr_2 CC_NOTUSED = { { 0, 0 }, - -1 /* (SIZE(1..4294967295)) */}; -static asn_per_constraints_t asn_PER_memb_ranParameters_List_constr_2 CC_NOTUSED = { + -1 /* (SIZE(0..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ranP_List_constr_2 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 32, -1, 1, 4294967295 } /* (SIZE(1..4294967295)) */, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, 0, 0 /* No PER value map */ }; -static asn_TYPE_member_t asn_MBR_ranParameters_List_2[] = { +static asn_TYPE_member_t asn_MBR_ranP_List_2[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANParameter_Item, + &asn_DEF_E2SM_RC_ControlMessage_Format1_Item, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "" }, }; -static const ber_tlv_tag_t asn_DEF_ranParameters_List_tags_2[] = { +static const ber_tlv_tag_t asn_DEF_ranP_List_tags_2[] = { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static asn_SET_OF_specifics_t asn_SPC_ranParameters_List_specs_2 = { - sizeof(struct E2SM_RC_ControlMessage_Format1__ranParameters_List), - offsetof(struct E2SM_RC_ControlMessage_Format1__ranParameters_List, _asn_ctx), +static asn_SET_OF_specifics_t asn_SPC_ranP_List_specs_2 = { + sizeof(struct E2SM_RC_ControlMessage_Format1__ranP_List), + offsetof(struct E2SM_RC_ControlMessage_Format1__ranP_List, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_ranParameters_List_2 = { - "ranParameters-List", - "ranParameters-List", +asn_TYPE_descriptor_t asn_DEF_ranP_List_2 = { + "ranP-List", + "ranP-List", &asn_OP_SEQUENCE_OF, - asn_DEF_ranParameters_List_tags_2, - sizeof(asn_DEF_ranParameters_List_tags_2) - /sizeof(asn_DEF_ranParameters_List_tags_2[0]) - 1, /* 1 */ - asn_DEF_ranParameters_List_tags_2, /* Same as above */ - sizeof(asn_DEF_ranParameters_List_tags_2) - /sizeof(asn_DEF_ranParameters_List_tags_2[0]), /* 2 */ - { &asn_OER_type_ranParameters_List_constr_2, &asn_PER_type_ranParameters_List_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_ranParameters_List_2, + asn_DEF_ranP_List_tags_2, + sizeof(asn_DEF_ranP_List_tags_2) + /sizeof(asn_DEF_ranP_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ranP_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ranP_List_tags_2) + /sizeof(asn_DEF_ranP_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ranP_List_constr_2, &asn_PER_type_ranP_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ranP_List_2, 1, /* Single element */ - &asn_SPC_ranParameters_List_specs_2 /* Additional specs */ + &asn_SPC_ranP_List_specs_2 /* Additional specs */ }; asn_TYPE_member_t asn_MBR_E2SM_RC_ControlMessage_Format1_1[] = { - { ATF_POINTER, 1, offsetof(struct E2SM_RC_ControlMessage_Format1, ranParameters_List), + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlMessage_Format1, ranP_List), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, - &asn_DEF_ranParameters_List_2, + &asn_DEF_ranP_List_2, 0, - { &asn_OER_memb_ranParameters_List_constr_2, &asn_PER_memb_ranParameters_List_constr_2, memb_ranParameters_List_constraint_1 }, + { &asn_OER_memb_ranP_List_constr_2, &asn_PER_memb_ranP_List_constr_2, memb_ranP_List_constraint_1 }, 0, 0, /* No default value */ - "ranParameters-List" + "ranP-List" }, }; -static const int asn_MAP_E2SM_RC_ControlMessage_Format1_oms_1[] = { 0 }; static const ber_tlv_tag_t asn_DEF_E2SM_RC_ControlMessage_Format1_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlMessage_Format1_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameters-List */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranP-List */ }; asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlMessage_Format1_specs_1 = { sizeof(struct E2SM_RC_ControlMessage_Format1), offsetof(struct E2SM_RC_ControlMessage_Format1, _asn_ctx), asn_MAP_E2SM_RC_ControlMessage_Format1_tag2el_1, 1, /* Count of tags in the map */ - asn_MAP_E2SM_RC_ControlMessage_Format1_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ + 0, 0, 0, /* Optional elements (not needed) */ 1, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlMessage_Format1 = { diff --git a/e2sm/lib/E2SM-RC-ControlMessage.c b/e2sm/lib/E2SM-RC-ControlMessage.c index 15a6afe..295c133 100644 --- a/e2sm/lib/E2SM-RC-ControlMessage.c +++ b/e2sm/lib/E2SM-RC-ControlMessage.c @@ -1,23 +1,23 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "E2SM-RC-ControlMessage.h" #include "E2SM-RC-ControlMessage-Format1.h" -static asn_oer_constraints_t asn_OER_type_E2SM_RC_ControlMessage_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_ric_controlMessage_formats_constr_2 CC_NOTUSED = { { 0, 0 }, -1}; -static asn_per_constraints_t asn_PER_type_E2SM_RC_ControlMessage_constr_1 CC_NOTUSED = { +static asn_per_constraints_t asn_PER_type_ric_controlMessage_formats_constr_2 CC_NOTUSED = { { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -static asn_TYPE_member_t asn_MBR_E2SM_RC_ControlMessage_1[] = { - { ATF_POINTER, 0, offsetof(struct E2SM_RC_ControlMessage, choice.controlMessage_Format1), +static asn_TYPE_member_t asn_MBR_ric_controlMessage_formats_2[] = { + { ATF_POINTER, 0, offsetof(struct E2SM_RC_ControlMessage__ric_controlMessage_formats, choice.controlMessage_Format1), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_E2SM_RC_ControlMessage_Format1, @@ -27,28 +27,70 @@ static asn_TYPE_member_t asn_MBR_E2SM_RC_ControlMessage_1[] = { "controlMessage-Format1" }, }; -static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlMessage_tag2el_1[] = { +static const asn_TYPE_tag2member_t asn_MAP_ric_controlMessage_formats_tag2el_2[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* controlMessage-Format1 */ }; -static asn_CHOICE_specifics_t asn_SPC_E2SM_RC_ControlMessage_specs_1 = { - sizeof(struct E2SM_RC_ControlMessage), - offsetof(struct E2SM_RC_ControlMessage, _asn_ctx), - offsetof(struct E2SM_RC_ControlMessage, present), - sizeof(((struct E2SM_RC_ControlMessage *)0)->present), - asn_MAP_E2SM_RC_ControlMessage_tag2el_1, +static asn_CHOICE_specifics_t asn_SPC_ric_controlMessage_formats_specs_2 = { + sizeof(struct E2SM_RC_ControlMessage__ric_controlMessage_formats), + offsetof(struct E2SM_RC_ControlMessage__ric_controlMessage_formats, _asn_ctx), + offsetof(struct E2SM_RC_ControlMessage__ric_controlMessage_formats, present), + sizeof(((struct E2SM_RC_ControlMessage__ric_controlMessage_formats *)0)->present), + asn_MAP_ric_controlMessage_formats_tag2el_2, 1, /* Count of tags in the map */ 0, 0, 1 /* Extensions start */ }; -asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlMessage = { - "E2SM-RC-ControlMessage", - "E2SM-RC-ControlMessage", +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_controlMessage_formats_2 = { + "ric-controlMessage-formats", + "ric-controlMessage-formats", &asn_OP_CHOICE, 0, /* No effective tags (pointer) */ 0, /* No effective tags (count) */ 0, /* No tags (pointer) */ 0, /* No tags (count) */ - { &asn_OER_type_E2SM_RC_ControlMessage_constr_1, &asn_PER_type_E2SM_RC_ControlMessage_constr_1, CHOICE_constraint }, + { &asn_OER_type_ric_controlMessage_formats_constr_2, &asn_PER_type_ric_controlMessage_formats_constr_2, CHOICE_constraint }, + asn_MBR_ric_controlMessage_formats_2, + 1, /* Elements count */ + &asn_SPC_ric_controlMessage_formats_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2SM_RC_ControlMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlMessage, ric_controlMessage_formats), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ric_controlMessage_formats_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-controlMessage-formats" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ControlMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-controlMessage-formats */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlMessage_specs_1 = { + sizeof(struct E2SM_RC_ControlMessage), + offsetof(struct E2SM_RC_ControlMessage, _asn_ctx), + asn_MAP_E2SM_RC_ControlMessage_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlMessage = { + "E2SM-RC-ControlMessage", + "E2SM-RC-ControlMessage", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ControlMessage_tags_1, + sizeof(asn_DEF_E2SM_RC_ControlMessage_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlMessage_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ControlMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ControlMessage_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlMessage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, asn_MBR_E2SM_RC_ControlMessage_1, 1, /* Elements count */ &asn_SPC_E2SM_RC_ControlMessage_specs_1 /* Additional specs */ diff --git a/e2sm/lib/E2SM-RC-ControlOutcome-Format1-Item.c b/e2sm/lib/E2SM-RC-ControlOutcome-Format1-Item.c new file mode 100644 index 0000000..f9b0bfd --- /dev/null +++ b/e2sm/lib/E2SM-RC-ControlOutcome-Format1-Item.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ControlOutcome-Format1-Item.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_ControlOutcome_Format1_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlOutcome_Format1_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlOutcome_Format1_Item, ranParameter_value), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_Value, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ControlOutcome_Format1_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlOutcome_Format1_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlOutcome_Format1_Item_specs_1 = { + sizeof(struct E2SM_RC_ControlOutcome_Format1_Item), + offsetof(struct E2SM_RC_ControlOutcome_Format1_Item, _asn_ctx), + asn_MAP_E2SM_RC_ControlOutcome_Format1_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlOutcome_Format1_Item = { + "E2SM-RC-ControlOutcome-Format1-Item", + "E2SM-RC-ControlOutcome-Format1-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ControlOutcome_Format1_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_ControlOutcome_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlOutcome_Format1_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ControlOutcome_Format1_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ControlOutcome_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlOutcome_Format1_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ControlOutcome_Format1_Item_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_ControlOutcome_Format1_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ControlOutcome-Format1.c b/e2sm/lib/E2SM-RC-ControlOutcome-Format1.c new file mode 100644 index 0000000..8b78e0f --- /dev/null +++ b/e2sm/lib/E2SM-RC-ControlOutcome-Format1.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ControlOutcome-Format1.h" + +#include "E2SM-RC-ControlOutcome-Format1-Item.h" +static int +memb_ranP_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size <= 255)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ranP_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..255)) */}; +static asn_per_constraints_t asn_PER_type_ranP_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (SIZE(0..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ranP_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..255)) */}; +static asn_per_constraints_t asn_PER_memb_ranP_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (SIZE(0..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranP_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_ControlOutcome_Format1_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ranP_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ranP_List_specs_2 = { + sizeof(struct E2SM_RC_ControlOutcome_Format1__ranP_List), + offsetof(struct E2SM_RC_ControlOutcome_Format1__ranP_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranP_List_2 = { + "ranP-List", + "ranP-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ranP_List_tags_2, + sizeof(asn_DEF_ranP_List_tags_2) + /sizeof(asn_DEF_ranP_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ranP_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ranP_List_tags_2) + /sizeof(asn_DEF_ranP_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ranP_List_constr_2, &asn_PER_type_ranP_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ranP_List_2, + 1, /* Single element */ + &asn_SPC_ranP_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_ControlOutcome_Format1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlOutcome_Format1, ranP_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ranP_List_2, + 0, + { &asn_OER_memb_ranP_List_constr_2, &asn_PER_memb_ranP_List_constr_2, memb_ranP_List_constraint_1 }, + 0, 0, /* No default value */ + "ranP-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ControlOutcome_Format1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlOutcome_Format1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranP-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlOutcome_Format1_specs_1 = { + sizeof(struct E2SM_RC_ControlOutcome_Format1), + offsetof(struct E2SM_RC_ControlOutcome_Format1, _asn_ctx), + asn_MAP_E2SM_RC_ControlOutcome_Format1_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlOutcome_Format1 = { + "E2SM-RC-ControlOutcome-Format1", + "E2SM-RC-ControlOutcome-Format1", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ControlOutcome_Format1_tags_1, + sizeof(asn_DEF_E2SM_RC_ControlOutcome_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlOutcome_Format1_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ControlOutcome_Format1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ControlOutcome_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlOutcome_Format1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ControlOutcome_Format1_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_ControlOutcome_Format1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-ControlOutcome.c b/e2sm/lib/E2SM-RC-ControlOutcome.c new file mode 100644 index 0000000..8e6ce7b --- /dev/null +++ b/e2sm/lib/E2SM-RC-ControlOutcome.c @@ -0,0 +1,98 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-ControlOutcome.h" + +#include "E2SM-RC-ControlOutcome-Format1.h" +static asn_oer_constraints_t asn_OER_type_ric_controlOutcome_formats_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ric_controlOutcome_formats_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_controlOutcome_formats_2[] = { + { ATF_POINTER, 0, offsetof(struct E2SM_RC_ControlOutcome__ric_controlOutcome_formats, choice.controlOutcome_Format1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_ControlOutcome_Format1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "controlOutcome-Format1" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ric_controlOutcome_formats_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* controlOutcome-Format1 */ +}; +static asn_CHOICE_specifics_t asn_SPC_ric_controlOutcome_formats_specs_2 = { + sizeof(struct E2SM_RC_ControlOutcome__ric_controlOutcome_formats), + offsetof(struct E2SM_RC_ControlOutcome__ric_controlOutcome_formats, _asn_ctx), + offsetof(struct E2SM_RC_ControlOutcome__ric_controlOutcome_formats, present), + sizeof(((struct E2SM_RC_ControlOutcome__ric_controlOutcome_formats *)0)->present), + asn_MAP_ric_controlOutcome_formats_tag2el_2, + 1, /* Count of tags in the map */ + 0, 0, + 1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_controlOutcome_formats_2 = { + "ric-controlOutcome-formats", + "ric-controlOutcome-formats", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ric_controlOutcome_formats_constr_2, &asn_PER_type_ric_controlOutcome_formats_constr_2, CHOICE_constraint }, + asn_MBR_ric_controlOutcome_formats_2, + 1, /* Elements count */ + &asn_SPC_ric_controlOutcome_formats_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2SM_RC_ControlOutcome_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_ControlOutcome, ric_controlOutcome_formats), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ric_controlOutcome_formats_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-controlOutcome-formats" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_ControlOutcome_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_ControlOutcome_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-controlOutcome-formats */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_ControlOutcome_specs_1 = { + sizeof(struct E2SM_RC_ControlOutcome), + offsetof(struct E2SM_RC_ControlOutcome, _asn_ctx), + asn_MAP_E2SM_RC_ControlOutcome_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_ControlOutcome = { + "E2SM-RC-ControlOutcome", + "E2SM-RC-ControlOutcome", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_ControlOutcome_tags_1, + sizeof(asn_DEF_E2SM_RC_ControlOutcome_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlOutcome_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_ControlOutcome_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_ControlOutcome_tags_1) + /sizeof(asn_DEF_E2SM_RC_ControlOutcome_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_ControlOutcome_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_ControlOutcome_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-EventTrigger-Format1-Item.c b/e2sm/lib/E2SM-RC-EventTrigger-Format1-Item.c new file mode 100644 index 0000000..346cf2e --- /dev/null +++ b/e2sm/lib/E2SM-RC-EventTrigger-Format1-Item.c @@ -0,0 +1,155 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-EventTrigger-Format1-Item.h" + +#include "EventTrigger-UE-Info.h" +#include "EventTrigger-UEevent-Info.h" +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_messageDirection_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_messageDirection_constr_4 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_messageDirection_value2enum_4[] = { + { 0, 8, "incoming" }, + { 1, 8, "outgoing" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_messageDirection_enum2value_4[] = { + 0, /* incoming(0) */ + 1 /* outgoing(1) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_messageDirection_specs_4 = { + asn_MAP_messageDirection_value2enum_4, /* "tag" => N; sorted by tag */ + asn_MAP_messageDirection_enum2value_4, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_messageDirection_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_messageDirection_4 = { + "messageDirection", + "messageDirection", + &asn_OP_NativeEnumerated, + asn_DEF_messageDirection_tags_4, + sizeof(asn_DEF_messageDirection_tags_4) + /sizeof(asn_DEF_messageDirection_tags_4[0]) - 1, /* 1 */ + asn_DEF_messageDirection_tags_4, /* Same as above */ + sizeof(asn_DEF_messageDirection_tags_4) + /sizeof(asn_DEF_messageDirection_tags_4[0]), /* 2 */ + { &asn_OER_type_messageDirection_constr_4, &asn_PER_type_messageDirection_constr_4, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_messageDirection_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format1_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format1_Item, ric_eventTriggerCondition_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_EventTriggerCondition_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-eventTriggerCondition-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format1_Item, messageType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_MessageType_Choice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "messageType" + }, + { ATF_POINTER, 4, offsetof(struct E2SM_RC_EventTrigger_Format1_Item, messageDirection), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_messageDirection_4, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "messageDirection" + }, + { ATF_POINTER, 3, offsetof(struct E2SM_RC_EventTrigger_Format1_Item, associatedUEInfo), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_UE_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "associatedUEInfo" + }, + { ATF_POINTER, 2, offsetof(struct E2SM_RC_EventTrigger_Format1_Item, associatedUEEvent), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_UEevent_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "associatedUEEvent" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_EventTrigger_Format1_Item, logicalOR), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LogicalOR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "logicalOR" + }, +}; +static const int asn_MAP_E2SM_RC_EventTrigger_Format1_Item_oms_1[] = { 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_EventTrigger_Format1_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_EventTrigger_Format1_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-eventTriggerCondition-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* messageType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* messageDirection */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* associatedUEInfo */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* associatedUEEvent */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* logicalOR */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format1_Item_specs_1 = { + sizeof(struct E2SM_RC_EventTrigger_Format1_Item), + offsetof(struct E2SM_RC_EventTrigger_Format1_Item, _asn_ctx), + asn_MAP_E2SM_RC_EventTrigger_Format1_Item_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_E2SM_RC_EventTrigger_Format1_Item_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format1_Item = { + "E2SM-RC-EventTrigger-Format1-Item", + "E2SM-RC-EventTrigger-Format1-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_EventTrigger_Format1_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format1_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_EventTrigger_Format1_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format1_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_EventTrigger_Format1_Item_1, + 6, /* Elements count */ + &asn_SPC_E2SM_RC_EventTrigger_Format1_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-EventTrigger-Format1.c b/e2sm/lib/E2SM-RC-EventTrigger-Format1.c new file mode 100644 index 0000000..c8911e9 --- /dev/null +++ b/e2sm/lib/E2SM-RC-EventTrigger-Format1.c @@ -0,0 +1,143 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-EventTrigger-Format1.h" + +#include "EventTrigger-UE-Info.h" +#include "E2SM-RC-EventTrigger-Format1-Item.h" +static int +memb_message_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_message_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_message_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_message_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_message_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_message_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_EventTrigger_Format1_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_message_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_message_List_specs_2 = { + sizeof(struct E2SM_RC_EventTrigger_Format1__message_List), + offsetof(struct E2SM_RC_EventTrigger_Format1__message_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_message_List_2 = { + "message-List", + "message-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_message_List_tags_2, + sizeof(asn_DEF_message_List_tags_2) + /sizeof(asn_DEF_message_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_message_List_tags_2, /* Same as above */ + sizeof(asn_DEF_message_List_tags_2) + /sizeof(asn_DEF_message_List_tags_2[0]), /* 2 */ + { &asn_OER_type_message_List_constr_2, &asn_PER_type_message_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_message_List_2, + 1, /* Single element */ + &asn_SPC_message_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format1, message_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_message_List_2, + 0, + { &asn_OER_memb_message_List_constr_2, &asn_PER_memb_message_List_constr_2, memb_message_List_constraint_1 }, + 0, 0, /* No default value */ + "message-List" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_EventTrigger_Format1, globalAssociatedUEInfo), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_UE_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "globalAssociatedUEInfo" + }, +}; +static const int asn_MAP_E2SM_RC_EventTrigger_Format1_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_EventTrigger_Format1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_EventTrigger_Format1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* message-List */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* globalAssociatedUEInfo */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format1_specs_1 = { + sizeof(struct E2SM_RC_EventTrigger_Format1), + offsetof(struct E2SM_RC_EventTrigger_Format1, _asn_ctx), + asn_MAP_E2SM_RC_EventTrigger_Format1_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_E2SM_RC_EventTrigger_Format1_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format1 = { + "E2SM-RC-EventTrigger-Format1", + "E2SM-RC-EventTrigger-Format1", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_EventTrigger_Format1_tags_1, + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format1_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_EventTrigger_Format1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_EventTrigger_Format1_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_EventTrigger_Format1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-EventTrigger-Format2.c b/e2sm/lib/E2SM-RC-EventTrigger-Format2.c new file mode 100644 index 0000000..54a8e9d --- /dev/null +++ b/e2sm/lib/E2SM-RC-EventTrigger-Format2.c @@ -0,0 +1,84 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-EventTrigger-Format2.h" + +#include "RANParameter-Testing.h" +#include "EventTrigger-UE-Info.h" +asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format2, ric_callProcessType_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_CallProcessType_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-callProcessType-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format2, ric_callProcessBreakpoint_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_CallProcessBreakpoint_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-callProcessBreakpoint-ID" + }, + { ATF_POINTER, 2, offsetof(struct E2SM_RC_EventTrigger_Format2, associatedE2NodeInfo), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "associatedE2NodeInfo" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_EventTrigger_Format2, associatedUEInfo), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_UE_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "associatedUEInfo" + }, +}; +static const int asn_MAP_E2SM_RC_EventTrigger_Format2_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_EventTrigger_Format2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_EventTrigger_Format2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-callProcessType-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-callProcessBreakpoint-ID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* associatedE2NodeInfo */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* associatedUEInfo */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format2_specs_1 = { + sizeof(struct E2SM_RC_EventTrigger_Format2), + offsetof(struct E2SM_RC_EventTrigger_Format2, _asn_ctx), + asn_MAP_E2SM_RC_EventTrigger_Format2_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_E2SM_RC_EventTrigger_Format2_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format2 = { + "E2SM-RC-EventTrigger-Format2", + "E2SM-RC-EventTrigger-Format2", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_EventTrigger_Format2_tags_1, + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format2_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format2_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_EventTrigger_Format2_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format2_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format2_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_EventTrigger_Format2_1, + 4, /* Elements count */ + &asn_SPC_E2SM_RC_EventTrigger_Format2_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-EventTrigger-Format3-Item.c b/e2sm/lib/E2SM-RC-EventTrigger-Format3-Item.c new file mode 100644 index 0000000..9781e8e --- /dev/null +++ b/e2sm/lib/E2SM-RC-EventTrigger-Format3-Item.c @@ -0,0 +1,116 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-EventTrigger-Format3-Item.h" + +#include "EventTrigger-Cell-Info.h" +static int +memb_e2NodeInfoChange_ID_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 512)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_e2NodeInfoChange_ID_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_e2NodeInfoChange_ID_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 9, 9, 1, 512 } /* (1..512,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format3_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format3_Item, ric_eventTriggerCondition_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_EventTriggerCondition_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-eventTriggerCondition-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format3_Item, e2NodeInfoChange_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_e2NodeInfoChange_ID_constr_3, &asn_PER_memb_e2NodeInfoChange_ID_constr_3, memb_e2NodeInfoChange_ID_constraint_1 }, + 0, 0, /* No default value */ + "e2NodeInfoChange-ID" + }, + { ATF_POINTER, 2, offsetof(struct E2SM_RC_EventTrigger_Format3_Item, associatedCellInfo), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_Cell_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "associatedCellInfo" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_EventTrigger_Format3_Item, logicalOR), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LogicalOR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "logicalOR" + }, +}; +static const int asn_MAP_E2SM_RC_EventTrigger_Format3_Item_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_EventTrigger_Format3_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_EventTrigger_Format3_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-eventTriggerCondition-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2NodeInfoChange-ID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* associatedCellInfo */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* logicalOR */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format3_Item_specs_1 = { + sizeof(struct E2SM_RC_EventTrigger_Format3_Item), + offsetof(struct E2SM_RC_EventTrigger_Format3_Item, _asn_ctx), + asn_MAP_E2SM_RC_EventTrigger_Format3_Item_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_E2SM_RC_EventTrigger_Format3_Item_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format3_Item = { + "E2SM-RC-EventTrigger-Format3-Item", + "E2SM-RC-EventTrigger-Format3-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_EventTrigger_Format3_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format3_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format3_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_EventTrigger_Format3_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format3_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format3_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_EventTrigger_Format3_Item_1, + 4, /* Elements count */ + &asn_SPC_E2SM_RC_EventTrigger_Format3_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-EventTrigger-Format3.c b/e2sm/lib/E2SM-RC-EventTrigger-Format3.c new file mode 100644 index 0000000..2f0efcd --- /dev/null +++ b/e2sm/lib/E2SM-RC-EventTrigger-Format3.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-EventTrigger-Format3.h" + +#include "E2SM-RC-EventTrigger-Format3-Item.h" +static int +memb_e2NodeInfoChange_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_e2NodeInfoChange_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_e2NodeInfoChange_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_e2NodeInfoChange_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_e2NodeInfoChange_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_e2NodeInfoChange_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_EventTrigger_Format3_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_e2NodeInfoChange_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_e2NodeInfoChange_List_specs_2 = { + sizeof(struct E2SM_RC_EventTrigger_Format3__e2NodeInfoChange_List), + offsetof(struct E2SM_RC_EventTrigger_Format3__e2NodeInfoChange_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_e2NodeInfoChange_List_2 = { + "e2NodeInfoChange-List", + "e2NodeInfoChange-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_e2NodeInfoChange_List_tags_2, + sizeof(asn_DEF_e2NodeInfoChange_List_tags_2) + /sizeof(asn_DEF_e2NodeInfoChange_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_e2NodeInfoChange_List_tags_2, /* Same as above */ + sizeof(asn_DEF_e2NodeInfoChange_List_tags_2) + /sizeof(asn_DEF_e2NodeInfoChange_List_tags_2[0]), /* 2 */ + { &asn_OER_type_e2NodeInfoChange_List_constr_2, &asn_PER_type_e2NodeInfoChange_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_e2NodeInfoChange_List_2, + 1, /* Single element */ + &asn_SPC_e2NodeInfoChange_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format3_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format3, e2NodeInfoChange_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_e2NodeInfoChange_List_2, + 0, + { &asn_OER_memb_e2NodeInfoChange_List_constr_2, &asn_PER_memb_e2NodeInfoChange_List_constr_2, memb_e2NodeInfoChange_List_constraint_1 }, + 0, 0, /* No default value */ + "e2NodeInfoChange-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_EventTrigger_Format3_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_EventTrigger_Format3_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* e2NodeInfoChange-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format3_specs_1 = { + sizeof(struct E2SM_RC_EventTrigger_Format3), + offsetof(struct E2SM_RC_EventTrigger_Format3, _asn_ctx), + asn_MAP_E2SM_RC_EventTrigger_Format3_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format3 = { + "E2SM-RC-EventTrigger-Format3", + "E2SM-RC-EventTrigger-Format3", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_EventTrigger_Format3_tags_1, + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format3_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format3_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_EventTrigger_Format3_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format3_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format3_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_EventTrigger_Format3_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_EventTrigger_Format3_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-EventTrigger-Format4-Item.c b/e2sm/lib/E2SM-RC-EventTrigger-Format4-Item.c new file mode 100644 index 0000000..35d496a --- /dev/null +++ b/e2sm/lib/E2SM-RC-EventTrigger-Format4-Item.c @@ -0,0 +1,83 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-EventTrigger-Format4-Item.h" + +#include "EventTrigger-UE-Info.h" +asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format4_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format4_Item, ric_eventTriggerCondition_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_EventTriggerCondition_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-eventTriggerCondition-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format4_Item, triggerType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_TriggerType_Choice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "triggerType" + }, + { ATF_POINTER, 2, offsetof(struct E2SM_RC_EventTrigger_Format4_Item, associatedUEInfo), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_UE_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "associatedUEInfo" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_EventTrigger_Format4_Item, logicalOR), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LogicalOR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "logicalOR" + }, +}; +static const int asn_MAP_E2SM_RC_EventTrigger_Format4_Item_oms_1[] = { 2, 3 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_EventTrigger_Format4_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_EventTrigger_Format4_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-eventTriggerCondition-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* triggerType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* associatedUEInfo */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* logicalOR */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format4_Item_specs_1 = { + sizeof(struct E2SM_RC_EventTrigger_Format4_Item), + offsetof(struct E2SM_RC_EventTrigger_Format4_Item, _asn_ctx), + asn_MAP_E2SM_RC_EventTrigger_Format4_Item_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_E2SM_RC_EventTrigger_Format4_Item_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format4_Item = { + "E2SM-RC-EventTrigger-Format4-Item", + "E2SM-RC-EventTrigger-Format4-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_EventTrigger_Format4_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format4_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format4_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_EventTrigger_Format4_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format4_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format4_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_EventTrigger_Format4_Item_1, + 4, /* Elements count */ + &asn_SPC_E2SM_RC_EventTrigger_Format4_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-EventTrigger-Format4.c b/e2sm/lib/E2SM-RC-EventTrigger-Format4.c new file mode 100644 index 0000000..8fa15b7 --- /dev/null +++ b/e2sm/lib/E2SM-RC-EventTrigger-Format4.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-EventTrigger-Format4.h" + +#include "E2SM-RC-EventTrigger-Format4-Item.h" +static int +memb_uEInfoChange_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_uEInfoChange_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_uEInfoChange_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_uEInfoChange_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_uEInfoChange_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_uEInfoChange_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_EventTrigger_Format4_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_uEInfoChange_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_uEInfoChange_List_specs_2 = { + sizeof(struct E2SM_RC_EventTrigger_Format4__uEInfoChange_List), + offsetof(struct E2SM_RC_EventTrigger_Format4__uEInfoChange_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_uEInfoChange_List_2 = { + "uEInfoChange-List", + "uEInfoChange-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_uEInfoChange_List_tags_2, + sizeof(asn_DEF_uEInfoChange_List_tags_2) + /sizeof(asn_DEF_uEInfoChange_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_uEInfoChange_List_tags_2, /* Same as above */ + sizeof(asn_DEF_uEInfoChange_List_tags_2) + /sizeof(asn_DEF_uEInfoChange_List_tags_2[0]), /* 2 */ + { &asn_OER_type_uEInfoChange_List_constr_2, &asn_PER_type_uEInfoChange_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_uEInfoChange_List_2, + 1, /* Single element */ + &asn_SPC_uEInfoChange_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format4_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format4, uEInfoChange_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_uEInfoChange_List_2, + 0, + { &asn_OER_memb_uEInfoChange_List_constr_2, &asn_PER_memb_uEInfoChange_List_constr_2, memb_uEInfoChange_List_constraint_1 }, + 0, 0, /* No default value */ + "uEInfoChange-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_EventTrigger_Format4_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_EventTrigger_Format4_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* uEInfoChange-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format4_specs_1 = { + sizeof(struct E2SM_RC_EventTrigger_Format4), + offsetof(struct E2SM_RC_EventTrigger_Format4, _asn_ctx), + asn_MAP_E2SM_RC_EventTrigger_Format4_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format4 = { + "E2SM-RC-EventTrigger-Format4", + "E2SM-RC-EventTrigger-Format4", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_EventTrigger_Format4_tags_1, + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format4_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format4_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_EventTrigger_Format4_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format4_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format4_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_EventTrigger_Format4_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_EventTrigger_Format4_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-EventTrigger-Format5.c b/e2sm/lib/E2SM-RC-EventTrigger-Format5.c new file mode 100644 index 0000000..f7ebe17 --- /dev/null +++ b/e2sm/lib/E2SM-RC-EventTrigger-Format5.c @@ -0,0 +1,123 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-EventTrigger-Format5.h" + +#include "EventTrigger-UE-Info.h" +#include "EventTrigger-Cell-Info.h" +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_onDemand_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_onDemand_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_onDemand_value2enum_2[] = { + { 0, 4, "true" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_onDemand_enum2value_2[] = { + 0 /* true(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_onDemand_specs_2 = { + asn_MAP_onDemand_value2enum_2, /* "tag" => N; sorted by tag */ + asn_MAP_onDemand_enum2value_2, /* N => "tag"; sorted by N */ + 1, /* Number of elements in the maps */ + 2, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_onDemand_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_onDemand_2 = { + "onDemand", + "onDemand", + &asn_OP_NativeEnumerated, + asn_DEF_onDemand_tags_2, + sizeof(asn_DEF_onDemand_tags_2) + /sizeof(asn_DEF_onDemand_tags_2[0]) - 1, /* 1 */ + asn_DEF_onDemand_tags_2, /* Same as above */ + sizeof(asn_DEF_onDemand_tags_2) + /sizeof(asn_DEF_onDemand_tags_2[0]), /* 2 */ + { &asn_OER_type_onDemand_constr_2, &asn_PER_type_onDemand_constr_2, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_onDemand_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_Format5_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger_Format5, onDemand), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_onDemand_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "onDemand" + }, + { ATF_POINTER, 2, offsetof(struct E2SM_RC_EventTrigger_Format5, associatedUEInfo), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_UE_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "associatedUEInfo" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_EventTrigger_Format5, associatedCellInfo), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_Cell_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "associatedCellInfo" + }, +}; +static const int asn_MAP_E2SM_RC_EventTrigger_Format5_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_EventTrigger_Format5_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_EventTrigger_Format5_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* onDemand */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* associatedUEInfo */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* associatedCellInfo */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_Format5_specs_1 = { + sizeof(struct E2SM_RC_EventTrigger_Format5), + offsetof(struct E2SM_RC_EventTrigger_Format5, _asn_ctx), + asn_MAP_E2SM_RC_EventTrigger_Format5_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_E2SM_RC_EventTrigger_Format5_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger_Format5 = { + "E2SM-RC-EventTrigger-Format5", + "E2SM-RC-EventTrigger-Format5", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_EventTrigger_Format5_tags_1, + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format5_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format5_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_EventTrigger_Format5_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_EventTrigger_Format5_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_Format5_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_EventTrigger_Format5_1, + 3, /* Elements count */ + &asn_SPC_E2SM_RC_EventTrigger_Format5_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-EventTrigger.c b/e2sm/lib/E2SM-RC-EventTrigger.c new file mode 100644 index 0000000..6991f39 --- /dev/null +++ b/e2sm/lib/E2SM-RC-EventTrigger.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-EventTrigger.h" + +#include "E2SM-RC-EventTrigger-Format1.h" +#include "E2SM-RC-EventTrigger-Format2.h" +#include "E2SM-RC-EventTrigger-Format3.h" +#include "E2SM-RC-EventTrigger-Format4.h" +#include "E2SM-RC-EventTrigger-Format5.h" +static asn_oer_constraints_t asn_OER_type_ric_eventTrigger_formats_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ric_eventTrigger_formats_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_eventTrigger_formats_2[] = { + { ATF_POINTER, 0, offsetof(struct E2SM_RC_EventTrigger__ric_eventTrigger_formats, choice.eventTrigger_Format1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_EventTrigger_Format1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventTrigger-Format1" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_EventTrigger__ric_eventTrigger_formats, choice.eventTrigger_Format2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_EventTrigger_Format2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventTrigger-Format2" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_EventTrigger__ric_eventTrigger_formats, choice.eventTrigger_Format3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_EventTrigger_Format3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventTrigger-Format3" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_EventTrigger__ric_eventTrigger_formats, choice.eventTrigger_Format4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_EventTrigger_Format4, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventTrigger-Format4" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_EventTrigger__ric_eventTrigger_formats, choice.eventTrigger_Format5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_EventTrigger_Format5, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventTrigger-Format5" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ric_eventTrigger_formats_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventTrigger-Format1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* eventTrigger-Format2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* eventTrigger-Format3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* eventTrigger-Format4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* eventTrigger-Format5 */ +}; +static asn_CHOICE_specifics_t asn_SPC_ric_eventTrigger_formats_specs_2 = { + sizeof(struct E2SM_RC_EventTrigger__ric_eventTrigger_formats), + offsetof(struct E2SM_RC_EventTrigger__ric_eventTrigger_formats, _asn_ctx), + offsetof(struct E2SM_RC_EventTrigger__ric_eventTrigger_formats, present), + sizeof(((struct E2SM_RC_EventTrigger__ric_eventTrigger_formats *)0)->present), + asn_MAP_ric_eventTrigger_formats_tag2el_2, + 5, /* Count of tags in the map */ + 0, 0, + 5 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_eventTrigger_formats_2 = { + "ric-eventTrigger-formats", + "ric-eventTrigger-formats", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ric_eventTrigger_formats_constr_2, &asn_PER_type_ric_eventTrigger_formats_constr_2, CHOICE_constraint }, + asn_MBR_ric_eventTrigger_formats_2, + 5, /* Elements count */ + &asn_SPC_ric_eventTrigger_formats_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2SM_RC_EventTrigger_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_EventTrigger, ric_eventTrigger_formats), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ric_eventTrigger_formats_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-eventTrigger-formats" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_EventTrigger_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_EventTrigger_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-eventTrigger-formats */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_EventTrigger_specs_1 = { + sizeof(struct E2SM_RC_EventTrigger), + offsetof(struct E2SM_RC_EventTrigger, _asn_ctx), + asn_MAP_E2SM_RC_EventTrigger_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_EventTrigger = { + "E2SM-RC-EventTrigger", + "E2SM-RC-EventTrigger", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_EventTrigger_tags_1, + sizeof(asn_DEF_E2SM_RC_EventTrigger_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_EventTrigger_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_EventTrigger_tags_1) + /sizeof(asn_DEF_E2SM_RC_EventTrigger_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_EventTrigger_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_EventTrigger_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationHeader-Format1.c b/e2sm/lib/E2SM-RC-IndicationHeader-Format1.c new file mode 100644 index 0000000..7a880ae --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationHeader-Format1.c @@ -0,0 +1,52 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationHeader-Format1.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationHeader_Format1_1[] = { + { ATF_POINTER, 1, offsetof(struct E2SM_RC_IndicationHeader_Format1, ric_eventTriggerCondition_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_EventTriggerCondition_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-eventTriggerCondition-ID" + }, +}; +static const int asn_MAP_E2SM_RC_IndicationHeader_Format1_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationHeader_Format1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationHeader_Format1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-eventTriggerCondition-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationHeader_Format1_specs_1 = { + sizeof(struct E2SM_RC_IndicationHeader_Format1), + offsetof(struct E2SM_RC_IndicationHeader_Format1, _asn_ctx), + asn_MAP_E2SM_RC_IndicationHeader_Format1_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_E2SM_RC_IndicationHeader_Format1_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationHeader_Format1 = { + "E2SM-RC-IndicationHeader-Format1", + "E2SM-RC-IndicationHeader-Format1", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationHeader_Format1_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationHeader_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationHeader_Format1_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationHeader_Format1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationHeader_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationHeader_Format1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationHeader_Format1_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationHeader_Format1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationHeader-Format2.c b/e2sm/lib/E2SM-RC-IndicationHeader-Format2.c new file mode 100644 index 0000000..4b7724c --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationHeader-Format2.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationHeader-Format2.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationHeader_Format2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationHeader_Format2, ueID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_UEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationHeader_Format2, ric_InsertStyle_Type), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-InsertStyle-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationHeader_Format2, ric_InsertIndication_ID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_InsertIndication_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-InsertIndication-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationHeader_Format2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationHeader_Format2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-InsertStyle-Type */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ric-InsertIndication-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationHeader_Format2_specs_1 = { + sizeof(struct E2SM_RC_IndicationHeader_Format2), + offsetof(struct E2SM_RC_IndicationHeader_Format2, _asn_ctx), + asn_MAP_E2SM_RC_IndicationHeader_Format2_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationHeader_Format2 = { + "E2SM-RC-IndicationHeader-Format2", + "E2SM-RC-IndicationHeader-Format2", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationHeader_Format2_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationHeader_Format2_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationHeader_Format2_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationHeader_Format2_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationHeader_Format2_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationHeader_Format2_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationHeader_Format2_1, + 3, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationHeader_Format2_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationHeader.c b/e2sm/lib/E2SM-RC-IndicationHeader.c new file mode 100644 index 0000000..c5764a4 --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationHeader.c @@ -0,0 +1,109 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationHeader.h" + +#include "E2SM-RC-IndicationHeader-Format1.h" +#include "E2SM-RC-IndicationHeader-Format2.h" +static asn_oer_constraints_t asn_OER_type_ric_indicationHeader_formats_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ric_indicationHeader_formats_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_indicationHeader_formats_2[] = { + { ATF_POINTER, 0, offsetof(struct E2SM_RC_IndicationHeader__ric_indicationHeader_formats, choice.indicationHeader_Format1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_IndicationHeader_Format1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "indicationHeader-Format1" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_IndicationHeader__ric_indicationHeader_formats, choice.indicationHeader_Format2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_IndicationHeader_Format2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "indicationHeader-Format2" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ric_indicationHeader_formats_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* indicationHeader-Format1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* indicationHeader-Format2 */ +}; +static asn_CHOICE_specifics_t asn_SPC_ric_indicationHeader_formats_specs_2 = { + sizeof(struct E2SM_RC_IndicationHeader__ric_indicationHeader_formats), + offsetof(struct E2SM_RC_IndicationHeader__ric_indicationHeader_formats, _asn_ctx), + offsetof(struct E2SM_RC_IndicationHeader__ric_indicationHeader_formats, present), + sizeof(((struct E2SM_RC_IndicationHeader__ric_indicationHeader_formats *)0)->present), + asn_MAP_ric_indicationHeader_formats_tag2el_2, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_indicationHeader_formats_2 = { + "ric-indicationHeader-formats", + "ric-indicationHeader-formats", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ric_indicationHeader_formats_constr_2, &asn_PER_type_ric_indicationHeader_formats_constr_2, CHOICE_constraint }, + asn_MBR_ric_indicationHeader_formats_2, + 2, /* Elements count */ + &asn_SPC_ric_indicationHeader_formats_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationHeader_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationHeader, ric_indicationHeader_formats), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ric_indicationHeader_formats_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-indicationHeader-formats" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationHeader_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationHeader_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-indicationHeader-formats */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationHeader_specs_1 = { + sizeof(struct E2SM_RC_IndicationHeader), + offsetof(struct E2SM_RC_IndicationHeader, _asn_ctx), + asn_MAP_E2SM_RC_IndicationHeader_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationHeader = { + "E2SM-RC-IndicationHeader", + "E2SM-RC-IndicationHeader", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationHeader_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationHeader_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationHeader_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationHeader_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationHeader_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationHeader_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationHeader_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationHeader_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format1-Item.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format1-Item.c new file mode 100644 index 0000000..b84dcc1 --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format1-Item.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format1-Item.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format1_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format1_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format1_Item, ranParameter_valueType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_ValueType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-valueType" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format1_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format1_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-valueType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format1_Item_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format1_Item), + offsetof(struct E2SM_RC_IndicationMessage_Format1_Item, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format1_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format1_Item = { + "E2SM-RC-IndicationMessage-Format1-Item", + "E2SM-RC-IndicationMessage-Format1-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format1_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format1_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format1_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format1_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format1_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format1_Item_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format1_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format1.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format1.c new file mode 100644 index 0000000..0395dbd --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format1.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format1.h" + +#include "E2SM-RC-IndicationMessage-Format1-Item.h" +static int +memb_ranP_Reported_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ranP_Reported_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ranP_Reported_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ranP_Reported_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ranP_Reported_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranP_Reported_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_IndicationMessage_Format1_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ranP_Reported_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ranP_Reported_List_specs_2 = { + sizeof(struct E2SM_RC_IndicationMessage_Format1__ranP_Reported_List), + offsetof(struct E2SM_RC_IndicationMessage_Format1__ranP_Reported_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranP_Reported_List_2 = { + "ranP-Reported-List", + "ranP-Reported-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ranP_Reported_List_tags_2, + sizeof(asn_DEF_ranP_Reported_List_tags_2) + /sizeof(asn_DEF_ranP_Reported_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ranP_Reported_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ranP_Reported_List_tags_2) + /sizeof(asn_DEF_ranP_Reported_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ranP_Reported_List_constr_2, &asn_PER_type_ranP_Reported_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ranP_Reported_List_2, + 1, /* Single element */ + &asn_SPC_ranP_Reported_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format1, ranP_Reported_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ranP_Reported_List_2, + 0, + { &asn_OER_memb_ranP_Reported_List_constr_2, &asn_PER_memb_ranP_Reported_List_constr_2, memb_ranP_Reported_List_constraint_1 }, + 0, 0, /* No default value */ + "ranP-Reported-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranP-Reported-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format1_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format1), + offsetof(struct E2SM_RC_IndicationMessage_Format1, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format1_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format1 = { + "E2SM-RC-IndicationMessage-Format1", + "E2SM-RC-IndicationMessage-Format1", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format1_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format1_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format1_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format1_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format1_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format2-Item.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format2-Item.c new file mode 100644 index 0000000..5091cd5 --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format2-Item.c @@ -0,0 +1,140 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format2-Item.h" + +#include "E2SM-RC-IndicationMessage-Format2-RANParameter-Item.h" +static int +memb_ranP_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ranP_List_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ranP_List_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ranP_List_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ranP_List_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranP_List_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ranP_List_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ranP_List_specs_3 = { + sizeof(struct E2SM_RC_IndicationMessage_Format2_Item__ranP_List), + offsetof(struct E2SM_RC_IndicationMessage_Format2_Item__ranP_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranP_List_3 = { + "ranP-List", + "ranP-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ranP_List_tags_3, + sizeof(asn_DEF_ranP_List_tags_3) + /sizeof(asn_DEF_ranP_List_tags_3[0]) - 1, /* 1 */ + asn_DEF_ranP_List_tags_3, /* Same as above */ + sizeof(asn_DEF_ranP_List_tags_3) + /sizeof(asn_DEF_ranP_List_tags_3[0]), /* 2 */ + { &asn_OER_type_ranP_List_constr_3, &asn_PER_type_ranP_List_constr_3, SEQUENCE_OF_constraint }, + asn_MBR_ranP_List_3, + 1, /* Single element */ + &asn_SPC_ranP_List_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format2_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format2_Item, ueID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_UEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format2_Item, ranP_List), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_ranP_List_3, + 0, + { &asn_OER_memb_ranP_List_constr_3, &asn_PER_memb_ranP_List_constr_3, memb_ranP_List_constraint_1 }, + 0, 0, /* No default value */ + "ranP-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format2_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format2_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranP-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format2_Item_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format2_Item), + offsetof(struct E2SM_RC_IndicationMessage_Format2_Item, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format2_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format2_Item = { + "E2SM-RC-IndicationMessage-Format2-Item", + "E2SM-RC-IndicationMessage-Format2-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format2_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format2_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format2_Item_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format2_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format2-RANParameter-Item.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format2-RANParameter-Item.c new file mode 100644 index 0000000..c750920 --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format2-RANParameter-Item.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format2-RANParameter-Item.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format2_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format2_RANParameter_Item, ranParameter_valueType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_ValueType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-valueType" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-valueType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format2_RANParameter_Item), + offsetof(struct E2SM_RC_IndicationMessage_Format2_RANParameter_Item, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item = { + "E2SM-RC-IndicationMessage-Format2-RANParameter-Item", + "E2SM-RC-IndicationMessage-Format2-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format2_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format2.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format2.c new file mode 100644 index 0000000..a4210cc --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format2.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format2.h" + +#include "E2SM-RC-IndicationMessage-Format2-Item.h" +static int +memb_ueParameter_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ueParameter_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ueParameter_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ueParameter_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ueParameter_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ueParameter_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_IndicationMessage_Format2_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ueParameter_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ueParameter_List_specs_2 = { + sizeof(struct E2SM_RC_IndicationMessage_Format2__ueParameter_List), + offsetof(struct E2SM_RC_IndicationMessage_Format2__ueParameter_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ueParameter_List_2 = { + "ueParameter-List", + "ueParameter-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ueParameter_List_tags_2, + sizeof(asn_DEF_ueParameter_List_tags_2) + /sizeof(asn_DEF_ueParameter_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ueParameter_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ueParameter_List_tags_2) + /sizeof(asn_DEF_ueParameter_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ueParameter_List_constr_2, &asn_PER_type_ueParameter_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ueParameter_List_2, + 1, /* Single element */ + &asn_SPC_ueParameter_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format2, ueParameter_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ueParameter_List_2, + 0, + { &asn_OER_memb_ueParameter_List_constr_2, &asn_PER_memb_ueParameter_List_constr_2, memb_ueParameter_List_constraint_1 }, + 0, 0, /* No default value */ + "ueParameter-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ueParameter-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format2_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format2), + offsetof(struct E2SM_RC_IndicationMessage_Format2, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format2_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format2 = { + "E2SM-RC-IndicationMessage-Format2", + "E2SM-RC-IndicationMessage-Format2", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format2_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format2_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format2_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format2_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format2_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format3-Item.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format3-Item.c new file mode 100644 index 0000000..2dd2b21 --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format3-Item.c @@ -0,0 +1,83 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format3-Item.h" + +#include "NeighborRelation-Info.h" +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format3_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format3_Item, cellGlobal_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_CGI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellGlobal-ID" + }, + { ATF_POINTER, 3, offsetof(struct E2SM_RC_IndicationMessage_Format3_Item, cellContextInfo), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellContextInfo" + }, + { ATF_POINTER, 2, offsetof(struct E2SM_RC_IndicationMessage_Format3_Item, cellDeleted), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellDeleted" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_IndicationMessage_Format3_Item, neighborRelation_Table), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NeighborRelation_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "neighborRelation-Table" + }, +}; +static const int asn_MAP_E2SM_RC_IndicationMessage_Format3_Item_oms_1[] = { 1, 2, 3 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format3_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format3_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cellGlobal-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cellContextInfo */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* cellDeleted */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* neighborRelation-Table */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format3_Item_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format3_Item), + offsetof(struct E2SM_RC_IndicationMessage_Format3_Item, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format3_Item_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_E2SM_RC_IndicationMessage_Format3_Item_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format3_Item = { + "E2SM-RC-IndicationMessage-Format3-Item", + "E2SM-RC-IndicationMessage-Format3-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format3_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format3_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format3_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format3_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format3_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format3_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format3_Item_1, + 4, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format3_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format3.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format3.c new file mode 100644 index 0000000..2573d44 --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format3.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format3.h" + +#include "E2SM-RC-IndicationMessage-Format3-Item.h" +static int +memb_cellInfo_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_cellInfo_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_cellInfo_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_cellInfo_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_cellInfo_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_cellInfo_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_IndicationMessage_Format3_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_cellInfo_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_cellInfo_List_specs_2 = { + sizeof(struct E2SM_RC_IndicationMessage_Format3__cellInfo_List), + offsetof(struct E2SM_RC_IndicationMessage_Format3__cellInfo_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_cellInfo_List_2 = { + "cellInfo-List", + "cellInfo-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_cellInfo_List_tags_2, + sizeof(asn_DEF_cellInfo_List_tags_2) + /sizeof(asn_DEF_cellInfo_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_cellInfo_List_tags_2, /* Same as above */ + sizeof(asn_DEF_cellInfo_List_tags_2) + /sizeof(asn_DEF_cellInfo_List_tags_2[0]), /* 2 */ + { &asn_OER_type_cellInfo_List_constr_2, &asn_PER_type_cellInfo_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_cellInfo_List_2, + 1, /* Single element */ + &asn_SPC_cellInfo_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format3_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format3, cellInfo_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_cellInfo_List_2, + 0, + { &asn_OER_memb_cellInfo_List_constr_2, &asn_PER_memb_cellInfo_List_constr_2, memb_cellInfo_List_constraint_1 }, + 0, 0, /* No default value */ + "cellInfo-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format3_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format3_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* cellInfo-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format3_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format3), + offsetof(struct E2SM_RC_IndicationMessage_Format3, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format3_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format3 = { + "E2SM-RC-IndicationMessage-Format3", + "E2SM-RC-IndicationMessage-Format3", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format3_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format3_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format3_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format3_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format3_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format3_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format3_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format3_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format4-ItemCell.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format4-ItemCell.c new file mode 100644 index 0000000..113d318 --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format4-ItemCell.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format4-ItemCell.h" + +#include "NeighborRelation-Info.h" +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format4_ItemCell_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format4_ItemCell, cellGlobal_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_CGI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellGlobal-ID" + }, + { ATF_POINTER, 2, offsetof(struct E2SM_RC_IndicationMessage_Format4_ItemCell, cellContextInfo), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellContextInfo" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_IndicationMessage_Format4_ItemCell, neighborRelation_Table), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NeighborRelation_Info, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "neighborRelation-Table" + }, +}; +static const int asn_MAP_E2SM_RC_IndicationMessage_Format4_ItemCell_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format4_ItemCell_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cellGlobal-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cellContextInfo */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* neighborRelation-Table */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format4_ItemCell_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format4_ItemCell), + offsetof(struct E2SM_RC_IndicationMessage_Format4_ItemCell, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format4_ItemCell_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_E2SM_RC_IndicationMessage_Format4_ItemCell_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell = { + "E2SM-RC-IndicationMessage-Format4-ItemCell", + "E2SM-RC-IndicationMessage-Format4-ItemCell", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format4_ItemCell_1, + 3, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format4_ItemCell_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format4-ItemUE.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format4-ItemUE.c new file mode 100644 index 0000000..857e906 --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format4-ItemUE.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format4-ItemUE.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format4_ItemUE_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format4_ItemUE, ueID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_UEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueID" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_IndicationMessage_Format4_ItemUE, ueContextInfo), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueContextInfo" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format4_ItemUE, cellGlobal_ID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_CGI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellGlobal-ID" + }, +}; +static const int asn_MAP_E2SM_RC_IndicationMessage_Format4_ItemUE_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format4_ItemUE_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ueContextInfo */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* cellGlobal-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format4_ItemUE_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format4_ItemUE), + offsetof(struct E2SM_RC_IndicationMessage_Format4_ItemUE, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format4_ItemUE_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_E2SM_RC_IndicationMessage_Format4_ItemUE_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE = { + "E2SM-RC-IndicationMessage-Format4-ItemUE", + "E2SM-RC-IndicationMessage-Format4-ItemUE", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format4_ItemUE_1, + 3, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format4_ItemUE_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format4.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format4.c new file mode 100644 index 0000000..dfcc96a --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format4.c @@ -0,0 +1,220 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format4.h" + +#include "E2SM-RC-IndicationMessage-Format4-ItemUE.h" +#include "E2SM-RC-IndicationMessage-Format4-ItemCell.h" +static int +memb_ueInfo_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_cellInfo_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ueInfo_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +static asn_per_constraints_t asn_PER_type_ueInfo_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_cellInfo_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +static asn_per_constraints_t asn_PER_type_cellInfo_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ueInfo_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ueInfo_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_cellInfo_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +static asn_per_constraints_t asn_PER_memb_cellInfo_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ueInfo_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemUE, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ueInfo_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ueInfo_List_specs_2 = { + sizeof(struct E2SM_RC_IndicationMessage_Format4__ueInfo_List), + offsetof(struct E2SM_RC_IndicationMessage_Format4__ueInfo_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ueInfo_List_2 = { + "ueInfo-List", + "ueInfo-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ueInfo_List_tags_2, + sizeof(asn_DEF_ueInfo_List_tags_2) + /sizeof(asn_DEF_ueInfo_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ueInfo_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ueInfo_List_tags_2) + /sizeof(asn_DEF_ueInfo_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ueInfo_List_constr_2, &asn_PER_type_ueInfo_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ueInfo_List_2, + 1, /* Single element */ + &asn_SPC_ueInfo_List_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_cellInfo_List_4[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_IndicationMessage_Format4_ItemCell, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_cellInfo_List_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_cellInfo_List_specs_4 = { + sizeof(struct E2SM_RC_IndicationMessage_Format4__cellInfo_List), + offsetof(struct E2SM_RC_IndicationMessage_Format4__cellInfo_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_cellInfo_List_4 = { + "cellInfo-List", + "cellInfo-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_cellInfo_List_tags_4, + sizeof(asn_DEF_cellInfo_List_tags_4) + /sizeof(asn_DEF_cellInfo_List_tags_4[0]) - 1, /* 1 */ + asn_DEF_cellInfo_List_tags_4, /* Same as above */ + sizeof(asn_DEF_cellInfo_List_tags_4) + /sizeof(asn_DEF_cellInfo_List_tags_4[0]), /* 2 */ + { &asn_OER_type_cellInfo_List_constr_4, &asn_PER_type_cellInfo_List_constr_4, SEQUENCE_OF_constraint }, + asn_MBR_cellInfo_List_4, + 1, /* Single element */ + &asn_SPC_cellInfo_List_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format4_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format4, ueInfo_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ueInfo_List_2, + 0, + { &asn_OER_memb_ueInfo_List_constr_2, &asn_PER_memb_ueInfo_List_constr_2, memb_ueInfo_List_constraint_1 }, + 0, 0, /* No default value */ + "ueInfo-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format4, cellInfo_List), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_cellInfo_List_4, + 0, + { &asn_OER_memb_cellInfo_List_constr_4, &asn_PER_memb_cellInfo_List_constr_4, memb_cellInfo_List_constraint_1 }, + 0, 0, /* No default value */ + "cellInfo-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format4_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format4_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueInfo-List */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* cellInfo-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format4_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format4), + offsetof(struct E2SM_RC_IndicationMessage_Format4, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format4_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format4 = { + "E2SM-RC-IndicationMessage-Format4", + "E2SM-RC-IndicationMessage-Format4", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format4_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format4_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format4_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format4_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format4_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format5-Item.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format5-Item.c new file mode 100644 index 0000000..3b9541d --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format5-Item.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format5-Item.h" + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format5_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format5_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format5_Item, ranParameter_valueType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_ValueType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-valueType" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format5_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format5_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-valueType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format5_Item_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format5_Item), + offsetof(struct E2SM_RC_IndicationMessage_Format5_Item, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format5_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format5_Item = { + "E2SM-RC-IndicationMessage-Format5-Item", + "E2SM-RC-IndicationMessage-Format5-Item", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format5_Item_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format5_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format5_Item_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format5_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format5_Item_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format5_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format5_Item_1, + 2, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format5_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage-Format5.c b/e2sm/lib/E2SM-RC-IndicationMessage-Format5.c new file mode 100644 index 0000000..3a5f71b --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage-Format5.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage-Format5.h" + +#include "E2SM-RC-IndicationMessage-Format5-Item.h" +static int +memb_ranP_Requested_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ranP_Requested_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +static asn_per_constraints_t asn_PER_type_ranP_Requested_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ranP_Requested_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ranP_Requested_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (SIZE(0..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranP_Requested_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2SM_RC_IndicationMessage_Format5_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ranP_Requested_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ranP_Requested_List_specs_2 = { + sizeof(struct E2SM_RC_IndicationMessage_Format5__ranP_Requested_List), + offsetof(struct E2SM_RC_IndicationMessage_Format5__ranP_Requested_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranP_Requested_List_2 = { + "ranP-Requested-List", + "ranP-Requested-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ranP_Requested_List_tags_2, + sizeof(asn_DEF_ranP_Requested_List_tags_2) + /sizeof(asn_DEF_ranP_Requested_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ranP_Requested_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ranP_Requested_List_tags_2) + /sizeof(asn_DEF_ranP_Requested_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ranP_Requested_List_constr_2, &asn_PER_type_ranP_Requested_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ranP_Requested_List_2, + 1, /* Single element */ + &asn_SPC_ranP_Requested_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_Format5_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage_Format5, ranP_Requested_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ranP_Requested_List_2, + 0, + { &asn_OER_memb_ranP_Requested_List_constr_2, &asn_PER_memb_ranP_Requested_List_constr_2, memb_ranP_Requested_List_constraint_1 }, + 0, 0, /* No default value */ + "ranP-Requested-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_Format5_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_Format5_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranP-Requested-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_Format5_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage_Format5), + offsetof(struct E2SM_RC_IndicationMessage_Format5, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_Format5_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage_Format5 = { + "E2SM-RC-IndicationMessage-Format5", + "E2SM-RC-IndicationMessage-Format5", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_Format5_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format5_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format5_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_Format5_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format5_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_Format5_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_Format5_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_Format5_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-IndicationMessage.c b/e2sm/lib/E2SM-RC-IndicationMessage.c new file mode 100644 index 0000000..3a4cd00 --- /dev/null +++ b/e2sm/lib/E2SM-RC-IndicationMessage.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "E2SM-RC-IndicationMessage.h" + +#include "E2SM-RC-IndicationMessage-Format1.h" +#include "E2SM-RC-IndicationMessage-Format2.h" +#include "E2SM-RC-IndicationMessage-Format3.h" +#include "E2SM-RC-IndicationMessage-Format4.h" +#include "E2SM-RC-IndicationMessage-Format5.h" +static asn_oer_constraints_t asn_OER_type_ric_indicationMessage_formats_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ric_indicationMessage_formats_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 4 } /* (0..4,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_indicationMessage_formats_2[] = { + { ATF_POINTER, 0, offsetof(struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats, choice.indicationMessage_Format1), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_IndicationMessage_Format1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "indicationMessage-Format1" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats, choice.indicationMessage_Format2), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_IndicationMessage_Format2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "indicationMessage-Format2" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats, choice.indicationMessage_Format3), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_IndicationMessage_Format3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "indicationMessage-Format3" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats, choice.indicationMessage_Format4), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_IndicationMessage_Format4, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "indicationMessage-Format4" + }, + { ATF_POINTER, 0, offsetof(struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats, choice.indicationMessage_Format5), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2SM_RC_IndicationMessage_Format5, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "indicationMessage-Format5" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ric_indicationMessage_formats_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* indicationMessage-Format1 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* indicationMessage-Format2 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* indicationMessage-Format3 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* indicationMessage-Format4 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* indicationMessage-Format5 */ +}; +static asn_CHOICE_specifics_t asn_SPC_ric_indicationMessage_formats_specs_2 = { + sizeof(struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats), + offsetof(struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats, _asn_ctx), + offsetof(struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats, present), + sizeof(((struct E2SM_RC_IndicationMessage__ric_indicationMessage_formats *)0)->present), + asn_MAP_ric_indicationMessage_formats_tag2el_2, + 5, /* Count of tags in the map */ + 0, 0, + 5 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_indicationMessage_formats_2 = { + "ric-indicationMessage-formats", + "ric-indicationMessage-formats", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ric_indicationMessage_formats_constr_2, &asn_PER_type_ric_indicationMessage_formats_constr_2, CHOICE_constraint }, + asn_MBR_ric_indicationMessage_formats_2, + 5, /* Elements count */ + &asn_SPC_ric_indicationMessage_formats_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2SM_RC_IndicationMessage_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_IndicationMessage, ric_indicationMessage_formats), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ric_indicationMessage_formats_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-indicationMessage-formats" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2SM_RC_IndicationMessage_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_IndicationMessage_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-indicationMessage-formats */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_IndicationMessage_specs_1 = { + sizeof(struct E2SM_RC_IndicationMessage), + offsetof(struct E2SM_RC_IndicationMessage, _asn_ctx), + asn_MAP_E2SM_RC_IndicationMessage_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2SM_RC_IndicationMessage = { + "E2SM-RC-IndicationMessage", + "E2SM-RC-IndicationMessage", + &asn_OP_SEQUENCE, + asn_DEF_E2SM_RC_IndicationMessage_tags_1, + sizeof(asn_DEF_E2SM_RC_IndicationMessage_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_tags_1[0]), /* 1 */ + asn_DEF_E2SM_RC_IndicationMessage_tags_1, /* Same as above */ + sizeof(asn_DEF_E2SM_RC_IndicationMessage_tags_1) + /sizeof(asn_DEF_E2SM_RC_IndicationMessage_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2SM_RC_IndicationMessage_1, + 1, /* Elements count */ + &asn_SPC_E2SM_RC_IndicationMessage_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/E2SM-RC-RANFunctionDefinition.c b/e2sm/lib/E2SM-RC-RANFunctionDefinition.c index e3ff8fe..dddb336 100644 --- a/e2sm/lib/E2SM-RC-RANFunctionDefinition.c +++ b/e2sm/lib/E2SM-RC-RANFunctionDefinition.c @@ -1,218 +1,93 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "E2SM-RC-RANFunctionDefinition.h" -#include "RIC-EventTriggerStyle-Item.h" -#include "RIC-ControlStyle-Item.h" -static int -memb_ric_EventTriggerStyle_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 63)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_ric_ControlStyle_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 63)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_ric_EventTriggerStyle_List_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_type_ric_EventTriggerStyle_List_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_type_ric_ControlStyle_List_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_type_ric_ControlStyle_List_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ric_EventTriggerStyle_List_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_memb_ric_EventTriggerStyle_List_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ric_ControlStyle_List_constr_5 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..63)) */}; -static asn_per_constraints_t asn_PER_memb_ric_ControlStyle_List_constr_5 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_ric_EventTriggerStyle_List_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RIC_EventTriggerStyle_Item, +#include "RANFunctionDefinition-EventTrigger.h" +#include "RANFunctionDefinition-Report.h" +#include "RANFunctionDefinition-Insert.h" +#include "RANFunctionDefinition-Control.h" +#include "RANFunctionDefinition-Policy.h" +static asn_TYPE_member_t asn_MBR_E2SM_RC_RANFunctionDefinition_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_RANFunctionDefinition, ranFunction_Name), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANfunction_Name, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "" + "ranFunction-Name" }, -}; -static const ber_tlv_tag_t asn_DEF_ric_EventTriggerStyle_List_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ric_EventTriggerStyle_List_specs_3 = { - sizeof(struct E2SM_RC_RANFunctionDefinition__ric_EventTriggerStyle_List), - offsetof(struct E2SM_RC_RANFunctionDefinition__ric_EventTriggerStyle_List, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_ric_EventTriggerStyle_List_3 = { - "ric-EventTriggerStyle-List", - "ric-EventTriggerStyle-List", - &asn_OP_SEQUENCE_OF, - asn_DEF_ric_EventTriggerStyle_List_tags_3, - sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_3) - /sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_3[0]) - 1, /* 1 */ - asn_DEF_ric_EventTriggerStyle_List_tags_3, /* Same as above */ - sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_3) - /sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_3[0]), /* 2 */ - { &asn_OER_type_ric_EventTriggerStyle_List_constr_3, &asn_PER_type_ric_EventTriggerStyle_List_constr_3, SEQUENCE_OF_constraint }, - asn_MBR_ric_EventTriggerStyle_List_3, - 1, /* Single element */ - &asn_SPC_ric_EventTriggerStyle_List_specs_3 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_ric_ControlStyle_List_5[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RIC_ControlStyle_Item, + { ATF_POINTER, 5, offsetof(struct E2SM_RC_RANFunctionDefinition, ranFunctionDefinition_EventTrigger), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANFunctionDefinition_EventTrigger, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "" + "ranFunctionDefinition-EventTrigger" }, -}; -static const ber_tlv_tag_t asn_DEF_ric_ControlStyle_List_tags_5[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ric_ControlStyle_List_specs_5 = { - sizeof(struct E2SM_RC_RANFunctionDefinition__ric_ControlStyle_List), - offsetof(struct E2SM_RC_RANFunctionDefinition__ric_ControlStyle_List, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_ric_ControlStyle_List_5 = { - "ric-ControlStyle-List", - "ric-ControlStyle-List", - &asn_OP_SEQUENCE_OF, - asn_DEF_ric_ControlStyle_List_tags_5, - sizeof(asn_DEF_ric_ControlStyle_List_tags_5) - /sizeof(asn_DEF_ric_ControlStyle_List_tags_5[0]) - 1, /* 1 */ - asn_DEF_ric_ControlStyle_List_tags_5, /* Same as above */ - sizeof(asn_DEF_ric_ControlStyle_List_tags_5) - /sizeof(asn_DEF_ric_ControlStyle_List_tags_5[0]), /* 2 */ - { &asn_OER_type_ric_ControlStyle_List_constr_5, &asn_PER_type_ric_ControlStyle_List_constr_5, SEQUENCE_OF_constraint }, - asn_MBR_ric_ControlStyle_List_5, - 1, /* Single element */ - &asn_SPC_ric_ControlStyle_List_specs_5 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_E2SM_RC_RANFunctionDefinition_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct E2SM_RC_RANFunctionDefinition, ranFunction_Name), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + { ATF_POINTER, 4, offsetof(struct E2SM_RC_RANFunctionDefinition, ranFunctionDefinition_Report), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_RANfunction_Name, + &asn_DEF_RANFunctionDefinition_Report, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "ranFunction-Name" + "ranFunctionDefinition-Report" }, - { ATF_POINTER, 2, offsetof(struct E2SM_RC_RANFunctionDefinition, ric_EventTriggerStyle_List), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_ric_EventTriggerStyle_List_3, + { ATF_POINTER, 3, offsetof(struct E2SM_RC_RANFunctionDefinition, ranFunctionDefinition_Insert), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANFunctionDefinition_Insert, 0, - { &asn_OER_memb_ric_EventTriggerStyle_List_constr_3, &asn_PER_memb_ric_EventTriggerStyle_List_constr_3, memb_ric_EventTriggerStyle_List_constraint_1 }, + { 0, 0, 0 }, 0, 0, /* No default value */ - "ric-EventTriggerStyle-List" + "ranFunctionDefinition-Insert" }, - { ATF_POINTER, 1, offsetof(struct E2SM_RC_RANFunctionDefinition, ric_ControlStyle_List), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + { ATF_POINTER, 2, offsetof(struct E2SM_RC_RANFunctionDefinition, ranFunctionDefinition_Control), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANFunctionDefinition_Control, 0, - &asn_DEF_ric_ControlStyle_List_5, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranFunctionDefinition-Control" + }, + { ATF_POINTER, 1, offsetof(struct E2SM_RC_RANFunctionDefinition, ranFunctionDefinition_Policy), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANFunctionDefinition_Policy, 0, - { &asn_OER_memb_ric_ControlStyle_List_constr_5, &asn_PER_memb_ric_ControlStyle_List_constr_5, memb_ric_ControlStyle_List_constraint_1 }, + { 0, 0, 0 }, 0, 0, /* No default value */ - "ric-ControlStyle-List" + "ranFunctionDefinition-Policy" }, }; -static const int asn_MAP_E2SM_RC_RANFunctionDefinition_oms_1[] = { 1, 2 }; +static const int asn_MAP_E2SM_RC_RANFunctionDefinition_oms_1[] = { 1, 2, 3, 4, 5 }; static const ber_tlv_tag_t asn_DEF_E2SM_RC_RANFunctionDefinition_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_E2SM_RC_RANFunctionDefinition_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranFunction-Name */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-EventTriggerStyle-List */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ric-ControlStyle-List */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranFunctionDefinition-EventTrigger */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ranFunctionDefinition-Report */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ranFunctionDefinition-Insert */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ranFunctionDefinition-Control */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* ranFunctionDefinition-Policy */ }; static asn_SEQUENCE_specifics_t asn_SPC_E2SM_RC_RANFunctionDefinition_specs_1 = { sizeof(struct E2SM_RC_RANFunctionDefinition), offsetof(struct E2SM_RC_RANFunctionDefinition, _asn_ctx), asn_MAP_E2SM_RC_RANFunctionDefinition_tag2el_1, - 3, /* Count of tags in the map */ + 6, /* Count of tags in the map */ asn_MAP_E2SM_RC_RANFunctionDefinition_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ + 5, 0, /* Root/Additions */ + 6, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_E2SM_RC_RANFunctionDefinition = { "E2SM-RC-RANFunctionDefinition", @@ -226,7 +101,7 @@ asn_TYPE_descriptor_t asn_DEF_E2SM_RC_RANFunctionDefinition = { /sizeof(asn_DEF_E2SM_RC_RANFunctionDefinition_tags_1[0]), /* 1 */ { 0, 0, SEQUENCE_constraint }, asn_MBR_E2SM_RC_RANFunctionDefinition_1, - 3, /* Elements count */ + 6, /* Elements count */ &asn_SPC_E2SM_RC_RANFunctionDefinition_specs_1 /* Additional specs */ }; diff --git a/e2sm/lib/GNB-ID-Choice.c b/e2sm/lib/EN-GNB-ID.c similarity index 52% rename from e2sm/lib/GNB-ID-Choice.c rename to e2sm/lib/EN-GNB-ID.c index 34d5450..98b8263 100644 --- a/e2sm/lib/GNB-ID-Choice.c +++ b/e2sm/lib/EN-GNB-ID.c @@ -1,14 +1,14 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "GNB-ID-Choice.h" +#include "EN-GNB-ID.h" static int -memb_gnb_ID_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, +memb_en_gNB_ID_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; size_t size; @@ -38,57 +38,57 @@ memb_gnb_ID_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, } } -static asn_oer_constraints_t asn_OER_memb_gnb_ID_constr_2 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_memb_en_gNB_ID_constr_2 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(22..32)) */}; -static asn_per_constraints_t asn_PER_memb_gnb_ID_constr_2 CC_NOTUSED = { +static asn_per_constraints_t asn_PER_memb_en_gNB_ID_constr_2 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 4, 4, 22, 32 } /* (SIZE(22..32)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_GNB_ID_Choice_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_EN_GNB_ID_constr_1 CC_NOTUSED = { { 0, 0 }, -1}; -asn_per_constraints_t asn_PER_type_GNB_ID_Choice_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_EN_GNB_ID_constr_1 CC_NOTUSED = { { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -asn_TYPE_member_t asn_MBR_GNB_ID_Choice_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GNB_ID_Choice, choice.gnb_ID), +asn_TYPE_member_t asn_MBR_EN_GNB_ID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EN_GNB_ID, choice.en_gNB_ID), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_BIT_STRING, 0, - { &asn_OER_memb_gnb_ID_constr_2, &asn_PER_memb_gnb_ID_constr_2, memb_gnb_ID_constraint_1 }, + { &asn_OER_memb_en_gNB_ID_constr_2, &asn_PER_memb_en_gNB_ID_constr_2, memb_en_gNB_ID_constraint_1 }, 0, 0, /* No default value */ - "gnb-ID" + "en-gNB-ID" }, }; -static const asn_TYPE_tag2member_t asn_MAP_GNB_ID_Choice_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gnb-ID */ +static const asn_TYPE_tag2member_t asn_MAP_EN_GNB_ID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* en-gNB-ID */ }; -asn_CHOICE_specifics_t asn_SPC_GNB_ID_Choice_specs_1 = { - sizeof(struct GNB_ID_Choice), - offsetof(struct GNB_ID_Choice, _asn_ctx), - offsetof(struct GNB_ID_Choice, present), - sizeof(((struct GNB_ID_Choice *)0)->present), - asn_MAP_GNB_ID_Choice_tag2el_1, +asn_CHOICE_specifics_t asn_SPC_EN_GNB_ID_specs_1 = { + sizeof(struct EN_GNB_ID), + offsetof(struct EN_GNB_ID, _asn_ctx), + offsetof(struct EN_GNB_ID, present), + sizeof(((struct EN_GNB_ID *)0)->present), + asn_MAP_EN_GNB_ID_tag2el_1, 1, /* Count of tags in the map */ 0, 0, 1 /* Extensions start */ }; -asn_TYPE_descriptor_t asn_DEF_GNB_ID_Choice = { - "GNB-ID-Choice", - "GNB-ID-Choice", +asn_TYPE_descriptor_t asn_DEF_EN_GNB_ID = { + "EN-GNB-ID", + "EN-GNB-ID", &asn_OP_CHOICE, 0, /* No effective tags (pointer) */ 0, /* No effective tags (count) */ 0, /* No tags (pointer) */ 0, /* No tags (count) */ - { &asn_OER_type_GNB_ID_Choice_constr_1, &asn_PER_type_GNB_ID_Choice_constr_1, CHOICE_constraint }, - asn_MBR_GNB_ID_Choice_1, + { &asn_OER_type_EN_GNB_ID_constr_1, &asn_PER_type_EN_GNB_ID_constr_1, CHOICE_constraint }, + asn_MBR_EN_GNB_ID_1, 1, /* Elements count */ - &asn_SPC_GNB_ID_Choice_specs_1 /* Additional specs */ + &asn_SPC_EN_GNB_ID_specs_1 /* Additional specs */ }; diff --git a/e2sm/lib/ENB-ID.c b/e2sm/lib/ENB-ID.c index e2a5f89..faab5f7 100644 --- a/e2sm/lib/ENB-ID.c +++ b/e2sm/lib/ENB-ID.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/ENB-UE-X2AP-ID-Extension.c b/e2sm/lib/ENB-UE-X2AP-ID-Extension.c new file mode 100644 index 0000000..d9f8c31 --- /dev/null +++ b/e2sm/lib/ENB-UE-X2AP-ID-Extension.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "ENB-UE-X2AP-ID-Extension.h" + +int +ENB_UE_X2AP_ID_Extension_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 4095)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ENB_UE_X2AP_ID_Extension_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ENB_UE_X2AP_ID_Extension_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 12, 12, 0, 4095 } /* (0..4095,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ENB_UE_X2AP_ID_Extension_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ENB_UE_X2AP_ID_Extension = { + "ENB-UE-X2AP-ID-Extension", + "ENB-UE-X2AP-ID-Extension", + &asn_OP_NativeInteger, + asn_DEF_ENB_UE_X2AP_ID_Extension_tags_1, + sizeof(asn_DEF_ENB_UE_X2AP_ID_Extension_tags_1) + /sizeof(asn_DEF_ENB_UE_X2AP_ID_Extension_tags_1[0]), /* 1 */ + asn_DEF_ENB_UE_X2AP_ID_Extension_tags_1, /* Same as above */ + sizeof(asn_DEF_ENB_UE_X2AP_ID_Extension_tags_1) + /sizeof(asn_DEF_ENB_UE_X2AP_ID_Extension_tags_1[0]), /* 1 */ + { &asn_OER_type_ENB_UE_X2AP_ID_Extension_constr_1, &asn_PER_type_ENB_UE_X2AP_ID_Extension_constr_1, ENB_UE_X2AP_ID_Extension_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/ENB-UE-X2AP-ID.c b/e2sm/lib/ENB-UE-X2AP-ID.c new file mode 100644 index 0000000..8af2e3f --- /dev/null +++ b/e2sm/lib/ENB-UE-X2AP-ID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "ENB-UE-X2AP-ID.h" + +int +ENB_UE_X2AP_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 4095)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ENB_UE_X2AP_ID_constr_1 CC_NOTUSED = { + { 2, 1 } /* (0..4095) */, + -1}; +asn_per_constraints_t asn_PER_type_ENB_UE_X2AP_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 12, 12, 0, 4095 } /* (0..4095) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_ENB_UE_X2AP_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_ENB_UE_X2AP_ID = { + "ENB-UE-X2AP-ID", + "ENB-UE-X2AP-ID", + &asn_OP_NativeInteger, + asn_DEF_ENB_UE_X2AP_ID_tags_1, + sizeof(asn_DEF_ENB_UE_X2AP_ID_tags_1) + /sizeof(asn_DEF_ENB_UE_X2AP_ID_tags_1[0]), /* 1 */ + asn_DEF_ENB_UE_X2AP_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_ENB_UE_X2AP_ID_tags_1) + /sizeof(asn_DEF_ENB_UE_X2AP_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_ENB_UE_X2AP_ID_constr_1, &asn_PER_type_ENB_UE_X2AP_ID_constr_1, ENB_UE_X2AP_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/EPC-CUUP-PM-Format.c b/e2sm/lib/EPC-CUUP-PM-Format.c deleted file mode 100644 index 5fb414a..0000000 --- a/e2sm/lib/EPC-CUUP-PM-Format.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "EPC-CUUP-PM-Format.h" - -#include "PerQCIReportListItemFormat.h" -static int -memb_perQCIReportList_cuup_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 256)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_perQCIReportList_cuup_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..256)) */}; -static asn_per_constraints_t asn_PER_type_perQCIReportList_cuup_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_perQCIReportList_cuup_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..256)) */}; -static asn_per_constraints_t asn_PER_memb_perQCIReportList_cuup_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_perQCIReportList_cuup_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PerQCIReportListItemFormat, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_perQCIReportList_cuup_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_perQCIReportList_cuup_specs_2 = { - sizeof(struct EPC_CUUP_PM_Format__perQCIReportList_cuup), - offsetof(struct EPC_CUUP_PM_Format__perQCIReportList_cuup, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_perQCIReportList_cuup_2 = { - "perQCIReportList-cuup", - "perQCIReportList-cuup", - &asn_OP_SEQUENCE_OF, - asn_DEF_perQCIReportList_cuup_tags_2, - sizeof(asn_DEF_perQCIReportList_cuup_tags_2) - /sizeof(asn_DEF_perQCIReportList_cuup_tags_2[0]) - 1, /* 1 */ - asn_DEF_perQCIReportList_cuup_tags_2, /* Same as above */ - sizeof(asn_DEF_perQCIReportList_cuup_tags_2) - /sizeof(asn_DEF_perQCIReportList_cuup_tags_2[0]), /* 2 */ - { &asn_OER_type_perQCIReportList_cuup_constr_2, &asn_PER_type_perQCIReportList_cuup_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_perQCIReportList_cuup_2, - 1, /* Single element */ - &asn_SPC_perQCIReportList_cuup_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_EPC_CUUP_PM_Format_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct EPC_CUUP_PM_Format, perQCIReportList_cuup), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_perQCIReportList_cuup_2, - 0, - { &asn_OER_memb_perQCIReportList_cuup_constr_2, &asn_PER_memb_perQCIReportList_cuup_constr_2, memb_perQCIReportList_cuup_constraint_1 }, - 0, 0, /* No default value */ - "perQCIReportList-cuup" - }, -}; -static const ber_tlv_tag_t asn_DEF_EPC_CUUP_PM_Format_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EPC_CUUP_PM_Format_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* perQCIReportList-cuup */ -}; -asn_SEQUENCE_specifics_t asn_SPC_EPC_CUUP_PM_Format_specs_1 = { - sizeof(struct EPC_CUUP_PM_Format), - offsetof(struct EPC_CUUP_PM_Format, _asn_ctx), - asn_MAP_EPC_CUUP_PM_Format_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EPC_CUUP_PM_Format = { - "EPC-CUUP-PM-Format", - "EPC-CUUP-PM-Format", - &asn_OP_SEQUENCE, - asn_DEF_EPC_CUUP_PM_Format_tags_1, - sizeof(asn_DEF_EPC_CUUP_PM_Format_tags_1) - /sizeof(asn_DEF_EPC_CUUP_PM_Format_tags_1[0]), /* 1 */ - asn_DEF_EPC_CUUP_PM_Format_tags_1, /* Same as above */ - sizeof(asn_DEF_EPC_CUUP_PM_Format_tags_1) - /sizeof(asn_DEF_EPC_CUUP_PM_Format_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_EPC_CUUP_PM_Format_1, - 1, /* Elements count */ - &asn_SPC_EPC_CUUP_PM_Format_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/EPC-DU-PM-Container.c b/e2sm/lib/EPC-DU-PM-Container.c deleted file mode 100644 index 801080e..0000000 --- a/e2sm/lib/EPC-DU-PM-Container.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "EPC-DU-PM-Container.h" - -#include "PerQCIReportListItem.h" -static int -memb_perQCIReportList_du_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 256)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_perQCIReportList_du_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..256)) */}; -static asn_per_constraints_t asn_PER_type_perQCIReportList_du_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_perQCIReportList_du_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..256)) */}; -static asn_per_constraints_t asn_PER_memb_perQCIReportList_du_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 8, 8, 1, 256 } /* (SIZE(1..256)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_perQCIReportList_du_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PerQCIReportListItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_perQCIReportList_du_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_perQCIReportList_du_specs_2 = { - sizeof(struct EPC_DU_PM_Container__perQCIReportList_du), - offsetof(struct EPC_DU_PM_Container__perQCIReportList_du, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_perQCIReportList_du_2 = { - "perQCIReportList-du", - "perQCIReportList-du", - &asn_OP_SEQUENCE_OF, - asn_DEF_perQCIReportList_du_tags_2, - sizeof(asn_DEF_perQCIReportList_du_tags_2) - /sizeof(asn_DEF_perQCIReportList_du_tags_2[0]) - 1, /* 1 */ - asn_DEF_perQCIReportList_du_tags_2, /* Same as above */ - sizeof(asn_DEF_perQCIReportList_du_tags_2) - /sizeof(asn_DEF_perQCIReportList_du_tags_2[0]), /* 2 */ - { &asn_OER_type_perQCIReportList_du_constr_2, &asn_PER_type_perQCIReportList_du_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_perQCIReportList_du_2, - 1, /* Single element */ - &asn_SPC_perQCIReportList_du_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_EPC_DU_PM_Container_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct EPC_DU_PM_Container, perQCIReportList_du), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_perQCIReportList_du_2, - 0, - { &asn_OER_memb_perQCIReportList_du_constr_2, &asn_PER_memb_perQCIReportList_du_constr_2, memb_perQCIReportList_du_constraint_1 }, - 0, 0, /* No default value */ - "perQCIReportList-du" - }, -}; -static const ber_tlv_tag_t asn_DEF_EPC_DU_PM_Container_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_EPC_DU_PM_Container_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* perQCIReportList-du */ -}; -asn_SEQUENCE_specifics_t asn_SPC_EPC_DU_PM_Container_specs_1 = { - sizeof(struct EPC_DU_PM_Container), - offsetof(struct EPC_DU_PM_Container, _asn_ctx), - asn_MAP_EPC_DU_PM_Container_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_EPC_DU_PM_Container = { - "EPC-DU-PM-Container", - "EPC-DU-PM-Container", - &asn_OP_SEQUENCE, - asn_DEF_EPC_DU_PM_Container_tags_1, - sizeof(asn_DEF_EPC_DU_PM_Container_tags_1) - /sizeof(asn_DEF_EPC_DU_PM_Container_tags_1[0]), /* 1 */ - asn_DEF_EPC_DU_PM_Container_tags_1, /* Same as above */ - sizeof(asn_DEF_EPC_DU_PM_Container_tags_1) - /sizeof(asn_DEF_EPC_DU_PM_Container_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_EPC_DU_PM_Container_1, - 1, /* Elements count */ - &asn_SPC_EPC_DU_PM_Container_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/EUTRA-CGI.c b/e2sm/lib/EUTRA-CGI.c new file mode 100644 index 0000000..985c769 --- /dev/null +++ b/e2sm/lib/EUTRA-CGI.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EUTRA-CGI.h" + +asn_TYPE_member_t asn_MBR_EUTRA_CGI_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EUTRA_CGI, pLMNIdentity), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PLMNIdentity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pLMNIdentity" + }, + { ATF_NOFLAGS, 0, offsetof(struct EUTRA_CGI, eUTRACellIdentity), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EUTRACellIdentity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eUTRACellIdentity" + }, +}; +static const ber_tlv_tag_t asn_DEF_EUTRA_CGI_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EUTRA_CGI_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMNIdentity */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* eUTRACellIdentity */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EUTRA_CGI_specs_1 = { + sizeof(struct EUTRA_CGI), + offsetof(struct EUTRA_CGI, _asn_ctx), + asn_MAP_EUTRA_CGI_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EUTRA_CGI = { + "EUTRA-CGI", + "EUTRA-CGI", + &asn_OP_SEQUENCE, + asn_DEF_EUTRA_CGI_tags_1, + sizeof(asn_DEF_EUTRA_CGI_tags_1) + /sizeof(asn_DEF_EUTRA_CGI_tags_1[0]), /* 1 */ + asn_DEF_EUTRA_CGI_tags_1, /* Same as above */ + sizeof(asn_DEF_EUTRA_CGI_tags_1) + /sizeof(asn_DEF_EUTRA_CGI_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EUTRA_CGI_1, + 2, /* Elements count */ + &asn_SPC_EUTRA_CGI_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EUTRACellIdentity.c b/e2sm/lib/EUTRACellIdentity.c new file mode 100644 index 0000000..cefaeb9 --- /dev/null +++ b/e2sm/lib/EUTRACellIdentity.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EUTRACellIdentity.h" + +int +EUTRACellIdentity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(st->size > 0) { + /* Size in bits */ + size = 8 * st->size - (st->bits_unused & 0x07); + } else { + size = 0; + } + + if((size == 28)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using BIT_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_EUTRACellIdentity_constr_1 CC_NOTUSED = { + { 0, 0 }, + 28 /* (SIZE(28..28)) */}; +asn_per_constraints_t asn_PER_type_EUTRACellIdentity_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 28, 28 } /* (SIZE(28..28)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_EUTRACellIdentity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (3 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_EUTRACellIdentity = { + "EUTRACellIdentity", + "EUTRACellIdentity", + &asn_OP_BIT_STRING, + asn_DEF_EUTRACellIdentity_tags_1, + sizeof(asn_DEF_EUTRACellIdentity_tags_1) + /sizeof(asn_DEF_EUTRACellIdentity_tags_1[0]), /* 1 */ + asn_DEF_EUTRACellIdentity_tags_1, /* Same as above */ + sizeof(asn_DEF_EUTRACellIdentity_tags_1) + /sizeof(asn_DEF_EUTRACellIdentity_tags_1[0]), /* 1 */ + { &asn_OER_type_EUTRACellIdentity_constr_1, &asn_PER_type_EUTRACellIdentity_constr_1, EUTRACellIdentity_constraint }, + 0, 0, /* No members */ + &asn_SPC_BIT_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-Cell-Info-Item-Choice-Group.c b/e2sm/lib/EventTrigger-Cell-Info-Item-Choice-Group.c new file mode 100644 index 0000000..2f6269f --- /dev/null +++ b/e2sm/lib/EventTrigger-Cell-Info-Item-Choice-Group.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-Cell-Info-Item-Choice-Group.h" + +asn_TYPE_member_t asn_MBR_EventTrigger_Cell_Info_Item_Choice_Group_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_Cell_Info_Item_Choice_Group, ranParameterTesting), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameterTesting" + }, +}; +static const ber_tlv_tag_t asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_Cell_Info_Item_Choice_Group_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameterTesting */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_Cell_Info_Item_Choice_Group_specs_1 = { + sizeof(struct EventTrigger_Cell_Info_Item_Choice_Group), + offsetof(struct EventTrigger_Cell_Info_Item_Choice_Group, _asn_ctx), + asn_MAP_EventTrigger_Cell_Info_Item_Choice_Group_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group = { + "EventTrigger-Cell-Info-Item-Choice-Group", + "EventTrigger-Cell-Info-Item-Choice-Group", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group_tags_1, + sizeof(asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group_tags_1) + /sizeof(asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group_tags_1) + /sizeof(asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_Cell_Info_Item_Choice_Group_1, + 1, /* Elements count */ + &asn_SPC_EventTrigger_Cell_Info_Item_Choice_Group_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-Cell-Info-Item-Choice-Individual.c b/e2sm/lib/EventTrigger-Cell-Info-Item-Choice-Individual.c new file mode 100644 index 0000000..1cf5866 --- /dev/null +++ b/e2sm/lib/EventTrigger-Cell-Info-Item-Choice-Individual.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-Cell-Info-Item-Choice-Individual.h" + +asn_TYPE_member_t asn_MBR_EventTrigger_Cell_Info_Item_Choice_Individual_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_Cell_Info_Item_Choice_Individual, cellGlobalID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_CGI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellGlobalID" + }, +}; +static const ber_tlv_tag_t asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_Cell_Info_Item_Choice_Individual_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* cellGlobalID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_Cell_Info_Item_Choice_Individual_specs_1 = { + sizeof(struct EventTrigger_Cell_Info_Item_Choice_Individual), + offsetof(struct EventTrigger_Cell_Info_Item_Choice_Individual, _asn_ctx), + asn_MAP_EventTrigger_Cell_Info_Item_Choice_Individual_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual = { + "EventTrigger-Cell-Info-Item-Choice-Individual", + "EventTrigger-Cell-Info-Item-Choice-Individual", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual_tags_1, + sizeof(asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual_tags_1) + /sizeof(asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual_tags_1) + /sizeof(asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_Cell_Info_Item_Choice_Individual_1, + 1, /* Elements count */ + &asn_SPC_EventTrigger_Cell_Info_Item_Choice_Individual_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-Cell-Info-Item.c b/e2sm/lib/EventTrigger-Cell-Info-Item.c new file mode 100644 index 0000000..e96053a --- /dev/null +++ b/e2sm/lib/EventTrigger-Cell-Info-Item.c @@ -0,0 +1,131 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-Cell-Info-Item.h" + +#include "EventTrigger-Cell-Info-Item-Choice-Individual.h" +#include "EventTrigger-Cell-Info-Item-Choice-Group.h" +static asn_oer_constraints_t asn_OER_type_cellType_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_cellType_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_cellType_3[] = { + { ATF_POINTER, 0, offsetof(struct EventTrigger_Cell_Info_Item__cellType, choice.cellType_Choice_Individual), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_Cell_Info_Item_Choice_Individual, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellType-Choice-Individual" + }, + { ATF_POINTER, 0, offsetof(struct EventTrigger_Cell_Info_Item__cellType, choice.cellType_Choice_Group), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_Cell_Info_Item_Choice_Group, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellType-Choice-Group" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_cellType_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cellType-Choice-Individual */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* cellType-Choice-Group */ +}; +static asn_CHOICE_specifics_t asn_SPC_cellType_specs_3 = { + sizeof(struct EventTrigger_Cell_Info_Item__cellType), + offsetof(struct EventTrigger_Cell_Info_Item__cellType, _asn_ctx), + offsetof(struct EventTrigger_Cell_Info_Item__cellType, present), + sizeof(((struct EventTrigger_Cell_Info_Item__cellType *)0)->present), + asn_MAP_cellType_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_cellType_3 = { + "cellType", + "cellType", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_cellType_constr_3, &asn_PER_type_cellType_constr_3, CHOICE_constraint }, + asn_MBR_cellType_3, + 2, /* Elements count */ + &asn_SPC_cellType_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EventTrigger_Cell_Info_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_Cell_Info_Item, eventTriggerCellID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_EventTrigger_Cell_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventTriggerCellID" + }, + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_Cell_Info_Item, cellType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_cellType_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "cellType" + }, + { ATF_POINTER, 1, offsetof(struct EventTrigger_Cell_Info_Item, logicalOR), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LogicalOR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "logicalOR" + }, +}; +static const int asn_MAP_EventTrigger_Cell_Info_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_EventTrigger_Cell_Info_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_Cell_Info_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventTriggerCellID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cellType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* logicalOR */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_Cell_Info_Item_specs_1 = { + sizeof(struct EventTrigger_Cell_Info_Item), + offsetof(struct EventTrigger_Cell_Info_Item, _asn_ctx), + asn_MAP_EventTrigger_Cell_Info_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_EventTrigger_Cell_Info_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_Cell_Info_Item = { + "EventTrigger-Cell-Info-Item", + "EventTrigger-Cell-Info-Item", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_Cell_Info_Item_tags_1, + sizeof(asn_DEF_EventTrigger_Cell_Info_Item_tags_1) + /sizeof(asn_DEF_EventTrigger_Cell_Info_Item_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_Cell_Info_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_Cell_Info_Item_tags_1) + /sizeof(asn_DEF_EventTrigger_Cell_Info_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_Cell_Info_Item_1, + 3, /* Elements count */ + &asn_SPC_EventTrigger_Cell_Info_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-Cell-Info.c b/e2sm/lib/EventTrigger-Cell-Info.c new file mode 100644 index 0000000..30273f7 --- /dev/null +++ b/e2sm/lib/EventTrigger-Cell-Info.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-Cell-Info.h" + +#include "EventTrigger-Cell-Info-Item.h" +static int +memb_cellInfo_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_cellInfo_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_cellInfo_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_cellInfo_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_cellInfo_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_cellInfo_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_EventTrigger_Cell_Info_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_cellInfo_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_cellInfo_List_specs_2 = { + sizeof(struct EventTrigger_Cell_Info__cellInfo_List), + offsetof(struct EventTrigger_Cell_Info__cellInfo_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_cellInfo_List_2 = { + "cellInfo-List", + "cellInfo-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_cellInfo_List_tags_2, + sizeof(asn_DEF_cellInfo_List_tags_2) + /sizeof(asn_DEF_cellInfo_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_cellInfo_List_tags_2, /* Same as above */ + sizeof(asn_DEF_cellInfo_List_tags_2) + /sizeof(asn_DEF_cellInfo_List_tags_2[0]), /* 2 */ + { &asn_OER_type_cellInfo_List_constr_2, &asn_PER_type_cellInfo_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_cellInfo_List_2, + 1, /* Single element */ + &asn_SPC_cellInfo_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EventTrigger_Cell_Info_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_Cell_Info, cellInfo_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_cellInfo_List_2, + 0, + { &asn_OER_memb_cellInfo_List_constr_2, &asn_PER_memb_cellInfo_List_constr_2, memb_cellInfo_List_constraint_1 }, + 0, 0, /* No default value */ + "cellInfo-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_EventTrigger_Cell_Info_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_Cell_Info_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* cellInfo-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_Cell_Info_specs_1 = { + sizeof(struct EventTrigger_Cell_Info), + offsetof(struct EventTrigger_Cell_Info, _asn_ctx), + asn_MAP_EventTrigger_Cell_Info_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_Cell_Info = { + "EventTrigger-Cell-Info", + "EventTrigger-Cell-Info", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_Cell_Info_tags_1, + sizeof(asn_DEF_EventTrigger_Cell_Info_tags_1) + /sizeof(asn_DEF_EventTrigger_Cell_Info_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_Cell_Info_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_Cell_Info_tags_1) + /sizeof(asn_DEF_EventTrigger_Cell_Info_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_Cell_Info_1, + 1, /* Elements count */ + &asn_SPC_EventTrigger_Cell_Info_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-UE-Info-Item-Choice-Group.c b/e2sm/lib/EventTrigger-UE-Info-Item-Choice-Group.c new file mode 100644 index 0000000..d819bc1 --- /dev/null +++ b/e2sm/lib/EventTrigger-UE-Info-Item-Choice-Group.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-UE-Info-Item-Choice-Group.h" + +asn_TYPE_member_t asn_MBR_EventTrigger_UE_Info_Item_Choice_Group_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_UE_Info_Item_Choice_Group, ranParameterTesting), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameterTesting" + }, +}; +static const ber_tlv_tag_t asn_DEF_EventTrigger_UE_Info_Item_Choice_Group_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_UE_Info_Item_Choice_Group_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameterTesting */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UE_Info_Item_Choice_Group_specs_1 = { + sizeof(struct EventTrigger_UE_Info_Item_Choice_Group), + offsetof(struct EventTrigger_UE_Info_Item_Choice_Group, _asn_ctx), + asn_MAP_EventTrigger_UE_Info_Item_Choice_Group_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_UE_Info_Item_Choice_Group = { + "EventTrigger-UE-Info-Item-Choice-Group", + "EventTrigger-UE-Info-Item-Choice-Group", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_UE_Info_Item_Choice_Group_tags_1, + sizeof(asn_DEF_EventTrigger_UE_Info_Item_Choice_Group_tags_1) + /sizeof(asn_DEF_EventTrigger_UE_Info_Item_Choice_Group_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_UE_Info_Item_Choice_Group_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_UE_Info_Item_Choice_Group_tags_1) + /sizeof(asn_DEF_EventTrigger_UE_Info_Item_Choice_Group_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_UE_Info_Item_Choice_Group_1, + 1, /* Elements count */ + &asn_SPC_EventTrigger_UE_Info_Item_Choice_Group_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-UE-Info-Item-Choice-Individual.c b/e2sm/lib/EventTrigger-UE-Info-Item-Choice-Individual.c new file mode 100644 index 0000000..d822187 --- /dev/null +++ b/e2sm/lib/EventTrigger-UE-Info-Item-Choice-Individual.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-UE-Info-Item-Choice-Individual.h" + +asn_TYPE_member_t asn_MBR_EventTrigger_UE_Info_Item_Choice_Individual_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_UE_Info_Item_Choice_Individual, ueID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_UEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueID" + }, + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_UE_Info_Item_Choice_Individual, ranParameterTesting), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameterTesting" + }, +}; +static const ber_tlv_tag_t asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_UE_Info_Item_Choice_Individual_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameterTesting */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UE_Info_Item_Choice_Individual_specs_1 = { + sizeof(struct EventTrigger_UE_Info_Item_Choice_Individual), + offsetof(struct EventTrigger_UE_Info_Item_Choice_Individual, _asn_ctx), + asn_MAP_EventTrigger_UE_Info_Item_Choice_Individual_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual = { + "EventTrigger-UE-Info-Item-Choice-Individual", + "EventTrigger-UE-Info-Item-Choice-Individual", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual_tags_1, + sizeof(asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual_tags_1) + /sizeof(asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual_tags_1) + /sizeof(asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_UE_Info_Item_Choice_Individual_1, + 2, /* Elements count */ + &asn_SPC_EventTrigger_UE_Info_Item_Choice_Individual_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-UE-Info-Item.c b/e2sm/lib/EventTrigger-UE-Info-Item.c new file mode 100644 index 0000000..dfb34d0 --- /dev/null +++ b/e2sm/lib/EventTrigger-UE-Info-Item.c @@ -0,0 +1,131 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-UE-Info-Item.h" + +#include "EventTrigger-UE-Info-Item-Choice-Individual.h" +#include "EventTrigger-UE-Info-Item-Choice-Group.h" +static asn_oer_constraints_t asn_OER_type_ueType_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ueType_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ueType_3[] = { + { ATF_POINTER, 0, offsetof(struct EventTrigger_UE_Info_Item__ueType, choice.ueType_Choice_Individual), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_UE_Info_Item_Choice_Individual, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueType-Choice-Individual" + }, + { ATF_POINTER, 0, offsetof(struct EventTrigger_UE_Info_Item__ueType, choice.ueType_Choice_Group), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EventTrigger_UE_Info_Item_Choice_Group, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueType-Choice-Group" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ueType_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueType-Choice-Individual */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ueType-Choice-Group */ +}; +static asn_CHOICE_specifics_t asn_SPC_ueType_specs_3 = { + sizeof(struct EventTrigger_UE_Info_Item__ueType), + offsetof(struct EventTrigger_UE_Info_Item__ueType, _asn_ctx), + offsetof(struct EventTrigger_UE_Info_Item__ueType, present), + sizeof(((struct EventTrigger_UE_Info_Item__ueType *)0)->present), + asn_MAP_ueType_tag2el_3, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ueType_3 = { + "ueType", + "ueType", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ueType_constr_3, &asn_PER_type_ueType_constr_3, CHOICE_constraint }, + asn_MBR_ueType_3, + 2, /* Elements count */ + &asn_SPC_ueType_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EventTrigger_UE_Info_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_UE_Info_Item, eventTriggerUEID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_EventTrigger_UE_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eventTriggerUEID" + }, + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_UE_Info_Item, ueType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ueType_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueType" + }, + { ATF_POINTER, 1, offsetof(struct EventTrigger_UE_Info_Item, logicalOR), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LogicalOR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "logicalOR" + }, +}; +static const int asn_MAP_EventTrigger_UE_Info_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_EventTrigger_UE_Info_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_UE_Info_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eventTriggerUEID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ueType */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* logicalOR */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UE_Info_Item_specs_1 = { + sizeof(struct EventTrigger_UE_Info_Item), + offsetof(struct EventTrigger_UE_Info_Item, _asn_ctx), + asn_MAP_EventTrigger_UE_Info_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_EventTrigger_UE_Info_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_UE_Info_Item = { + "EventTrigger-UE-Info-Item", + "EventTrigger-UE-Info-Item", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_UE_Info_Item_tags_1, + sizeof(asn_DEF_EventTrigger_UE_Info_Item_tags_1) + /sizeof(asn_DEF_EventTrigger_UE_Info_Item_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_UE_Info_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_UE_Info_Item_tags_1) + /sizeof(asn_DEF_EventTrigger_UE_Info_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_UE_Info_Item_1, + 3, /* Elements count */ + &asn_SPC_EventTrigger_UE_Info_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-UE-Info.c b/e2sm/lib/EventTrigger-UE-Info.c new file mode 100644 index 0000000..85a6492 --- /dev/null +++ b/e2sm/lib/EventTrigger-UE-Info.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-UE-Info.h" + +#include "EventTrigger-UE-Info-Item.h" +static int +memb_ueInfo_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ueInfo_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ueInfo_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ueInfo_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ueInfo_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ueInfo_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_EventTrigger_UE_Info_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ueInfo_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ueInfo_List_specs_2 = { + sizeof(struct EventTrigger_UE_Info__ueInfo_List), + offsetof(struct EventTrigger_UE_Info__ueInfo_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ueInfo_List_2 = { + "ueInfo-List", + "ueInfo-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ueInfo_List_tags_2, + sizeof(asn_DEF_ueInfo_List_tags_2) + /sizeof(asn_DEF_ueInfo_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ueInfo_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ueInfo_List_tags_2) + /sizeof(asn_DEF_ueInfo_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ueInfo_List_constr_2, &asn_PER_type_ueInfo_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ueInfo_List_2, + 1, /* Single element */ + &asn_SPC_ueInfo_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EventTrigger_UE_Info_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_UE_Info, ueInfo_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ueInfo_List_2, + 0, + { &asn_OER_memb_ueInfo_List_constr_2, &asn_PER_memb_ueInfo_List_constr_2, memb_ueInfo_List_constraint_1 }, + 0, 0, /* No default value */ + "ueInfo-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_EventTrigger_UE_Info_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_UE_Info_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ueInfo-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UE_Info_specs_1 = { + sizeof(struct EventTrigger_UE_Info), + offsetof(struct EventTrigger_UE_Info, _asn_ctx), + asn_MAP_EventTrigger_UE_Info_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_UE_Info = { + "EventTrigger-UE-Info", + "EventTrigger-UE-Info", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_UE_Info_tags_1, + sizeof(asn_DEF_EventTrigger_UE_Info_tags_1) + /sizeof(asn_DEF_EventTrigger_UE_Info_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_UE_Info_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_UE_Info_tags_1) + /sizeof(asn_DEF_EventTrigger_UE_Info_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_UE_Info_1, + 1, /* Elements count */ + &asn_SPC_EventTrigger_UE_Info_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-UEevent-Info-Item.c b/e2sm/lib/EventTrigger-UEevent-Info-Item.c new file mode 100644 index 0000000..868fa6b --- /dev/null +++ b/e2sm/lib/EventTrigger-UEevent-Info-Item.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-UEevent-Info-Item.h" + +asn_TYPE_member_t asn_MBR_EventTrigger_UEevent_Info_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_UEevent_Info_Item, ueEventID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_EventTrigger_UEevent_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ueEventID" + }, + { ATF_POINTER, 1, offsetof(struct EventTrigger_UEevent_Info_Item, logicalOR), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LogicalOR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "logicalOR" + }, +}; +static const int asn_MAP_EventTrigger_UEevent_Info_Item_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_EventTrigger_UEevent_Info_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_UEevent_Info_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueEventID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* logicalOR */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UEevent_Info_Item_specs_1 = { + sizeof(struct EventTrigger_UEevent_Info_Item), + offsetof(struct EventTrigger_UEevent_Info_Item, _asn_ctx), + asn_MAP_EventTrigger_UEevent_Info_Item_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_EventTrigger_UEevent_Info_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_UEevent_Info_Item = { + "EventTrigger-UEevent-Info-Item", + "EventTrigger-UEevent-Info-Item", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_UEevent_Info_Item_tags_1, + sizeof(asn_DEF_EventTrigger_UEevent_Info_Item_tags_1) + /sizeof(asn_DEF_EventTrigger_UEevent_Info_Item_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_UEevent_Info_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_UEevent_Info_Item_tags_1) + /sizeof(asn_DEF_EventTrigger_UEevent_Info_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_UEevent_Info_Item_1, + 2, /* Elements count */ + &asn_SPC_EventTrigger_UEevent_Info_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/EventTrigger-UEevent-Info.c b/e2sm/lib/EventTrigger-UEevent-Info.c new file mode 100644 index 0000000..77a5ed7 --- /dev/null +++ b/e2sm/lib/EventTrigger-UEevent-Info.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "EventTrigger-UEevent-Info.h" + +#include "EventTrigger-UEevent-Info-Item.h" +static int +memb_ueEvent_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ueEvent_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ueEvent_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ueEvent_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ueEvent_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ueEvent_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_EventTrigger_UEevent_Info_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ueEvent_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ueEvent_List_specs_2 = { + sizeof(struct EventTrigger_UEevent_Info__ueEvent_List), + offsetof(struct EventTrigger_UEevent_Info__ueEvent_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ueEvent_List_2 = { + "ueEvent-List", + "ueEvent-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ueEvent_List_tags_2, + sizeof(asn_DEF_ueEvent_List_tags_2) + /sizeof(asn_DEF_ueEvent_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ueEvent_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ueEvent_List_tags_2) + /sizeof(asn_DEF_ueEvent_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ueEvent_List_constr_2, &asn_PER_type_ueEvent_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ueEvent_List_2, + 1, /* Single element */ + &asn_SPC_ueEvent_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_EventTrigger_UEevent_Info_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct EventTrigger_UEevent_Info, ueEvent_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ueEvent_List_2, + 0, + { &asn_OER_memb_ueEvent_List_constr_2, &asn_PER_memb_ueEvent_List_constr_2, memb_ueEvent_List_constraint_1 }, + 0, 0, /* No default value */ + "ueEvent-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_EventTrigger_UEevent_Info_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_EventTrigger_UEevent_Info_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ueEvent-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_EventTrigger_UEevent_Info_specs_1 = { + sizeof(struct EventTrigger_UEevent_Info), + offsetof(struct EventTrigger_UEevent_Info, _asn_ctx), + asn_MAP_EventTrigger_UEevent_Info_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_EventTrigger_UEevent_Info = { + "EventTrigger-UEevent-Info", + "EventTrigger-UEevent-Info", + &asn_OP_SEQUENCE, + asn_DEF_EventTrigger_UEevent_Info_tags_1, + sizeof(asn_DEF_EventTrigger_UEevent_Info_tags_1) + /sizeof(asn_DEF_EventTrigger_UEevent_Info_tags_1[0]), /* 1 */ + asn_DEF_EventTrigger_UEevent_Info_tags_1, /* Same as above */ + sizeof(asn_DEF_EventTrigger_UEevent_Info_tags_1) + /sizeof(asn_DEF_EventTrigger_UEevent_Info_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_EventTrigger_UEevent_Info_1, + 1, /* Elements count */ + &asn_SPC_EventTrigger_UEevent_Info_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/FGC-CUUP-PM-Format.c b/e2sm/lib/FGC-CUUP-PM-Format.c deleted file mode 100644 index 634e092..0000000 --- a/e2sm/lib/FGC-CUUP-PM-Format.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "FGC-CUUP-PM-Format.h" - -#include "SliceToReportListItem.h" -static int -memb_sliceToReportList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 1024)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_sliceToReportList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..1024)) */}; -static asn_per_constraints_t asn_PER_type_sliceToReportList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_sliceToReportList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..1024)) */}; -static asn_per_constraints_t asn_PER_memb_sliceToReportList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_sliceToReportList_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SliceToReportListItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_sliceToReportList_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_sliceToReportList_specs_2 = { - sizeof(struct FGC_CUUP_PM_Format__sliceToReportList), - offsetof(struct FGC_CUUP_PM_Format__sliceToReportList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_sliceToReportList_2 = { - "sliceToReportList", - "sliceToReportList", - &asn_OP_SEQUENCE_OF, - asn_DEF_sliceToReportList_tags_2, - sizeof(asn_DEF_sliceToReportList_tags_2) - /sizeof(asn_DEF_sliceToReportList_tags_2[0]) - 1, /* 1 */ - asn_DEF_sliceToReportList_tags_2, /* Same as above */ - sizeof(asn_DEF_sliceToReportList_tags_2) - /sizeof(asn_DEF_sliceToReportList_tags_2[0]), /* 2 */ - { &asn_OER_type_sliceToReportList_constr_2, &asn_PER_type_sliceToReportList_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_sliceToReportList_2, - 1, /* Single element */ - &asn_SPC_sliceToReportList_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_FGC_CUUP_PM_Format_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct FGC_CUUP_PM_Format, sliceToReportList), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_sliceToReportList_2, - 0, - { &asn_OER_memb_sliceToReportList_constr_2, &asn_PER_memb_sliceToReportList_constr_2, memb_sliceToReportList_constraint_1 }, - 0, 0, /* No default value */ - "sliceToReportList" - }, -}; -static const ber_tlv_tag_t asn_DEF_FGC_CUUP_PM_Format_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_FGC_CUUP_PM_Format_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* sliceToReportList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_FGC_CUUP_PM_Format_specs_1 = { - sizeof(struct FGC_CUUP_PM_Format), - offsetof(struct FGC_CUUP_PM_Format, _asn_ctx), - asn_MAP_FGC_CUUP_PM_Format_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_FGC_CUUP_PM_Format = { - "FGC-CUUP-PM-Format", - "FGC-CUUP-PM-Format", - &asn_OP_SEQUENCE, - asn_DEF_FGC_CUUP_PM_Format_tags_1, - sizeof(asn_DEF_FGC_CUUP_PM_Format_tags_1) - /sizeof(asn_DEF_FGC_CUUP_PM_Format_tags_1[0]), /* 1 */ - asn_DEF_FGC_CUUP_PM_Format_tags_1, /* Same as above */ - sizeof(asn_DEF_FGC_CUUP_PM_Format_tags_1) - /sizeof(asn_DEF_FGC_CUUP_PM_Format_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_FGC_CUUP_PM_Format_1, - 1, /* Elements count */ - &asn_SPC_FGC_CUUP_PM_Format_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/FGC-DU-PM-Container.c b/e2sm/lib/FGC-DU-PM-Container.c deleted file mode 100644 index 859867f..0000000 --- a/e2sm/lib/FGC-DU-PM-Container.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "FGC-DU-PM-Container.h" - -#include "SlicePerPlmnPerCellListItem.h" -static int -memb_slicePerPlmnPerCellList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 1024)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_slicePerPlmnPerCellList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..1024)) */}; -static asn_per_constraints_t asn_PER_type_slicePerPlmnPerCellList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_slicePerPlmnPerCellList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..1024)) */}; -static asn_per_constraints_t asn_PER_memb_slicePerPlmnPerCellList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 10, 10, 1, 1024 } /* (SIZE(1..1024)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_slicePerPlmnPerCellList_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_SlicePerPlmnPerCellListItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_slicePerPlmnPerCellList_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_slicePerPlmnPerCellList_specs_2 = { - sizeof(struct FGC_DU_PM_Container__slicePerPlmnPerCellList), - offsetof(struct FGC_DU_PM_Container__slicePerPlmnPerCellList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_slicePerPlmnPerCellList_2 = { - "slicePerPlmnPerCellList", - "slicePerPlmnPerCellList", - &asn_OP_SEQUENCE_OF, - asn_DEF_slicePerPlmnPerCellList_tags_2, - sizeof(asn_DEF_slicePerPlmnPerCellList_tags_2) - /sizeof(asn_DEF_slicePerPlmnPerCellList_tags_2[0]) - 1, /* 1 */ - asn_DEF_slicePerPlmnPerCellList_tags_2, /* Same as above */ - sizeof(asn_DEF_slicePerPlmnPerCellList_tags_2) - /sizeof(asn_DEF_slicePerPlmnPerCellList_tags_2[0]), /* 2 */ - { &asn_OER_type_slicePerPlmnPerCellList_constr_2, &asn_PER_type_slicePerPlmnPerCellList_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_slicePerPlmnPerCellList_2, - 1, /* Single element */ - &asn_SPC_slicePerPlmnPerCellList_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_FGC_DU_PM_Container_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct FGC_DU_PM_Container, slicePerPlmnPerCellList), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_slicePerPlmnPerCellList_2, - 0, - { &asn_OER_memb_slicePerPlmnPerCellList_constr_2, &asn_PER_memb_slicePerPlmnPerCellList_constr_2, memb_slicePerPlmnPerCellList_constraint_1 }, - 0, 0, /* No default value */ - "slicePerPlmnPerCellList" - }, -}; -static const ber_tlv_tag_t asn_DEF_FGC_DU_PM_Container_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_FGC_DU_PM_Container_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* slicePerPlmnPerCellList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_FGC_DU_PM_Container_specs_1 = { - sizeof(struct FGC_DU_PM_Container), - offsetof(struct FGC_DU_PM_Container, _asn_ctx), - asn_MAP_FGC_DU_PM_Container_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_FGC_DU_PM_Container = { - "FGC-DU-PM-Container", - "FGC-DU-PM-Container", - &asn_OP_SEQUENCE, - asn_DEF_FGC_DU_PM_Container_tags_1, - sizeof(asn_DEF_FGC_DU_PM_Container_tags_1) - /sizeof(asn_DEF_FGC_DU_PM_Container_tags_1[0]), /* 1 */ - asn_DEF_FGC_DU_PM_Container_tags_1, /* Same as above */ - sizeof(asn_DEF_FGC_DU_PM_Container_tags_1) - /sizeof(asn_DEF_FGC_DU_PM_Container_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_FGC_DU_PM_Container_1, - 1, /* Elements count */ - &asn_SPC_FGC_DU_PM_Container_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/FQIPERSlicesPerPlmnListItem.c b/e2sm/lib/FQIPERSlicesPerPlmnListItem.c deleted file mode 100644 index e875ee2..0000000 --- a/e2sm/lib/FQIPERSlicesPerPlmnListItem.c +++ /dev/null @@ -1,150 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "FQIPERSlicesPerPlmnListItem.h" - -static int -memb_pDCPBytesDL_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(asn_INTEGER2long(st, &value)) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value too large (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if((value >= 0 && value <= 10000000000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pDCPBytesUL_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(asn_INTEGER2long(st, &value)) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value too large (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if((value >= 0 && value <= 10000000000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_pDCPBytesDL_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_pDCPBytesDL_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 34, -1, 0, 10000000000 } /* (0..10000000000,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_pDCPBytesUL_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_pDCPBytesUL_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 34, -1, 0, 10000000000 } /* (0..10000000000,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_FQIPERSlicesPerPlmnListItem_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct FQIPERSlicesPerPlmnListItem, fiveQI), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FiveQI, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "fiveQI" - }, - { ATF_POINTER, 2, offsetof(struct FQIPERSlicesPerPlmnListItem, pDCPBytesDL), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_INTEGER, - 0, - { &asn_OER_memb_pDCPBytesDL_constr_3, &asn_PER_memb_pDCPBytesDL_constr_3, memb_pDCPBytesDL_constraint_1 }, - 0, 0, /* No default value */ - "pDCPBytesDL" - }, - { ATF_POINTER, 1, offsetof(struct FQIPERSlicesPerPlmnListItem, pDCPBytesUL), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_INTEGER, - 0, - { &asn_OER_memb_pDCPBytesUL_constr_4, &asn_PER_memb_pDCPBytesUL_constr_4, memb_pDCPBytesUL_constraint_1 }, - 0, 0, /* No default value */ - "pDCPBytesUL" - }, -}; -static const int asn_MAP_FQIPERSlicesPerPlmnListItem_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_FQIPERSlicesPerPlmnListItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_FQIPERSlicesPerPlmnListItem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* fiveQI */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pDCPBytesDL */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* pDCPBytesUL */ -}; -asn_SEQUENCE_specifics_t asn_SPC_FQIPERSlicesPerPlmnListItem_specs_1 = { - sizeof(struct FQIPERSlicesPerPlmnListItem), - offsetof(struct FQIPERSlicesPerPlmnListItem, _asn_ctx), - asn_MAP_FQIPERSlicesPerPlmnListItem_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_FQIPERSlicesPerPlmnListItem_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_FQIPERSlicesPerPlmnListItem = { - "FQIPERSlicesPerPlmnListItem", - "FQIPERSlicesPerPlmnListItem", - &asn_OP_SEQUENCE, - asn_DEF_FQIPERSlicesPerPlmnListItem_tags_1, - sizeof(asn_DEF_FQIPERSlicesPerPlmnListItem_tags_1) - /sizeof(asn_DEF_FQIPERSlicesPerPlmnListItem_tags_1[0]), /* 1 */ - asn_DEF_FQIPERSlicesPerPlmnListItem_tags_1, /* Same as above */ - sizeof(asn_DEF_FQIPERSlicesPerPlmnListItem_tags_1) - /sizeof(asn_DEF_FQIPERSlicesPerPlmnListItem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_FQIPERSlicesPerPlmnListItem_1, - 3, /* Elements count */ - &asn_SPC_FQIPERSlicesPerPlmnListItem_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/FQIPERSlicesPerPlmnPerCellListItem.c b/e2sm/lib/FQIPERSlicesPerPlmnPerCellListItem.c deleted file mode 100644 index d69f8a1..0000000 --- a/e2sm/lib/FQIPERSlicesPerPlmnPerCellListItem.c +++ /dev/null @@ -1,138 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "FQIPERSlicesPerPlmnPerCellListItem.h" - -static int -memb_dl_PRBUsage_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 273)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_ul_PRBUsage_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 273)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_dl_PRBUsage_constr_3 CC_NOTUSED = { - { 2, 1 } /* (0..273) */, - -1}; -static asn_per_constraints_t asn_PER_memb_dl_PRBUsage_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, 0, 273 } /* (0..273) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ul_PRBUsage_constr_4 CC_NOTUSED = { - { 2, 1 } /* (0..273) */, - -1}; -static asn_per_constraints_t asn_PER_memb_ul_PRBUsage_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 9, 9, 0, 273 } /* (0..273) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_FQIPERSlicesPerPlmnPerCellListItem_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct FQIPERSlicesPerPlmnPerCellListItem, fiveQI), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FiveQI, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "fiveQI" - }, - { ATF_POINTER, 2, offsetof(struct FQIPERSlicesPerPlmnPerCellListItem, dl_PRBUsage), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_dl_PRBUsage_constr_3, &asn_PER_memb_dl_PRBUsage_constr_3, memb_dl_PRBUsage_constraint_1 }, - 0, 0, /* No default value */ - "dl-PRBUsage" - }, - { ATF_POINTER, 1, offsetof(struct FQIPERSlicesPerPlmnPerCellListItem, ul_PRBUsage), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_ul_PRBUsage_constr_4, &asn_PER_memb_ul_PRBUsage_constr_4, memb_ul_PRBUsage_constraint_1 }, - 0, 0, /* No default value */ - "ul-PRBUsage" - }, -}; -static const int asn_MAP_FQIPERSlicesPerPlmnPerCellListItem_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_FQIPERSlicesPerPlmnPerCellListItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_FQIPERSlicesPerPlmnPerCellListItem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* fiveQI */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dl-PRBUsage */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ul-PRBUsage */ -}; -asn_SEQUENCE_specifics_t asn_SPC_FQIPERSlicesPerPlmnPerCellListItem_specs_1 = { - sizeof(struct FQIPERSlicesPerPlmnPerCellListItem), - offsetof(struct FQIPERSlicesPerPlmnPerCellListItem, _asn_ctx), - asn_MAP_FQIPERSlicesPerPlmnPerCellListItem_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_FQIPERSlicesPerPlmnPerCellListItem_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_FQIPERSlicesPerPlmnPerCellListItem = { - "FQIPERSlicesPerPlmnPerCellListItem", - "FQIPERSlicesPerPlmnPerCellListItem", - &asn_OP_SEQUENCE, - asn_DEF_FQIPERSlicesPerPlmnPerCellListItem_tags_1, - sizeof(asn_DEF_FQIPERSlicesPerPlmnPerCellListItem_tags_1) - /sizeof(asn_DEF_FQIPERSlicesPerPlmnPerCellListItem_tags_1[0]), /* 1 */ - asn_DEF_FQIPERSlicesPerPlmnPerCellListItem_tags_1, /* Same as above */ - sizeof(asn_DEF_FQIPERSlicesPerPlmnPerCellListItem_tags_1) - /sizeof(asn_DEF_FQIPERSlicesPerPlmnPerCellListItem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_FQIPERSlicesPerPlmnPerCellListItem_1, - 3, /* Elements count */ - &asn_SPC_FQIPERSlicesPerPlmnPerCellListItem_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PLMN-Identity.c b/e2sm/lib/FiveGS-TAC.c similarity index 56% rename from e2sm/lib/PLMN-Identity.c rename to e2sm/lib/FiveGS-TAC.c index 023b1f7..48ff439 100644 --- a/e2sm/lib/PLMN-Identity.c +++ b/e2sm/lib/FiveGS-TAC.c @@ -1,14 +1,14 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "PLMN-Identity.h" +#include "FiveGS-TAC.h" int -PLMN_Identity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +FiveGS_TAC_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; size_t size; @@ -37,28 +37,28 @@ PLMN_Identity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using OCTET_STRING, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_PLMN_Identity_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_FiveGS_TAC_constr_1 CC_NOTUSED = { { 0, 0 }, 3 /* (SIZE(3..3)) */}; -asn_per_constraints_t asn_PER_type_PLMN_Identity_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_FiveGS_TAC_constr_1 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, 0, 0 /* No PER value map */ }; -static const ber_tlv_tag_t asn_DEF_PLMN_Identity_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_FiveGS_TAC_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_PLMN_Identity = { - "PLMN-Identity", - "PLMN-Identity", +asn_TYPE_descriptor_t asn_DEF_FiveGS_TAC = { + "FiveGS-TAC", + "FiveGS-TAC", &asn_OP_OCTET_STRING, - asn_DEF_PLMN_Identity_tags_1, - sizeof(asn_DEF_PLMN_Identity_tags_1) - /sizeof(asn_DEF_PLMN_Identity_tags_1[0]), /* 1 */ - asn_DEF_PLMN_Identity_tags_1, /* Same as above */ - sizeof(asn_DEF_PLMN_Identity_tags_1) - /sizeof(asn_DEF_PLMN_Identity_tags_1[0]), /* 1 */ - { &asn_OER_type_PLMN_Identity_constr_1, &asn_PER_type_PLMN_Identity_constr_1, PLMN_Identity_constraint }, + asn_DEF_FiveGS_TAC_tags_1, + sizeof(asn_DEF_FiveGS_TAC_tags_1) + /sizeof(asn_DEF_FiveGS_TAC_tags_1[0]), /* 1 */ + asn_DEF_FiveGS_TAC_tags_1, /* Same as above */ + sizeof(asn_DEF_FiveGS_TAC_tags_1) + /sizeof(asn_DEF_FiveGS_TAC_tags_1[0]), /* 1 */ + { &asn_OER_type_FiveGS_TAC_constr_1, &asn_PER_type_FiveGS_TAC_constr_1, FiveGS_TAC_constraint }, 0, 0, /* No members */ &asn_SPC_OCTET_STRING_specs /* Additional specs */ }; diff --git a/e2sm/lib/FiveQI.c b/e2sm/lib/FiveQI.c index 15d32c9..c19218b 100644 --- a/e2sm/lib/FiveQI.c +++ b/e2sm/lib/FiveQI.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/FreqBandNrItem.c b/e2sm/lib/FreqBandNrItem.c new file mode 100644 index 0000000..d5cff17 --- /dev/null +++ b/e2sm/lib/FreqBandNrItem.c @@ -0,0 +1,83 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "FreqBandNrItem.h" + +static int +memb_freqBandIndicatorNr_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 1024)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_freqBandIndicatorNr_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_freqBandIndicatorNr_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 10, 10, 1, 1024 } /* (1..1024,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_FreqBandNrItem_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct FreqBandNrItem, freqBandIndicatorNr), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_freqBandIndicatorNr_constr_2, &asn_PER_memb_freqBandIndicatorNr_constr_2, memb_freqBandIndicatorNr_constraint_1 }, + 0, 0, /* No default value */ + "freqBandIndicatorNr" + }, +}; +static const ber_tlv_tag_t asn_DEF_FreqBandNrItem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_FreqBandNrItem_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* freqBandIndicatorNr */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_FreqBandNrItem_specs_1 = { + sizeof(struct FreqBandNrItem), + offsetof(struct FreqBandNrItem, _asn_ctx), + asn_MAP_FreqBandNrItem_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_FreqBandNrItem = { + "FreqBandNrItem", + "FreqBandNrItem", + &asn_OP_SEQUENCE, + asn_DEF_FreqBandNrItem_tags_1, + sizeof(asn_DEF_FreqBandNrItem_tags_1) + /sizeof(asn_DEF_FreqBandNrItem_tags_1[0]), /* 1 */ + asn_DEF_FreqBandNrItem_tags_1, /* Same as above */ + sizeof(asn_DEF_FreqBandNrItem_tags_1) + /sizeof(asn_DEF_FreqBandNrItem_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_FreqBandNrItem_1, + 1, /* Elements count */ + &asn_SPC_FreqBandNrItem_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/GNB-CU-CP-UE-E1AP-ID.c b/e2sm/lib/GNB-CU-CP-UE-E1AP-ID.c new file mode 100644 index 0000000..d18a479 --- /dev/null +++ b/e2sm/lib/GNB-CU-CP-UE-E1AP-ID.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "GNB-CU-CP-UE-E1AP-ID.h" + +int +GNB_CU_CP_UE_E1AP_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + /* Constraint check succeeded */ + return 0; +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_GNB_CU_CP_UE_E1AP_ID_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..4294967295) */, + -1}; +asn_per_constraints_t asn_PER_type_GNB_CU_CP_UE_E1AP_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +const asn_INTEGER_specifics_t asn_SPC_GNB_CU_CP_UE_E1AP_ID_specs_1 = { + 0, 0, 0, 0, 0, + 0, /* Native long size */ + 1 /* Unsigned representation */ +}; +static const ber_tlv_tag_t asn_DEF_GNB_CU_CP_UE_E1AP_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GNB_CU_CP_UE_E1AP_ID = { + "GNB-CU-CP-UE-E1AP-ID", + "GNB-CU-CP-UE-E1AP-ID", + &asn_OP_NativeInteger, + asn_DEF_GNB_CU_CP_UE_E1AP_ID_tags_1, + sizeof(asn_DEF_GNB_CU_CP_UE_E1AP_ID_tags_1) + /sizeof(asn_DEF_GNB_CU_CP_UE_E1AP_ID_tags_1[0]), /* 1 */ + asn_DEF_GNB_CU_CP_UE_E1AP_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_GNB_CU_CP_UE_E1AP_ID_tags_1) + /sizeof(asn_DEF_GNB_CU_CP_UE_E1AP_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_GNB_CU_CP_UE_E1AP_ID_constr_1, &asn_PER_type_GNB_CU_CP_UE_E1AP_ID_constr_1, GNB_CU_CP_UE_E1AP_ID_constraint }, + 0, 0, /* No members */ + &asn_SPC_GNB_CU_CP_UE_E1AP_ID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/GNB-CU-UE-F1AP-ID.c b/e2sm/lib/GNB-CU-UE-F1AP-ID.c new file mode 100644 index 0000000..5b6c575 --- /dev/null +++ b/e2sm/lib/GNB-CU-UE-F1AP-ID.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "GNB-CU-UE-F1AP-ID.h" + +int +GNB_CU_UE_F1AP_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + /* Constraint check succeeded */ + return 0; +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_GNB_CU_UE_F1AP_ID_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..4294967295) */, + -1}; +asn_per_constraints_t asn_PER_type_GNB_CU_UE_F1AP_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +const asn_INTEGER_specifics_t asn_SPC_GNB_CU_UE_F1AP_ID_specs_1 = { + 0, 0, 0, 0, 0, + 0, /* Native long size */ + 1 /* Unsigned representation */ +}; +static const ber_tlv_tag_t asn_DEF_GNB_CU_UE_F1AP_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_GNB_CU_UE_F1AP_ID = { + "GNB-CU-UE-F1AP-ID", + "GNB-CU-UE-F1AP-ID", + &asn_OP_NativeInteger, + asn_DEF_GNB_CU_UE_F1AP_ID_tags_1, + sizeof(asn_DEF_GNB_CU_UE_F1AP_ID_tags_1) + /sizeof(asn_DEF_GNB_CU_UE_F1AP_ID_tags_1[0]), /* 1 */ + asn_DEF_GNB_CU_UE_F1AP_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_GNB_CU_UE_F1AP_ID_tags_1) + /sizeof(asn_DEF_GNB_CU_UE_F1AP_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_GNB_CU_UE_F1AP_ID_constr_1, &asn_PER_type_GNB_CU_UE_F1AP_ID_constr_1, GNB_CU_UE_F1AP_ID_constraint }, + 0, 0, /* No members */ + &asn_SPC_GNB_CU_UE_F1AP_ID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/GNB-CU-UP-ID.c b/e2sm/lib/GNB-CU-UP-ID.c index a6e0e86..f4c8012 100644 --- a/e2sm/lib/GNB-CU-UP-ID.c +++ b/e2sm/lib/GNB-CU-UP-ID.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/GNB-DU-ID.c b/e2sm/lib/GNB-DU-ID.c index bae29c8..3bbd52c 100644 --- a/e2sm/lib/GNB-DU-ID.c +++ b/e2sm/lib/GNB-DU-ID.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/ENGNB-ID.c b/e2sm/lib/GNB-ID.c similarity index 68% rename from e2sm/lib/ENGNB-ID.c rename to e2sm/lib/GNB-ID.c index 5577266..ccde106 100644 --- a/e2sm/lib/ENGNB-ID.c +++ b/e2sm/lib/GNB-ID.c @@ -1,11 +1,11 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "ENGNB-ID.h" +#include "GNB-ID.h" static int memb_gNB_ID_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, @@ -46,16 +46,16 @@ static asn_per_constraints_t asn_PER_memb_gNB_ID_constr_2 CC_NOTUSED = { { APC_CONSTRAINED, 4, 4, 22, 32 } /* (SIZE(22..32)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ENGNB_ID_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_GNB_ID_constr_1 CC_NOTUSED = { { 0, 0 }, -1}; -asn_per_constraints_t asn_PER_type_ENGNB_ID_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_GNB_ID_constr_1 CC_NOTUSED = { { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -asn_TYPE_member_t asn_MBR_ENGNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ENGNB_ID, choice.gNB_ID), +asn_TYPE_member_t asn_MBR_GNB_ID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GNB_ID, choice.gNB_ID), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_BIT_STRING, @@ -65,30 +65,30 @@ asn_TYPE_member_t asn_MBR_ENGNB_ID_1[] = { "gNB-ID" }, }; -static const asn_TYPE_tag2member_t asn_MAP_ENGNB_ID_tag2el_1[] = { +static const asn_TYPE_tag2member_t asn_MAP_GNB_ID_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gNB-ID */ }; -asn_CHOICE_specifics_t asn_SPC_ENGNB_ID_specs_1 = { - sizeof(struct ENGNB_ID), - offsetof(struct ENGNB_ID, _asn_ctx), - offsetof(struct ENGNB_ID, present), - sizeof(((struct ENGNB_ID *)0)->present), - asn_MAP_ENGNB_ID_tag2el_1, +asn_CHOICE_specifics_t asn_SPC_GNB_ID_specs_1 = { + sizeof(struct GNB_ID), + offsetof(struct GNB_ID, _asn_ctx), + offsetof(struct GNB_ID, present), + sizeof(((struct GNB_ID *)0)->present), + asn_MAP_GNB_ID_tag2el_1, 1, /* Count of tags in the map */ 0, 0, 1 /* Extensions start */ }; -asn_TYPE_descriptor_t asn_DEF_ENGNB_ID = { - "ENGNB-ID", - "ENGNB-ID", +asn_TYPE_descriptor_t asn_DEF_GNB_ID = { + "GNB-ID", + "GNB-ID", &asn_OP_CHOICE, 0, /* No effective tags (pointer) */ 0, /* No effective tags (count) */ 0, /* No tags (pointer) */ 0, /* No tags (count) */ - { &asn_OER_type_ENGNB_ID_constr_1, &asn_PER_type_ENGNB_ID_constr_1, CHOICE_constraint }, - asn_MBR_ENGNB_ID_1, + { &asn_OER_type_GNB_ID_constr_1, &asn_PER_type_GNB_ID_constr_1, CHOICE_constraint }, + asn_MBR_GNB_ID_1, 1, /* Elements count */ - &asn_SPC_ENGNB_ID_specs_1 /* Additional specs */ + &asn_SPC_GNB_ID_specs_1 /* Additional specs */ }; diff --git a/e2sm/lib/GUAMI.c b/e2sm/lib/GUAMI.c new file mode 100644 index 0000000..05040f5 --- /dev/null +++ b/e2sm/lib/GUAMI.c @@ -0,0 +1,80 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "GUAMI.h" + +asn_TYPE_member_t asn_MBR_GUAMI_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GUAMI, pLMNIdentity), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PLMNIdentity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pLMNIdentity" + }, + { ATF_NOFLAGS, 0, offsetof(struct GUAMI, aMFRegionID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AMFRegionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "aMFRegionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct GUAMI, aMFSetID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AMFSetID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "aMFSetID" + }, + { ATF_NOFLAGS, 0, offsetof(struct GUAMI, aMFPointer), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AMFPointer, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "aMFPointer" + }, +}; +static const ber_tlv_tag_t asn_DEF_GUAMI_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GUAMI_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMNIdentity */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* aMFRegionID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* aMFSetID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* aMFPointer */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GUAMI_specs_1 = { + sizeof(struct GUAMI), + offsetof(struct GUAMI, _asn_ctx), + asn_MAP_GUAMI_tag2el_1, + 4, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GUAMI = { + "GUAMI", + "GUAMI", + &asn_OP_SEQUENCE, + asn_DEF_GUAMI_tags_1, + sizeof(asn_DEF_GUAMI_tags_1) + /sizeof(asn_DEF_GUAMI_tags_1[0]), /* 1 */ + asn_DEF_GUAMI_tags_1, /* Same as above */ + sizeof(asn_DEF_GUAMI_tags_1) + /sizeof(asn_DEF_GUAMI_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_GUAMI_1, + 4, /* Elements count */ + &asn_SPC_GUAMI_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/GUMMEI.c b/e2sm/lib/GUMMEI.c new file mode 100644 index 0000000..ac0bf5b --- /dev/null +++ b/e2sm/lib/GUMMEI.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "GUMMEI.h" + +asn_TYPE_member_t asn_MBR_GUMMEI_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GUMMEI, pLMN_Identity), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PLMNIdentity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pLMN-Identity" + }, + { ATF_NOFLAGS, 0, offsetof(struct GUMMEI, mME_Group_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MME_Group_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "mME-Group-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct GUMMEI, mME_Code), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MME_Code, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "mME-Code" + }, +}; +static const ber_tlv_tag_t asn_DEF_GUMMEI_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GUMMEI_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMN-Identity */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* mME-Group-ID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* mME-Code */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GUMMEI_specs_1 = { + sizeof(struct GUMMEI), + offsetof(struct GUMMEI, _asn_ctx), + asn_MAP_GUMMEI_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GUMMEI = { + "GUMMEI", + "GUMMEI", + &asn_OP_SEQUENCE, + asn_DEF_GUMMEI_tags_1, + sizeof(asn_DEF_GUMMEI_tags_1) + /sizeof(asn_DEF_GUMMEI_tags_1[0]), /* 1 */ + asn_DEF_GUMMEI_tags_1, /* Same as above */ + sizeof(asn_DEF_GUMMEI_tags_1) + /sizeof(asn_DEF_GUMMEI_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_GUMMEI_1, + 3, /* Elements count */ + &asn_SPC_GUMMEI_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/GlobalE2node-ID.c b/e2sm/lib/GlobalE2node-ID.c deleted file mode 100644 index 07879f0..0000000 --- a/e2sm/lib/GlobalE2node-ID.c +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "GlobalE2node-ID.h" - -#include "GlobalE2node-gNB-ID.h" -#include "GlobalE2node-en-gNB-ID.h" -#include "GlobalE2node-ng-eNB-ID.h" -#include "GlobalE2node-eNB-ID.h" -static asn_oer_constraints_t asn_OER_type_GlobalE2node_ID_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_GlobalE2node_ID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_GlobalE2node_ID_1[] = { - { ATF_POINTER, 0, offsetof(struct GlobalE2node_ID, choice.gNB), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalE2node_gNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "gNB" - }, - { ATF_POINTER, 0, offsetof(struct GlobalE2node_ID, choice.en_gNB), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalE2node_en_gNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "en-gNB" - }, - { ATF_POINTER, 0, offsetof(struct GlobalE2node_ID, choice.ng_eNB), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalE2node_ng_eNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ng-eNB" - }, - { ATF_POINTER, 0, offsetof(struct GlobalE2node_ID, choice.eNB), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalE2node_eNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "eNB" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* en-gNB */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ng-eNB */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* eNB */ -}; -asn_CHOICE_specifics_t asn_SPC_GlobalE2node_ID_specs_1 = { - sizeof(struct GlobalE2node_ID), - offsetof(struct GlobalE2node_ID, _asn_ctx), - offsetof(struct GlobalE2node_ID, present), - sizeof(((struct GlobalE2node_ID *)0)->present), - asn_MAP_GlobalE2node_ID_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, - 4 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ID = { - "GlobalE2node-ID", - "GlobalE2node-ID", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_GlobalE2node_ID_constr_1, &asn_PER_type_GlobalE2node_ID_constr_1, CHOICE_constraint }, - asn_MBR_GlobalE2node_ID_1, - 4, /* Elements count */ - &asn_SPC_GlobalE2node_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalE2node-eNB-ID.c b/e2sm/lib/GlobalE2node-eNB-ID.c deleted file mode 100644 index 5848da9..0000000 --- a/e2sm/lib/GlobalE2node-eNB-ID.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "GlobalE2node-eNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalE2node_eNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_eNB_ID, global_eNB_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalENB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "global-eNB-ID" - }, -}; -static const ber_tlv_tag_t asn_DEF_GlobalE2node_eNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_eNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-eNB-ID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_eNB_ID_specs_1 = { - sizeof(struct GlobalE2node_eNB_ID), - offsetof(struct GlobalE2node_eNB_ID, _asn_ctx), - asn_MAP_GlobalE2node_eNB_ID_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalE2node_eNB_ID = { - "GlobalE2node-eNB-ID", - "GlobalE2node-eNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalE2node_eNB_ID_tags_1, - sizeof(asn_DEF_GlobalE2node_eNB_ID_tags_1) - /sizeof(asn_DEF_GlobalE2node_eNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalE2node_eNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalE2node_eNB_ID_tags_1) - /sizeof(asn_DEF_GlobalE2node_eNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalE2node_eNB_ID_1, - 1, /* Elements count */ - &asn_SPC_GlobalE2node_eNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalE2node-en-gNB-ID.c b/e2sm/lib/GlobalE2node-en-gNB-ID.c deleted file mode 100644 index 53c81ad..0000000 --- a/e2sm/lib/GlobalE2node-en-gNB-ID.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "GlobalE2node-en-gNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalE2node_en_gNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_en_gNB_ID, global_gNB_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalenGNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "global-gNB-ID" - }, -}; -static const ber_tlv_tag_t asn_DEF_GlobalE2node_en_gNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_en_gNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-gNB-ID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_en_gNB_ID_specs_1 = { - sizeof(struct GlobalE2node_en_gNB_ID), - offsetof(struct GlobalE2node_en_gNB_ID, _asn_ctx), - asn_MAP_GlobalE2node_en_gNB_ID_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalE2node_en_gNB_ID = { - "GlobalE2node-en-gNB-ID", - "GlobalE2node-en-gNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalE2node_en_gNB_ID_tags_1, - sizeof(asn_DEF_GlobalE2node_en_gNB_ID_tags_1) - /sizeof(asn_DEF_GlobalE2node_en_gNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalE2node_en_gNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalE2node_en_gNB_ID_tags_1) - /sizeof(asn_DEF_GlobalE2node_en_gNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalE2node_en_gNB_ID_1, - 1, /* Elements count */ - &asn_SPC_GlobalE2node_en_gNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalE2node-gNB-ID.c b/e2sm/lib/GlobalE2node-gNB-ID.c deleted file mode 100644 index 6be7447..0000000 --- a/e2sm/lib/GlobalE2node-gNB-ID.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "GlobalE2node-gNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_gNB_ID, global_gNB_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalgNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "global-gNB-ID" - }, - { ATF_POINTER, 2, offsetof(struct GlobalE2node_gNB_ID, gNB_CU_UP_ID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNB_CU_UP_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "gNB-CU-UP-ID" - }, - { ATF_POINTER, 1, offsetof(struct GlobalE2node_gNB_ID, gNB_DU_ID), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNB_DU_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "gNB-DU-ID" - }, -}; -static const int asn_MAP_GlobalE2node_gNB_ID_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_GlobalE2node_gNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_gNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-gNB-ID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* gNB-CU-UP-ID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* gNB-DU-ID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_gNB_ID_specs_1 = { - sizeof(struct GlobalE2node_gNB_ID), - offsetof(struct GlobalE2node_gNB_ID, _asn_ctx), - asn_MAP_GlobalE2node_gNB_ID_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_GlobalE2node_gNB_ID_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalE2node_gNB_ID = { - "GlobalE2node-gNB-ID", - "GlobalE2node-gNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalE2node_gNB_ID_tags_1, - sizeof(asn_DEF_GlobalE2node_gNB_ID_tags_1) - /sizeof(asn_DEF_GlobalE2node_gNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalE2node_gNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalE2node_gNB_ID_tags_1) - /sizeof(asn_DEF_GlobalE2node_gNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalE2node_gNB_ID_1, - 3, /* Elements count */ - &asn_SPC_GlobalE2node_gNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalE2node-ng-eNB-ID.c b/e2sm/lib/GlobalE2node-ng-eNB-ID.c deleted file mode 100644 index 8ae9e02..0000000 --- a/e2sm/lib/GlobalE2node-ng-eNB-ID.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "GlobalE2node-ng-eNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalE2node_ng_eNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_ng_eNB_ID, global_ng_eNB_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalngeNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "global-ng-eNB-ID" - }, -}; -static const ber_tlv_tag_t asn_DEF_GlobalE2node_ng_eNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_ng_eNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-ng-eNB-ID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_ng_eNB_ID_specs_1 = { - sizeof(struct GlobalE2node_ng_eNB_ID), - offsetof(struct GlobalE2node_ng_eNB_ID, _asn_ctx), - asn_MAP_GlobalE2node_ng_eNB_ID_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ng_eNB_ID = { - "GlobalE2node-ng-eNB-ID", - "GlobalE2node-ng-eNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalE2node_ng_eNB_ID_tags_1, - sizeof(asn_DEF_GlobalE2node_ng_eNB_ID_tags_1) - /sizeof(asn_DEF_GlobalE2node_ng_eNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalE2node_ng_eNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalE2node_ng_eNB_ID_tags_1) - /sizeof(asn_DEF_GlobalE2node_ng_eNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalE2node_ng_eNB_ID_1, - 1, /* Elements count */ - &asn_SPC_GlobalE2node_ng_eNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalENB-ID.c b/e2sm/lib/GlobalENB-ID.c index fccb2e0..731c16e 100644 --- a/e2sm/lib/GlobalENB-ID.c +++ b/e2sm/lib/GlobalENB-ID.c @@ -1,21 +1,21 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "GlobalENB-ID.h" asn_TYPE_member_t asn_MBR_GlobalENB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalENB_ID, pLMN_Identity), + { ATF_NOFLAGS, 0, offsetof(struct GlobalENB_ID, pLMNIdentity), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_PLMN_Identity, + &asn_DEF_PLMNIdentity, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "pLMN-Identity" + "pLMNIdentity" }, { ATF_NOFLAGS, 0, offsetof(struct GlobalENB_ID, eNB_ID), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), @@ -31,7 +31,7 @@ static const ber_tlv_tag_t asn_DEF_GlobalENB_ID_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_GlobalENB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMN-Identity */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMNIdentity */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* eNB-ID */ }; asn_SEQUENCE_specifics_t asn_SPC_GlobalENB_ID_specs_1 = { diff --git a/e2sm/lib/GlobalGNB-ID.c b/e2sm/lib/GlobalGNB-ID.c new file mode 100644 index 0000000..47f17dd --- /dev/null +++ b/e2sm/lib/GlobalGNB-ID.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "GlobalGNB-ID.h" + +asn_TYPE_member_t asn_MBR_GlobalGNB_ID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GlobalGNB_ID, pLMNIdentity), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PLMNIdentity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pLMNIdentity" + }, + { ATF_NOFLAGS, 0, offsetof(struct GlobalGNB_ID, gNB_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_GNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_GlobalGNB_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GlobalGNB_ID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMNIdentity */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* gNB-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GlobalGNB_ID_specs_1 = { + sizeof(struct GlobalGNB_ID), + offsetof(struct GlobalGNB_ID, _asn_ctx), + asn_MAP_GlobalGNB_ID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GlobalGNB_ID = { + "GlobalGNB-ID", + "GlobalGNB-ID", + &asn_OP_SEQUENCE, + asn_DEF_GlobalGNB_ID_tags_1, + sizeof(asn_DEF_GlobalGNB_ID_tags_1) + /sizeof(asn_DEF_GlobalGNB_ID_tags_1[0]), /* 1 */ + asn_DEF_GlobalGNB_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_GlobalGNB_ID_tags_1) + /sizeof(asn_DEF_GlobalGNB_ID_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_GlobalGNB_ID_1, + 2, /* Elements count */ + &asn_SPC_GlobalGNB_ID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/GlobalKPMnode-ID.c b/e2sm/lib/GlobalKPMnode-ID.c deleted file mode 100644 index db52419..0000000 --- a/e2sm/lib/GlobalKPMnode-ID.c +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#include "GlobalKPMnode-ID.h" - -static asn_oer_constraints_t asn_OER_type_GlobalKPMnode_ID_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_GlobalKPMnode_ID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_GlobalKPMnode_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalKPMnode_ID, choice.gNB), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalKPMnode_gNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "gNB" - }, - { ATF_NOFLAGS, 0, offsetof(struct GlobalKPMnode_ID, choice.en_gNB), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalKPMnode_en_gNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "en-gNB" - }, - - { ATF_NOFLAGS, 0, offsetof(struct GlobalKPMnode_ID, choice.ng_eNB), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalKPMnode_ng_eNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ng-eNB" - }, - - { ATF_NOFLAGS, 0, offsetof(struct GlobalKPMnode_ID, choice.eNB), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalKPMnode_eNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "eNB" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalKPMnode_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* en-gNB */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ng-eNB */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* eNB */ -}; -asn_CHOICE_specifics_t asn_SPC_GlobalKPMnode_ID_specs_1 = { - sizeof(struct GlobalKPMnode_ID), - offsetof(struct GlobalKPMnode_ID, _asn_ctx), - offsetof(struct GlobalKPMnode_ID, present), - sizeof(((struct GlobalKPMnode_ID *)0)->present), - asn_MAP_GlobalKPMnode_ID_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, - 4 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_ID = { - "GlobalKPMnode-ID", - "GlobalKPMnode-ID", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_GlobalKPMnode_ID_constr_1, &asn_PER_type_GlobalKPMnode_ID_constr_1, CHOICE_constraint }, - asn_MBR_GlobalKPMnode_ID_1, - 4, /* Elements count */ - &asn_SPC_GlobalKPMnode_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalKPMnode-eNB-ID.c b/e2sm/lib/GlobalKPMnode-eNB-ID.c deleted file mode 100644 index 5d6e935..0000000 --- a/e2sm/lib/GlobalKPMnode-eNB-ID.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#include "GlobalKPMnode-eNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalKPMnode_eNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalKPMnode_eNB_ID, global_eNB_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalENB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "global-eNB-ID" - }, -}; -static const ber_tlv_tag_t asn_DEF_GlobalKPMnode_eNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalKPMnode_eNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-eNB-ID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalKPMnode_eNB_ID_specs_1 = { - sizeof(struct GlobalKPMnode_eNB_ID), - offsetof(struct GlobalKPMnode_eNB_ID, _asn_ctx), - asn_MAP_GlobalKPMnode_eNB_ID_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_eNB_ID = { - "GlobalKPMnode-eNB-ID", - "GlobalKPMnode-eNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalKPMnode_eNB_ID_tags_1, - sizeof(asn_DEF_GlobalKPMnode_eNB_ID_tags_1) - /sizeof(asn_DEF_GlobalKPMnode_eNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalKPMnode_eNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalKPMnode_eNB_ID_tags_1) - /sizeof(asn_DEF_GlobalKPMnode_eNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalKPMnode_eNB_ID_1, - 1, /* Elements count */ - &asn_SPC_GlobalKPMnode_eNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalKPMnode-en-gNB-ID.c b/e2sm/lib/GlobalKPMnode-en-gNB-ID.c deleted file mode 100644 index 4c4f222..0000000 --- a/e2sm/lib/GlobalKPMnode-en-gNB-ID.c +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#include "GlobalKPMnode-en-gNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalKPMnode_en_gNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalKPMnode_en_gNB_ID, global_gNB_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalenGNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "global-gNB-ID" - }, -}; - -static const ber_tlv_tag_t asn_DEF_GlobalKPMnode_en_gNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalKPMnode_en_gNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-gNB-ID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalKPMnode_en_gNB_ID_specs_1 = { - sizeof(struct GlobalKPMnode_en_gNB_ID), - offsetof(struct GlobalKPMnode_en_gNB_ID, _asn_ctx), - asn_MAP_GlobalKPMnode_en_gNB_ID_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_en_gNB_ID = { - "GlobalKPMnode-en-gNB-ID", - "GlobalKPMnode-en-gNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalKPMnode_en_gNB_ID_tags_1, - sizeof(asn_DEF_GlobalKPMnode_en_gNB_ID_tags_1) - /sizeof(asn_DEF_GlobalKPMnode_en_gNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalKPMnode_en_gNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalKPMnode_en_gNB_ID_tags_1) - /sizeof(asn_DEF_GlobalKPMnode_en_gNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalKPMnode_en_gNB_ID_1, - 1, /* Elements count */ - &asn_SPC_GlobalKPMnode_en_gNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalKPMnode-gNB-ID.c b/e2sm/lib/GlobalKPMnode-gNB-ID.c deleted file mode 100644 index 19f2769..0000000 --- a/e2sm/lib/GlobalKPMnode-gNB-ID.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#include "GlobalKPMnode-gNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalKPMnode_gNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalKPMnode_gNB_ID, global_gNB_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalgNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "global-gNB-ID" - }, - { ATF_POINTER, 2, offsetof(struct GlobalKPMnode_gNB_ID, gNB_CU_UP_ID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNB_CU_UP_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "gNB-CU-UP-ID" - }, - { ATF_POINTER, 1, offsetof(struct GlobalKPMnode_gNB_ID, gNB_DU_ID), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GNB_DU_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "gNB-DU-ID" - }, -}; -static const int asn_MAP_GlobalKPMnode_gNB_ID_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_GlobalKPMnode_gNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalKPMnode_gNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-gNB-ID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* gNB-CU-UP-ID */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* gNB-DU-ID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalKPMnode_gNB_ID_specs_1 = { - sizeof(struct GlobalKPMnode_gNB_ID), - offsetof(struct GlobalKPMnode_gNB_ID, _asn_ctx), - asn_MAP_GlobalKPMnode_gNB_ID_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_GlobalKPMnode_gNB_ID_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_gNB_ID = { - "GlobalKPMnode-gNB-ID", - "GlobalKPMnode-gNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalKPMnode_gNB_ID_tags_1, - sizeof(asn_DEF_GlobalKPMnode_gNB_ID_tags_1) - /sizeof(asn_DEF_GlobalKPMnode_gNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalKPMnode_gNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalKPMnode_gNB_ID_tags_1) - /sizeof(asn_DEF_GlobalKPMnode_gNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalKPMnode_gNB_ID_1, - 3, /* Elements count */ - &asn_SPC_GlobalKPMnode_gNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalKPMnode-ng-eNB-ID.c b/e2sm/lib/GlobalKPMnode-ng-eNB-ID.c deleted file mode 100644 index 6d04929..0000000 --- a/e2sm/lib/GlobalKPMnode-ng-eNB-ID.c +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-IEs" - * found in "E2SM-KPM-Prespec.asn" - * `asn1c -D ./e2sm-kpm -gen-PER` - */ - -#include "GlobalKPMnode-ng-eNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalKPMnode_ng_eNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalKPMnode_ng_eNB_ID, global_ng_eNB_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_GlobalngeNB_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "global-ng-eNB-ID" - }, -}; - -static const ber_tlv_tag_t asn_DEF_GlobalKPMnode_ng_eNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalKPMnode_ng_eNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-ng-eNB-ID */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalKPMnode_ng_eNB_ID_specs_1 = { - sizeof(struct GlobalKPMnode_ng_eNB_ID), - offsetof(struct GlobalKPMnode_ng_eNB_ID, _asn_ctx), - asn_MAP_GlobalKPMnode_ng_eNB_ID_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalKPMnode_ng_eNB_ID = { - "GlobalKPMnode-ng-eNB-ID", - "GlobalKPMnode-ng-eNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalKPMnode_ng_eNB_ID_tags_1, - sizeof(asn_DEF_GlobalKPMnode_ng_eNB_ID_tags_1) - /sizeof(asn_DEF_GlobalKPMnode_ng_eNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalKPMnode_ng_eNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalKPMnode_ng_eNB_ID_tags_1) - /sizeof(asn_DEF_GlobalKPMnode_ng_eNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalKPMnode_ng_eNB_ID_1, - 1, /* Elements count */ - &asn_SPC_GlobalKPMnode_ng_eNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalNGRANNodeID.c b/e2sm/lib/GlobalNGRANNodeID.c new file mode 100644 index 0000000..58de505 --- /dev/null +++ b/e2sm/lib/GlobalNGRANNodeID.c @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "GlobalNGRANNodeID.h" + +#include "GlobalGNB-ID.h" +#include "GlobalNgENB-ID.h" +static asn_oer_constraints_t asn_OER_type_GlobalNGRANNodeID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_GlobalNGRANNodeID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_GlobalNGRANNodeID_1[] = { + { ATF_POINTER, 0, offsetof(struct GlobalNGRANNodeID, choice.gNB), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalGNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB" + }, + { ATF_POINTER, 0, offsetof(struct GlobalNGRANNodeID, choice.ng_eNB), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalNgENB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ng-eNB" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_GlobalNGRANNodeID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ng-eNB */ +}; +asn_CHOICE_specifics_t asn_SPC_GlobalNGRANNodeID_specs_1 = { + sizeof(struct GlobalNGRANNodeID), + offsetof(struct GlobalNGRANNodeID, _asn_ctx), + offsetof(struct GlobalNGRANNodeID, present), + sizeof(((struct GlobalNGRANNodeID *)0)->present), + asn_MAP_GlobalNGRANNodeID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_GlobalNGRANNodeID = { + "GlobalNGRANNodeID", + "GlobalNGRANNodeID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_GlobalNGRANNodeID_constr_1, &asn_PER_type_GlobalNGRANNodeID_constr_1, CHOICE_constraint }, + asn_MBR_GlobalNGRANNodeID_1, + 2, /* Elements count */ + &asn_SPC_GlobalNGRANNodeID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/GlobalNgENB-ID.c b/e2sm/lib/GlobalNgENB-ID.c new file mode 100644 index 0000000..549617a --- /dev/null +++ b/e2sm/lib/GlobalNgENB-ID.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "GlobalNgENB-ID.h" + +asn_TYPE_member_t asn_MBR_GlobalNgENB_ID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GlobalNgENB_ID, pLMNIdentity), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PLMNIdentity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pLMNIdentity" + }, + { ATF_NOFLAGS, 0, offsetof(struct GlobalNgENB_ID, ngENB_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_NgENB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ngENB-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_GlobalNgENB_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_GlobalNgENB_ID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMNIdentity */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ngENB-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_GlobalNgENB_ID_specs_1 = { + sizeof(struct GlobalNgENB_ID), + offsetof(struct GlobalNgENB_ID, _asn_ctx), + asn_MAP_GlobalNgENB_ID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_GlobalNgENB_ID = { + "GlobalNgENB-ID", + "GlobalNgENB-ID", + &asn_OP_SEQUENCE, + asn_DEF_GlobalNgENB_ID_tags_1, + sizeof(asn_DEF_GlobalNgENB_ID_tags_1) + /sizeof(asn_DEF_GlobalNgENB_ID_tags_1[0]), /* 1 */ + asn_DEF_GlobalNgENB_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_GlobalNgENB_ID_tags_1) + /sizeof(asn_DEF_GlobalNgENB_ID_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_GlobalNgENB_ID_1, + 2, /* Elements count */ + &asn_SPC_GlobalNgENB_ID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/GlobalenGNB-ID.c b/e2sm/lib/GlobalenGNB-ID.c index 1824a11..887b8a4 100644 --- a/e2sm/lib/GlobalenGNB-ID.c +++ b/e2sm/lib/GlobalenGNB-ID.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -11,20 +11,20 @@ asn_TYPE_member_t asn_MBR_GlobalenGNB_ID_1[] = { { ATF_NOFLAGS, 0, offsetof(struct GlobalenGNB_ID, pLMN_Identity), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_PLMN_Identity, + &asn_DEF_PLMNIdentity, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "pLMN-Identity" }, - { ATF_NOFLAGS, 0, offsetof(struct GlobalenGNB_ID, gNB_ID), + { ATF_NOFLAGS, 0, offsetof(struct GlobalenGNB_ID, en_gNB_ID), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), +1, /* EXPLICIT tag at current level */ - &asn_DEF_ENGNB_ID, + &asn_DEF_EN_GNB_ID, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "gNB-ID" + "en-gNB-ID" }, }; static const ber_tlv_tag_t asn_DEF_GlobalenGNB_ID_tags_1[] = { @@ -32,7 +32,7 @@ static const ber_tlv_tag_t asn_DEF_GlobalenGNB_ID_tags_1[] = { }; static const asn_TYPE_tag2member_t asn_MAP_GlobalenGNB_ID_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMN-Identity */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* gNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* en-gNB-ID */ }; asn_SEQUENCE_specifics_t asn_SPC_GlobalenGNB_ID_specs_1 = { sizeof(struct GlobalenGNB_ID), diff --git a/e2sm/lib/GlobalgNB-ID.c b/e2sm/lib/GlobalgNB-ID.c deleted file mode 100644 index 40d7462..0000000 --- a/e2sm/lib/GlobalgNB-ID.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "GlobalgNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalgNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalgNB_ID, plmn_id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PLMN_Identity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "plmn-id" - }, - { ATF_NOFLAGS, 0, offsetof(struct GlobalgNB_ID, gnb_id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_GNB_ID_Choice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "gnb-id" - }, -}; -static const ber_tlv_tag_t asn_DEF_GlobalgNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalgNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* plmn-id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* gnb-id */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalgNB_ID_specs_1 = { - sizeof(struct GlobalgNB_ID), - offsetof(struct GlobalgNB_ID, _asn_ctx), - asn_MAP_GlobalgNB_ID_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalgNB_ID = { - "GlobalgNB-ID", - "GlobalgNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalgNB_ID_tags_1, - sizeof(asn_DEF_GlobalgNB_ID_tags_1) - /sizeof(asn_DEF_GlobalgNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalgNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalgNB_ID_tags_1) - /sizeof(asn_DEF_GlobalgNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalgNB_ID_1, - 2, /* Elements count */ - &asn_SPC_GlobalgNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GlobalngeNB-ID.c b/e2sm/lib/GlobalngeNB-ID.c deleted file mode 100644 index 91873a1..0000000 --- a/e2sm/lib/GlobalngeNB-ID.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "GlobalngeNB-ID.h" - -asn_TYPE_member_t asn_MBR_GlobalngeNB_ID_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct GlobalngeNB_ID, plmn_id), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PLMN_Identity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "plmn-id" - }, - { ATF_NOFLAGS, 0, offsetof(struct GlobalngeNB_ID, enb_id), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_ENB_ID_Choice, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "enb-id" - }, -}; -static const ber_tlv_tag_t asn_DEF_GlobalngeNB_ID_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_GlobalngeNB_ID_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* plmn-id */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* enb-id */ -}; -asn_SEQUENCE_specifics_t asn_SPC_GlobalngeNB_ID_specs_1 = { - sizeof(struct GlobalngeNB_ID), - offsetof(struct GlobalngeNB_ID, _asn_ctx), - asn_MAP_GlobalngeNB_ID_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_GlobalngeNB_ID = { - "GlobalngeNB-ID", - "GlobalngeNB-ID", - &asn_OP_SEQUENCE, - asn_DEF_GlobalngeNB_ID_tags_1, - sizeof(asn_DEF_GlobalngeNB_ID_tags_1) - /sizeof(asn_DEF_GlobalngeNB_ID_tags_1[0]), /* 1 */ - asn_DEF_GlobalngeNB_ID_tags_1, /* Same as above */ - sizeof(asn_DEF_GlobalngeNB_ID_tags_1) - /sizeof(asn_DEF_GlobalngeNB_ID_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_GlobalngeNB_ID_1, - 2, /* Elements count */ - &asn_SPC_GlobalngeNB_ID_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/GroupID.c b/e2sm/lib/GroupID.c new file mode 100644 index 0000000..4fe3f18 --- /dev/null +++ b/e2sm/lib/GroupID.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "GroupID.h" + +static asn_oer_constraints_t asn_OER_type_GroupID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_GroupID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_GroupID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct GroupID, choice.fiveGC), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FiveQI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "fiveGC" + }, + { ATF_NOFLAGS, 0, offsetof(struct GroupID, choice.ePC), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_QCI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ePC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_GroupID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* fiveGC */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ePC */ +}; +static asn_CHOICE_specifics_t asn_SPC_GroupID_specs_1 = { + sizeof(struct GroupID), + offsetof(struct GroupID, _asn_ctx), + offsetof(struct GroupID, present), + sizeof(((struct GroupID *)0)->present), + asn_MAP_GroupID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_GroupID = { + "GroupID", + "GroupID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_GroupID_constr_1, &asn_PER_type_GroupID_constr_1, CHOICE_constraint }, + asn_MBR_GroupID_1, + 2, /* Elements count */ + &asn_SPC_GroupID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/IndexToRFSP.c b/e2sm/lib/IndexToRFSP.c new file mode 100644 index 0000000..cd7b378 --- /dev/null +++ b/e2sm/lib/IndexToRFSP.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "IndexToRFSP.h" + +int +IndexToRFSP_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 256)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_IndexToRFSP_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_IndexToRFSP_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 1, 256 } /* (1..256,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_IndexToRFSP_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_IndexToRFSP = { + "IndexToRFSP", + "IndexToRFSP", + &asn_OP_NativeInteger, + asn_DEF_IndexToRFSP_tags_1, + sizeof(asn_DEF_IndexToRFSP_tags_1) + /sizeof(asn_DEF_IndexToRFSP_tags_1[0]), /* 1 */ + asn_DEF_IndexToRFSP_tags_1, /* Same as above */ + sizeof(asn_DEF_IndexToRFSP_tags_1) + /sizeof(asn_DEF_IndexToRFSP_tags_1[0]), /* 1 */ + { &asn_OER_type_IndexToRFSP_constr_1, &asn_PER_type_IndexToRFSP_constr_1, IndexToRFSP_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/InsertIndication-RANParameter-Item.c b/e2sm/lib/InsertIndication-RANParameter-Item.c new file mode 100644 index 0000000..0577b21 --- /dev/null +++ b/e2sm/lib/InsertIndication-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InsertIndication-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_InsertIndication_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct InsertIndication_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct InsertIndication_RANParameter_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct InsertIndication_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_InsertIndication_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_InsertIndication_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_InsertIndication_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_InsertIndication_RANParameter_Item_specs_1 = { + sizeof(struct InsertIndication_RANParameter_Item), + offsetof(struct InsertIndication_RANParameter_Item, _asn_ctx), + asn_MAP_InsertIndication_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_InsertIndication_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_InsertIndication_RANParameter_Item = { + "InsertIndication-RANParameter-Item", + "InsertIndication-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_InsertIndication_RANParameter_Item_tags_1, + sizeof(asn_DEF_InsertIndication_RANParameter_Item_tags_1) + /sizeof(asn_DEF_InsertIndication_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_InsertIndication_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_InsertIndication_RANParameter_Item_tags_1) + /sizeof(asn_DEF_InsertIndication_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_InsertIndication_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_InsertIndication_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/Interface-MessageID.c b/e2sm/lib/Interface-MessageID.c new file mode 100644 index 0000000..6f78561 --- /dev/null +++ b/e2sm/lib/Interface-MessageID.c @@ -0,0 +1,113 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "Interface-MessageID.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_messageType_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_messageType_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_messageType_value2enum_3[] = { + { 0, 17, "initiatingMessage" }, + { 1, 17, "successfulOutcome" }, + { 2, 19, "unsuccessfulOutcome" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_messageType_enum2value_3[] = { + 0, /* initiatingMessage(0) */ + 1, /* successfulOutcome(1) */ + 2 /* unsuccessfulOutcome(2) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_messageType_specs_3 = { + asn_MAP_messageType_value2enum_3, /* "tag" => N; sorted by tag */ + asn_MAP_messageType_enum2value_3, /* N => "tag"; sorted by N */ + 3, /* Number of elements in the maps */ + 4, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_messageType_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_messageType_3 = { + "messageType", + "messageType", + &asn_OP_NativeEnumerated, + asn_DEF_messageType_tags_3, + sizeof(asn_DEF_messageType_tags_3) + /sizeof(asn_DEF_messageType_tags_3[0]) - 1, /* 1 */ + asn_DEF_messageType_tags_3, /* Same as above */ + sizeof(asn_DEF_messageType_tags_3) + /sizeof(asn_DEF_messageType_tags_3[0]), /* 2 */ + { &asn_OER_type_messageType_constr_3, &asn_PER_type_messageType_constr_3, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_messageType_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_Interface_MessageID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Interface_MessageID, interfaceProcedureID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "interfaceProcedureID" + }, + { ATF_NOFLAGS, 0, offsetof(struct Interface_MessageID, messageType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_messageType_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "messageType" + }, +}; +static const ber_tlv_tag_t asn_DEF_Interface_MessageID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Interface_MessageID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* interfaceProcedureID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* messageType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Interface_MessageID_specs_1 = { + sizeof(struct Interface_MessageID), + offsetof(struct Interface_MessageID, _asn_ctx), + asn_MAP_Interface_MessageID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Interface_MessageID = { + "Interface-MessageID", + "Interface-MessageID", + &asn_OP_SEQUENCE, + asn_DEF_Interface_MessageID_tags_1, + sizeof(asn_DEF_Interface_MessageID_tags_1) + /sizeof(asn_DEF_Interface_MessageID_tags_1[0]), /* 1 */ + asn_DEF_Interface_MessageID_tags_1, /* Same as above */ + sizeof(asn_DEF_Interface_MessageID_tags_1) + /sizeof(asn_DEF_Interface_MessageID_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Interface_MessageID_1, + 2, /* Elements count */ + &asn_SPC_Interface_MessageID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/InterfaceID-E1.c b/e2sm/lib/InterfaceID-E1.c new file mode 100644 index 0000000..3c6109f --- /dev/null +++ b/e2sm/lib/InterfaceID-E1.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InterfaceID-E1.h" + +asn_TYPE_member_t asn_MBR_InterfaceID_E1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_E1, globalGNB_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalGNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "globalGNB-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_E1, gNB_CU_UP_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_CU_UP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-UP-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_InterfaceID_E1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_InterfaceID_E1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* globalGNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* gNB-CU-UP-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_E1_specs_1 = { + sizeof(struct InterfaceID_E1), + offsetof(struct InterfaceID_E1, _asn_ctx), + asn_MAP_InterfaceID_E1_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_InterfaceID_E1 = { + "InterfaceID-E1", + "InterfaceID-E1", + &asn_OP_SEQUENCE, + asn_DEF_InterfaceID_E1_tags_1, + sizeof(asn_DEF_InterfaceID_E1_tags_1) + /sizeof(asn_DEF_InterfaceID_E1_tags_1[0]), /* 1 */ + asn_DEF_InterfaceID_E1_tags_1, /* Same as above */ + sizeof(asn_DEF_InterfaceID_E1_tags_1) + /sizeof(asn_DEF_InterfaceID_E1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_InterfaceID_E1_1, + 2, /* Elements count */ + &asn_SPC_InterfaceID_E1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/InterfaceID-F1.c b/e2sm/lib/InterfaceID-F1.c new file mode 100644 index 0000000..cd36650 --- /dev/null +++ b/e2sm/lib/InterfaceID-F1.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InterfaceID-F1.h" + +asn_TYPE_member_t asn_MBR_InterfaceID_F1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_F1, globalGNB_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalGNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "globalGNB-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_F1, gNB_DU_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_DU_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-DU-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_InterfaceID_F1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_InterfaceID_F1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* globalGNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* gNB-DU-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_F1_specs_1 = { + sizeof(struct InterfaceID_F1), + offsetof(struct InterfaceID_F1, _asn_ctx), + asn_MAP_InterfaceID_F1_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_InterfaceID_F1 = { + "InterfaceID-F1", + "InterfaceID-F1", + &asn_OP_SEQUENCE, + asn_DEF_InterfaceID_F1_tags_1, + sizeof(asn_DEF_InterfaceID_F1_tags_1) + /sizeof(asn_DEF_InterfaceID_F1_tags_1[0]), /* 1 */ + asn_DEF_InterfaceID_F1_tags_1, /* Same as above */ + sizeof(asn_DEF_InterfaceID_F1_tags_1) + /sizeof(asn_DEF_InterfaceID_F1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_InterfaceID_F1_1, + 2, /* Elements count */ + &asn_SPC_InterfaceID_F1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/InterfaceID-NG.c b/e2sm/lib/InterfaceID-NG.c new file mode 100644 index 0000000..a1cc25c --- /dev/null +++ b/e2sm/lib/InterfaceID-NG.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InterfaceID-NG.h" + +asn_TYPE_member_t asn_MBR_InterfaceID_NG_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_NG, guami), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GUAMI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "guami" + }, +}; +static const ber_tlv_tag_t asn_DEF_InterfaceID_NG_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_InterfaceID_NG_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* guami */ +}; +asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_NG_specs_1 = { + sizeof(struct InterfaceID_NG), + offsetof(struct InterfaceID_NG, _asn_ctx), + asn_MAP_InterfaceID_NG_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_InterfaceID_NG = { + "InterfaceID-NG", + "InterfaceID-NG", + &asn_OP_SEQUENCE, + asn_DEF_InterfaceID_NG_tags_1, + sizeof(asn_DEF_InterfaceID_NG_tags_1) + /sizeof(asn_DEF_InterfaceID_NG_tags_1[0]), /* 1 */ + asn_DEF_InterfaceID_NG_tags_1, /* Same as above */ + sizeof(asn_DEF_InterfaceID_NG_tags_1) + /sizeof(asn_DEF_InterfaceID_NG_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_InterfaceID_NG_1, + 1, /* Elements count */ + &asn_SPC_InterfaceID_NG_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/InterfaceID-S1.c b/e2sm/lib/InterfaceID-S1.c new file mode 100644 index 0000000..2710359 --- /dev/null +++ b/e2sm/lib/InterfaceID-S1.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InterfaceID-S1.h" + +asn_TYPE_member_t asn_MBR_InterfaceID_S1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_S1, gUMMEI), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GUMMEI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gUMMEI" + }, +}; +static const ber_tlv_tag_t asn_DEF_InterfaceID_S1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_InterfaceID_S1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gUMMEI */ +}; +asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_S1_specs_1 = { + sizeof(struct InterfaceID_S1), + offsetof(struct InterfaceID_S1, _asn_ctx), + asn_MAP_InterfaceID_S1_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_InterfaceID_S1 = { + "InterfaceID-S1", + "InterfaceID-S1", + &asn_OP_SEQUENCE, + asn_DEF_InterfaceID_S1_tags_1, + sizeof(asn_DEF_InterfaceID_S1_tags_1) + /sizeof(asn_DEF_InterfaceID_S1_tags_1[0]), /* 1 */ + asn_DEF_InterfaceID_S1_tags_1, /* Same as above */ + sizeof(asn_DEF_InterfaceID_S1_tags_1) + /sizeof(asn_DEF_InterfaceID_S1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_InterfaceID_S1_1, + 1, /* Elements count */ + &asn_SPC_InterfaceID_S1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/InterfaceID-W1.c b/e2sm/lib/InterfaceID-W1.c new file mode 100644 index 0000000..4bbd6a6 --- /dev/null +++ b/e2sm/lib/InterfaceID-W1.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InterfaceID-W1.h" + +asn_TYPE_member_t asn_MBR_InterfaceID_W1_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_W1, global_ng_eNB_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalNgENB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "global-ng-eNB-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_W1, ng_eNB_DU_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NGENB_DU_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ng-eNB-DU-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_InterfaceID_W1_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_InterfaceID_W1_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-ng-eNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ng-eNB-DU-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_W1_specs_1 = { + sizeof(struct InterfaceID_W1), + offsetof(struct InterfaceID_W1, _asn_ctx), + asn_MAP_InterfaceID_W1_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_InterfaceID_W1 = { + "InterfaceID-W1", + "InterfaceID-W1", + &asn_OP_SEQUENCE, + asn_DEF_InterfaceID_W1_tags_1, + sizeof(asn_DEF_InterfaceID_W1_tags_1) + /sizeof(asn_DEF_InterfaceID_W1_tags_1[0]), /* 1 */ + asn_DEF_InterfaceID_W1_tags_1, /* Same as above */ + sizeof(asn_DEF_InterfaceID_W1_tags_1) + /sizeof(asn_DEF_InterfaceID_W1_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_InterfaceID_W1_1, + 2, /* Elements count */ + &asn_SPC_InterfaceID_W1_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/InterfaceID-X2.c b/e2sm/lib/InterfaceID-X2.c new file mode 100644 index 0000000..f410123 --- /dev/null +++ b/e2sm/lib/InterfaceID-X2.c @@ -0,0 +1,109 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InterfaceID-X2.h" + +#include "GlobalENB-ID.h" +#include "GlobalenGNB-ID.h" +static asn_oer_constraints_t asn_OER_type_nodeType_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_nodeType_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_nodeType_2[] = { + { ATF_POINTER, 0, offsetof(struct InterfaceID_X2__nodeType, choice.global_eNB_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalENB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "global-eNB-ID" + }, + { ATF_POINTER, 0, offsetof(struct InterfaceID_X2__nodeType, choice.global_en_gNB_ID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalenGNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "global-en-gNB-ID" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_nodeType_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-eNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* global-en-gNB-ID */ +}; +static asn_CHOICE_specifics_t asn_SPC_nodeType_specs_2 = { + sizeof(struct InterfaceID_X2__nodeType), + offsetof(struct InterfaceID_X2__nodeType, _asn_ctx), + offsetof(struct InterfaceID_X2__nodeType, present), + sizeof(((struct InterfaceID_X2__nodeType *)0)->present), + asn_MAP_nodeType_tag2el_2, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_nodeType_2 = { + "nodeType", + "nodeType", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_nodeType_constr_2, &asn_PER_type_nodeType_constr_2, CHOICE_constraint }, + asn_MBR_nodeType_2, + 2, /* Elements count */ + &asn_SPC_nodeType_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_InterfaceID_X2_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_X2, nodeType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_nodeType_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nodeType" + }, +}; +static const ber_tlv_tag_t asn_DEF_InterfaceID_X2_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_InterfaceID_X2_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* nodeType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_X2_specs_1 = { + sizeof(struct InterfaceID_X2), + offsetof(struct InterfaceID_X2, _asn_ctx), + asn_MAP_InterfaceID_X2_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_InterfaceID_X2 = { + "InterfaceID-X2", + "InterfaceID-X2", + &asn_OP_SEQUENCE, + asn_DEF_InterfaceID_X2_tags_1, + sizeof(asn_DEF_InterfaceID_X2_tags_1) + /sizeof(asn_DEF_InterfaceID_X2_tags_1[0]), /* 1 */ + asn_DEF_InterfaceID_X2_tags_1, /* Same as above */ + sizeof(asn_DEF_InterfaceID_X2_tags_1) + /sizeof(asn_DEF_InterfaceID_X2_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_InterfaceID_X2_1, + 1, /* Elements count */ + &asn_SPC_InterfaceID_X2_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/InterfaceID-Xn.c b/e2sm/lib/InterfaceID-Xn.c new file mode 100644 index 0000000..de8e414 --- /dev/null +++ b/e2sm/lib/InterfaceID-Xn.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InterfaceID-Xn.h" + +asn_TYPE_member_t asn_MBR_InterfaceID_Xn_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct InterfaceID_Xn, global_NG_RAN_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_GlobalNGRANNodeID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "global-NG-RAN-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_InterfaceID_Xn_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_InterfaceID_Xn_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-NG-RAN-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_InterfaceID_Xn_specs_1 = { + sizeof(struct InterfaceID_Xn), + offsetof(struct InterfaceID_Xn, _asn_ctx), + asn_MAP_InterfaceID_Xn_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_InterfaceID_Xn = { + "InterfaceID-Xn", + "InterfaceID-Xn", + &asn_OP_SEQUENCE, + asn_DEF_InterfaceID_Xn_tags_1, + sizeof(asn_DEF_InterfaceID_Xn_tags_1) + /sizeof(asn_DEF_InterfaceID_Xn_tags_1[0]), /* 1 */ + asn_DEF_InterfaceID_Xn_tags_1, /* Same as above */ + sizeof(asn_DEF_InterfaceID_Xn_tags_1) + /sizeof(asn_DEF_InterfaceID_Xn_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_InterfaceID_Xn_1, + 1, /* Elements count */ + &asn_SPC_InterfaceID_Xn_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/InterfaceIdentifier.c b/e2sm/lib/InterfaceIdentifier.c new file mode 100644 index 0000000..b04564e --- /dev/null +++ b/e2sm/lib/InterfaceIdentifier.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InterfaceIdentifier.h" + +#include "InterfaceID-NG.h" +#include "InterfaceID-Xn.h" +#include "InterfaceID-F1.h" +#include "InterfaceID-E1.h" +#include "InterfaceID-S1.h" +#include "InterfaceID-X2.h" +#include "InterfaceID-W1.h" +static asn_oer_constraints_t asn_OER_type_InterfaceIdentifier_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_InterfaceIdentifier_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_InterfaceIdentifier_1[] = { + { ATF_POINTER, 0, offsetof(struct InterfaceIdentifier, choice.nG), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_InterfaceID_NG, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nG" + }, + { ATF_POINTER, 0, offsetof(struct InterfaceIdentifier, choice.xN), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_InterfaceID_Xn, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "xN" + }, + { ATF_POINTER, 0, offsetof(struct InterfaceIdentifier, choice.f1), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_InterfaceID_F1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "f1" + }, + { ATF_POINTER, 0, offsetof(struct InterfaceIdentifier, choice.e1), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_InterfaceID_E1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "e1" + }, + { ATF_POINTER, 0, offsetof(struct InterfaceIdentifier, choice.s1), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_InterfaceID_S1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "s1" + }, + { ATF_POINTER, 0, offsetof(struct InterfaceIdentifier, choice.x2), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_InterfaceID_X2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x2" + }, + { ATF_POINTER, 0, offsetof(struct InterfaceIdentifier, choice.w1), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_InterfaceID_W1, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "w1" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_InterfaceIdentifier_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nG */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* xN */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* f1 */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* e1 */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* s1 */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* x2 */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* w1 */ +}; +asn_CHOICE_specifics_t asn_SPC_InterfaceIdentifier_specs_1 = { + sizeof(struct InterfaceIdentifier), + offsetof(struct InterfaceIdentifier, _asn_ctx), + offsetof(struct InterfaceIdentifier, present), + sizeof(((struct InterfaceIdentifier *)0)->present), + asn_MAP_InterfaceIdentifier_tag2el_1, + 7, /* Count of tags in the map */ + 0, 0, + 7 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_InterfaceIdentifier = { + "InterfaceIdentifier", + "InterfaceIdentifier", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_InterfaceIdentifier_constr_1, &asn_PER_type_InterfaceIdentifier_constr_1, CHOICE_constraint }, + asn_MBR_InterfaceIdentifier_1, + 7, /* Elements count */ + &asn_SPC_InterfaceIdentifier_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/InterfaceType.c b/e2sm/lib/InterfaceType.c new file mode 100644 index 0000000..359cad7 --- /dev/null +++ b/e2sm/lib/InterfaceType.c @@ -0,0 +1,68 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "InterfaceType.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_InterfaceType_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_InterfaceType_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_InterfaceType_value2enum_1[] = { + { 0, 2, "nG" }, + { 1, 2, "xn" }, + { 2, 2, "f1" }, + { 3, 2, "e1" }, + { 4, 2, "s1" }, + { 5, 2, "x2" }, + { 6, 2, "w1" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_InterfaceType_enum2value_1[] = { + 3, /* e1(3) */ + 2, /* f1(2) */ + 0, /* nG(0) */ + 4, /* s1(4) */ + 6, /* w1(6) */ + 5, /* x2(5) */ + 1 /* xn(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_InterfaceType_specs_1 = { + asn_MAP_InterfaceType_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_InterfaceType_enum2value_1, /* N => "tag"; sorted by N */ + 7, /* Number of elements in the maps */ + 8, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_InterfaceType_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_InterfaceType = { + "InterfaceType", + "InterfaceType", + &asn_OP_NativeEnumerated, + asn_DEF_InterfaceType_tags_1, + sizeof(asn_DEF_InterfaceType_tags_1) + /sizeof(asn_DEF_InterfaceType_tags_1[0]), /* 1 */ + asn_DEF_InterfaceType_tags_1, /* Same as above */ + sizeof(asn_DEF_InterfaceType_tags_1) + /sizeof(asn_DEF_InterfaceType_tags_1[0]), /* 1 */ + { &asn_OER_type_InterfaceType_constr_1, &asn_PER_type_InterfaceType_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_InterfaceType_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/L2Parameters-RANParameter-Item.c b/e2sm/lib/L2Parameters-RANParameter-Item.c new file mode 100644 index 0000000..929135d --- /dev/null +++ b/e2sm/lib/L2Parameters-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "L2Parameters-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_L2Parameters_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct L2Parameters_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct L2Parameters_RANParameter_Item, ranParameter_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Name" + }, + { ATF_POINTER, 1, offsetof(struct L2Parameters_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_L2Parameters_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_L2Parameters_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_L2Parameters_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_L2Parameters_RANParameter_Item_specs_1 = { + sizeof(struct L2Parameters_RANParameter_Item), + offsetof(struct L2Parameters_RANParameter_Item, _asn_ctx), + asn_MAP_L2Parameters_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_L2Parameters_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_L2Parameters_RANParameter_Item = { + "L2Parameters-RANParameter-Item", + "L2Parameters-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_L2Parameters_RANParameter_Item_tags_1, + sizeof(asn_DEF_L2Parameters_RANParameter_Item_tags_1) + /sizeof(asn_DEF_L2Parameters_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_L2Parameters_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_L2Parameters_RANParameter_Item_tags_1) + /sizeof(asn_DEF_L2Parameters_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_L2Parameters_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_L2Parameters_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/L3-RRC-Measurements.c b/e2sm/lib/L3-RRC-Measurements.c deleted file mode 100644 index df7009d..0000000 --- a/e2sm/lib/L3-RRC-Measurements.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "L3-RRC-Measurements.h" - -#include "ServingCellMeasurements.h" -#include "MeasResultNeighCells.h" -asn_TYPE_member_t asn_MBR_L3_RRC_Measurements_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct L3_RRC_Measurements, rrcEvent), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RRCEvent, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rrcEvent" - }, - { ATF_POINTER, 2, offsetof(struct L3_RRC_Measurements, servingCellMeasurements), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_ServingCellMeasurements, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "servingCellMeasurements" - }, - { ATF_POINTER, 1, offsetof(struct L3_RRC_Measurements, measResultNeighCells), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_MeasResultNeighCells, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measResultNeighCells" - }, -}; -static const int asn_MAP_L3_RRC_Measurements_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_L3_RRC_Measurements_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_L3_RRC_Measurements_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rrcEvent */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* servingCellMeasurements */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* measResultNeighCells */ -}; -asn_SEQUENCE_specifics_t asn_SPC_L3_RRC_Measurements_specs_1 = { - sizeof(struct L3_RRC_Measurements), - offsetof(struct L3_RRC_Measurements, _asn_ctx), - asn_MAP_L3_RRC_Measurements_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_L3_RRC_Measurements_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_L3_RRC_Measurements = { - "L3-RRC-Measurements", - "L3-RRC-Measurements", - &asn_OP_SEQUENCE, - asn_DEF_L3_RRC_Measurements_tags_1, - sizeof(asn_DEF_L3_RRC_Measurements_tags_1) - /sizeof(asn_DEF_L3_RRC_Measurements_tags_1[0]), /* 1 */ - asn_DEF_L3_RRC_Measurements_tags_1, /* Same as above */ - sizeof(asn_DEF_L3_RRC_Measurements_tags_1) - /sizeof(asn_DEF_L3_RRC_Measurements_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_L3_RRC_Measurements_1, - 3, /* Elements count */ - &asn_SPC_L3_RRC_Measurements_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/LogicalOR.c b/e2sm/lib/LogicalOR.c new file mode 100644 index 0000000..4201a8e --- /dev/null +++ b/e2sm/lib/LogicalOR.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "LogicalOR.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_LogicalOR_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_LogicalOR_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_LogicalOR_value2enum_1[] = { + { 0, 4, "true" }, + { 1, 5, "false" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_LogicalOR_enum2value_1[] = { + 1, /* false(1) */ + 0 /* true(0) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_LogicalOR_specs_1 = { + asn_MAP_LogicalOR_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_LogicalOR_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_LogicalOR_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_LogicalOR = { + "LogicalOR", + "LogicalOR", + &asn_OP_NativeEnumerated, + asn_DEF_LogicalOR_tags_1, + sizeof(asn_DEF_LogicalOR_tags_1) + /sizeof(asn_DEF_LogicalOR_tags_1[0]), /* 1 */ + asn_DEF_LogicalOR_tags_1, /* Same as above */ + sizeof(asn_DEF_LogicalOR_tags_1) + /sizeof(asn_DEF_LogicalOR_tags_1[0]), /* 1 */ + { &asn_OER_type_LogicalOR_constr_1, &asn_PER_type_LogicalOR_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_LogicalOR_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/MME-Code.c b/e2sm/lib/MME-Code.c new file mode 100644 index 0000000..193d640 --- /dev/null +++ b/e2sm/lib/MME-Code.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "MME-Code.h" + +int +MME_Code_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MME_Code_constr_1 CC_NOTUSED = { + { 0, 0 }, + 1 /* (SIZE(1..1)) */}; +asn_per_constraints_t asn_PER_type_MME_Code_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MME_Code_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MME_Code = { + "MME-Code", + "MME-Code", + &asn_OP_OCTET_STRING, + asn_DEF_MME_Code_tags_1, + sizeof(asn_DEF_MME_Code_tags_1) + /sizeof(asn_DEF_MME_Code_tags_1[0]), /* 1 */ + asn_DEF_MME_Code_tags_1, /* Same as above */ + sizeof(asn_DEF_MME_Code_tags_1) + /sizeof(asn_DEF_MME_Code_tags_1[0]), /* 1 */ + { &asn_OER_type_MME_Code_constr_1, &asn_PER_type_MME_Code_constr_1, MME_Code_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/MME-Group-ID.c b/e2sm/lib/MME-Group-ID.c new file mode 100644 index 0000000..cc5af21 --- /dev/null +++ b/e2sm/lib/MME-Group-ID.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "MME-Group-ID.h" + +int +MME_Group_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 2)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MME_Group_ID_constr_1 CC_NOTUSED = { + { 0, 0 }, + 2 /* (SIZE(2..2)) */}; +asn_per_constraints_t asn_PER_type_MME_Group_ID_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 2, 2 } /* (SIZE(2..2)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_MME_Group_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MME_Group_ID = { + "MME-Group-ID", + "MME-Group-ID", + &asn_OP_OCTET_STRING, + asn_DEF_MME_Group_ID_tags_1, + sizeof(asn_DEF_MME_Group_ID_tags_1) + /sizeof(asn_DEF_MME_Group_ID_tags_1[0]), /* 1 */ + asn_DEF_MME_Group_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_MME_Group_ID_tags_1) + /sizeof(asn_DEF_MME_Group_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_MME_Group_ID_constr_1, &asn_PER_type_MME_Group_ID_constr_1, MME_Group_ID_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/MME-UE-S1AP-ID.c b/e2sm/lib/MME-UE-S1AP-ID.c new file mode 100644 index 0000000..5e89d7f --- /dev/null +++ b/e2sm/lib/MME-UE-S1AP-ID.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "MME-UE-S1AP-ID.h" + +int +MME_UE_S1AP_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + /* Constraint check succeeded */ + return 0; +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_MME_UE_S1AP_ID_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..4294967295) */, + -1}; +asn_per_constraints_t asn_PER_type_MME_UE_S1AP_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +const asn_INTEGER_specifics_t asn_SPC_MME_UE_S1AP_ID_specs_1 = { + 0, 0, 0, 0, 0, + 0, /* Native long size */ + 1 /* Unsigned representation */ +}; +static const ber_tlv_tag_t asn_DEF_MME_UE_S1AP_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_MME_UE_S1AP_ID = { + "MME-UE-S1AP-ID", + "MME-UE-S1AP-ID", + &asn_OP_NativeInteger, + asn_DEF_MME_UE_S1AP_ID_tags_1, + sizeof(asn_DEF_MME_UE_S1AP_ID_tags_1) + /sizeof(asn_DEF_MME_UE_S1AP_ID_tags_1[0]), /* 1 */ + asn_DEF_MME_UE_S1AP_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_MME_UE_S1AP_ID_tags_1) + /sizeof(asn_DEF_MME_UE_S1AP_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_MME_UE_S1AP_ID_constr_1, &asn_PER_type_MME_UE_S1AP_ID_constr_1, MME_UE_S1AP_ID_constraint }, + 0, 0, /* No members */ + &asn_SPC_MME_UE_S1AP_ID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/Makefile.am.libasncodec b/e2sm/lib/Makefile.am.libasncodec new file mode 100644 index 0000000..dca4816 --- /dev/null +++ b/e2sm/lib/Makefile.am.libasncodec @@ -0,0 +1,544 @@ +ASN_MODULE_SRCS= \ + ./CGI.c \ + ./CoreCPID.c \ + ./InterfaceIdentifier.c \ + ./InterfaceID-NG.c \ + ./InterfaceID-Xn.c \ + ./InterfaceID-F1.c \ + ./InterfaceID-E1.c \ + ./InterfaceID-S1.c \ + ./InterfaceID-X2.c \ + ./InterfaceID-W1.c \ + ./Interface-MessageID.c \ + ./InterfaceType.c \ + ./GroupID.c \ + ./QoSID.c \ + ./RANfunction-Name.c \ + ./RIC-Format-Type.c \ + ./RIC-Style-Type.c \ + ./RIC-Style-Name.c \ + ./RRC-MessageID.c \ + ./RRCclass-LTE.c \ + ./RRCclass-NR.c \ + ./ServingCell-ARFCN.c \ + ./ServingCell-PCI.c \ + ./UEID.c \ + ./UEID-GNB.c \ + ./UEID-GNB-CU-CP-E1AP-ID-List.c \ + ./UEID-GNB-CU-CP-E1AP-ID-Item.c \ + ./UEID-GNB-CU-F1AP-ID-List.c \ + ./UEID-GNB-CU-CP-F1AP-ID-Item.c \ + ./UEID-GNB-DU.c \ + ./UEID-GNB-CU-UP.c \ + ./UEID-NG-ENB.c \ + ./UEID-NG-ENB-DU.c \ + ./UEID-EN-GNB.c \ + ./UEID-ENB.c \ + ./ENB-ID.c \ + ./GlobalENB-ID.c \ + ./GUMMEI.c \ + ./MME-Group-ID.c \ + ./MME-Code.c \ + ./MME-UE-S1AP-ID.c \ + ./QCI.c \ + ./SubscriberProfileIDforRFP.c \ + ./EN-GNB-ID.c \ + ./ENB-UE-X2AP-ID.c \ + ./ENB-UE-X2AP-ID-Extension.c \ + ./E-UTRA-ARFCN.c \ + ./E-UTRA-PCI.c \ + ./E-UTRA-TAC.c \ + ./GlobalenGNB-ID.c \ + ./NGENB-CU-UE-W1AP-ID.c \ + ./NGENB-DU-ID.c \ + ./AMFPointer.c \ + ./AMFRegionID.c \ + ./AMFSetID.c \ + ./AMF-UE-NGAP-ID.c \ + ./EUTRACellIdentity.c \ + ./EUTRA-CGI.c \ + ./FiveQI.c \ + ./GlobalGNB-ID.c \ + ./GlobalNgENB-ID.c \ + ./GNB-ID.c \ + ./GUAMI.c \ + ./IndexToRFSP.c \ + ./NgENB-ID.c \ + ./NRCellIdentity.c \ + ./NR-CGI.c \ + ./PLMNIdentity.c \ + ./QosFlowIdentifier.c \ + ./SD.c \ + ./S-NSSAI.c \ + ./SST.c \ + ./NG-RANnodeUEXnAPID.c \ + ./GlobalNGRANNodeID.c \ + ./GNB-CU-CP-UE-E1AP-ID.c \ + ./GNB-CU-UP-ID.c \ + ./FiveGS-TAC.c \ + ./FreqBandNrItem.c \ + ./GNB-CU-UE-F1AP-ID.c \ + ./GNB-DU-ID.c \ + ./NR-PCI.c \ + ./NR-ARFCN.c \ + ./NRFrequencyBand-List.c \ + ./NRFrequencyBandItem.c \ + ./NRFrequencyInfo.c \ + ./NRFrequencyShift7p5khz.c \ + ./RANUEID.c \ + ./SupportedSULBandList.c \ + ./SupportedSULFreqBandItem.c \ + ./LogicalOR.c \ + ./NeighborCell-List.c \ + ./NeighborCell-Item.c \ + ./NeighborCell-Item-Choice-NR.c \ + ./NeighborCell-Item-Choice-E-UTRA.c \ + ./NeighborRelation-Info.c \ + ./RRC-State.c \ + ./EventTrigger-Cell-Info.c \ + ./EventTrigger-Cell-Info-Item.c \ + ./EventTrigger-Cell-Info-Item-Choice-Individual.c \ + ./EventTrigger-Cell-Info-Item-Choice-Group.c \ + ./EventTrigger-UE-Info.c \ + ./EventTrigger-UE-Info-Item.c \ + ./EventTrigger-UE-Info-Item-Choice-Individual.c \ + ./EventTrigger-UE-Info-Item-Choice-Group.c \ + ./EventTrigger-UEevent-Info.c \ + ./EventTrigger-UEevent-Info-Item.c \ + ./RANParameter-ID.c \ + ./RANParameter-Name.c \ + ./RANParameter-Definition.c \ + ./RANParameter-Definition-Choice.c \ + ./RANParameter-Definition-Choice-LIST.c \ + ./RANParameter-Definition-Choice-LIST-Item.c \ + ./RANParameter-Definition-Choice-STRUCTURE.c \ + ./RANParameter-Definition-Choice-STRUCTURE-Item.c \ + ./RANParameter-Value.c \ + ./RANParameter-ValueType.c \ + ./RANParameter-ValueType-Choice-ElementTrue.c \ + ./RANParameter-ValueType-Choice-ElementFalse.c \ + ./RANParameter-ValueType-Choice-Structure.c \ + ./RANParameter-ValueType-Choice-List.c \ + ./RANParameter-STRUCTURE.c \ + ./RANParameter-STRUCTURE-Item.c \ + ./RANParameter-LIST.c \ + ./RANParameter-Testing.c \ + ./RANParameter-TestingCondition.c \ + ./RANParameter-Testing-Item.c \ + ./RANParameter-Testing-Item-Choice-List.c \ + ./RANParameter-Testing-Item-Choice-Structure.c \ + ./RANParameter-Testing-Item-Choice-ElementTrue.c \ + ./RANParameter-Testing-Item-Choice-ElementFalse.c \ + ./RANParameter-Testing-LIST.c \ + ./RANParameter-Testing-STRUCTURE.c \ + ./RAN-CallProcess-ID.c \ + ./RIC-CallProcessType-ID.c \ + ./RIC-CallProcessType-Name.c \ + ./RIC-CallProcessBreakpoint-ID.c \ + ./RIC-CallProcessBreakpoint-Name.c \ + ./RIC-ControlAction-ID.c \ + ./RIC-ControlAction-Name.c \ + ./RIC-EventTriggerCondition-ID.c \ + ./RIC-EventTrigger-UE-ID.c \ + ./RIC-EventTrigger-UEevent-ID.c \ + ./RIC-EventTrigger-Cell-ID.c \ + ./RIC-InsertIndication-ID.c \ + ./RIC-InsertIndication-Name.c \ + ./RIC-PolicyAction.c \ + ./RIC-PolicyAction-RANParameter-Item.c \ + ./E2SM-RC-EventTrigger.c \ + ./E2SM-RC-EventTrigger-Format1.c \ + ./E2SM-RC-EventTrigger-Format1-Item.c \ + ./MessageType-Choice.c \ + ./MessageType-Choice-NI.c \ + ./MessageType-Choice-RRC.c \ + ./E2SM-RC-EventTrigger-Format2.c \ + ./E2SM-RC-EventTrigger-Format3.c \ + ./E2SM-RC-EventTrigger-Format3-Item.c \ + ./E2SM-RC-EventTrigger-Format4.c \ + ./E2SM-RC-EventTrigger-Format4-Item.c \ + ./TriggerType-Choice.c \ + ./TriggerType-Choice-RRCstate.c \ + ./TriggerType-Choice-RRCstate-Item.c \ + ./TriggerType-Choice-UEID.c \ + ./TriggerType-Choice-L2state.c \ + ./E2SM-RC-EventTrigger-Format5.c \ + ./E2SM-RC-ActionDefinition.c \ + ./E2SM-RC-ActionDefinition-Format1.c \ + ./E2SM-RC-ActionDefinition-Format1-Item.c \ + ./E2SM-RC-ActionDefinition-Format2.c \ + ./E2SM-RC-ActionDefinition-Format2-Item.c \ + ./E2SM-RC-ActionDefinition-Format3.c \ + ./E2SM-RC-ActionDefinition-Format3-Item.c \ + ./E2SM-RC-IndicationHeader.c \ + ./E2SM-RC-IndicationHeader-Format1.c \ + ./E2SM-RC-IndicationHeader-Format2.c \ + ./E2SM-RC-IndicationMessage.c \ + ./E2SM-RC-IndicationMessage-Format1.c \ + ./E2SM-RC-IndicationMessage-Format1-Item.c \ + ./E2SM-RC-IndicationMessage-Format2.c \ + ./E2SM-RC-IndicationMessage-Format2-Item.c \ + ./E2SM-RC-IndicationMessage-Format2-RANParameter-Item.c \ + ./E2SM-RC-IndicationMessage-Format3.c \ + ./E2SM-RC-IndicationMessage-Format3-Item.c \ + ./E2SM-RC-IndicationMessage-Format4.c \ + ./E2SM-RC-IndicationMessage-Format4-ItemUE.c \ + ./E2SM-RC-IndicationMessage-Format4-ItemCell.c \ + ./E2SM-RC-IndicationMessage-Format5.c \ + ./E2SM-RC-IndicationMessage-Format5-Item.c \ + ./E2SM-RC-CallProcessID.c \ + ./E2SM-RC-CallProcessID-Format1.c \ + ./E2SM-RC-ControlHeader.c \ + ./E2SM-RC-ControlHeader-Format1.c \ + ./E2SM-RC-ControlMessage.c \ + ./E2SM-RC-ControlMessage-Format1.c \ + ./E2SM-RC-ControlMessage-Format1-Item.c \ + ./E2SM-RC-ControlOutcome.c \ + ./E2SM-RC-ControlOutcome-Format1.c \ + ./E2SM-RC-ControlOutcome-Format1-Item.c \ + ./E2SM-RC-RANFunctionDefinition.c \ + ./RANFunctionDefinition-EventTrigger.c \ + ./RANFunctionDefinition-EventTrigger-Style-Item.c \ + ./L2Parameters-RANParameter-Item.c \ + ./UEIdentification-RANParameter-Item.c \ + ./CellIdentification-RANParameter-Item.c \ + ./RANFunctionDefinition-EventTrigger-CallProcess-Item.c \ + ./RANFunctionDefinition-EventTrigger-Breakpoint-Item.c \ + ./CallProcessBreakpoint-RANParameter-Item.c \ + ./RANFunctionDefinition-Report.c \ + ./RANFunctionDefinition-Report-Item.c \ + ./Report-RANParameter-Item.c \ + ./RANFunctionDefinition-Insert.c \ + ./RANFunctionDefinition-Insert-Item.c \ + ./RANFunctionDefinition-Insert-Indication-Item.c \ + ./InsertIndication-RANParameter-Item.c \ + ./RANFunctionDefinition-Control.c \ + ./RANFunctionDefinition-Control-Item.c \ + ./ControlOutcome-RANParameter-Item.c \ + ./RANFunctionDefinition-Control-Action-Item.c \ + ./ControlAction-RANParameter-Item.c \ + ./RANFunctionDefinition-Policy.c \ + ./RANFunctionDefinition-Policy-Item.c \ + ./RANFunctionDefinition-Policy-Action-Item.c \ + ./PolicyAction-RANParameter-Item.c \ + ./PolicyCondition-RANParameter-Item.c + +ASN_MODULE_HDRS= \ + ./CGI.h \ + ./CoreCPID.h \ + ./InterfaceIdentifier.h \ + ./InterfaceID-NG.h \ + ./InterfaceID-Xn.h \ + ./InterfaceID-F1.h \ + ./InterfaceID-E1.h \ + ./InterfaceID-S1.h \ + ./InterfaceID-X2.h \ + ./InterfaceID-W1.h \ + ./Interface-MessageID.h \ + ./InterfaceType.h \ + ./GroupID.h \ + ./QoSID.h \ + ./RANfunction-Name.h \ + ./RIC-Format-Type.h \ + ./RIC-Style-Type.h \ + ./RIC-Style-Name.h \ + ./RRC-MessageID.h \ + ./RRCclass-LTE.h \ + ./RRCclass-NR.h \ + ./ServingCell-ARFCN.h \ + ./ServingCell-PCI.h \ + ./UEID.h \ + ./UEID-GNB.h \ + ./UEID-GNB-CU-CP-E1AP-ID-List.h \ + ./UEID-GNB-CU-CP-E1AP-ID-Item.h \ + ./UEID-GNB-CU-F1AP-ID-List.h \ + ./UEID-GNB-CU-CP-F1AP-ID-Item.h \ + ./UEID-GNB-DU.h \ + ./UEID-GNB-CU-UP.h \ + ./UEID-NG-ENB.h \ + ./UEID-NG-ENB-DU.h \ + ./UEID-EN-GNB.h \ + ./UEID-ENB.h \ + ./ENB-ID.h \ + ./GlobalENB-ID.h \ + ./GUMMEI.h \ + ./MME-Group-ID.h \ + ./MME-Code.h \ + ./MME-UE-S1AP-ID.h \ + ./QCI.h \ + ./SubscriberProfileIDforRFP.h \ + ./EN-GNB-ID.h \ + ./ENB-UE-X2AP-ID.h \ + ./ENB-UE-X2AP-ID-Extension.h \ + ./E-UTRA-ARFCN.h \ + ./E-UTRA-PCI.h \ + ./E-UTRA-TAC.h \ + ./GlobalenGNB-ID.h \ + ./NGENB-CU-UE-W1AP-ID.h \ + ./NGENB-DU-ID.h \ + ./AMFPointer.h \ + ./AMFRegionID.h \ + ./AMFSetID.h \ + ./AMF-UE-NGAP-ID.h \ + ./EUTRACellIdentity.h \ + ./EUTRA-CGI.h \ + ./FiveQI.h \ + ./GlobalGNB-ID.h \ + ./GlobalNgENB-ID.h \ + ./GNB-ID.h \ + ./GUAMI.h \ + ./IndexToRFSP.h \ + ./NgENB-ID.h \ + ./NRCellIdentity.h \ + ./NR-CGI.h \ + ./PLMNIdentity.h \ + ./QosFlowIdentifier.h \ + ./SD.h \ + ./S-NSSAI.h \ + ./SST.h \ + ./NG-RANnodeUEXnAPID.h \ + ./GlobalNGRANNodeID.h \ + ./GNB-CU-CP-UE-E1AP-ID.h \ + ./GNB-CU-UP-ID.h \ + ./FiveGS-TAC.h \ + ./FreqBandNrItem.h \ + ./GNB-CU-UE-F1AP-ID.h \ + ./GNB-DU-ID.h \ + ./NR-PCI.h \ + ./NR-ARFCN.h \ + ./NRFrequencyBand-List.h \ + ./NRFrequencyBandItem.h \ + ./NRFrequencyInfo.h \ + ./NRFrequencyShift7p5khz.h \ + ./RANUEID.h \ + ./SupportedSULBandList.h \ + ./SupportedSULFreqBandItem.h \ + ./LogicalOR.h \ + ./NeighborCell-List.h \ + ./NeighborCell-Item.h \ + ./NeighborCell-Item-Choice-NR.h \ + ./NeighborCell-Item-Choice-E-UTRA.h \ + ./NeighborRelation-Info.h \ + ./RRC-State.h \ + ./EventTrigger-Cell-Info.h \ + ./EventTrigger-Cell-Info-Item.h \ + ./EventTrigger-Cell-Info-Item-Choice-Individual.h \ + ./EventTrigger-Cell-Info-Item-Choice-Group.h \ + ./EventTrigger-UE-Info.h \ + ./EventTrigger-UE-Info-Item.h \ + ./EventTrigger-UE-Info-Item-Choice-Individual.h \ + ./EventTrigger-UE-Info-Item-Choice-Group.h \ + ./EventTrigger-UEevent-Info.h \ + ./EventTrigger-UEevent-Info-Item.h \ + ./RANParameter-ID.h \ + ./RANParameter-Name.h \ + ./RANParameter-Definition.h \ + ./RANParameter-Definition-Choice.h \ + ./RANParameter-Definition-Choice-LIST.h \ + ./RANParameter-Definition-Choice-LIST-Item.h \ + ./RANParameter-Definition-Choice-STRUCTURE.h \ + ./RANParameter-Definition-Choice-STRUCTURE-Item.h \ + ./RANParameter-Value.h \ + ./RANParameter-ValueType.h \ + ./RANParameter-ValueType-Choice-ElementTrue.h \ + ./RANParameter-ValueType-Choice-ElementFalse.h \ + ./RANParameter-ValueType-Choice-Structure.h \ + ./RANParameter-ValueType-Choice-List.h \ + ./RANParameter-STRUCTURE.h \ + ./RANParameter-STRUCTURE-Item.h \ + ./RANParameter-LIST.h \ + ./RANParameter-Testing.h \ + ./RANParameter-TestingCondition.h \ + ./RANParameter-Testing-Item.h \ + ./RANParameter-Testing-Item-Choice-List.h \ + ./RANParameter-Testing-Item-Choice-Structure.h \ + ./RANParameter-Testing-Item-Choice-ElementTrue.h \ + ./RANParameter-Testing-Item-Choice-ElementFalse.h \ + ./RANParameter-Testing-LIST.h \ + ./RANParameter-Testing-STRUCTURE.h \ + ./RAN-CallProcess-ID.h \ + ./RIC-CallProcessType-ID.h \ + ./RIC-CallProcessType-Name.h \ + ./RIC-CallProcessBreakpoint-ID.h \ + ./RIC-CallProcessBreakpoint-Name.h \ + ./RIC-ControlAction-ID.h \ + ./RIC-ControlAction-Name.h \ + ./RIC-EventTriggerCondition-ID.h \ + ./RIC-EventTrigger-UE-ID.h \ + ./RIC-EventTrigger-UEevent-ID.h \ + ./RIC-EventTrigger-Cell-ID.h \ + ./RIC-InsertIndication-ID.h \ + ./RIC-InsertIndication-Name.h \ + ./RIC-PolicyAction.h \ + ./RIC-PolicyAction-RANParameter-Item.h \ + ./E2SM-RC-EventTrigger.h \ + ./E2SM-RC-EventTrigger-Format1.h \ + ./E2SM-RC-EventTrigger-Format1-Item.h \ + ./MessageType-Choice.h \ + ./MessageType-Choice-NI.h \ + ./MessageType-Choice-RRC.h \ + ./E2SM-RC-EventTrigger-Format2.h \ + ./E2SM-RC-EventTrigger-Format3.h \ + ./E2SM-RC-EventTrigger-Format3-Item.h \ + ./E2SM-RC-EventTrigger-Format4.h \ + ./E2SM-RC-EventTrigger-Format4-Item.h \ + ./TriggerType-Choice.h \ + ./TriggerType-Choice-RRCstate.h \ + ./TriggerType-Choice-RRCstate-Item.h \ + ./TriggerType-Choice-UEID.h \ + ./TriggerType-Choice-L2state.h \ + ./E2SM-RC-EventTrigger-Format5.h \ + ./E2SM-RC-ActionDefinition.h \ + ./E2SM-RC-ActionDefinition-Format1.h \ + ./E2SM-RC-ActionDefinition-Format1-Item.h \ + ./E2SM-RC-ActionDefinition-Format2.h \ + ./E2SM-RC-ActionDefinition-Format2-Item.h \ + ./E2SM-RC-ActionDefinition-Format3.h \ + ./E2SM-RC-ActionDefinition-Format3-Item.h \ + ./E2SM-RC-IndicationHeader.h \ + ./E2SM-RC-IndicationHeader-Format1.h \ + ./E2SM-RC-IndicationHeader-Format2.h \ + ./E2SM-RC-IndicationMessage.h \ + ./E2SM-RC-IndicationMessage-Format1.h \ + ./E2SM-RC-IndicationMessage-Format1-Item.h \ + ./E2SM-RC-IndicationMessage-Format2.h \ + ./E2SM-RC-IndicationMessage-Format2-Item.h \ + ./E2SM-RC-IndicationMessage-Format2-RANParameter-Item.h \ + ./E2SM-RC-IndicationMessage-Format3.h \ + ./E2SM-RC-IndicationMessage-Format3-Item.h \ + ./E2SM-RC-IndicationMessage-Format4.h \ + ./E2SM-RC-IndicationMessage-Format4-ItemUE.h \ + ./E2SM-RC-IndicationMessage-Format4-ItemCell.h \ + ./E2SM-RC-IndicationMessage-Format5.h \ + ./E2SM-RC-IndicationMessage-Format5-Item.h \ + ./E2SM-RC-CallProcessID.h \ + ./E2SM-RC-CallProcessID-Format1.h \ + ./E2SM-RC-ControlHeader.h \ + ./E2SM-RC-ControlHeader-Format1.h \ + ./E2SM-RC-ControlMessage.h \ + ./E2SM-RC-ControlMessage-Format1.h \ + ./E2SM-RC-ControlMessage-Format1-Item.h \ + ./E2SM-RC-ControlOutcome.h \ + ./E2SM-RC-ControlOutcome-Format1.h \ + ./E2SM-RC-ControlOutcome-Format1-Item.h \ + ./E2SM-RC-RANFunctionDefinition.h \ + ./RANFunctionDefinition-EventTrigger.h \ + ./RANFunctionDefinition-EventTrigger-Style-Item.h \ + ./L2Parameters-RANParameter-Item.h \ + ./UEIdentification-RANParameter-Item.h \ + ./CellIdentification-RANParameter-Item.h \ + ./RANFunctionDefinition-EventTrigger-CallProcess-Item.h \ + ./RANFunctionDefinition-EventTrigger-Breakpoint-Item.h \ + ./CallProcessBreakpoint-RANParameter-Item.h \ + ./RANFunctionDefinition-Report.h \ + ./RANFunctionDefinition-Report-Item.h \ + ./Report-RANParameter-Item.h \ + ./RANFunctionDefinition-Insert.h \ + ./RANFunctionDefinition-Insert-Item.h \ + ./RANFunctionDefinition-Insert-Indication-Item.h \ + ./InsertIndication-RANParameter-Item.h \ + ./RANFunctionDefinition-Control.h \ + ./RANFunctionDefinition-Control-Item.h \ + ./ControlOutcome-RANParameter-Item.h \ + ./RANFunctionDefinition-Control-Action-Item.h \ + ./ControlAction-RANParameter-Item.h \ + ./RANFunctionDefinition-Policy.h \ + ./RANFunctionDefinition-Policy-Item.h \ + ./RANFunctionDefinition-Policy-Action-Item.h \ + ./PolicyAction-RANParameter-Item.h \ + ./PolicyCondition-RANParameter-Item.h + +ASN_MODULE_HDRS+=./OPEN_TYPE.h +ASN_MODULE_SRCS+=./OPEN_TYPE.c +ASN_MODULE_HDRS+=./constr_CHOICE.h +ASN_MODULE_HDRS+=./BOOLEAN.h +ASN_MODULE_SRCS+=./BOOLEAN.c +ASN_MODULE_HDRS+=./INTEGER.h +ASN_MODULE_SRCS+=./INTEGER.c +ASN_MODULE_HDRS+=./NativeEnumerated.h +ASN_MODULE_SRCS+=./NativeEnumerated.c +ASN_MODULE_HDRS+=./NativeInteger.h +ASN_MODULE_SRCS+=./NativeInteger.c +ASN_MODULE_HDRS+=./NativeReal.h +ASN_MODULE_SRCS+=./NativeReal.c +ASN_MODULE_HDRS+=./REAL.h +ASN_MODULE_HDRS+=./PrintableString.h +ASN_MODULE_SRCS+=./PrintableString.c +ASN_MODULE_HDRS+=./OCTET_STRING.h +ASN_MODULE_SRCS+=./REAL.c +ASN_MODULE_HDRS+=./asn_SEQUENCE_OF.h +ASN_MODULE_SRCS+=./asn_SEQUENCE_OF.c +ASN_MODULE_HDRS+=./asn_SET_OF.h +ASN_MODULE_SRCS+=./asn_SET_OF.c +ASN_MODULE_SRCS+=./constr_CHOICE.c +ASN_MODULE_HDRS+=./constr_SEQUENCE.h +ASN_MODULE_SRCS+=./constr_SEQUENCE.c +ASN_MODULE_HDRS+=./constr_SEQUENCE_OF.h +ASN_MODULE_SRCS+=./constr_SEQUENCE_OF.c +ASN_MODULE_HDRS+=./constr_SET_OF.h +ASN_MODULE_SRCS+=./constr_SET_OF.c +ASN_MODULE_HDRS+=./asn_application.h +ASN_MODULE_SRCS+=./asn_application.c +ASN_MODULE_HDRS+=./asn_ioc.h +ASN_MODULE_HDRS+=./asn_system.h +ASN_MODULE_HDRS+=./asn_codecs.h +ASN_MODULE_HDRS+=./asn_internal.h +ASN_MODULE_SRCS+=./asn_internal.c +ASN_MODULE_HDRS+=./asn_random_fill.h +ASN_MODULE_SRCS+=./asn_random_fill.c +ASN_MODULE_HDRS+=./asn_bit_data.h +ASN_MODULE_SRCS+=./asn_bit_data.c +ASN_MODULE_SRCS+=./OCTET_STRING.c +ASN_MODULE_HDRS+=./BIT_STRING.h +ASN_MODULE_SRCS+=./BIT_STRING.c +ASN_MODULE_SRCS+=./asn_codecs_prim.c +ASN_MODULE_HDRS+=./asn_codecs_prim.h +ASN_MODULE_HDRS+=./ber_tlv_length.h +ASN_MODULE_SRCS+=./ber_tlv_length.c +ASN_MODULE_HDRS+=./ber_tlv_tag.h +ASN_MODULE_SRCS+=./ber_tlv_tag.c +ASN_MODULE_HDRS+=./ber_decoder.h +ASN_MODULE_SRCS+=./ber_decoder.c +ASN_MODULE_HDRS+=./der_encoder.h +ASN_MODULE_SRCS+=./der_encoder.c +ASN_MODULE_HDRS+=./constr_TYPE.h +ASN_MODULE_SRCS+=./constr_TYPE.c +ASN_MODULE_HDRS+=./constraints.h +ASN_MODULE_SRCS+=./constraints.c +ASN_MODULE_HDRS+=./xer_support.h +ASN_MODULE_SRCS+=./xer_support.c +ASN_MODULE_HDRS+=./xer_decoder.h +ASN_MODULE_SRCS+=./xer_decoder.c +ASN_MODULE_HDRS+=./xer_encoder.h +ASN_MODULE_SRCS+=./xer_encoder.c +ASN_MODULE_HDRS+=./per_support.h +ASN_MODULE_SRCS+=./per_support.c +ASN_MODULE_HDRS+=./per_decoder.h +ASN_MODULE_SRCS+=./per_decoder.c +ASN_MODULE_HDRS+=./per_encoder.h +ASN_MODULE_SRCS+=./per_encoder.c +ASN_MODULE_HDRS+=./per_opentype.h +ASN_MODULE_SRCS+=./per_opentype.c +ASN_MODULE_HDRS+=./oer_decoder.h +ASN_MODULE_HDRS+=./oer_encoder.h +ASN_MODULE_HDRS+=./oer_support.h +ASN_MODULE_SRCS+=./oer_decoder.c +ASN_MODULE_SRCS+=./oer_encoder.c +ASN_MODULE_SRCS+=./oer_support.c +ASN_MODULE_SRCS+=./OPEN_TYPE_oer.c +ASN_MODULE_SRCS+=./INTEGER_oer.c +ASN_MODULE_SRCS+=./BIT_STRING_oer.c +ASN_MODULE_SRCS+=./OCTET_STRING_oer.c +ASN_MODULE_SRCS+=./NativeInteger_oer.c +ASN_MODULE_SRCS+=./NativeEnumerated_oer.c +ASN_MODULE_SRCS+=./constr_CHOICE_oer.c +ASN_MODULE_SRCS+=./constr_SEQUENCE_oer.c +ASN_MODULE_SRCS+=./constr_SET_OF_oer.c + +ASN_MODULE_CFLAGS= + +lib_LTLIBRARIES+=libasncodec.la +libasncodec_la_SOURCES=$(ASN_MODULE_SRCS) $(ASN_MODULE_HDRS) +libasncodec_la_CPPFLAGS=-I$(top_srcdir)/./ +libasncodec_la_CFLAGS=$(ASN_MODULE_CFLAGS) +libasncodec_la_LDFLAGS=-lm diff --git a/e2sm/lib/MeasQuantityResults.c b/e2sm/lib/MeasQuantityResults.c deleted file mode 100644 index 71a2de9..0000000 --- a/e2sm/lib/MeasQuantityResults.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasQuantityResults.h" - -asn_TYPE_member_t asn_MBR_MeasQuantityResults_1[] = { - { ATF_POINTER, 3, offsetof(struct MeasQuantityResults, rsrp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RSRP_Range, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rsrp" - }, - { ATF_POINTER, 2, offsetof(struct MeasQuantityResults, rsrq), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RSRQ_Range, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rsrq" - }, - { ATF_POINTER, 1, offsetof(struct MeasQuantityResults, sinr), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SINR_Range, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sinr" - }, -}; -static const int asn_MAP_MeasQuantityResults_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_MeasQuantityResults_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasQuantityResults_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rsrp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rsrq */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* sinr */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MeasQuantityResults_specs_1 = { - sizeof(struct MeasQuantityResults), - offsetof(struct MeasQuantityResults, _asn_ctx), - asn_MAP_MeasQuantityResults_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_MeasQuantityResults_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasQuantityResults = { - "MeasQuantityResults", - "MeasQuantityResults", - &asn_OP_SEQUENCE, - asn_DEF_MeasQuantityResults_tags_1, - sizeof(asn_DEF_MeasQuantityResults_tags_1) - /sizeof(asn_DEF_MeasQuantityResults_tags_1[0]), /* 1 */ - asn_DEF_MeasQuantityResults_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasQuantityResults_tags_1) - /sizeof(asn_DEF_MeasQuantityResults_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MeasQuantityResults_1, - 3, /* Elements count */ - &asn_SPC_MeasQuantityResults_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasQuantityResultsEUTRA.c b/e2sm/lib/MeasQuantityResultsEUTRA.c deleted file mode 100644 index 8dfe36d..0000000 --- a/e2sm/lib/MeasQuantityResultsEUTRA.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasQuantityResultsEUTRA.h" - -asn_TYPE_member_t asn_MBR_MeasQuantityResultsEUTRA_1[] = { - { ATF_POINTER, 3, offsetof(struct MeasQuantityResultsEUTRA, rsrp), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RSRP_RangeEUTRA, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rsrp" - }, - { ATF_POINTER, 2, offsetof(struct MeasQuantityResultsEUTRA, rsrq), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RSRQ_RangeEUTRA, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rsrq" - }, - { ATF_POINTER, 1, offsetof(struct MeasQuantityResultsEUTRA, sinr), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SINR_RangeEUTRA, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sinr" - }, -}; -static const int asn_MAP_MeasQuantityResultsEUTRA_oms_1[] = { 0, 1, 2 }; -static const ber_tlv_tag_t asn_DEF_MeasQuantityResultsEUTRA_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasQuantityResultsEUTRA_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rsrp */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rsrq */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* sinr */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MeasQuantityResultsEUTRA_specs_1 = { - sizeof(struct MeasQuantityResultsEUTRA), - offsetof(struct MeasQuantityResultsEUTRA, _asn_ctx), - asn_MAP_MeasQuantityResultsEUTRA_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_MeasQuantityResultsEUTRA_oms_1, /* Optional members */ - 3, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasQuantityResultsEUTRA = { - "MeasQuantityResultsEUTRA", - "MeasQuantityResultsEUTRA", - &asn_OP_SEQUENCE, - asn_DEF_MeasQuantityResultsEUTRA_tags_1, - sizeof(asn_DEF_MeasQuantityResultsEUTRA_tags_1) - /sizeof(asn_DEF_MeasQuantityResultsEUTRA_tags_1[0]), /* 1 */ - asn_DEF_MeasQuantityResultsEUTRA_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasQuantityResultsEUTRA_tags_1) - /sizeof(asn_DEF_MeasQuantityResultsEUTRA_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MeasQuantityResultsEUTRA_1, - 3, /* Elements count */ - &asn_SPC_MeasQuantityResultsEUTRA_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasResultEUTRA.c b/e2sm/lib/MeasResultEUTRA.c deleted file mode 100644 index b3713d9..0000000 --- a/e2sm/lib/MeasResultEUTRA.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasResultEUTRA.h" - -asn_TYPE_member_t asn_MBR_MeasResultEUTRA_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MeasResultEUTRA, eutra_PhysCellId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PhysCellId, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "eutra-PhysCellId" - }, - { ATF_NOFLAGS, 0, offsetof(struct MeasResultEUTRA, measResult), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasQuantityResultsEUTRA, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measResult" - }, -}; -static const ber_tlv_tag_t asn_DEF_MeasResultEUTRA_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasResultEUTRA_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eutra-PhysCellId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* measResult */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MeasResultEUTRA_specs_1 = { - sizeof(struct MeasResultEUTRA), - offsetof(struct MeasResultEUTRA, _asn_ctx), - asn_MAP_MeasResultEUTRA_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasResultEUTRA = { - "MeasResultEUTRA", - "MeasResultEUTRA", - &asn_OP_SEQUENCE, - asn_DEF_MeasResultEUTRA_tags_1, - sizeof(asn_DEF_MeasResultEUTRA_tags_1) - /sizeof(asn_DEF_MeasResultEUTRA_tags_1[0]), /* 1 */ - asn_DEF_MeasResultEUTRA_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasResultEUTRA_tags_1) - /sizeof(asn_DEF_MeasResultEUTRA_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MeasResultEUTRA_1, - 2, /* Elements count */ - &asn_SPC_MeasResultEUTRA_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasResultListEUTRA.c b/e2sm/lib/MeasResultListEUTRA.c deleted file mode 100644 index b7a963e..0000000 --- a/e2sm/lib/MeasResultListEUTRA.c +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasResultListEUTRA.h" - -#include "MeasResultEUTRA.h" -static asn_oer_constraints_t asn_OER_type_MeasResultListEUTRA_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -asn_per_constraints_t asn_PER_type_MeasResultListEUTRA_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MeasResultListEUTRA_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MeasResultEUTRA, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MeasResultListEUTRA_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_MeasResultListEUTRA_specs_1 = { - sizeof(struct MeasResultListEUTRA), - offsetof(struct MeasResultListEUTRA, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasResultListEUTRA = { - "MeasResultListEUTRA", - "MeasResultListEUTRA", - &asn_OP_SEQUENCE_OF, - asn_DEF_MeasResultListEUTRA_tags_1, - sizeof(asn_DEF_MeasResultListEUTRA_tags_1) - /sizeof(asn_DEF_MeasResultListEUTRA_tags_1[0]), /* 1 */ - asn_DEF_MeasResultListEUTRA_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasResultListEUTRA_tags_1) - /sizeof(asn_DEF_MeasResultListEUTRA_tags_1[0]), /* 1 */ - { &asn_OER_type_MeasResultListEUTRA_constr_1, &asn_PER_type_MeasResultListEUTRA_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_MeasResultListEUTRA_1, - 1, /* Single element */ - &asn_SPC_MeasResultListEUTRA_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasResultListNR.c b/e2sm/lib/MeasResultListNR.c deleted file mode 100644 index d5edda9..0000000 --- a/e2sm/lib/MeasResultListNR.c +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasResultListNR.h" - -#include "MeasResultNR.h" -static asn_oer_constraints_t asn_OER_type_MeasResultListNR_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..8)) */}; -asn_per_constraints_t asn_PER_type_MeasResultListNR_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MeasResultListNR_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MeasResultNR, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MeasResultListNR_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_MeasResultListNR_specs_1 = { - sizeof(struct MeasResultListNR), - offsetof(struct MeasResultListNR, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasResultListNR = { - "MeasResultListNR", - "MeasResultListNR", - &asn_OP_SEQUENCE_OF, - asn_DEF_MeasResultListNR_tags_1, - sizeof(asn_DEF_MeasResultListNR_tags_1) - /sizeof(asn_DEF_MeasResultListNR_tags_1[0]), /* 1 */ - asn_DEF_MeasResultListNR_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasResultListNR_tags_1) - /sizeof(asn_DEF_MeasResultListNR_tags_1[0]), /* 1 */ - { &asn_OER_type_MeasResultListNR_constr_1, &asn_PER_type_MeasResultListNR_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_MeasResultListNR_1, - 1, /* Single element */ - &asn_SPC_MeasResultListNR_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasResultNR.c b/e2sm/lib/MeasResultNR.c deleted file mode 100644 index fa4dae8..0000000 --- a/e2sm/lib/MeasResultNR.c +++ /dev/null @@ -1,230 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasResultNR.h" - -#include "MeasQuantityResults.h" -#include "ResultsPerSSB-IndexList.h" -#include "ResultsPerCSI-RS-IndexList.h" -static asn_TYPE_member_t asn_MBR_cellResults_4[] = { - { ATF_POINTER, 2, offsetof(struct MeasResultNR__measResult__cellResults, resultsSSB_Cell), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasQuantityResults, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "resultsSSB-Cell" - }, - { ATF_POINTER, 1, offsetof(struct MeasResultNR__measResult__cellResults, resultsCSI_RS_Cell), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasQuantityResults, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "resultsCSI-RS-Cell" - }, -}; -static const int asn_MAP_cellResults_oms_4[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_cellResults_tags_4[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_cellResults_tag2el_4[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* resultsSSB-Cell */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* resultsCSI-RS-Cell */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_cellResults_specs_4 = { - sizeof(struct MeasResultNR__measResult__cellResults), - offsetof(struct MeasResultNR__measResult__cellResults, _asn_ctx), - asn_MAP_cellResults_tag2el_4, - 2, /* Count of tags in the map */ - asn_MAP_cellResults_oms_4, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_cellResults_4 = { - "cellResults", - "cellResults", - &asn_OP_SEQUENCE, - asn_DEF_cellResults_tags_4, - sizeof(asn_DEF_cellResults_tags_4) - /sizeof(asn_DEF_cellResults_tags_4[0]) - 1, /* 1 */ - asn_DEF_cellResults_tags_4, /* Same as above */ - sizeof(asn_DEF_cellResults_tags_4) - /sizeof(asn_DEF_cellResults_tags_4[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_cellResults_4, - 2, /* Elements count */ - &asn_SPC_cellResults_specs_4 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_rsIndexResults_7[] = { - { ATF_POINTER, 2, offsetof(struct MeasResultNR__measResult__rsIndexResults, resultsSSB_Indexes), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResultsPerSSB_IndexList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "resultsSSB-Indexes" - }, - { ATF_POINTER, 1, offsetof(struct MeasResultNR__measResult__rsIndexResults, resultsCSI_RS_Indexes), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ResultsPerCSI_RS_IndexList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "resultsCSI-RS-Indexes" - }, -}; -static const int asn_MAP_rsIndexResults_oms_7[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_rsIndexResults_tags_7[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_rsIndexResults_tag2el_7[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* resultsSSB-Indexes */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* resultsCSI-RS-Indexes */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_rsIndexResults_specs_7 = { - sizeof(struct MeasResultNR__measResult__rsIndexResults), - offsetof(struct MeasResultNR__measResult__rsIndexResults, _asn_ctx), - asn_MAP_rsIndexResults_tag2el_7, - 2, /* Count of tags in the map */ - asn_MAP_rsIndexResults_oms_7, /* Optional members */ - 2, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_rsIndexResults_7 = { - "rsIndexResults", - "rsIndexResults", - &asn_OP_SEQUENCE, - asn_DEF_rsIndexResults_tags_7, - sizeof(asn_DEF_rsIndexResults_tags_7) - /sizeof(asn_DEF_rsIndexResults_tags_7[0]) - 1, /* 1 */ - asn_DEF_rsIndexResults_tags_7, /* Same as above */ - sizeof(asn_DEF_rsIndexResults_tags_7) - /sizeof(asn_DEF_rsIndexResults_tags_7[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_rsIndexResults_7, - 2, /* Elements count */ - &asn_SPC_rsIndexResults_specs_7 /* Additional specs */ -}; - -static asn_TYPE_member_t asn_MBR_measResult_3[] = { - { ATF_NOFLAGS, 0, offsetof(struct MeasResultNR__measResult, cellResults), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_cellResults_4, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "cellResults" - }, - { ATF_POINTER, 1, offsetof(struct MeasResultNR__measResult, rsIndexResults), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_rsIndexResults_7, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rsIndexResults" - }, -}; -static const int asn_MAP_measResult_oms_3[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_measResult_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_measResult_tag2el_3[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cellResults */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* rsIndexResults */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_measResult_specs_3 = { - sizeof(struct MeasResultNR__measResult), - offsetof(struct MeasResultNR__measResult, _asn_ctx), - asn_MAP_measResult_tag2el_3, - 2, /* Count of tags in the map */ - asn_MAP_measResult_oms_3, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_measResult_3 = { - "measResult", - "measResult", - &asn_OP_SEQUENCE, - asn_DEF_measResult_tags_3, - sizeof(asn_DEF_measResult_tags_3) - /sizeof(asn_DEF_measResult_tags_3[0]) - 1, /* 1 */ - asn_DEF_measResult_tags_3, /* Same as above */ - sizeof(asn_DEF_measResult_tags_3) - /sizeof(asn_DEF_measResult_tags_3[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_measResult_3, - 2, /* Elements count */ - &asn_SPC_measResult_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_MeasResultNR_1[] = { - { ATF_POINTER, 1, offsetof(struct MeasResultNR, physCellId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PhysCellId, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "physCellId" - }, - { ATF_NOFLAGS, 0, offsetof(struct MeasResultNR, measResult), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_measResult_3, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measResult" - }, -}; -static const int asn_MAP_MeasResultNR_oms_1[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_MeasResultNR_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasResultNR_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* physCellId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* measResult */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MeasResultNR_specs_1 = { - sizeof(struct MeasResultNR), - offsetof(struct MeasResultNR, _asn_ctx), - asn_MAP_MeasResultNR_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_MeasResultNR_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasResultNR = { - "MeasResultNR", - "MeasResultNR", - &asn_OP_SEQUENCE, - asn_DEF_MeasResultNR_tags_1, - sizeof(asn_DEF_MeasResultNR_tags_1) - /sizeof(asn_DEF_MeasResultNR_tags_1[0]), /* 1 */ - asn_DEF_MeasResultNR_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasResultNR_tags_1) - /sizeof(asn_DEF_MeasResultNR_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MeasResultNR_1, - 2, /* Elements count */ - &asn_SPC_MeasResultNR_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasResultNeighCells.c b/e2sm/lib/MeasResultNeighCells.c deleted file mode 100644 index 3f87d70..0000000 --- a/e2sm/lib/MeasResultNeighCells.c +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasResultNeighCells.h" - -#include "MeasResultListNR.h" -#include "MeasResultListEUTRA.h" -static asn_oer_constraints_t asn_OER_type_MeasResultNeighCells_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_MeasResultNeighCells_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MeasResultNeighCells_1[] = { - { ATF_POINTER, 0, offsetof(struct MeasResultNeighCells, choice.measResultListNR), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasResultListNR, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measResultListNR" - }, - { ATF_POINTER, 0, offsetof(struct MeasResultNeighCells, choice.measResultListEUTRA), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasResultListEUTRA, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measResultListEUTRA" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasResultNeighCells_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* measResultListNR */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* measResultListEUTRA */ -}; -asn_CHOICE_specifics_t asn_SPC_MeasResultNeighCells_specs_1 = { - sizeof(struct MeasResultNeighCells), - offsetof(struct MeasResultNeighCells, _asn_ctx), - offsetof(struct MeasResultNeighCells, present), - sizeof(((struct MeasResultNeighCells *)0)->present), - asn_MAP_MeasResultNeighCells_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasResultNeighCells = { - "MeasResultNeighCells", - "MeasResultNeighCells", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_MeasResultNeighCells_constr_1, &asn_PER_type_MeasResultNeighCells_constr_1, CHOICE_constraint }, - asn_MBR_MeasResultNeighCells_1, - 2, /* Elements count */ - &asn_SPC_MeasResultNeighCells_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasResultPCell.c b/e2sm/lib/MeasResultPCell.c deleted file mode 100644 index cbd74f8..0000000 --- a/e2sm/lib/MeasResultPCell.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasResultPCell.h" - -asn_TYPE_member_t asn_MBR_MeasResultPCell_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MeasResultPCell, eutra_PhysCellId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PhysCellId, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "eutra-PhysCellId" - }, - { ATF_NOFLAGS, 0, offsetof(struct MeasResultPCell, rsrpResult), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RSRP_Range, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rsrpResult" - }, - { ATF_NOFLAGS, 0, offsetof(struct MeasResultPCell, rsrqResult), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RSRQ_Range, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "rsrqResult" - }, -}; -static const ber_tlv_tag_t asn_DEF_MeasResultPCell_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasResultPCell_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eutra-PhysCellId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rsrpResult */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* rsrqResult */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MeasResultPCell_specs_1 = { - sizeof(struct MeasResultPCell), - offsetof(struct MeasResultPCell, _asn_ctx), - asn_MAP_MeasResultPCell_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasResultPCell = { - "MeasResultPCell", - "MeasResultPCell", - &asn_OP_SEQUENCE, - asn_DEF_MeasResultPCell_tags_1, - sizeof(asn_DEF_MeasResultPCell_tags_1) - /sizeof(asn_DEF_MeasResultPCell_tags_1[0]), /* 1 */ - asn_DEF_MeasResultPCell_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasResultPCell_tags_1) - /sizeof(asn_DEF_MeasResultPCell_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MeasResultPCell_1, - 3, /* Elements count */ - &asn_SPC_MeasResultPCell_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasResultServMO.c b/e2sm/lib/MeasResultServMO.c deleted file mode 100644 index 346f5fe..0000000 --- a/e2sm/lib/MeasResultServMO.c +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasResultServMO.h" - -#include "MeasResultNR.h" -asn_TYPE_member_t asn_MBR_MeasResultServMO_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MeasResultServMO, servCellId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ServCellIndex, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "servCellId" - }, - { ATF_NOFLAGS, 0, offsetof(struct MeasResultServMO, measResultServingCell), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasResultNR, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measResultServingCell" - }, - { ATF_POINTER, 1, offsetof(struct MeasResultServMO, measResultBestNeighCell), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasResultNR, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measResultBestNeighCell" - }, -}; -static const int asn_MAP_MeasResultServMO_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_MeasResultServMO_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasResultServMO_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* servCellId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* measResultServingCell */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* measResultBestNeighCell */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MeasResultServMO_specs_1 = { - sizeof(struct MeasResultServMO), - offsetof(struct MeasResultServMO, _asn_ctx), - asn_MAP_MeasResultServMO_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_MeasResultServMO_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasResultServMO = { - "MeasResultServMO", - "MeasResultServMO", - &asn_OP_SEQUENCE, - asn_DEF_MeasResultServMO_tags_1, - sizeof(asn_DEF_MeasResultServMO_tags_1) - /sizeof(asn_DEF_MeasResultServMO_tags_1[0]), /* 1 */ - asn_DEF_MeasResultServMO_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasResultServMO_tags_1) - /sizeof(asn_DEF_MeasResultServMO_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MeasResultServMO_1, - 3, /* Elements count */ - &asn_SPC_MeasResultServMO_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasResultServMOList.c b/e2sm/lib/MeasResultServMOList.c deleted file mode 100644 index 2798a7e..0000000 --- a/e2sm/lib/MeasResultServMOList.c +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasResultServMOList.h" - -#include "MeasResultServMO.h" -static asn_oer_constraints_t asn_OER_type_MeasResultServMOList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..32)) */}; -asn_per_constraints_t asn_PER_type_MeasResultServMOList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MeasResultServMOList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MeasResultServMO, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MeasResultServMOList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_MeasResultServMOList_specs_1 = { - sizeof(struct MeasResultServMOList), - offsetof(struct MeasResultServMOList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasResultServMOList = { - "MeasResultServMOList", - "MeasResultServMOList", - &asn_OP_SEQUENCE_OF, - asn_DEF_MeasResultServMOList_tags_1, - sizeof(asn_DEF_MeasResultServMOList_tags_1) - /sizeof(asn_DEF_MeasResultServMOList_tags_1[0]), /* 1 */ - asn_DEF_MeasResultServMOList_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasResultServMOList_tags_1) - /sizeof(asn_DEF_MeasResultServMOList_tags_1[0]), /* 1 */ - { &asn_OER_type_MeasResultServMOList_constr_1, &asn_PER_type_MeasResultServMOList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_MeasResultServMOList_1, - 1, /* Single element */ - &asn_SPC_MeasResultServMOList_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasurementInfoItem.c b/e2sm/lib/MeasurementInfoItem.c deleted file mode 100644 index 5edae52..0000000 --- a/e2sm/lib/MeasurementInfoItem.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasurementInfoItem.h" - -asn_TYPE_member_t asn_MBR_MeasurementInfoItem_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MeasurementInfoItem, measType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_MeasurementType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measType" - }, -}; -static const ber_tlv_tag_t asn_DEF_MeasurementInfoItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasurementInfoItem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* measType */ -}; -asn_SEQUENCE_specifics_t asn_SPC_MeasurementInfoItem_specs_1 = { - sizeof(struct MeasurementInfoItem), - offsetof(struct MeasurementInfoItem, _asn_ctx), - asn_MAP_MeasurementInfoItem_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasurementInfoItem = { - "MeasurementInfoItem", - "MeasurementInfoItem", - &asn_OP_SEQUENCE, - asn_DEF_MeasurementInfoItem_tags_1, - sizeof(asn_DEF_MeasurementInfoItem_tags_1) - /sizeof(asn_DEF_MeasurementInfoItem_tags_1[0]), /* 1 */ - asn_DEF_MeasurementInfoItem_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasurementInfoItem_tags_1) - /sizeof(asn_DEF_MeasurementInfoItem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_MeasurementInfoItem_1, - 1, /* Elements count */ - &asn_SPC_MeasurementInfoItem_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasurementInfoList.c b/e2sm/lib/MeasurementInfoList.c deleted file mode 100644 index 9e7aed9..0000000 --- a/e2sm/lib/MeasurementInfoList.c +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasurementInfoList.h" - -#include "MeasurementInfoItem.h" -static asn_oer_constraints_t asn_OER_type_MeasurementInfoList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..65535)) */}; -asn_per_constraints_t asn_PER_type_MeasurementInfoList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MeasurementInfoList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_MeasurementInfoItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_MeasurementInfoList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_MeasurementInfoList_specs_1 = { - sizeof(struct MeasurementInfoList), - offsetof(struct MeasurementInfoList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasurementInfoList = { - "MeasurementInfoList", - "MeasurementInfoList", - &asn_OP_SEQUENCE_OF, - asn_DEF_MeasurementInfoList_tags_1, - sizeof(asn_DEF_MeasurementInfoList_tags_1) - /sizeof(asn_DEF_MeasurementInfoList_tags_1[0]), /* 1 */ - asn_DEF_MeasurementInfoList_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasurementInfoList_tags_1) - /sizeof(asn_DEF_MeasurementInfoList_tags_1[0]), /* 1 */ - { &asn_OER_type_MeasurementInfoList_constr_1, &asn_PER_type_MeasurementInfoList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_MeasurementInfoList_1, - 1, /* Single element */ - &asn_SPC_MeasurementInfoList_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasurementType.c b/e2sm/lib/MeasurementType.c deleted file mode 100644 index 2d3e1f7..0000000 --- a/e2sm/lib/MeasurementType.c +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasurementType.h" - -static asn_oer_constraints_t asn_OER_type_MeasurementType_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_MeasurementType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MeasurementType_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MeasurementType, choice.measName), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasurementTypeName, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measName" - }, - { ATF_NOFLAGS, 0, offsetof(struct MeasurementType, choice.measID), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasurementTypeID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "measID" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasurementType_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* measName */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* measID */ -}; -asn_CHOICE_specifics_t asn_SPC_MeasurementType_specs_1 = { - sizeof(struct MeasurementType), - offsetof(struct MeasurementType, _asn_ctx), - offsetof(struct MeasurementType, present), - sizeof(((struct MeasurementType *)0)->present), - asn_MAP_MeasurementType_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasurementType = { - "MeasurementType", - "MeasurementType", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_MeasurementType_constr_1, &asn_PER_type_MeasurementType_constr_1, CHOICE_constraint }, - asn_MBR_MeasurementType_1, - 2, /* Elements count */ - &asn_SPC_MeasurementType_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasurementValue.c b/e2sm/lib/MeasurementValue.c deleted file mode 100644 index ed03a0b..0000000 --- a/e2sm/lib/MeasurementValue.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "MeasurementValue.h" - -#include "L3-RRC-Measurements.h" -static asn_oer_constraints_t asn_OER_type_MeasurementValue_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_MeasurementValue_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_MeasurementValue_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct MeasurementValue, choice.valueInt), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "valueInt" - }, - { ATF_NOFLAGS, 0, offsetof(struct MeasurementValue, choice.valueReal), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeReal, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "valueReal" - }, - { ATF_NOFLAGS, 0, offsetof(struct MeasurementValue, choice.noValue), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NULL, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "noValue" - }, - { ATF_POINTER, 0, offsetof(struct MeasurementValue, choice.valueRRC), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_L3_RRC_Measurements, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "valueRRC" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_MeasurementValue_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* valueInt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* valueReal */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* noValue */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* valueRRC */ -}; -asn_CHOICE_specifics_t asn_SPC_MeasurementValue_specs_1 = { - sizeof(struct MeasurementValue), - offsetof(struct MeasurementValue, _asn_ctx), - offsetof(struct MeasurementValue, present), - sizeof(((struct MeasurementValue *)0)->present), - asn_MAP_MeasurementValue_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, - 4 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_MeasurementValue = { - "MeasurementValue", - "MeasurementValue", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_MeasurementValue_constr_1, &asn_PER_type_MeasurementValue_constr_1, CHOICE_constraint }, - asn_MBR_MeasurementValue_1, - 4, /* Elements count */ - &asn_SPC_MeasurementValue_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MessageType-Choice-NI.c b/e2sm/lib/MessageType-Choice-NI.c new file mode 100644 index 0000000..7c6ded8 --- /dev/null +++ b/e2sm/lib/MessageType-Choice-NI.c @@ -0,0 +1,74 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "MessageType-Choice-NI.h" + +#include "InterfaceIdentifier.h" +#include "Interface-MessageID.h" +asn_TYPE_member_t asn_MBR_MessageType_Choice_NI_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MessageType_Choice_NI, nI_Type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_InterfaceType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nI-Type" + }, + { ATF_POINTER, 2, offsetof(struct MessageType_Choice_NI, nI_Identifier), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_InterfaceIdentifier, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nI-Identifier" + }, + { ATF_POINTER, 1, offsetof(struct MessageType_Choice_NI, nI_Message), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_Interface_MessageID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nI-Message" + }, +}; +static const int asn_MAP_MessageType_Choice_NI_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_MessageType_Choice_NI_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MessageType_Choice_NI_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nI-Type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* nI-Identifier */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* nI-Message */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MessageType_Choice_NI_specs_1 = { + sizeof(struct MessageType_Choice_NI), + offsetof(struct MessageType_Choice_NI, _asn_ctx), + asn_MAP_MessageType_Choice_NI_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_MessageType_Choice_NI_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MessageType_Choice_NI = { + "MessageType-Choice-NI", + "MessageType-Choice-NI", + &asn_OP_SEQUENCE, + asn_DEF_MessageType_Choice_NI_tags_1, + sizeof(asn_DEF_MessageType_Choice_NI_tags_1) + /sizeof(asn_DEF_MessageType_Choice_NI_tags_1[0]), /* 1 */ + asn_DEF_MessageType_Choice_NI_tags_1, /* Same as above */ + sizeof(asn_DEF_MessageType_Choice_NI_tags_1) + /sizeof(asn_DEF_MessageType_Choice_NI_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MessageType_Choice_NI_1, + 3, /* Elements count */ + &asn_SPC_MessageType_Choice_NI_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/MessageType-Choice-RRC.c b/e2sm/lib/MessageType-Choice-RRC.c new file mode 100644 index 0000000..8de8dfc --- /dev/null +++ b/e2sm/lib/MessageType-Choice-RRC.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "MessageType-Choice-RRC.h" + +asn_TYPE_member_t asn_MBR_MessageType_Choice_RRC_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct MessageType_Choice_RRC, rRC_Message), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RRC_MessageID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rRC-Message" + }, +}; +static const ber_tlv_tag_t asn_DEF_MessageType_Choice_RRC_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_MessageType_Choice_RRC_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* rRC-Message */ +}; +asn_SEQUENCE_specifics_t asn_SPC_MessageType_Choice_RRC_specs_1 = { + sizeof(struct MessageType_Choice_RRC), + offsetof(struct MessageType_Choice_RRC, _asn_ctx), + asn_MAP_MessageType_Choice_RRC_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_MessageType_Choice_RRC = { + "MessageType-Choice-RRC", + "MessageType-Choice-RRC", + &asn_OP_SEQUENCE, + asn_DEF_MessageType_Choice_RRC_tags_1, + sizeof(asn_DEF_MessageType_Choice_RRC_tags_1) + /sizeof(asn_DEF_MessageType_Choice_RRC_tags_1[0]), /* 1 */ + asn_DEF_MessageType_Choice_RRC_tags_1, /* Same as above */ + sizeof(asn_DEF_MessageType_Choice_RRC_tags_1) + /sizeof(asn_DEF_MessageType_Choice_RRC_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_MessageType_Choice_RRC_1, + 1, /* Elements count */ + &asn_SPC_MessageType_Choice_RRC_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/MessageType-Choice.c b/e2sm/lib/MessageType-Choice.c new file mode 100644 index 0000000..3be3635 --- /dev/null +++ b/e2sm/lib/MessageType-Choice.c @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "MessageType-Choice.h" + +#include "MessageType-Choice-NI.h" +#include "MessageType-Choice-RRC.h" +static asn_oer_constraints_t asn_OER_type_MessageType_Choice_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_MessageType_Choice_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_MessageType_Choice_1[] = { + { ATF_POINTER, 0, offsetof(struct MessageType_Choice, choice.messageType_Choice_NI), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MessageType_Choice_NI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "messageType-Choice-NI" + }, + { ATF_POINTER, 0, offsetof(struct MessageType_Choice, choice.messageType_Choice_RRC), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MessageType_Choice_RRC, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "messageType-Choice-RRC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_MessageType_Choice_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* messageType-Choice-NI */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* messageType-Choice-RRC */ +}; +asn_CHOICE_specifics_t asn_SPC_MessageType_Choice_specs_1 = { + sizeof(struct MessageType_Choice), + offsetof(struct MessageType_Choice, _asn_ctx), + offsetof(struct MessageType_Choice, present), + sizeof(((struct MessageType_Choice *)0)->present), + asn_MAP_MessageType_Choice_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_MessageType_Choice = { + "MessageType-Choice", + "MessageType-Choice", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_MessageType_Choice_constr_1, &asn_PER_type_MessageType_Choice_constr_1, CHOICE_constraint }, + asn_MBR_MessageType_Choice_1, + 2, /* Elements count */ + &asn_SPC_MessageType_Choice_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NG-RANnodeUEXnAPID.c b/e2sm/lib/NG-RANnodeUEXnAPID.c new file mode 100644 index 0000000..6a7a9b6 --- /dev/null +++ b/e2sm/lib/NG-RANnodeUEXnAPID.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NG-RANnodeUEXnAPID.h" + +int +NG_RANnodeUEXnAPID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + /* Constraint check succeeded */ + return 0; +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NG_RANnodeUEXnAPID_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..4294967295) */, + -1}; +asn_per_constraints_t asn_PER_type_NG_RANnodeUEXnAPID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +const asn_INTEGER_specifics_t asn_SPC_NG_RANnodeUEXnAPID_specs_1 = { + 0, 0, 0, 0, 0, + 0, /* Native long size */ + 1 /* Unsigned representation */ +}; +static const ber_tlv_tag_t asn_DEF_NG_RANnodeUEXnAPID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NG_RANnodeUEXnAPID = { + "NG-RANnodeUEXnAPID", + "NG-RANnodeUEXnAPID", + &asn_OP_NativeInteger, + asn_DEF_NG_RANnodeUEXnAPID_tags_1, + sizeof(asn_DEF_NG_RANnodeUEXnAPID_tags_1) + /sizeof(asn_DEF_NG_RANnodeUEXnAPID_tags_1[0]), /* 1 */ + asn_DEF_NG_RANnodeUEXnAPID_tags_1, /* Same as above */ + sizeof(asn_DEF_NG_RANnodeUEXnAPID_tags_1) + /sizeof(asn_DEF_NG_RANnodeUEXnAPID_tags_1[0]), /* 1 */ + { &asn_OER_type_NG_RANnodeUEXnAPID_constr_1, &asn_PER_type_NG_RANnodeUEXnAPID_constr_1, NG_RANnodeUEXnAPID_constraint }, + 0, 0, /* No members */ + &asn_SPC_NG_RANnodeUEXnAPID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NGENB-CU-UE-W1AP-ID.c b/e2sm/lib/NGENB-CU-UE-W1AP-ID.c new file mode 100644 index 0000000..fa15e70 --- /dev/null +++ b/e2sm/lib/NGENB-CU-UE-W1AP-ID.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NGENB-CU-UE-W1AP-ID.h" + +int +NGENB_CU_UE_W1AP_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + + /* Constraint check succeeded */ + return 0; +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NGENB_CU_UE_W1AP_ID_constr_1 CC_NOTUSED = { + { 4, 1 } /* (0..4294967295) */, + -1}; +asn_per_constraints_t asn_PER_type_NGENB_CU_UE_W1AP_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +const asn_INTEGER_specifics_t asn_SPC_NGENB_CU_UE_W1AP_ID_specs_1 = { + 0, 0, 0, 0, 0, + 0, /* Native long size */ + 1 /* Unsigned representation */ +}; +static const ber_tlv_tag_t asn_DEF_NGENB_CU_UE_W1AP_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NGENB_CU_UE_W1AP_ID = { + "NGENB-CU-UE-W1AP-ID", + "NGENB-CU-UE-W1AP-ID", + &asn_OP_NativeInteger, + asn_DEF_NGENB_CU_UE_W1AP_ID_tags_1, + sizeof(asn_DEF_NGENB_CU_UE_W1AP_ID_tags_1) + /sizeof(asn_DEF_NGENB_CU_UE_W1AP_ID_tags_1[0]), /* 1 */ + asn_DEF_NGENB_CU_UE_W1AP_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_NGENB_CU_UE_W1AP_ID_tags_1) + /sizeof(asn_DEF_NGENB_CU_UE_W1AP_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_NGENB_CU_UE_W1AP_ID_constr_1, &asn_PER_type_NGENB_CU_UE_W1AP_ID_constr_1, NGENB_CU_UE_W1AP_ID_constraint }, + 0, 0, /* No members */ + &asn_SPC_NGENB_CU_UE_W1AP_ID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NGENB-DU-ID.c b/e2sm/lib/NGENB-DU-ID.c new file mode 100644 index 0000000..2effacf --- /dev/null +++ b/e2sm/lib/NGENB-DU-ID.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NGENB-DU-ID.h" + +int +NGENB_DU_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const INTEGER_t *st = (const INTEGER_t *)sptr; + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if(asn_INTEGER2long(st, &value)) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value too large (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + if((value >= 0 && value <= 68719476735)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using INTEGER, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NGENB_DU_ID_constr_1 CC_NOTUSED = { + { 8, 1 } /* (0..68719476735) */, + -1}; +asn_per_constraints_t asn_PER_type_NGENB_DU_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 36, -1, 0, 68719476735 } /* (0..68719476735) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_NGENB_DU_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NGENB_DU_ID = { + "NGENB-DU-ID", + "NGENB-DU-ID", + &asn_OP_INTEGER, + asn_DEF_NGENB_DU_ID_tags_1, + sizeof(asn_DEF_NGENB_DU_ID_tags_1) + /sizeof(asn_DEF_NGENB_DU_ID_tags_1[0]), /* 1 */ + asn_DEF_NGENB_DU_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_NGENB_DU_ID_tags_1) + /sizeof(asn_DEF_NGENB_DU_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_NGENB_DU_ID_constr_1, &asn_PER_type_NGENB_DU_ID_constr_1, NGENB_DU_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/NI-Type.c b/e2sm/lib/NI-Type.c deleted file mode 100644 index 06ba425..0000000 --- a/e2sm/lib/NI-Type.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "NI-Type.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_NI_Type_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_NI_Type_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_NI_Type_value2enum_1[] = { - { 0, 4, "x2-u" }, - { 1, 4, "xn-u" }, - { 2, 4, "f1-u" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_NI_Type_enum2value_1[] = { - 2, /* f1-u(2) */ - 0, /* x2-u(0) */ - 1 /* xn-u(1) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_NI_Type_specs_1 = { - asn_MAP_NI_Type_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_NI_Type_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 4, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_NI_Type_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_NI_Type = { - "NI-Type", - "NI-Type", - &asn_OP_NativeEnumerated, - asn_DEF_NI_Type_tags_1, - sizeof(asn_DEF_NI_Type_tags_1) - /sizeof(asn_DEF_NI_Type_tags_1[0]), /* 1 */ - asn_DEF_NI_Type_tags_1, /* Same as above */ - sizeof(asn_DEF_NI_Type_tags_1) - /sizeof(asn_DEF_NI_Type_tags_1[0]), /* 1 */ - { &asn_OER_type_NI_Type_constr_1, &asn_PER_type_NI_Type_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_NI_Type_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/NR-ARFCN.c b/e2sm/lib/NR-ARFCN.c new file mode 100644 index 0000000..eaaffa4 --- /dev/null +++ b/e2sm/lib/NR-ARFCN.c @@ -0,0 +1,83 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NR-ARFCN.h" + +static int +memb_nRARFCN_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 3279165)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_nRARFCN_constr_2 CC_NOTUSED = { + { 4, 1 } /* (0..3279165) */, + -1}; +static asn_per_constraints_t asn_PER_memb_nRARFCN_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED, 22, -1, 0, 3279165 } /* (0..3279165) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NR_ARFCN_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NR_ARFCN, nRARFCN), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_nRARFCN_constr_2, &asn_PER_memb_nRARFCN_constr_2, memb_nRARFCN_constraint_1 }, + 0, 0, /* No default value */ + "nRARFCN" + }, +}; +static const ber_tlv_tag_t asn_DEF_NR_ARFCN_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NR_ARFCN_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* nRARFCN */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NR_ARFCN_specs_1 = { + sizeof(struct NR_ARFCN), + offsetof(struct NR_ARFCN, _asn_ctx), + asn_MAP_NR_ARFCN_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NR_ARFCN = { + "NR-ARFCN", + "NR-ARFCN", + &asn_OP_SEQUENCE, + asn_DEF_NR_ARFCN_tags_1, + sizeof(asn_DEF_NR_ARFCN_tags_1) + /sizeof(asn_DEF_NR_ARFCN_tags_1[0]), /* 1 */ + asn_DEF_NR_ARFCN_tags_1, /* Same as above */ + sizeof(asn_DEF_NR_ARFCN_tags_1) + /sizeof(asn_DEF_NR_ARFCN_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NR_ARFCN_1, + 1, /* Elements count */ + &asn_SPC_NR_ARFCN_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NR-CGI.c b/e2sm/lib/NR-CGI.c new file mode 100644 index 0000000..e2a5d69 --- /dev/null +++ b/e2sm/lib/NR-CGI.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NR-CGI.h" + +asn_TYPE_member_t asn_MBR_NR_CGI_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NR_CGI, pLMNIdentity), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PLMNIdentity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "pLMNIdentity" + }, + { ATF_NOFLAGS, 0, offsetof(struct NR_CGI, nRCellIdentity), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NRCellIdentity, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nRCellIdentity" + }, +}; +static const ber_tlv_tag_t asn_DEF_NR_CGI_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NR_CGI_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMNIdentity */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* nRCellIdentity */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NR_CGI_specs_1 = { + sizeof(struct NR_CGI), + offsetof(struct NR_CGI, _asn_ctx), + asn_MAP_NR_CGI_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NR_CGI = { + "NR-CGI", + "NR-CGI", + &asn_OP_SEQUENCE, + asn_DEF_NR_CGI_tags_1, + sizeof(asn_DEF_NR_CGI_tags_1) + /sizeof(asn_DEF_NR_CGI_tags_1[0]), /* 1 */ + asn_DEF_NR_CGI_tags_1, /* Same as above */ + sizeof(asn_DEF_NR_CGI_tags_1) + /sizeof(asn_DEF_NR_CGI_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NR_CGI_1, + 2, /* Elements count */ + &asn_SPC_NR_CGI_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/PhysCellId.c b/e2sm/lib/NR-PCI.c similarity index 56% rename from e2sm/lib/PhysCellId.c rename to e2sm/lib/NR-PCI.c index bb61e1d..ddd0e7c 100644 --- a/e2sm/lib/PhysCellId.c +++ b/e2sm/lib/NR-PCI.c @@ -1,14 +1,14 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "PhysCellId.h" +#include "NR-PCI.h" int -PhysCellId_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +NR_PCI_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; @@ -36,28 +36,28 @@ PhysCellId_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using NativeInteger, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_PhysCellId_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_NR_PCI_constr_1 CC_NOTUSED = { { 2, 1 } /* (0..1007) */, -1}; -asn_per_constraints_t asn_PER_type_PhysCellId_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_NR_PCI_constr_1 CC_NOTUSED = { { APC_CONSTRAINED, 10, 10, 0, 1007 } /* (0..1007) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -static const ber_tlv_tag_t asn_DEF_PhysCellId_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_NR_PCI_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_PhysCellId = { - "PhysCellId", - "PhysCellId", +asn_TYPE_descriptor_t asn_DEF_NR_PCI = { + "NR-PCI", + "NR-PCI", &asn_OP_NativeInteger, - asn_DEF_PhysCellId_tags_1, - sizeof(asn_DEF_PhysCellId_tags_1) - /sizeof(asn_DEF_PhysCellId_tags_1[0]), /* 1 */ - asn_DEF_PhysCellId_tags_1, /* Same as above */ - sizeof(asn_DEF_PhysCellId_tags_1) - /sizeof(asn_DEF_PhysCellId_tags_1[0]), /* 1 */ - { &asn_OER_type_PhysCellId_constr_1, &asn_PER_type_PhysCellId_constr_1, PhysCellId_constraint }, + asn_DEF_NR_PCI_tags_1, + sizeof(asn_DEF_NR_PCI_tags_1) + /sizeof(asn_DEF_NR_PCI_tags_1[0]), /* 1 */ + asn_DEF_NR_PCI_tags_1, /* Same as above */ + sizeof(asn_DEF_NR_PCI_tags_1) + /sizeof(asn_DEF_NR_PCI_tags_1[0]), /* 1 */ + { &asn_OER_type_NR_PCI_constr_1, &asn_PER_type_NR_PCI_constr_1, NR_PCI_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/e2sm/lib/NRCGI.c b/e2sm/lib/NRCGI.c deleted file mode 100644 index 2eaae12..0000000 --- a/e2sm/lib/NRCGI.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "NRCGI.h" - -asn_TYPE_member_t asn_MBR_NRCGI_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct NRCGI, pLMN_Identity), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PLMN_Identity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pLMN-Identity" - }, - { ATF_NOFLAGS, 0, offsetof(struct NRCGI, nRCellIdentity), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NRCellIdentity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nRCellIdentity" - }, -}; -static const ber_tlv_tag_t asn_DEF_NRCGI_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_NRCGI_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMN-Identity */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* nRCellIdentity */ -}; -asn_SEQUENCE_specifics_t asn_SPC_NRCGI_specs_1 = { - sizeof(struct NRCGI), - offsetof(struct NRCGI, _asn_ctx), - asn_MAP_NRCGI_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_NRCGI = { - "NRCGI", - "NRCGI", - &asn_OP_SEQUENCE, - asn_DEF_NRCGI_tags_1, - sizeof(asn_DEF_NRCGI_tags_1) - /sizeof(asn_DEF_NRCGI_tags_1[0]), /* 1 */ - asn_DEF_NRCGI_tags_1, /* Same as above */ - sizeof(asn_DEF_NRCGI_tags_1) - /sizeof(asn_DEF_NRCGI_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_NRCGI_1, - 2, /* Elements count */ - &asn_SPC_NRCGI_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/NRCellIdentity.c b/e2sm/lib/NRCellIdentity.c index 511d128..1b99861 100644 --- a/e2sm/lib/NRCellIdentity.c +++ b/e2sm/lib/NRCellIdentity.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/NRFrequencyBand-List.c b/e2sm/lib/NRFrequencyBand-List.c new file mode 100644 index 0000000..3b385c0 --- /dev/null +++ b/e2sm/lib/NRFrequencyBand-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NRFrequencyBand-List.h" + +#include "NRFrequencyBandItem.h" +static asn_oer_constraints_t asn_OER_type_NRFrequencyBand_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..32)) */}; +asn_per_constraints_t asn_PER_type_NRFrequencyBand_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 5, 5, 1, 32 } /* (SIZE(1..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NRFrequencyBand_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_NRFrequencyBandItem, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NRFrequencyBand_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NRFrequencyBand_List_specs_1 = { + sizeof(struct NRFrequencyBand_List), + offsetof(struct NRFrequencyBand_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_NRFrequencyBand_List = { + "NRFrequencyBand-List", + "NRFrequencyBand-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_NRFrequencyBand_List_tags_1, + sizeof(asn_DEF_NRFrequencyBand_List_tags_1) + /sizeof(asn_DEF_NRFrequencyBand_List_tags_1[0]), /* 1 */ + asn_DEF_NRFrequencyBand_List_tags_1, /* Same as above */ + sizeof(asn_DEF_NRFrequencyBand_List_tags_1) + /sizeof(asn_DEF_NRFrequencyBand_List_tags_1[0]), /* 1 */ + { &asn_OER_type_NRFrequencyBand_List_constr_1, &asn_PER_type_NRFrequencyBand_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_NRFrequencyBand_List_1, + 1, /* Single element */ + &asn_SPC_NRFrequencyBand_List_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NRFrequencyBandItem.c b/e2sm/lib/NRFrequencyBandItem.c new file mode 100644 index 0000000..1179aa1 --- /dev/null +++ b/e2sm/lib/NRFrequencyBandItem.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NRFrequencyBandItem.h" + +static int +memb_freqBandIndicatorNr_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 1024)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_freqBandIndicatorNr_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_freqBandIndicatorNr_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 10, 10, 1, 1024 } /* (1..1024,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NRFrequencyBandItem_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NRFrequencyBandItem, freqBandIndicatorNr), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_freqBandIndicatorNr_constr_2, &asn_PER_memb_freqBandIndicatorNr_constr_2, memb_freqBandIndicatorNr_constraint_1 }, + 0, 0, /* No default value */ + "freqBandIndicatorNr" + }, + { ATF_NOFLAGS, 0, offsetof(struct NRFrequencyBandItem, supportedSULBandList), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_SupportedSULBandList, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "supportedSULBandList" + }, +}; +static const ber_tlv_tag_t asn_DEF_NRFrequencyBandItem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NRFrequencyBandItem_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* freqBandIndicatorNr */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* supportedSULBandList */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NRFrequencyBandItem_specs_1 = { + sizeof(struct NRFrequencyBandItem), + offsetof(struct NRFrequencyBandItem, _asn_ctx), + asn_MAP_NRFrequencyBandItem_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NRFrequencyBandItem = { + "NRFrequencyBandItem", + "NRFrequencyBandItem", + &asn_OP_SEQUENCE, + asn_DEF_NRFrequencyBandItem_tags_1, + sizeof(asn_DEF_NRFrequencyBandItem_tags_1) + /sizeof(asn_DEF_NRFrequencyBandItem_tags_1[0]), /* 1 */ + asn_DEF_NRFrequencyBandItem_tags_1, /* Same as above */ + sizeof(asn_DEF_NRFrequencyBandItem_tags_1) + /sizeof(asn_DEF_NRFrequencyBandItem_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NRFrequencyBandItem_1, + 2, /* Elements count */ + &asn_SPC_NRFrequencyBandItem_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NRFrequencyInfo.c b/e2sm/lib/NRFrequencyInfo.c new file mode 100644 index 0000000..d74281a --- /dev/null +++ b/e2sm/lib/NRFrequencyInfo.c @@ -0,0 +1,72 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NRFrequencyInfo.h" + +static asn_TYPE_member_t asn_MBR_NRFrequencyInfo_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NRFrequencyInfo, nrARFCN), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NR_ARFCN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nrARFCN" + }, + { ATF_NOFLAGS, 0, offsetof(struct NRFrequencyInfo, frequencyBand_List), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NRFrequencyBand_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "frequencyBand-List" + }, + { ATF_POINTER, 1, offsetof(struct NRFrequencyInfo, frequencyShift7p5khz), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NRFrequencyShift7p5khz, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "frequencyShift7p5khz" + }, +}; +static const int asn_MAP_NRFrequencyInfo_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_NRFrequencyInfo_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NRFrequencyInfo_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nrARFCN */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* frequencyBand-List */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* frequencyShift7p5khz */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_NRFrequencyInfo_specs_1 = { + sizeof(struct NRFrequencyInfo), + offsetof(struct NRFrequencyInfo, _asn_ctx), + asn_MAP_NRFrequencyInfo_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_NRFrequencyInfo_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NRFrequencyInfo = { + "NRFrequencyInfo", + "NRFrequencyInfo", + &asn_OP_SEQUENCE, + asn_DEF_NRFrequencyInfo_tags_1, + sizeof(asn_DEF_NRFrequencyInfo_tags_1) + /sizeof(asn_DEF_NRFrequencyInfo_tags_1[0]), /* 1 */ + asn_DEF_NRFrequencyInfo_tags_1, /* Same as above */ + sizeof(asn_DEF_NRFrequencyInfo_tags_1) + /sizeof(asn_DEF_NRFrequencyInfo_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NRFrequencyInfo_1, + 3, /* Elements count */ + &asn_SPC_NRFrequencyInfo_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NRFrequencyShift7p5khz.c b/e2sm/lib/NRFrequencyShift7p5khz.c new file mode 100644 index 0000000..2d66419 --- /dev/null +++ b/e2sm/lib/NRFrequencyShift7p5khz.c @@ -0,0 +1,58 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NRFrequencyShift7p5khz.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_NRFrequencyShift7p5khz_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NRFrequencyShift7p5khz_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_NRFrequencyShift7p5khz_value2enum_1[] = { + { 0, 5, "false" }, + { 1, 4, "true" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_NRFrequencyShift7p5khz_enum2value_1[] = { + 0, /* false(0) */ + 1 /* true(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_NRFrequencyShift7p5khz_specs_1 = { + asn_MAP_NRFrequencyShift7p5khz_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_NRFrequencyShift7p5khz_enum2value_1, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_NRFrequencyShift7p5khz_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_NRFrequencyShift7p5khz = { + "NRFrequencyShift7p5khz", + "NRFrequencyShift7p5khz", + &asn_OP_NativeEnumerated, + asn_DEF_NRFrequencyShift7p5khz_tags_1, + sizeof(asn_DEF_NRFrequencyShift7p5khz_tags_1) + /sizeof(asn_DEF_NRFrequencyShift7p5khz_tags_1[0]), /* 1 */ + asn_DEF_NRFrequencyShift7p5khz_tags_1, /* Same as above */ + sizeof(asn_DEF_NRFrequencyShift7p5khz_tags_1) + /sizeof(asn_DEF_NRFrequencyShift7p5khz_tags_1[0]), /* 1 */ + { &asn_OER_type_NRFrequencyShift7p5khz_constr_1, &asn_PER_type_NRFrequencyShift7p5khz_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_NRFrequencyShift7p5khz_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NULL.c b/e2sm/lib/NULL.c deleted file mode 100644 index 4a2914f..0000000 --- a/e2sm/lib/NULL.c +++ /dev/null @@ -1,299 +0,0 @@ -/*- - * Copyright (c) 2003, 2005 Lev Walkin . All rights reserved. - * Redistribution and modifications are permitted subject to BSD license. - */ -#include -#include -#include -#include /* Implemented in terms of BOOLEAN type */ - -/* - * NULL basic type description. - */ -static const ber_tlv_tag_t asn_DEF_NULL_tags[] = { - (ASN_TAG_CLASS_UNIVERSAL | (5 << 2)) -}; -asn_TYPE_operation_t asn_OP_NULL = { - BOOLEAN_free, - NULL_print, - NULL_compare, - BOOLEAN_decode_ber, /* Implemented in terms of BOOLEAN */ - NULL_encode_der, /* Special handling of DER encoding */ - NULL_decode_xer, - NULL_encode_xer, -#ifdef ASN_DISABLE_OER_SUPPORT - 0, - 0, -#else - NULL_decode_oer, - NULL_encode_oer, -#endif /* ASN_DISABLE_OER_SUPPORT */ -#ifdef ASN_DISABLE_PER_SUPPORT - 0, - 0, - 0, - 0, -#else - NULL_decode_uper, /* Unaligned PER decoder */ - NULL_encode_uper, /* Unaligned PER encoder */ - NULL_decode_aper, /* Aligned PER decoder */ - NULL_encode_aper, /* Aligned PER encoder */ -#endif /* ASN_DISABLE_PER_SUPPORT */ - NULL_random_fill, - 0 /* Use generic outmost tag fetcher */ -}; -asn_TYPE_descriptor_t asn_DEF_NULL = { - "NULL", - "NULL", - &asn_OP_NULL, - asn_DEF_NULL_tags, - sizeof(asn_DEF_NULL_tags) / sizeof(asn_DEF_NULL_tags[0]), - asn_DEF_NULL_tags, /* Same as above */ - sizeof(asn_DEF_NULL_tags) / sizeof(asn_DEF_NULL_tags[0]), - { 0, 0, asn_generic_no_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - -asn_enc_rval_t -NULL_encode_der(const asn_TYPE_descriptor_t *td, const void *ptr, int tag_mode, - ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t erval = {0,0,0}; - - erval.encoded = der_write_tags(td, 0, tag_mode, 0, tag, cb, app_key); - if(erval.encoded == -1) { - erval.failed_type = td; - erval.structure_ptr = ptr; - } - - ASN__ENCODED_OK(erval); -} - -asn_enc_rval_t -NULL_encode_xer(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - enum xer_encoder_flags_e flags, asn_app_consume_bytes_f *cb, - void *app_key) { - asn_enc_rval_t er = {0,0,0}; - - (void)td; - (void)sptr; - (void)ilevel; - (void)flags; - (void)cb; - (void)app_key; - - /* XMLNullValue is empty */ - er.encoded = 0; - ASN__ENCODED_OK(er); -} - - -static enum xer_pbd_rval -NULL__xer_body_decode(const asn_TYPE_descriptor_t *td, void *sptr, - const void *chunk_buf, size_t chunk_size) { - (void)td; - (void)sptr; - (void)chunk_buf; /* Going to be empty according to the rules below. */ - - /* - * There must be no content in self-terminating tag. - */ - if(chunk_size) - return XPBD_BROKEN_ENCODING; - else - return XPBD_BODY_CONSUMED; -} - -asn_dec_rval_t -NULL_decode_xer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, void **sptr, - const char *opt_mname, const void *buf_ptr, size_t size) { - return xer_decode_primitive(opt_codec_ctx, td, - sptr, sizeof(NULL_t), opt_mname, buf_ptr, size, - NULL__xer_body_decode); -} - -int -NULL_compare(const asn_TYPE_descriptor_t *td, const void *a, const void *b) { - (void)td; - (void)a; - (void)b; - return 0; -} - -int -NULL_print(const asn_TYPE_descriptor_t *td, const void *sptr, int ilevel, - asn_app_consume_bytes_f *cb, void *app_key) { - (void)td; /* Unused argument */ - (void)ilevel; /* Unused argument */ - - if(sptr) { - return (cb("", 9, app_key) < 0) ? -1 : 0; - } else { - return (cb("", 8, app_key) < 0) ? -1 : 0; - } -} - -#ifndef ASN_DISABLE_OER_SUPPORT - -asn_dec_rval_t -NULL_decode_oer(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, void **sptr, - const void *ptr, size_t size) { - asn_dec_rval_t rv = {RC_OK, 0}; - (void)opt_codec_ctx; - (void)td; - (void)constraints; - (void)ptr; - (void)size; - - if(!*sptr) { - *sptr = MALLOC(sizeof(NULL_t)); - if(*sptr) { - *(NULL_t *)*sptr = 0; - } else { - ASN__DECODE_FAILED; - } - } - - return rv; -} - -asn_enc_rval_t -NULL_encode_oer(const asn_TYPE_descriptor_t *td, - const asn_oer_constraints_t *constraints, const void *sptr, - asn_app_consume_bytes_f *cb, void *app_key) { - asn_enc_rval_t er = {0,0,0}; - - (void)td; - (void)sptr; - (void)constraints; - (void)cb; - (void)app_key; - - er.encoded = 0; /* Encoding in 0 bytes. */ - - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_OER_SUPPORT */ - -#ifndef ASN_DISABLE_PER_SUPPORT - -asn_dec_rval_t -NULL_decode_uper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, - asn_per_data_t *pd) { - asn_dec_rval_t rv; - - (void)opt_codec_ctx; - (void)td; - (void)constraints; - (void)pd; - - if(!*sptr) { - *sptr = MALLOC(sizeof(NULL_t)); - if(*sptr) { - *(NULL_t *)*sptr = 0; - } else { - ASN__DECODE_FAILED; - } - } - - /* - * NULL type does not have content octets. - */ - - rv.code = RC_OK; - rv.consumed = 0; - return rv; -} - -asn_enc_rval_t -NULL_encode_uper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, const void *sptr, - asn_per_outp_t *po) { - asn_enc_rval_t er = {0,0,0}; - - (void)td; - (void)constraints; - (void)sptr; - (void)po; - - er.encoded = 0; - ASN__ENCODED_OK(er); -} - -asn_dec_rval_t -NULL_decode_aper(const asn_codec_ctx_t *opt_codec_ctx, - const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd) { - asn_dec_rval_t rv = {RC_OK, 0}; - - (void)opt_codec_ctx; - (void)td; - (void)constraints; - (void)pd; - - if(!*sptr) { - *sptr = MALLOC(sizeof(NULL_t)); - if(*sptr) { - *(NULL_t *)*sptr = 0; - } else { - ASN__DECODE_FAILED; - } - } - - /* - * NULL type does not have content octets. - */ - - rv.code = RC_OK; - rv.consumed = 0; - return rv; -} - - -asn_enc_rval_t -NULL_encode_aper(const asn_TYPE_descriptor_t *td, - const asn_per_constraints_t *constraints, - const void *sptr, asn_per_outp_t *po) { - asn_enc_rval_t er = {0,0,0}; - - (void)td; - (void)constraints; - (void)sptr; - (void)po; - - er.encoded = 0; - ASN__ENCODED_OK(er); -} - -#endif /* ASN_DISABLE_PER_SUPPORT */ - -asn_random_fill_result_t -NULL_random_fill(const asn_TYPE_descriptor_t *td, void **sptr, - const asn_encoding_constraints_t *constr, - size_t max_length) { - asn_random_fill_result_t result_ok = {ARFILL_OK, 1}; - asn_random_fill_result_t result_failed = {ARFILL_FAILED, 0}; - asn_random_fill_result_t result_skipped = {ARFILL_SKIPPED, 0}; - NULL_t *st = *sptr; - - (void)td; - (void)constr; - - if(max_length == 0) return result_skipped; - - if(st == NULL) { - st = (NULL_t *)(*sptr = CALLOC(1, sizeof(*st))); - if(st == NULL) { - return result_failed; - } - } - - return result_ok; -} - diff --git a/e2sm/lib/NeighborCell-Item-Choice-E-UTRA.c b/e2sm/lib/NeighborCell-Item-Choice-E-UTRA.c new file mode 100644 index 0000000..f0f2f1e --- /dev/null +++ b/e2sm/lib/NeighborCell-Item-Choice-E-UTRA.c @@ -0,0 +1,245 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NeighborCell-Item-Choice-E-UTRA.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static int +memb_version_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_x2_Xn_established_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_x2_Xn_established_constr_6 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_hO_validated_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_hO_validated_constr_10 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_version_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_version_constr_14 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_x2_Xn_established_value2enum_6[] = { + { 0, 4, "true" }, + { 1, 5, "false" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_x2_Xn_established_enum2value_6[] = { + 1, /* false(1) */ + 0 /* true(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_x2_Xn_established_specs_6 = { + asn_MAP_x2_Xn_established_value2enum_6, /* "tag" => N; sorted by tag */ + asn_MAP_x2_Xn_established_enum2value_6, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_x2_Xn_established_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_x2_Xn_established_6 = { + "x2-Xn-established", + "x2-Xn-established", + &asn_OP_NativeEnumerated, + asn_DEF_x2_Xn_established_tags_6, + sizeof(asn_DEF_x2_Xn_established_tags_6) + /sizeof(asn_DEF_x2_Xn_established_tags_6[0]) - 1, /* 1 */ + asn_DEF_x2_Xn_established_tags_6, /* Same as above */ + sizeof(asn_DEF_x2_Xn_established_tags_6) + /sizeof(asn_DEF_x2_Xn_established_tags_6[0]), /* 2 */ + { &asn_OER_type_x2_Xn_established_constr_6, &asn_PER_type_x2_Xn_established_constr_6, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_x2_Xn_established_specs_6 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_hO_validated_value2enum_10[] = { + { 0, 4, "true" }, + { 1, 5, "false" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_hO_validated_enum2value_10[] = { + 1, /* false(1) */ + 0 /* true(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_hO_validated_specs_10 = { + asn_MAP_hO_validated_value2enum_10, /* "tag" => N; sorted by tag */ + asn_MAP_hO_validated_enum2value_10, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_hO_validated_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_hO_validated_10 = { + "hO-validated", + "hO-validated", + &asn_OP_NativeEnumerated, + asn_DEF_hO_validated_tags_10, + sizeof(asn_DEF_hO_validated_tags_10) + /sizeof(asn_DEF_hO_validated_tags_10[0]) - 1, /* 1 */ + asn_DEF_hO_validated_tags_10, /* Same as above */ + sizeof(asn_DEF_hO_validated_tags_10) + /sizeof(asn_DEF_hO_validated_tags_10[0]), /* 2 */ + { &asn_OER_type_hO_validated_constr_10, &asn_PER_type_hO_validated_constr_10, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_hO_validated_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NeighborCell_Item_Choice_E_UTRA_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_E_UTRA, eUTRA_CGI), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_EUTRA_CGI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eUTRA-CGI" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_E_UTRA, eUTRA_PCI), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E_UTRA_PCI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eUTRA-PCI" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_E_UTRA, eUTRA_ARFCN), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E_UTRA_ARFCN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eUTRA-ARFCN" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_E_UTRA, eUTRA_TAC), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E_UTRA_TAC, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eUTRA-TAC" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_E_UTRA, x2_Xn_established), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_x2_Xn_established_6, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x2-Xn-established" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_E_UTRA, hO_validated), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_hO_validated_10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hO-validated" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_E_UTRA, version), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_version_constr_14, &asn_PER_memb_version_constr_14, memb_version_constraint_1 }, + 0, 0, /* No default value */ + "version" + }, +}; +static const ber_tlv_tag_t asn_DEF_NeighborCell_Item_Choice_E_UTRA_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NeighborCell_Item_Choice_E_UTRA_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eUTRA-CGI */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* eUTRA-PCI */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* eUTRA-ARFCN */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* eUTRA-TAC */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* x2-Xn-established */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* hO-validated */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* version */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NeighborCell_Item_Choice_E_UTRA_specs_1 = { + sizeof(struct NeighborCell_Item_Choice_E_UTRA), + offsetof(struct NeighborCell_Item_Choice_E_UTRA, _asn_ctx), + asn_MAP_NeighborCell_Item_Choice_E_UTRA_tag2el_1, + 7, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NeighborCell_Item_Choice_E_UTRA = { + "NeighborCell-Item-Choice-E-UTRA", + "NeighborCell-Item-Choice-E-UTRA", + &asn_OP_SEQUENCE, + asn_DEF_NeighborCell_Item_Choice_E_UTRA_tags_1, + sizeof(asn_DEF_NeighborCell_Item_Choice_E_UTRA_tags_1) + /sizeof(asn_DEF_NeighborCell_Item_Choice_E_UTRA_tags_1[0]), /* 1 */ + asn_DEF_NeighborCell_Item_Choice_E_UTRA_tags_1, /* Same as above */ + sizeof(asn_DEF_NeighborCell_Item_Choice_E_UTRA_tags_1) + /sizeof(asn_DEF_NeighborCell_Item_Choice_E_UTRA_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NeighborCell_Item_Choice_E_UTRA_1, + 7, /* Elements count */ + &asn_SPC_NeighborCell_Item_Choice_E_UTRA_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NeighborCell-Item-Choice-NR.c b/e2sm/lib/NeighborCell-Item-Choice-NR.c new file mode 100644 index 0000000..3ed4da7 --- /dev/null +++ b/e2sm/lib/NeighborCell-Item-Choice-NR.c @@ -0,0 +1,306 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NeighborCell-Item-Choice-NR.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static int +memb_version_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_nR_mode_info_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_nR_mode_info_constr_5 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_x2_Xn_established_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_x2_Xn_established_constr_10 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_hO_validated_constr_14 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_hO_validated_constr_14 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_version_constr_18 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_version_constr_18 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_nR_mode_info_value2enum_5[] = { + { 0, 3, "fdd" }, + { 1, 3, "tdd" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_nR_mode_info_enum2value_5[] = { + 0, /* fdd(0) */ + 1 /* tdd(1) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_nR_mode_info_specs_5 = { + asn_MAP_nR_mode_info_value2enum_5, /* "tag" => N; sorted by tag */ + asn_MAP_nR_mode_info_enum2value_5, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_nR_mode_info_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_nR_mode_info_5 = { + "nR-mode-info", + "nR-mode-info", + &asn_OP_NativeEnumerated, + asn_DEF_nR_mode_info_tags_5, + sizeof(asn_DEF_nR_mode_info_tags_5) + /sizeof(asn_DEF_nR_mode_info_tags_5[0]) - 1, /* 1 */ + asn_DEF_nR_mode_info_tags_5, /* Same as above */ + sizeof(asn_DEF_nR_mode_info_tags_5) + /sizeof(asn_DEF_nR_mode_info_tags_5[0]), /* 2 */ + { &asn_OER_type_nR_mode_info_constr_5, &asn_PER_type_nR_mode_info_constr_5, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_nR_mode_info_specs_5 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_x2_Xn_established_value2enum_10[] = { + { 0, 4, "true" }, + { 1, 5, "false" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_x2_Xn_established_enum2value_10[] = { + 1, /* false(1) */ + 0 /* true(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_x2_Xn_established_specs_10 = { + asn_MAP_x2_Xn_established_value2enum_10, /* "tag" => N; sorted by tag */ + asn_MAP_x2_Xn_established_enum2value_10, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_x2_Xn_established_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_x2_Xn_established_10 = { + "x2-Xn-established", + "x2-Xn-established", + &asn_OP_NativeEnumerated, + asn_DEF_x2_Xn_established_tags_10, + sizeof(asn_DEF_x2_Xn_established_tags_10) + /sizeof(asn_DEF_x2_Xn_established_tags_10[0]) - 1, /* 1 */ + asn_DEF_x2_Xn_established_tags_10, /* Same as above */ + sizeof(asn_DEF_x2_Xn_established_tags_10) + /sizeof(asn_DEF_x2_Xn_established_tags_10[0]), /* 2 */ + { &asn_OER_type_x2_Xn_established_constr_10, &asn_PER_type_x2_Xn_established_constr_10, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_x2_Xn_established_specs_10 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_hO_validated_value2enum_14[] = { + { 0, 4, "true" }, + { 1, 5, "false" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_hO_validated_enum2value_14[] = { + 1, /* false(1) */ + 0 /* true(0) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_hO_validated_specs_14 = { + asn_MAP_hO_validated_value2enum_14, /* "tag" => N; sorted by tag */ + asn_MAP_hO_validated_enum2value_14, /* N => "tag"; sorted by N */ + 2, /* Number of elements in the maps */ + 3, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_hO_validated_tags_14[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_hO_validated_14 = { + "hO-validated", + "hO-validated", + &asn_OP_NativeEnumerated, + asn_DEF_hO_validated_tags_14, + sizeof(asn_DEF_hO_validated_tags_14) + /sizeof(asn_DEF_hO_validated_tags_14[0]) - 1, /* 1 */ + asn_DEF_hO_validated_tags_14, /* Same as above */ + sizeof(asn_DEF_hO_validated_tags_14) + /sizeof(asn_DEF_hO_validated_tags_14[0]), /* 2 */ + { &asn_OER_type_hO_validated_constr_14, &asn_PER_type_hO_validated_constr_14, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_hO_validated_specs_14 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_NeighborCell_Item_Choice_NR_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_NR, nR_CGI), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NR_CGI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nR-CGI" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_NR, nR_PCI), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NR_PCI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nR-PCI" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_NR, fiveGS_TAC), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FiveGS_TAC, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "fiveGS-TAC" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_NR, nR_mode_info), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_nR_mode_info_5, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nR-mode-info" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_NR, nR_ARFCN), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NR_ARFCN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nR-ARFCN" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_NR, x2_Xn_established), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_x2_Xn_established_10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "x2-Xn-established" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_NR, hO_validated), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_hO_validated_14, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "hO-validated" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborCell_Item_Choice_NR, version), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_version_constr_18, &asn_PER_memb_version_constr_18, memb_version_constraint_1 }, + 0, 0, /* No default value */ + "version" + }, +}; +static const ber_tlv_tag_t asn_DEF_NeighborCell_Item_Choice_NR_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NeighborCell_Item_Choice_NR_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nR-CGI */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* nR-PCI */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* fiveGS-TAC */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* nR-mode-info */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* nR-ARFCN */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* x2-Xn-established */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* hO-validated */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* version */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NeighborCell_Item_Choice_NR_specs_1 = { + sizeof(struct NeighborCell_Item_Choice_NR), + offsetof(struct NeighborCell_Item_Choice_NR, _asn_ctx), + asn_MAP_NeighborCell_Item_Choice_NR_tag2el_1, + 8, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NeighborCell_Item_Choice_NR = { + "NeighborCell-Item-Choice-NR", + "NeighborCell-Item-Choice-NR", + &asn_OP_SEQUENCE, + asn_DEF_NeighborCell_Item_Choice_NR_tags_1, + sizeof(asn_DEF_NeighborCell_Item_Choice_NR_tags_1) + /sizeof(asn_DEF_NeighborCell_Item_Choice_NR_tags_1[0]), /* 1 */ + asn_DEF_NeighborCell_Item_Choice_NR_tags_1, /* Same as above */ + sizeof(asn_DEF_NeighborCell_Item_Choice_NR_tags_1) + /sizeof(asn_DEF_NeighborCell_Item_Choice_NR_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NeighborCell_Item_Choice_NR_1, + 8, /* Elements count */ + &asn_SPC_NeighborCell_Item_Choice_NR_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NeighborCell-Item.c b/e2sm/lib/NeighborCell-Item.c new file mode 100644 index 0000000..b68fcd5 --- /dev/null +++ b/e2sm/lib/NeighborCell-Item.c @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NeighborCell-Item.h" + +#include "NeighborCell-Item-Choice-NR.h" +#include "NeighborCell-Item-Choice-E-UTRA.h" +static asn_oer_constraints_t asn_OER_type_NeighborCell_Item_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_NeighborCell_Item_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NeighborCell_Item_1[] = { + { ATF_POINTER, 0, offsetof(struct NeighborCell_Item, choice.ranType_Choice_NR), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NeighborCell_Item_Choice_NR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranType-Choice-NR" + }, + { ATF_POINTER, 0, offsetof(struct NeighborCell_Item, choice.ranType_Choice_EUTRA), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NeighborCell_Item_Choice_E_UTRA, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranType-Choice-EUTRA" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_NeighborCell_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranType-Choice-NR */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranType-Choice-EUTRA */ +}; +asn_CHOICE_specifics_t asn_SPC_NeighborCell_Item_specs_1 = { + sizeof(struct NeighborCell_Item), + offsetof(struct NeighborCell_Item, _asn_ctx), + offsetof(struct NeighborCell_Item, present), + sizeof(((struct NeighborCell_Item *)0)->present), + asn_MAP_NeighborCell_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_NeighborCell_Item = { + "NeighborCell-Item", + "NeighborCell-Item", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_NeighborCell_Item_constr_1, &asn_PER_type_NeighborCell_Item_constr_1, CHOICE_constraint }, + asn_MBR_NeighborCell_Item_1, + 2, /* Elements count */ + &asn_SPC_NeighborCell_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NeighborCell-List.c b/e2sm/lib/NeighborCell-List.c new file mode 100644 index 0000000..5acf37c --- /dev/null +++ b/e2sm/lib/NeighborCell-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NeighborCell-List.h" + +#include "NeighborCell-Item.h" +static asn_oer_constraints_t asn_OER_type_NeighborCell_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +asn_per_constraints_t asn_PER_type_NeighborCell_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_NeighborCell_List_1[] = { + { ATF_POINTER, 0, 0, + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_NeighborCell_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_NeighborCell_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_NeighborCell_List_specs_1 = { + sizeof(struct NeighborCell_List), + offsetof(struct NeighborCell_List, _asn_ctx), + 2, /* XER encoding is XMLValueList */ +}; +asn_TYPE_descriptor_t asn_DEF_NeighborCell_List = { + "NeighborCell-List", + "NeighborCell-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_NeighborCell_List_tags_1, + sizeof(asn_DEF_NeighborCell_List_tags_1) + /sizeof(asn_DEF_NeighborCell_List_tags_1[0]), /* 1 */ + asn_DEF_NeighborCell_List_tags_1, /* Same as above */ + sizeof(asn_DEF_NeighborCell_List_tags_1) + /sizeof(asn_DEF_NeighborCell_List_tags_1[0]), /* 1 */ + { &asn_OER_type_NeighborCell_List_constr_1, &asn_PER_type_NeighborCell_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_NeighborCell_List_1, + 1, /* Single element */ + &asn_SPC_NeighborCell_List_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/NeighborRelation-Info.c b/e2sm/lib/NeighborRelation-Info.c new file mode 100644 index 0000000..4de6ca1 --- /dev/null +++ b/e2sm/lib/NeighborRelation-Info.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "NeighborRelation-Info.h" + +asn_TYPE_member_t asn_MBR_NeighborRelation_Info_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NeighborRelation_Info, servingCellPCI), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ServingCell_PCI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "servingCellPCI" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborRelation_Info, servingCellARFCN), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ServingCell_ARFCN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "servingCellARFCN" + }, + { ATF_NOFLAGS, 0, offsetof(struct NeighborRelation_Info, neighborCell_List), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NeighborCell_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "neighborCell-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_NeighborRelation_Info_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_NeighborRelation_Info_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* servingCellPCI */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* servingCellARFCN */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* neighborCell-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_NeighborRelation_Info_specs_1 = { + sizeof(struct NeighborRelation_Info), + offsetof(struct NeighborRelation_Info, _asn_ctx), + asn_MAP_NeighborRelation_Info_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_NeighborRelation_Info = { + "NeighborRelation-Info", + "NeighborRelation-Info", + &asn_OP_SEQUENCE, + asn_DEF_NeighborRelation_Info_tags_1, + sizeof(asn_DEF_NeighborRelation_Info_tags_1) + /sizeof(asn_DEF_NeighborRelation_Info_tags_1[0]), /* 1 */ + asn_DEF_NeighborRelation_Info_tags_1, /* Same as above */ + sizeof(asn_DEF_NeighborRelation_Info_tags_1) + /sizeof(asn_DEF_NeighborRelation_Info_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_NeighborRelation_Info_1, + 3, /* Elements count */ + &asn_SPC_NeighborRelation_Info_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/ENB-ID-Choice.c b/e2sm/lib/NgENB-ID.c similarity index 57% rename from e2sm/lib/ENB-ID-Choice.c rename to e2sm/lib/NgENB-ID.c index 8ce2abe..31ee4ac 100644 --- a/e2sm/lib/ENB-ID-Choice.c +++ b/e2sm/lib/NgENB-ID.c @@ -1,14 +1,14 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "ENB-ID-Choice.h" +#include "NgENB-ID.h" static int -memb_enb_ID_macro_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, +memb_macroNgENB_ID_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; size_t size; @@ -39,7 +39,7 @@ memb_enb_ID_macro_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr } static int -memb_enb_ID_shortmacro_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, +memb_shortMacroNgENB_ID_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; size_t size; @@ -70,7 +70,7 @@ memb_enb_ID_shortmacro_constraint_1(const asn_TYPE_descriptor_t *td, const void } static int -memb_enb_ID_longmacro_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, +memb_longMacroNgENB_ID_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const BIT_STRING_t *st = (const BIT_STRING_t *)sptr; size_t size; @@ -100,93 +100,93 @@ memb_enb_ID_longmacro_constraint_1(const asn_TYPE_descriptor_t *td, const void * } } -static asn_oer_constraints_t asn_OER_memb_enb_ID_macro_constr_2 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_memb_macroNgENB_ID_constr_2 CC_NOTUSED = { { 0, 0 }, 20 /* (SIZE(20..20)) */}; -static asn_per_constraints_t asn_PER_memb_enb_ID_macro_constr_2 CC_NOTUSED = { +static asn_per_constraints_t asn_PER_memb_macroNgENB_ID_constr_2 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 0, 0, 20, 20 } /* (SIZE(20..20)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_memb_enb_ID_shortmacro_constr_3 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_memb_shortMacroNgENB_ID_constr_3 CC_NOTUSED = { { 0, 0 }, 18 /* (SIZE(18..18)) */}; -static asn_per_constraints_t asn_PER_memb_enb_ID_shortmacro_constr_3 CC_NOTUSED = { +static asn_per_constraints_t asn_PER_memb_shortMacroNgENB_ID_constr_3 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 0, 0, 18, 18 } /* (SIZE(18..18)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_memb_enb_ID_longmacro_constr_4 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_memb_longMacroNgENB_ID_constr_4 CC_NOTUSED = { { 0, 0 }, 21 /* (SIZE(21..21)) */}; -static asn_per_constraints_t asn_PER_memb_enb_ID_longmacro_constr_4 CC_NOTUSED = { +static asn_per_constraints_t asn_PER_memb_longMacroNgENB_ID_constr_4 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 0, 0, 21, 21 } /* (SIZE(21..21)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_type_ENB_ID_Choice_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_NgENB_ID_constr_1 CC_NOTUSED = { { 0, 0 }, -1}; -asn_per_constraints_t asn_PER_type_ENB_ID_Choice_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_NgENB_ID_constr_1 CC_NOTUSED = { { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -asn_TYPE_member_t asn_MBR_ENB_ID_Choice_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ENB_ID_Choice, choice.enb_ID_macro), +asn_TYPE_member_t asn_MBR_NgENB_ID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct NgENB_ID, choice.macroNgENB_ID), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_BIT_STRING, 0, - { &asn_OER_memb_enb_ID_macro_constr_2, &asn_PER_memb_enb_ID_macro_constr_2, memb_enb_ID_macro_constraint_1 }, + { &asn_OER_memb_macroNgENB_ID_constr_2, &asn_PER_memb_macroNgENB_ID_constr_2, memb_macroNgENB_ID_constraint_1 }, 0, 0, /* No default value */ - "enb-ID-macro" + "macroNgENB-ID" }, - { ATF_NOFLAGS, 0, offsetof(struct ENB_ID_Choice, choice.enb_ID_shortmacro), + { ATF_NOFLAGS, 0, offsetof(struct NgENB_ID, choice.shortMacroNgENB_ID), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_BIT_STRING, 0, - { &asn_OER_memb_enb_ID_shortmacro_constr_3, &asn_PER_memb_enb_ID_shortmacro_constr_3, memb_enb_ID_shortmacro_constraint_1 }, + { &asn_OER_memb_shortMacroNgENB_ID_constr_3, &asn_PER_memb_shortMacroNgENB_ID_constr_3, memb_shortMacroNgENB_ID_constraint_1 }, 0, 0, /* No default value */ - "enb-ID-shortmacro" + "shortMacroNgENB-ID" }, - { ATF_NOFLAGS, 0, offsetof(struct ENB_ID_Choice, choice.enb_ID_longmacro), + { ATF_NOFLAGS, 0, offsetof(struct NgENB_ID, choice.longMacroNgENB_ID), (ASN_TAG_CLASS_CONTEXT | (2 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_BIT_STRING, 0, - { &asn_OER_memb_enb_ID_longmacro_constr_4, &asn_PER_memb_enb_ID_longmacro_constr_4, memb_enb_ID_longmacro_constraint_1 }, + { &asn_OER_memb_longMacroNgENB_ID_constr_4, &asn_PER_memb_longMacroNgENB_ID_constr_4, memb_longMacroNgENB_ID_constraint_1 }, 0, 0, /* No default value */ - "enb-ID-longmacro" + "longMacroNgENB-ID" }, }; -static const asn_TYPE_tag2member_t asn_MAP_ENB_ID_Choice_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* enb-ID-macro */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* enb-ID-shortmacro */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* enb-ID-longmacro */ +static const asn_TYPE_tag2member_t asn_MAP_NgENB_ID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* macroNgENB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* shortMacroNgENB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* longMacroNgENB-ID */ }; -asn_CHOICE_specifics_t asn_SPC_ENB_ID_Choice_specs_1 = { - sizeof(struct ENB_ID_Choice), - offsetof(struct ENB_ID_Choice, _asn_ctx), - offsetof(struct ENB_ID_Choice, present), - sizeof(((struct ENB_ID_Choice *)0)->present), - asn_MAP_ENB_ID_Choice_tag2el_1, +asn_CHOICE_specifics_t asn_SPC_NgENB_ID_specs_1 = { + sizeof(struct NgENB_ID), + offsetof(struct NgENB_ID, _asn_ctx), + offsetof(struct NgENB_ID, present), + sizeof(((struct NgENB_ID *)0)->present), + asn_MAP_NgENB_ID_tag2el_1, 3, /* Count of tags in the map */ 0, 0, 3 /* Extensions start */ }; -asn_TYPE_descriptor_t asn_DEF_ENB_ID_Choice = { - "ENB-ID-Choice", - "ENB-ID-Choice", +asn_TYPE_descriptor_t asn_DEF_NgENB_ID = { + "NgENB-ID", + "NgENB-ID", &asn_OP_CHOICE, 0, /* No effective tags (pointer) */ 0, /* No effective tags (count) */ 0, /* No tags (pointer) */ 0, /* No tags (count) */ - { &asn_OER_type_ENB_ID_Choice_constr_1, &asn_PER_type_ENB_ID_Choice_constr_1, CHOICE_constraint }, - asn_MBR_ENB_ID_Choice_1, + { &asn_OER_type_NgENB_ID_constr_1, &asn_PER_type_NgENB_ID_constr_1, CHOICE_constraint }, + asn_MBR_NgENB_ID_1, 3, /* Elements count */ - &asn_SPC_ENB_ID_Choice_specs_1 /* Additional specs */ + &asn_SPC_NgENB_ID_specs_1 /* Additional specs */ }; diff --git a/e2sm/lib/OCUCP-PF-Container.c b/e2sm/lib/OCUCP-PF-Container.c deleted file mode 100644 index 8788478..0000000 --- a/e2sm/lib/OCUCP-PF-Container.c +++ /dev/null @@ -1,128 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "OCUCP-PF-Container.h" - -static int -memb_numberOfActive_UEs_constraint_2(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 1 && value <= 65535)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_numberOfActive_UEs_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_numberOfActive_UEs_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_cu_CP_Resource_Status_2[] = { - { ATF_POINTER, 1, offsetof(struct OCUCP_PF_Container__cu_CP_Resource_Status, numberOfActive_UEs), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_numberOfActive_UEs_constr_3, &asn_PER_memb_numberOfActive_UEs_constr_3, memb_numberOfActive_UEs_constraint_2 }, - 0, 0, /* No default value */ - "numberOfActive-UEs" - }, -}; -static const int asn_MAP_cu_CP_Resource_Status_oms_2[] = { 0 }; -static const ber_tlv_tag_t asn_DEF_cu_CP_Resource_Status_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_cu_CP_Resource_Status_tag2el_2[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* numberOfActive-UEs */ -}; -static asn_SEQUENCE_specifics_t asn_SPC_cu_CP_Resource_Status_specs_2 = { - sizeof(struct OCUCP_PF_Container__cu_CP_Resource_Status), - offsetof(struct OCUCP_PF_Container__cu_CP_Resource_Status, _asn_ctx), - asn_MAP_cu_CP_Resource_Status_tag2el_2, - 1, /* Count of tags in the map */ - asn_MAP_cu_CP_Resource_Status_oms_2, /* Optional members */ - 1, 0, /* Root/Additions */ - -1, /* First extension addition */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_cu_CP_Resource_Status_2 = { - "cu-CP-Resource-Status", - "cu-CP-Resource-Status", - &asn_OP_SEQUENCE, - asn_DEF_cu_CP_Resource_Status_tags_2, - sizeof(asn_DEF_cu_CP_Resource_Status_tags_2) - /sizeof(asn_DEF_cu_CP_Resource_Status_tags_2[0]) - 1, /* 1 */ - asn_DEF_cu_CP_Resource_Status_tags_2, /* Same as above */ - sizeof(asn_DEF_cu_CP_Resource_Status_tags_2) - /sizeof(asn_DEF_cu_CP_Resource_Status_tags_2[0]), /* 2 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_cu_CP_Resource_Status_2, - 1, /* Elements count */ - &asn_SPC_cu_CP_Resource_Status_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_OCUCP_PF_Container_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct OCUCP_PF_Container, cu_CP_Resource_Status), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_cu_CP_Resource_Status_2, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "cu-CP-Resource-Status" - }, -}; -static const ber_tlv_tag_t asn_DEF_OCUCP_PF_Container_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_OCUCP_PF_Container_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* cu-CP-Resource-Status */ -}; -asn_SEQUENCE_specifics_t asn_SPC_OCUCP_PF_Container_specs_1 = { - sizeof(struct OCUCP_PF_Container), - offsetof(struct OCUCP_PF_Container, _asn_ctx), - asn_MAP_OCUCP_PF_Container_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - -1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_OCUCP_PF_Container = { - "OCUCP-PF-Container", - "OCUCP-PF-Container", - &asn_OP_SEQUENCE, - asn_DEF_OCUCP_PF_Container_tags_1, - sizeof(asn_DEF_OCUCP_PF_Container_tags_1) - /sizeof(asn_DEF_OCUCP_PF_Container_tags_1[0]), /* 1 */ - asn_DEF_OCUCP_PF_Container_tags_1, /* Same as above */ - sizeof(asn_DEF_OCUCP_PF_Container_tags_1) - /sizeof(asn_DEF_OCUCP_PF_Container_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_OCUCP_PF_Container_1, - 1, /* Elements count */ - &asn_SPC_OCUCP_PF_Container_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/OCUUP-PF-Container.c b/e2sm/lib/OCUUP-PF-Container.c deleted file mode 100644 index 8ccc575..0000000 --- a/e2sm/lib/OCUUP-PF-Container.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "OCUUP-PF-Container.h" - -#include "PF-ContainerListItem.h" -static int -memb_pf_ContainerList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 3)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_pf_ContainerList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..3)) */}; -static asn_per_constraints_t asn_PER_type_pf_ContainerList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 3 } /* (SIZE(1..3)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_pf_ContainerList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..3)) */}; -static asn_per_constraints_t asn_PER_memb_pf_ContainerList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 2, 2, 1, 3 } /* (SIZE(1..3)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_pf_ContainerList_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PF_ContainerListItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_pf_ContainerList_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_pf_ContainerList_specs_2 = { - sizeof(struct OCUUP_PF_Container__pf_ContainerList), - offsetof(struct OCUUP_PF_Container__pf_ContainerList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_pf_ContainerList_2 = { - "pf-ContainerList", - "pf-ContainerList", - &asn_OP_SEQUENCE_OF, - asn_DEF_pf_ContainerList_tags_2, - sizeof(asn_DEF_pf_ContainerList_tags_2) - /sizeof(asn_DEF_pf_ContainerList_tags_2[0]) - 1, /* 1 */ - asn_DEF_pf_ContainerList_tags_2, /* Same as above */ - sizeof(asn_DEF_pf_ContainerList_tags_2) - /sizeof(asn_DEF_pf_ContainerList_tags_2[0]), /* 2 */ - { &asn_OER_type_pf_ContainerList_constr_2, &asn_PER_type_pf_ContainerList_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_pf_ContainerList_2, - 1, /* Single element */ - &asn_SPC_pf_ContainerList_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_OCUUP_PF_Container_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct OCUUP_PF_Container, pf_ContainerList), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_pf_ContainerList_2, - 0, - { &asn_OER_memb_pf_ContainerList_constr_2, &asn_PER_memb_pf_ContainerList_constr_2, memb_pf_ContainerList_constraint_1 }, - 0, 0, /* No default value */ - "pf-ContainerList" - }, -}; -static const ber_tlv_tag_t asn_DEF_OCUUP_PF_Container_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_OCUUP_PF_Container_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* pf-ContainerList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_OCUUP_PF_Container_specs_1 = { - sizeof(struct OCUUP_PF_Container), - offsetof(struct OCUUP_PF_Container, _asn_ctx), - asn_MAP_OCUUP_PF_Container_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_OCUUP_PF_Container = { - "OCUUP-PF-Container", - "OCUUP-PF-Container", - &asn_OP_SEQUENCE, - asn_DEF_OCUUP_PF_Container_tags_1, - sizeof(asn_DEF_OCUUP_PF_Container_tags_1) - /sizeof(asn_DEF_OCUUP_PF_Container_tags_1[0]), /* 1 */ - asn_DEF_OCUUP_PF_Container_tags_1, /* Same as above */ - sizeof(asn_DEF_OCUUP_PF_Container_tags_1) - /sizeof(asn_DEF_OCUUP_PF_Container_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_OCUUP_PF_Container_1, - 1, /* Elements count */ - &asn_SPC_OCUUP_PF_Container_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/ODU-PF-Container.c b/e2sm/lib/ODU-PF-Container.c deleted file mode 100644 index 4aeaa6c..0000000 --- a/e2sm/lib/ODU-PF-Container.c +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "ODU-PF-Container.h" - -#include "CellResourceReportListItem.h" -static int -memb_cellResourceReportList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 512)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_cellResourceReportList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..512)) */}; -static asn_per_constraints_t asn_PER_type_cellResourceReportList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 9, 9, 1, 512 } /* (SIZE(1..512)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_cellResourceReportList_constr_2 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..512)) */}; -static asn_per_constraints_t asn_PER_memb_cellResourceReportList_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 9, 9, 1, 512 } /* (SIZE(1..512)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_cellResourceReportList_2[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_CellResourceReportListItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_cellResourceReportList_tags_2[] = { - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_cellResourceReportList_specs_2 = { - sizeof(struct ODU_PF_Container__cellResourceReportList), - offsetof(struct ODU_PF_Container__cellResourceReportList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_cellResourceReportList_2 = { - "cellResourceReportList", - "cellResourceReportList", - &asn_OP_SEQUENCE_OF, - asn_DEF_cellResourceReportList_tags_2, - sizeof(asn_DEF_cellResourceReportList_tags_2) - /sizeof(asn_DEF_cellResourceReportList_tags_2[0]) - 1, /* 1 */ - asn_DEF_cellResourceReportList_tags_2, /* Same as above */ - sizeof(asn_DEF_cellResourceReportList_tags_2) - /sizeof(asn_DEF_cellResourceReportList_tags_2[0]), /* 2 */ - { &asn_OER_type_cellResourceReportList_constr_2, &asn_PER_type_cellResourceReportList_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_cellResourceReportList_2, - 1, /* Single element */ - &asn_SPC_cellResourceReportList_specs_2 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_ODU_PF_Container_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ODU_PF_Container, cellResourceReportList), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - 0, - &asn_DEF_cellResourceReportList_2, - 0, - { &asn_OER_memb_cellResourceReportList_constr_2, &asn_PER_memb_cellResourceReportList_constr_2, memb_cellResourceReportList_constraint_1 }, - 0, 0, /* No default value */ - "cellResourceReportList" - }, -}; -static const ber_tlv_tag_t asn_DEF_ODU_PF_Container_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ODU_PF_Container_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* cellResourceReportList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ODU_PF_Container_specs_1 = { - sizeof(struct ODU_PF_Container), - offsetof(struct ODU_PF_Container, _asn_ctx), - asn_MAP_ODU_PF_Container_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ODU_PF_Container = { - "ODU-PF-Container", - "ODU-PF-Container", - &asn_OP_SEQUENCE, - asn_DEF_ODU_PF_Container_tags_1, - sizeof(asn_DEF_ODU_PF_Container_tags_1) - /sizeof(asn_DEF_ODU_PF_Container_tags_1[0]), /* 1 */ - asn_DEF_ODU_PF_Container_tags_1, /* Same as above */ - sizeof(asn_DEF_ODU_PF_Container_tags_1) - /sizeof(asn_DEF_ODU_PF_Container_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ODU_PF_Container_1, - 1, /* Elements count */ - &asn_SPC_ODU_PF_Container_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PF-Container.c b/e2sm/lib/PF-Container.c deleted file mode 100644 index c4034f8..0000000 --- a/e2sm/lib/PF-Container.c +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "PF-Container.h" - -#include "ODU-PF-Container.h" -#include "OCUCP-PF-Container.h" -#include "OCUUP-PF-Container.h" -static asn_oer_constraints_t asn_OER_type_PF_Container_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_PF_Container_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_PF_Container_1[] = { - { ATF_POINTER, 0, offsetof(struct PF_Container, choice.oDU), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_ODU_PF_Container, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "oDU" - }, - { ATF_POINTER, 0, offsetof(struct PF_Container, choice.oCU_CP), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCUCP_PF_Container, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "oCU-CP" - }, - { ATF_POINTER, 0, offsetof(struct PF_Container, choice.oCU_UP), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCUUP_PF_Container, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "oCU-UP" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_PF_Container_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* oDU */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* oCU-CP */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* oCU-UP */ -}; -asn_CHOICE_specifics_t asn_SPC_PF_Container_specs_1 = { - sizeof(struct PF_Container), - offsetof(struct PF_Container, _asn_ctx), - offsetof(struct PF_Container, present), - sizeof(((struct PF_Container *)0)->present), - asn_MAP_PF_Container_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, - -1 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_PF_Container = { - "PF-Container", - "PF-Container", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_PF_Container_constr_1, &asn_PER_type_PF_Container_constr_1, CHOICE_constraint }, - asn_MBR_PF_Container_1, - 3, /* Elements count */ - &asn_SPC_PF_Container_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PF-ContainerListItem.c b/e2sm/lib/PF-ContainerListItem.c deleted file mode 100644 index 112175c..0000000 --- a/e2sm/lib/PF-ContainerListItem.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "PF-ContainerListItem.h" - -asn_TYPE_member_t asn_MBR_PF_ContainerListItem_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PF_ContainerListItem, interface_type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NI_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "interface-type" - }, - { ATF_NOFLAGS, 0, offsetof(struct PF_ContainerListItem, o_CU_UP_PM_Container), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CUUPMeasurement_Container, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "o-CU-UP-PM-Container" - }, -}; -static const ber_tlv_tag_t asn_DEF_PF_ContainerListItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PF_ContainerListItem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* interface-type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* o-CU-UP-PM-Container */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PF_ContainerListItem_specs_1 = { - sizeof(struct PF_ContainerListItem), - offsetof(struct PF_ContainerListItem, _asn_ctx), - asn_MAP_PF_ContainerListItem_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PF_ContainerListItem = { - "PF-ContainerListItem", - "PF-ContainerListItem", - &asn_OP_SEQUENCE, - asn_DEF_PF_ContainerListItem_tags_1, - sizeof(asn_DEF_PF_ContainerListItem_tags_1) - /sizeof(asn_DEF_PF_ContainerListItem_tags_1[0]), /* 1 */ - asn_DEF_PF_ContainerListItem_tags_1, /* Same as above */ - sizeof(asn_DEF_PF_ContainerListItem_tags_1) - /sizeof(asn_DEF_PF_ContainerListItem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PF_ContainerListItem_1, - 2, /* Elements count */ - &asn_SPC_PF_ContainerListItem_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PLMNIdentity.c b/e2sm/lib/PLMNIdentity.c new file mode 100644 index 0000000..d713421 --- /dev/null +++ b/e2sm/lib/PLMNIdentity.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "PLMNIdentity.h" + +int +PLMNIdentity_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 3)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_PLMNIdentity_constr_1 CC_NOTUSED = { + { 0, 0 }, + 3 /* (SIZE(3..3)) */}; +asn_per_constraints_t asn_PER_type_PLMNIdentity_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_PLMNIdentity_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_PLMNIdentity = { + "PLMNIdentity", + "PLMNIdentity", + &asn_OP_OCTET_STRING, + asn_DEF_PLMNIdentity_tags_1, + sizeof(asn_DEF_PLMNIdentity_tags_1) + /sizeof(asn_DEF_PLMNIdentity_tags_1[0]), /* 1 */ + asn_DEF_PLMNIdentity_tags_1, /* Same as above */ + sizeof(asn_DEF_PLMNIdentity_tags_1) + /sizeof(asn_DEF_PLMNIdentity_tags_1[0]), /* 1 */ + { &asn_OER_type_PLMNIdentity_constr_1, &asn_PER_type_PLMNIdentity_constr_1, PLMNIdentity_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/PM-Containers-Item.c b/e2sm/lib/PM-Containers-Item.c deleted file mode 100644 index 2116f5a..0000000 --- a/e2sm/lib/PM-Containers-Item.c +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "PM-Containers-Item.h" - -#include "PF-Container.h" -asn_TYPE_member_t asn_MBR_PM_Containers_Item_1[] = { - { ATF_POINTER, 2, offsetof(struct PM_Containers_Item, performanceContainer), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_PF_Container, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "performanceContainer" - }, - { ATF_POINTER, 1, offsetof(struct PM_Containers_Item, theRANContainer), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RAN_Container, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "theRANContainer" - }, -}; -static const int asn_MAP_PM_Containers_Item_oms_1[] = { 0, 1 }; -static const ber_tlv_tag_t asn_DEF_PM_Containers_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PM_Containers_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* performanceContainer */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* theRANContainer */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PM_Containers_Item_specs_1 = { - sizeof(struct PM_Containers_Item), - offsetof(struct PM_Containers_Item, _asn_ctx), - asn_MAP_PM_Containers_Item_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_PM_Containers_Item_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PM_Containers_Item = { - "PM-Containers-Item", - "PM-Containers-Item", - &asn_OP_SEQUENCE, - asn_DEF_PM_Containers_Item_tags_1, - sizeof(asn_DEF_PM_Containers_Item_tags_1) - /sizeof(asn_DEF_PM_Containers_Item_tags_1[0]), /* 1 */ - asn_DEF_PM_Containers_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_PM_Containers_Item_tags_1) - /sizeof(asn_DEF_PM_Containers_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PM_Containers_Item_1, - 2, /* Elements count */ - &asn_SPC_PM_Containers_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PM-Info-Item.c b/e2sm/lib/PM-Info-Item.c deleted file mode 100644 index e469eb6..0000000 --- a/e2sm/lib/PM-Info-Item.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "PM-Info-Item.h" - -asn_TYPE_member_t asn_MBR_PM_Info_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PM_Info_Item, pmType), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_MeasurementType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pmType" - }, - { ATF_NOFLAGS, 0, offsetof(struct PM_Info_Item, pmVal), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_MeasurementValue, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pmVal" - }, -}; -static const ber_tlv_tag_t asn_DEF_PM_Info_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PM_Info_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pmType */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* pmVal */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PM_Info_Item_specs_1 = { - sizeof(struct PM_Info_Item), - offsetof(struct PM_Info_Item, _asn_ctx), - asn_MAP_PM_Info_Item_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PM_Info_Item = { - "PM-Info-Item", - "PM-Info-Item", - &asn_OP_SEQUENCE, - asn_DEF_PM_Info_Item_tags_1, - sizeof(asn_DEF_PM_Info_Item_tags_1) - /sizeof(asn_DEF_PM_Info_Item_tags_1[0]), /* 1 */ - asn_DEF_PM_Info_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_PM_Info_Item_tags_1) - /sizeof(asn_DEF_PM_Info_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PM_Info_Item_1, - 2, /* Elements count */ - &asn_SPC_PM_Info_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PerQCIReportListItem.c b/e2sm/lib/PerQCIReportListItem.c deleted file mode 100644 index 45935bd..0000000 --- a/e2sm/lib/PerQCIReportListItem.c +++ /dev/null @@ -1,138 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "PerQCIReportListItem.h" - -static int -memb_dl_PRBUsage_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 100)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_ul_PRBUsage_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 100)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_dl_PRBUsage_constr_3 CC_NOTUSED = { - { 1, 1 } /* (0..100) */, - -1}; -static asn_per_constraints_t asn_PER_memb_dl_PRBUsage_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ul_PRBUsage_constr_4 CC_NOTUSED = { - { 1, 1 } /* (0..100) */, - -1}; -static asn_per_constraints_t asn_PER_memb_ul_PRBUsage_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 100 } /* (0..100) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_PerQCIReportListItem_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PerQCIReportListItem, qci), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_QCI, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "qci" - }, - { ATF_POINTER, 2, offsetof(struct PerQCIReportListItem, dl_PRBUsage), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_dl_PRBUsage_constr_3, &asn_PER_memb_dl_PRBUsage_constr_3, memb_dl_PRBUsage_constraint_1 }, - 0, 0, /* No default value */ - "dl-PRBUsage" - }, - { ATF_POINTER, 1, offsetof(struct PerQCIReportListItem, ul_PRBUsage), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_NativeInteger, - 0, - { &asn_OER_memb_ul_PRBUsage_constr_4, &asn_PER_memb_ul_PRBUsage_constr_4, memb_ul_PRBUsage_constraint_1 }, - 0, 0, /* No default value */ - "ul-PRBUsage" - }, -}; -static const int asn_MAP_PerQCIReportListItem_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_PerQCIReportListItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PerQCIReportListItem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* qci */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dl-PRBUsage */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ul-PRBUsage */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PerQCIReportListItem_specs_1 = { - sizeof(struct PerQCIReportListItem), - offsetof(struct PerQCIReportListItem, _asn_ctx), - asn_MAP_PerQCIReportListItem_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_PerQCIReportListItem_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PerQCIReportListItem = { - "PerQCIReportListItem", - "PerQCIReportListItem", - &asn_OP_SEQUENCE, - asn_DEF_PerQCIReportListItem_tags_1, - sizeof(asn_DEF_PerQCIReportListItem_tags_1) - /sizeof(asn_DEF_PerQCIReportListItem_tags_1[0]), /* 1 */ - asn_DEF_PerQCIReportListItem_tags_1, /* Same as above */ - sizeof(asn_DEF_PerQCIReportListItem_tags_1) - /sizeof(asn_DEF_PerQCIReportListItem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PerQCIReportListItem_1, - 3, /* Elements count */ - &asn_SPC_PerQCIReportListItem_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PerQCIReportListItemFormat.c b/e2sm/lib/PerQCIReportListItemFormat.c deleted file mode 100644 index 86f8bb4..0000000 --- a/e2sm/lib/PerQCIReportListItemFormat.c +++ /dev/null @@ -1,150 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "PerQCIReportListItemFormat.h" - -static int -memb_pDCPBytesDL_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(asn_INTEGER2long(st, &value)) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value too large (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if((value >= 0 && value <= 10000000000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_pDCPBytesUL_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const INTEGER_t *st = (const INTEGER_t *)sptr; - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if(asn_INTEGER2long(st, &value)) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value too large (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - if((value >= 0 && value <= 10000000000)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_pDCPBytesDL_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_pDCPBytesDL_constr_3 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 34, -1, 0, 10000000000 } /* (0..10000000000,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_pDCPBytesUL_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_memb_pDCPBytesUL_constr_4 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 34, -1, 0, 10000000000 } /* (0..10000000000,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_PerQCIReportListItemFormat_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PerQCIReportListItemFormat, drbqci), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_QCI, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "drbqci" - }, - { ATF_POINTER, 2, offsetof(struct PerQCIReportListItemFormat, pDCPBytesDL), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_INTEGER, - 0, - { &asn_OER_memb_pDCPBytesDL_constr_3, &asn_PER_memb_pDCPBytesDL_constr_3, memb_pDCPBytesDL_constraint_1 }, - 0, 0, /* No default value */ - "pDCPBytesDL" - }, - { ATF_POINTER, 1, offsetof(struct PerQCIReportListItemFormat, pDCPBytesUL), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_INTEGER, - 0, - { &asn_OER_memb_pDCPBytesUL_constr_4, &asn_PER_memb_pDCPBytesUL_constr_4, memb_pDCPBytesUL_constraint_1 }, - 0, 0, /* No default value */ - "pDCPBytesUL" - }, -}; -static const int asn_MAP_PerQCIReportListItemFormat_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_PerQCIReportListItemFormat_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PerQCIReportListItemFormat_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* drbqci */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pDCPBytesDL */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* pDCPBytesUL */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PerQCIReportListItemFormat_specs_1 = { - sizeof(struct PerQCIReportListItemFormat), - offsetof(struct PerQCIReportListItemFormat, _asn_ctx), - asn_MAP_PerQCIReportListItemFormat_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_PerQCIReportListItemFormat_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PerQCIReportListItemFormat = { - "PerQCIReportListItemFormat", - "PerQCIReportListItemFormat", - &asn_OP_SEQUENCE, - asn_DEF_PerQCIReportListItemFormat_tags_1, - sizeof(asn_DEF_PerQCIReportListItemFormat_tags_1) - /sizeof(asn_DEF_PerQCIReportListItemFormat_tags_1[0]), /* 1 */ - asn_DEF_PerQCIReportListItemFormat_tags_1, /* Same as above */ - sizeof(asn_DEF_PerQCIReportListItemFormat_tags_1) - /sizeof(asn_DEF_PerQCIReportListItemFormat_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PerQCIReportListItemFormat_1, - 3, /* Elements count */ - &asn_SPC_PerQCIReportListItemFormat_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PerUE-PM-Item.c b/e2sm/lib/PerUE-PM-Item.c deleted file mode 100644 index 9ecc2df..0000000 --- a/e2sm/lib/PerUE-PM-Item.c +++ /dev/null @@ -1,142 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "PerUE-PM-Item.h" - -#include "PM-Info-Item.h" -static int -memb_list_of_PM_Information_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 2147483647)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_list_of_PM_Information_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..2147483647)) */}; -static asn_per_constraints_t asn_PER_type_list_of_PM_Information_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 31, -1, 1, 2147483647 } /* (SIZE(1..2147483647)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_list_of_PM_Information_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..2147483647)) */}; -static asn_per_constraints_t asn_PER_memb_list_of_PM_Information_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 31, -1, 1, 2147483647 } /* (SIZE(1..2147483647)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_list_of_PM_Information_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_PM_Info_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_list_of_PM_Information_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_list_of_PM_Information_specs_3 = { - sizeof(struct PerUE_PM_Item__list_of_PM_Information), - offsetof(struct PerUE_PM_Item__list_of_PM_Information, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_list_of_PM_Information_3 = { - "list-of-PM-Information", - "list-of-PM-Information", - &asn_OP_SEQUENCE_OF, - asn_DEF_list_of_PM_Information_tags_3, - sizeof(asn_DEF_list_of_PM_Information_tags_3) - /sizeof(asn_DEF_list_of_PM_Information_tags_3[0]) - 1, /* 1 */ - asn_DEF_list_of_PM_Information_tags_3, /* Same as above */ - sizeof(asn_DEF_list_of_PM_Information_tags_3) - /sizeof(asn_DEF_list_of_PM_Information_tags_3[0]), /* 2 */ - { &asn_OER_type_list_of_PM_Information_constr_3, &asn_PER_type_list_of_PM_Information_constr_3, SEQUENCE_OF_constraint }, - asn_MBR_list_of_PM_Information_3, - 1, /* Single element */ - &asn_SPC_list_of_PM_Information_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_PerUE_PM_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PerUE_PM_Item, ueId), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_UE_Identity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ueId" - }, - { ATF_POINTER, 1, offsetof(struct PerUE_PM_Item, list_of_PM_Information), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_list_of_PM_Information_3, - 0, - { &asn_OER_memb_list_of_PM_Information_constr_3, &asn_PER_memb_list_of_PM_Information_constr_3, memb_list_of_PM_Information_constraint_1 }, - 0, 0, /* No default value */ - "list-of-PM-Information" - }, -}; -static const int asn_MAP_PerUE_PM_Item_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_PerUE_PM_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PerUE_PM_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ueId */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* list-of-PM-Information */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PerUE_PM_Item_specs_1 = { - sizeof(struct PerUE_PM_Item), - offsetof(struct PerUE_PM_Item, _asn_ctx), - asn_MAP_PerUE_PM_Item_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_PerUE_PM_Item_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PerUE_PM_Item = { - "PerUE-PM-Item", - "PerUE-PM-Item", - &asn_OP_SEQUENCE, - asn_DEF_PerUE_PM_Item_tags_1, - sizeof(asn_DEF_PerUE_PM_Item_tags_1) - /sizeof(asn_DEF_PerUE_PM_Item_tags_1[0]), /* 1 */ - asn_DEF_PerUE_PM_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_PerUE_PM_Item_tags_1) - /sizeof(asn_DEF_PerUE_PM_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PerUE_PM_Item_1, - 2, /* Elements count */ - &asn_SPC_PerUE_PM_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PlmnID-Item.c b/e2sm/lib/PlmnID-Item.c deleted file mode 100644 index 5aad6cb..0000000 --- a/e2sm/lib/PlmnID-Item.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "PlmnID-Item.h" - -#include "FGC-CUUP-PM-Format.h" -#include "EPC-CUUP-PM-Format.h" -asn_TYPE_member_t asn_MBR_PlmnID_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct PlmnID_Item, pLMN_Identity), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PLMN_Identity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pLMN-Identity" - }, - { ATF_POINTER, 2, offsetof(struct PlmnID_Item, cu_UP_PM_5GC), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FGC_CUUP_PM_Format, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "cu-UP-PM-5GC" - }, - { ATF_POINTER, 1, offsetof(struct PlmnID_Item, cu_UP_PM_EPC), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EPC_CUUP_PM_Format, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "cu-UP-PM-EPC" - }, -}; -static const int asn_MAP_PlmnID_Item_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_PlmnID_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_PlmnID_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMN-Identity */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cu-UP-PM-5GC */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* cu-UP-PM-EPC */ -}; -asn_SEQUENCE_specifics_t asn_SPC_PlmnID_Item_specs_1 = { - sizeof(struct PlmnID_Item), - offsetof(struct PlmnID_Item, _asn_ctx), - asn_MAP_PlmnID_Item_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_PlmnID_Item_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_PlmnID_Item = { - "PlmnID-Item", - "PlmnID-Item", - &asn_OP_SEQUENCE, - asn_DEF_PlmnID_Item_tags_1, - sizeof(asn_DEF_PlmnID_Item_tags_1) - /sizeof(asn_DEF_PlmnID_Item_tags_1[0]), /* 1 */ - asn_DEF_PlmnID_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_PlmnID_Item_tags_1) - /sizeof(asn_DEF_PlmnID_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_PlmnID_Item_1, - 3, /* Elements count */ - &asn_SPC_PlmnID_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/PolicyAction-RANParameter-Item.c b/e2sm/lib/PolicyAction-RANParameter-Item.c new file mode 100644 index 0000000..85b1dfc --- /dev/null +++ b/e2sm/lib/PolicyAction-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "PolicyAction-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_PolicyAction_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PolicyAction_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct PolicyAction_RANParameter_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct PolicyAction_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_PolicyAction_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_PolicyAction_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PolicyAction_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PolicyAction_RANParameter_Item_specs_1 = { + sizeof(struct PolicyAction_RANParameter_Item), + offsetof(struct PolicyAction_RANParameter_Item, _asn_ctx), + asn_MAP_PolicyAction_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_PolicyAction_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PolicyAction_RANParameter_Item = { + "PolicyAction-RANParameter-Item", + "PolicyAction-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_PolicyAction_RANParameter_Item_tags_1, + sizeof(asn_DEF_PolicyAction_RANParameter_Item_tags_1) + /sizeof(asn_DEF_PolicyAction_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_PolicyAction_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_PolicyAction_RANParameter_Item_tags_1) + /sizeof(asn_DEF_PolicyAction_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PolicyAction_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_PolicyAction_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/PolicyCondition-RANParameter-Item.c b/e2sm/lib/PolicyCondition-RANParameter-Item.c new file mode 100644 index 0000000..33f64df --- /dev/null +++ b/e2sm/lib/PolicyCondition-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "PolicyCondition-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_PolicyCondition_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct PolicyCondition_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct PolicyCondition_RANParameter_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct PolicyCondition_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_PolicyCondition_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_PolicyCondition_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_PolicyCondition_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_PolicyCondition_RANParameter_Item_specs_1 = { + sizeof(struct PolicyCondition_RANParameter_Item), + offsetof(struct PolicyCondition_RANParameter_Item, _asn_ctx), + asn_MAP_PolicyCondition_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_PolicyCondition_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_PolicyCondition_RANParameter_Item = { + "PolicyCondition-RANParameter-Item", + "PolicyCondition-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_PolicyCondition_RANParameter_Item_tags_1, + sizeof(asn_DEF_PolicyCondition_RANParameter_Item_tags_1) + /sizeof(asn_DEF_PolicyCondition_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_PolicyCondition_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_PolicyCondition_RANParameter_Item_tags_1) + /sizeof(asn_DEF_PolicyCondition_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_PolicyCondition_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_PolicyCondition_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/Presence.c b/e2sm/lib/Presence.c deleted file mode 100644 index b2e8cda..0000000 --- a/e2sm/lib/Presence.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "Presence.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_Presence_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_Presence_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_Presence_value2enum_1[] = { - { 0, 8, "optional" }, - { 1, 11, "conditional" }, - { 2, 9, "mandatory" } -}; -static const unsigned int asn_MAP_Presence_enum2value_1[] = { - 1, /* conditional(1) */ - 2, /* mandatory(2) */ - 0 /* optional(0) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_Presence_specs_1 = { - asn_MAP_Presence_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_Presence_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_Presence_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_Presence = { - "Presence", - "Presence", - &asn_OP_NativeEnumerated, - asn_DEF_Presence_tags_1, - sizeof(asn_DEF_Presence_tags_1) - /sizeof(asn_DEF_Presence_tags_1[0]), /* 1 */ - asn_DEF_Presence_tags_1, /* Same as above */ - sizeof(asn_DEF_Presence_tags_1) - /sizeof(asn_DEF_Presence_tags_1[0]), /* 1 */ - { &asn_OER_type_Presence_constr_1, &asn_PER_type_Presence_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_Presence_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/QCI.c b/e2sm/lib/QCI.c index 61627ee..0261082 100644 --- a/e2sm/lib/QCI.c +++ b/e2sm/lib/QCI.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -37,10 +37,10 @@ QCI_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * so here we adjust the DEF accordingly. */ static asn_oer_constraints_t asn_OER_type_QCI_constr_1 CC_NOTUSED = { - { 0, 0 }, + { 1, 1 } /* (0..255) */, -1}; asn_per_constraints_t asn_PER_type_QCI_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 0, 255 } /* (0..255,...) */, + { APC_CONSTRAINED, 8, 8, 0, 255 } /* (0..255) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; diff --git a/e2sm/lib/QoSID.c b/e2sm/lib/QoSID.c new file mode 100644 index 0000000..ea37ef5 --- /dev/null +++ b/e2sm/lib/QoSID.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "QoSID.h" + +static asn_oer_constraints_t asn_OER_type_QoSID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_QoSID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_QoSID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct QoSID, choice.fiveGC), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_FiveQI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "fiveGC" + }, + { ATF_NOFLAGS, 0, offsetof(struct QoSID, choice.ePC), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_QCI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ePC" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_QoSID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* fiveGC */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ePC */ +}; +static asn_CHOICE_specifics_t asn_SPC_QoSID_specs_1 = { + sizeof(struct QoSID), + offsetof(struct QoSID, _asn_ctx), + offsetof(struct QoSID, present), + sizeof(((struct QoSID *)0)->present), + asn_MAP_QoSID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_QoSID = { + "QoSID", + "QoSID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_QoSID_constr_1, &asn_PER_type_QoSID_constr_1, CHOICE_constraint }, + asn_MBR_QoSID_1, + 2, /* Elements count */ + &asn_SPC_QoSID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/QosFlowIdentifier.c b/e2sm/lib/QosFlowIdentifier.c new file mode 100644 index 0000000..f2bf382 --- /dev/null +++ b/e2sm/lib/QosFlowIdentifier.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "QosFlowIdentifier.h" + +int +QosFlowIdentifier_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 0 && value <= 63)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_QosFlowIdentifier_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_QosFlowIdentifier_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 6, 6, 0, 63 } /* (0..63,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_QosFlowIdentifier_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_QosFlowIdentifier = { + "QosFlowIdentifier", + "QosFlowIdentifier", + &asn_OP_NativeInteger, + asn_DEF_QosFlowIdentifier_tags_1, + sizeof(asn_DEF_QosFlowIdentifier_tags_1) + /sizeof(asn_DEF_QosFlowIdentifier_tags_1[0]), /* 1 */ + asn_DEF_QosFlowIdentifier_tags_1, /* Same as above */ + sizeof(asn_DEF_QosFlowIdentifier_tags_1) + /sizeof(asn_DEF_QosFlowIdentifier_tags_1[0]), /* 1 */ + { &asn_OER_type_QosFlowIdentifier_constr_1, &asn_PER_type_QosFlowIdentifier_constr_1, QosFlowIdentifier_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RAN-CallProcess-ID.c b/e2sm/lib/RAN-CallProcess-ID.c new file mode 100644 index 0000000..20284f3 --- /dev/null +++ b/e2sm/lib/RAN-CallProcess-ID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RAN-CallProcess-ID.h" + +int +RAN_CallProcess_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 232)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RAN_CallProcess_ID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RAN_CallProcess_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 1, 232 } /* (1..232,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RAN_CallProcess_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RAN_CallProcess_ID = { + "RAN-CallProcess-ID", + "RAN-CallProcess-ID", + &asn_OP_NativeInteger, + asn_DEF_RAN_CallProcess_ID_tags_1, + sizeof(asn_DEF_RAN_CallProcess_ID_tags_1) + /sizeof(asn_DEF_RAN_CallProcess_ID_tags_1[0]), /* 1 */ + asn_DEF_RAN_CallProcess_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_RAN_CallProcess_ID_tags_1) + /sizeof(asn_DEF_RAN_CallProcess_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_RAN_CallProcess_ID_constr_1, &asn_PER_type_RAN_CallProcess_ID_constr_1, RAN_CallProcess_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RAN-Container.c b/e2sm/lib/RAN-Container.c deleted file mode 100644 index 00ae3b9..0000000 --- a/e2sm/lib/RAN-Container.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RAN-Container.h" - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_RAN_Container_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RAN_Container = { - "RAN-Container", - "RAN-Container", - &asn_OP_OCTET_STRING, - asn_DEF_RAN_Container_tags_1, - sizeof(asn_DEF_RAN_Container_tags_1) - /sizeof(asn_DEF_RAN_Container_tags_1[0]), /* 1 */ - asn_DEF_RAN_Container_tags_1, /* Same as above */ - sizeof(asn_DEF_RAN_Container_tags_1) - /sizeof(asn_DEF_RAN_Container_tags_1[0]), /* 1 */ - { 0, 0, OCTET_STRING_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/e2sm/lib/RAN-ControlParameter-Item.c b/e2sm/lib/RAN-ControlParameter-Item.c deleted file mode 100644 index 4ae973e..0000000 --- a/e2sm/lib/RAN-ControlParameter-Item.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RAN-ControlParameter-Item.h" - -asn_TYPE_member_t asn_MBR_RAN_ControlParameter_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RAN_ControlParameter_Item, ranParameter_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RANParameter_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ranParameter-ID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RAN_ControlParameter_Item, ranParameter_Name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RANParameter_Name, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ranParameter-Name" - }, -}; -static const ber_tlv_tag_t asn_DEF_RAN_ControlParameter_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RAN_ControlParameter_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-Name */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RAN_ControlParameter_Item_specs_1 = { - sizeof(struct RAN_ControlParameter_Item), - offsetof(struct RAN_ControlParameter_Item, _asn_ctx), - asn_MAP_RAN_ControlParameter_Item_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RAN_ControlParameter_Item = { - "RAN-ControlParameter-Item", - "RAN-ControlParameter-Item", - &asn_OP_SEQUENCE, - asn_DEF_RAN_ControlParameter_Item_tags_1, - sizeof(asn_DEF_RAN_ControlParameter_Item_tags_1) - /sizeof(asn_DEF_RAN_ControlParameter_Item_tags_1[0]), /* 1 */ - asn_DEF_RAN_ControlParameter_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_RAN_ControlParameter_Item_tags_1) - /sizeof(asn_DEF_RAN_ControlParameter_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RAN_ControlParameter_Item_1, - 2, /* Elements count */ - &asn_SPC_RAN_ControlParameter_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/RANFunctionDefinition-Control-Action-Item.c b/e2sm/lib/RANFunctionDefinition-Control-Action-Item.c new file mode 100644 index 0000000..8cfa771 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Control-Action-Item.c @@ -0,0 +1,152 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Control-Action-Item.h" + +#include "ControlAction-RANParameter-Item.h" +static int +memb_ran_ControlActionParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ran_ControlActionParameters_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_ControlActionParameters_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_ControlActionParameters_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_ControlActionParameters_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ran_ControlActionParameters_List_4[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ControlAction_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_ControlActionParameters_List_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_ControlActionParameters_List_specs_4 = { + sizeof(struct RANFunctionDefinition_Control_Action_Item__ran_ControlActionParameters_List), + offsetof(struct RANFunctionDefinition_Control_Action_Item__ran_ControlActionParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_ControlActionParameters_List_4 = { + "ran-ControlActionParameters-List", + "ran-ControlActionParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_ControlActionParameters_List_tags_4, + sizeof(asn_DEF_ran_ControlActionParameters_List_tags_4) + /sizeof(asn_DEF_ran_ControlActionParameters_List_tags_4[0]) - 1, /* 1 */ + asn_DEF_ran_ControlActionParameters_List_tags_4, /* Same as above */ + sizeof(asn_DEF_ran_ControlActionParameters_List_tags_4) + /sizeof(asn_DEF_ran_ControlActionParameters_List_tags_4[0]), /* 2 */ + { &asn_OER_type_ran_ControlActionParameters_List_constr_4, &asn_PER_type_ran_ControlActionParameters_List_constr_4, SEQUENCE_OF_constraint }, + asn_MBR_ran_ControlActionParameters_List_4, + 1, /* Single element */ + &asn_SPC_ran_ControlActionParameters_List_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Control_Action_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Control_Action_Item, ric_ControlAction_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_ControlAction_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ControlAction-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Control_Action_Item, ric_ControlAction_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_ControlAction_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ControlAction-Name" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Control_Action_Item, ran_ControlActionParameters_List), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_ran_ControlActionParameters_List_4, + 0, + { &asn_OER_memb_ran_ControlActionParameters_List_constr_4, &asn_PER_memb_ran_ControlActionParameters_List_constr_4, memb_ran_ControlActionParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-ControlActionParameters-List" + }, +}; +static const int asn_MAP_RANFunctionDefinition_Control_Action_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Control_Action_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Control_Action_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-ControlAction-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-ControlAction-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ran-ControlActionParameters-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Control_Action_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_Control_Action_Item), + offsetof(struct RANFunctionDefinition_Control_Action_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_Control_Action_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RANFunctionDefinition_Control_Action_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Control_Action_Item = { + "RANFunctionDefinition-Control-Action-Item", + "RANFunctionDefinition-Control-Action-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Control_Action_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Control_Action_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Control_Action_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Control_Action_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Control_Action_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Control_Action_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Control_Action_Item_1, + 3, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Control_Action_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Control-Item.c b/e2sm/lib/RANFunctionDefinition-Control-Item.c new file mode 100644 index 0000000..4497d29 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Control-Item.c @@ -0,0 +1,282 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Control-Item.h" + +#include "RANFunctionDefinition-Control-Action-Item.h" +#include "ControlOutcome-RANParameter-Item.h" +static int +memb_ric_ControlAction_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_ran_ControlOutcomeParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 255)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ric_ControlAction_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ric_ControlAction_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ran_ControlOutcomeParameters_List_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_type_ran_ControlOutcomeParameters_List_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ric_ControlAction_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ric_ControlAction_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_ControlOutcomeParameters_List_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +static asn_per_constraints_t asn_PER_memb_ran_ControlOutcomeParameters_List_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_ControlAction_List_4[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_Control_Action_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ric_ControlAction_List_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ric_ControlAction_List_specs_4 = { + sizeof(struct RANFunctionDefinition_Control_Item__ric_ControlAction_List), + offsetof(struct RANFunctionDefinition_Control_Item__ric_ControlAction_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_ControlAction_List_4 = { + "ric-ControlAction-List", + "ric-ControlAction-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ric_ControlAction_List_tags_4, + sizeof(asn_DEF_ric_ControlAction_List_tags_4) + /sizeof(asn_DEF_ric_ControlAction_List_tags_4[0]) - 1, /* 1 */ + asn_DEF_ric_ControlAction_List_tags_4, /* Same as above */ + sizeof(asn_DEF_ric_ControlAction_List_tags_4) + /sizeof(asn_DEF_ric_ControlAction_List_tags_4[0]), /* 2 */ + { &asn_OER_type_ric_ControlAction_List_constr_4, &asn_PER_type_ric_ControlAction_List_constr_4, SEQUENCE_OF_constraint }, + asn_MBR_ric_ControlAction_List_4, + 1, /* Single element */ + &asn_SPC_ric_ControlAction_List_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ran_ControlOutcomeParameters_List_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_ControlOutcome_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_ControlOutcomeParameters_List_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_ControlOutcomeParameters_List_specs_10 = { + sizeof(struct RANFunctionDefinition_Control_Item__ran_ControlOutcomeParameters_List), + offsetof(struct RANFunctionDefinition_Control_Item__ran_ControlOutcomeParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_ControlOutcomeParameters_List_10 = { + "ran-ControlOutcomeParameters-List", + "ran-ControlOutcomeParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_ControlOutcomeParameters_List_tags_10, + sizeof(asn_DEF_ran_ControlOutcomeParameters_List_tags_10) + /sizeof(asn_DEF_ran_ControlOutcomeParameters_List_tags_10[0]) - 1, /* 1 */ + asn_DEF_ran_ControlOutcomeParameters_List_tags_10, /* Same as above */ + sizeof(asn_DEF_ran_ControlOutcomeParameters_List_tags_10) + /sizeof(asn_DEF_ran_ControlOutcomeParameters_List_tags_10[0]), /* 2 */ + { &asn_OER_type_ran_ControlOutcomeParameters_List_constr_10, &asn_PER_type_ran_ControlOutcomeParameters_List_constr_10, SEQUENCE_OF_constraint }, + asn_MBR_ran_ControlOutcomeParameters_List_10, + 1, /* Single element */ + &asn_SPC_ran_ControlOutcomeParameters_List_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Control_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Control_Item, ric_ControlStyle_Type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ControlStyle-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Control_Item, ric_ControlStyle_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ControlStyle-Name" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Control_Item, ric_ControlAction_List), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_ric_ControlAction_List_4, + 0, + { &asn_OER_memb_ric_ControlAction_List_constr_4, &asn_PER_memb_ric_ControlAction_List_constr_4, memb_ric_ControlAction_List_constraint_1 }, + 0, 0, /* No default value */ + "ric-ControlAction-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Control_Item, ric_ControlHeaderFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ControlHeaderFormat-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Control_Item, ric_ControlMessageFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ControlMessageFormat-Type" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Control_Item, ric_CallProcessIDFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-CallProcessIDFormat-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Control_Item, ric_ControlOutcomeFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ControlOutcomeFormat-Type" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Control_Item, ran_ControlOutcomeParameters_List), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + 0, + &asn_DEF_ran_ControlOutcomeParameters_List_10, + 0, + { &asn_OER_memb_ran_ControlOutcomeParameters_List_constr_10, &asn_PER_memb_ran_ControlOutcomeParameters_List_constr_10, memb_ran_ControlOutcomeParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-ControlOutcomeParameters-List" + }, +}; +static const int asn_MAP_RANFunctionDefinition_Control_Item_oms_1[] = { 2, 5, 7 }; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Control_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Control_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-ControlStyle-Type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-ControlStyle-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ric-ControlAction-List */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ric-ControlHeaderFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ric-ControlMessageFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* ric-CallProcessIDFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* ric-ControlOutcomeFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* ran-ControlOutcomeParameters-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Control_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_Control_Item), + offsetof(struct RANFunctionDefinition_Control_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_Control_Item_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_RANFunctionDefinition_Control_Item_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Control_Item = { + "RANFunctionDefinition-Control-Item", + "RANFunctionDefinition-Control-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Control_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Control_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Control_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Control_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Control_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Control_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Control_Item_1, + 8, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Control_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Control.c b/e2sm/lib/RANFunctionDefinition-Control.c new file mode 100644 index 0000000..ca30d07 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Control.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Control.h" + +#include "RANFunctionDefinition-Control-Item.h" +static int +memb_ric_ControlStyle_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ric_ControlStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_ric_ControlStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ric_ControlStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_ric_ControlStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_ControlStyle_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_Control_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ric_ControlStyle_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ric_ControlStyle_List_specs_2 = { + sizeof(struct RANFunctionDefinition_Control__ric_ControlStyle_List), + offsetof(struct RANFunctionDefinition_Control__ric_ControlStyle_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_ControlStyle_List_2 = { + "ric-ControlStyle-List", + "ric-ControlStyle-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ric_ControlStyle_List_tags_2, + sizeof(asn_DEF_ric_ControlStyle_List_tags_2) + /sizeof(asn_DEF_ric_ControlStyle_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ric_ControlStyle_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ric_ControlStyle_List_tags_2) + /sizeof(asn_DEF_ric_ControlStyle_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ric_ControlStyle_List_constr_2, &asn_PER_type_ric_ControlStyle_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ric_ControlStyle_List_2, + 1, /* Single element */ + &asn_SPC_ric_ControlStyle_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Control_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Control, ric_ControlStyle_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ric_ControlStyle_List_2, + 0, + { &asn_OER_memb_ric_ControlStyle_List_constr_2, &asn_PER_memb_ric_ControlStyle_List_constr_2, memb_ric_ControlStyle_List_constraint_1 }, + 0, 0, /* No default value */ + "ric-ControlStyle-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Control_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Control_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-ControlStyle-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Control_specs_1 = { + sizeof(struct RANFunctionDefinition_Control), + offsetof(struct RANFunctionDefinition_Control, _asn_ctx), + asn_MAP_RANFunctionDefinition_Control_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Control = { + "RANFunctionDefinition-Control", + "RANFunctionDefinition-Control", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Control_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Control_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Control_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Control_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Control_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Control_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Control_1, + 1, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Control_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-EventTrigger-Breakpoint-Item.c b/e2sm/lib/RANFunctionDefinition-EventTrigger-Breakpoint-Item.c new file mode 100644 index 0000000..e70a4f4 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-EventTrigger-Breakpoint-Item.c @@ -0,0 +1,152 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-EventTrigger-Breakpoint-Item.h" + +#include "CallProcessBreakpoint-RANParameter-Item.h" +static int +memb_ran_CallProcessBreakpointParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ran_CallProcessBreakpointParameters_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_CallProcessBreakpointParameters_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_CallProcessBreakpointParameters_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_CallProcessBreakpointParameters_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ran_CallProcessBreakpointParameters_List_4[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_CallProcessBreakpoint_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_CallProcessBreakpointParameters_List_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_CallProcessBreakpointParameters_List_specs_4 = { + sizeof(struct RANFunctionDefinition_EventTrigger_Breakpoint_Item__ran_CallProcessBreakpointParameters_List), + offsetof(struct RANFunctionDefinition_EventTrigger_Breakpoint_Item__ran_CallProcessBreakpointParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_CallProcessBreakpointParameters_List_4 = { + "ran-CallProcessBreakpointParameters-List", + "ran-CallProcessBreakpointParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_CallProcessBreakpointParameters_List_tags_4, + sizeof(asn_DEF_ran_CallProcessBreakpointParameters_List_tags_4) + /sizeof(asn_DEF_ran_CallProcessBreakpointParameters_List_tags_4[0]) - 1, /* 1 */ + asn_DEF_ran_CallProcessBreakpointParameters_List_tags_4, /* Same as above */ + sizeof(asn_DEF_ran_CallProcessBreakpointParameters_List_tags_4) + /sizeof(asn_DEF_ran_CallProcessBreakpointParameters_List_tags_4[0]), /* 2 */ + { &asn_OER_type_ran_CallProcessBreakpointParameters_List_constr_4, &asn_PER_type_ran_CallProcessBreakpointParameters_List_constr_4, SEQUENCE_OF_constraint }, + asn_MBR_ran_CallProcessBreakpointParameters_List_4, + 1, /* Single element */ + &asn_SPC_ran_CallProcessBreakpointParameters_List_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_EventTrigger_Breakpoint_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_EventTrigger_Breakpoint_Item, callProcessBreakpoint_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_CallProcessBreakpoint_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "callProcessBreakpoint-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_EventTrigger_Breakpoint_Item, callProcessBreakpoint_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_CallProcessBreakpoint_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "callProcessBreakpoint-Name" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_EventTrigger_Breakpoint_Item, ran_CallProcessBreakpointParameters_List), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_ran_CallProcessBreakpointParameters_List_4, + 0, + { &asn_OER_memb_ran_CallProcessBreakpointParameters_List_constr_4, &asn_PER_memb_ran_CallProcessBreakpointParameters_List_constr_4, memb_ran_CallProcessBreakpointParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-CallProcessBreakpointParameters-List" + }, +}; +static const int asn_MAP_RANFunctionDefinition_EventTrigger_Breakpoint_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_EventTrigger_Breakpoint_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* callProcessBreakpoint-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* callProcessBreakpoint-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ran-CallProcessBreakpointParameters-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_EventTrigger_Breakpoint_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_EventTrigger_Breakpoint_Item), + offsetof(struct RANFunctionDefinition_EventTrigger_Breakpoint_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_EventTrigger_Breakpoint_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RANFunctionDefinition_EventTrigger_Breakpoint_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item = { + "RANFunctionDefinition-EventTrigger-Breakpoint-Item", + "RANFunctionDefinition-EventTrigger-Breakpoint-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_EventTrigger_Breakpoint_Item_1, + 3, /* Elements count */ + &asn_SPC_RANFunctionDefinition_EventTrigger_Breakpoint_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-EventTrigger-CallProcess-Item.c b/e2sm/lib/RANFunctionDefinition-EventTrigger-CallProcess-Item.c new file mode 100644 index 0000000..58e1815 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-EventTrigger-CallProcess-Item.c @@ -0,0 +1,150 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-EventTrigger-CallProcess-Item.h" + +#include "RANFunctionDefinition-EventTrigger-Breakpoint-Item.h" +static int +memb_callProcessBreakpoints_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_callProcessBreakpoints_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_callProcessBreakpoints_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_callProcessBreakpoints_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_callProcessBreakpoints_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_callProcessBreakpoints_List_4[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_EventTrigger_Breakpoint_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_callProcessBreakpoints_List_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_callProcessBreakpoints_List_specs_4 = { + sizeof(struct RANFunctionDefinition_EventTrigger_CallProcess_Item__callProcessBreakpoints_List), + offsetof(struct RANFunctionDefinition_EventTrigger_CallProcess_Item__callProcessBreakpoints_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_callProcessBreakpoints_List_4 = { + "callProcessBreakpoints-List", + "callProcessBreakpoints-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_callProcessBreakpoints_List_tags_4, + sizeof(asn_DEF_callProcessBreakpoints_List_tags_4) + /sizeof(asn_DEF_callProcessBreakpoints_List_tags_4[0]) - 1, /* 1 */ + asn_DEF_callProcessBreakpoints_List_tags_4, /* Same as above */ + sizeof(asn_DEF_callProcessBreakpoints_List_tags_4) + /sizeof(asn_DEF_callProcessBreakpoints_List_tags_4[0]), /* 2 */ + { &asn_OER_type_callProcessBreakpoints_List_constr_4, &asn_PER_type_callProcessBreakpoints_List_constr_4, SEQUENCE_OF_constraint }, + asn_MBR_callProcessBreakpoints_List_4, + 1, /* Single element */ + &asn_SPC_callProcessBreakpoints_List_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_EventTrigger_CallProcess_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_EventTrigger_CallProcess_Item, callProcessType_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_CallProcessType_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "callProcessType-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_EventTrigger_CallProcess_Item, callProcessType_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_CallProcessType_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "callProcessType-Name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_EventTrigger_CallProcess_Item, callProcessBreakpoints_List), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_callProcessBreakpoints_List_4, + 0, + { &asn_OER_memb_callProcessBreakpoints_List_constr_4, &asn_PER_memb_callProcessBreakpoints_List_constr_4, memb_callProcessBreakpoints_List_constraint_1 }, + 0, 0, /* No default value */ + "callProcessBreakpoints-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_EventTrigger_CallProcess_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* callProcessType-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* callProcessType-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* callProcessBreakpoints-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_EventTrigger_CallProcess_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_EventTrigger_CallProcess_Item), + offsetof(struct RANFunctionDefinition_EventTrigger_CallProcess_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_EventTrigger_CallProcess_Item_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item = { + "RANFunctionDefinition-EventTrigger-CallProcess-Item", + "RANFunctionDefinition-EventTrigger-CallProcess-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_EventTrigger_CallProcess_Item_1, + 3, /* Elements count */ + &asn_SPC_RANFunctionDefinition_EventTrigger_CallProcess_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-EventTrigger-Style-Item.c b/e2sm/lib/RANFunctionDefinition-EventTrigger-Style-Item.c new file mode 100644 index 0000000..2181f74 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-EventTrigger-Style-Item.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-EventTrigger-Style-Item.h" + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_EventTrigger_Style_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_EventTrigger_Style_Item, ric_EventTriggerStyle_Type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-EventTriggerStyle-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_EventTrigger_Style_Item, ric_EventTriggerStyle_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-EventTriggerStyle-Name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_EventTrigger_Style_Item, ric_EventTriggerFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-EventTriggerFormat-Type" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_EventTrigger_Style_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-EventTriggerStyle-Type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-EventTriggerStyle-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ric-EventTriggerFormat-Type */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_EventTrigger_Style_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_EventTrigger_Style_Item), + offsetof(struct RANFunctionDefinition_EventTrigger_Style_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_EventTrigger_Style_Item_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item = { + "RANFunctionDefinition-EventTrigger-Style-Item", + "RANFunctionDefinition-EventTrigger-Style-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_EventTrigger_Style_Item_1, + 3, /* Elements count */ + &asn_SPC_RANFunctionDefinition_EventTrigger_Style_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-EventTrigger.c b/e2sm/lib/RANFunctionDefinition-EventTrigger.c new file mode 100644 index 0000000..fab4046 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-EventTrigger.c @@ -0,0 +1,492 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-EventTrigger.h" + +#include "RANFunctionDefinition-EventTrigger-Style-Item.h" +#include "L2Parameters-RANParameter-Item.h" +#include "RANFunctionDefinition-EventTrigger-CallProcess-Item.h" +#include "UEIdentification-RANParameter-Item.h" +#include "CellIdentification-RANParameter-Item.h" +static int +memb_ric_EventTriggerStyle_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_ran_L2Parameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_ran_CallProcessTypes_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_ran_UEIdentificationParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_ran_CellIdentificationParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ric_EventTriggerStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_ric_EventTriggerStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ran_L2Parameters_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_L2Parameters_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ran_CallProcessTypes_List_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_CallProcessTypes_List_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ran_UEIdentificationParameters_List_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_UEIdentificationParameters_List_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ran_CellIdentificationParameters_List_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_CellIdentificationParameters_List_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ric_EventTriggerStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_ric_EventTriggerStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_L2Parameters_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_L2Parameters_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_CallProcessTypes_List_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_CallProcessTypes_List_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_UEIdentificationParameters_List_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_UEIdentificationParameters_List_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_CellIdentificationParameters_List_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_CellIdentificationParameters_List_constr_10 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_EventTriggerStyle_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_EventTrigger_Style_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ric_EventTriggerStyle_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ric_EventTriggerStyle_List_specs_2 = { + sizeof(struct RANFunctionDefinition_EventTrigger__ric_EventTriggerStyle_List), + offsetof(struct RANFunctionDefinition_EventTrigger__ric_EventTriggerStyle_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_EventTriggerStyle_List_2 = { + "ric-EventTriggerStyle-List", + "ric-EventTriggerStyle-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ric_EventTriggerStyle_List_tags_2, + sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_2) + /sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ric_EventTriggerStyle_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_2) + /sizeof(asn_DEF_ric_EventTriggerStyle_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ric_EventTriggerStyle_List_constr_2, &asn_PER_type_ric_EventTriggerStyle_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ric_EventTriggerStyle_List_2, + 1, /* Single element */ + &asn_SPC_ric_EventTriggerStyle_List_specs_2 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ran_L2Parameters_List_4[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_L2Parameters_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_L2Parameters_List_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_L2Parameters_List_specs_4 = { + sizeof(struct RANFunctionDefinition_EventTrigger__ran_L2Parameters_List), + offsetof(struct RANFunctionDefinition_EventTrigger__ran_L2Parameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_L2Parameters_List_4 = { + "ran-L2Parameters-List", + "ran-L2Parameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_L2Parameters_List_tags_4, + sizeof(asn_DEF_ran_L2Parameters_List_tags_4) + /sizeof(asn_DEF_ran_L2Parameters_List_tags_4[0]) - 1, /* 1 */ + asn_DEF_ran_L2Parameters_List_tags_4, /* Same as above */ + sizeof(asn_DEF_ran_L2Parameters_List_tags_4) + /sizeof(asn_DEF_ran_L2Parameters_List_tags_4[0]), /* 2 */ + { &asn_OER_type_ran_L2Parameters_List_constr_4, &asn_PER_type_ran_L2Parameters_List_constr_4, SEQUENCE_OF_constraint }, + asn_MBR_ran_L2Parameters_List_4, + 1, /* Single element */ + &asn_SPC_ran_L2Parameters_List_specs_4 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ran_CallProcessTypes_List_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_EventTrigger_CallProcess_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_CallProcessTypes_List_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_CallProcessTypes_List_specs_6 = { + sizeof(struct RANFunctionDefinition_EventTrigger__ran_CallProcessTypes_List), + offsetof(struct RANFunctionDefinition_EventTrigger__ran_CallProcessTypes_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_CallProcessTypes_List_6 = { + "ran-CallProcessTypes-List", + "ran-CallProcessTypes-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_CallProcessTypes_List_tags_6, + sizeof(asn_DEF_ran_CallProcessTypes_List_tags_6) + /sizeof(asn_DEF_ran_CallProcessTypes_List_tags_6[0]) - 1, /* 1 */ + asn_DEF_ran_CallProcessTypes_List_tags_6, /* Same as above */ + sizeof(asn_DEF_ran_CallProcessTypes_List_tags_6) + /sizeof(asn_DEF_ran_CallProcessTypes_List_tags_6[0]), /* 2 */ + { &asn_OER_type_ran_CallProcessTypes_List_constr_6, &asn_PER_type_ran_CallProcessTypes_List_constr_6, SEQUENCE_OF_constraint }, + asn_MBR_ran_CallProcessTypes_List_6, + 1, /* Single element */ + &asn_SPC_ran_CallProcessTypes_List_specs_6 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ran_UEIdentificationParameters_List_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_UEIdentification_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_UEIdentificationParameters_List_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_UEIdentificationParameters_List_specs_8 = { + sizeof(struct RANFunctionDefinition_EventTrigger__ran_UEIdentificationParameters_List), + offsetof(struct RANFunctionDefinition_EventTrigger__ran_UEIdentificationParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_UEIdentificationParameters_List_8 = { + "ran-UEIdentificationParameters-List", + "ran-UEIdentificationParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_UEIdentificationParameters_List_tags_8, + sizeof(asn_DEF_ran_UEIdentificationParameters_List_tags_8) + /sizeof(asn_DEF_ran_UEIdentificationParameters_List_tags_8[0]) - 1, /* 1 */ + asn_DEF_ran_UEIdentificationParameters_List_tags_8, /* Same as above */ + sizeof(asn_DEF_ran_UEIdentificationParameters_List_tags_8) + /sizeof(asn_DEF_ran_UEIdentificationParameters_List_tags_8[0]), /* 2 */ + { &asn_OER_type_ran_UEIdentificationParameters_List_constr_8, &asn_PER_type_ran_UEIdentificationParameters_List_constr_8, SEQUENCE_OF_constraint }, + asn_MBR_ran_UEIdentificationParameters_List_8, + 1, /* Single element */ + &asn_SPC_ran_UEIdentificationParameters_List_specs_8 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ran_CellIdentificationParameters_List_10[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_CellIdentification_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_CellIdentificationParameters_List_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_CellIdentificationParameters_List_specs_10 = { + sizeof(struct RANFunctionDefinition_EventTrigger__ran_CellIdentificationParameters_List), + offsetof(struct RANFunctionDefinition_EventTrigger__ran_CellIdentificationParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_CellIdentificationParameters_List_10 = { + "ran-CellIdentificationParameters-List", + "ran-CellIdentificationParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_CellIdentificationParameters_List_tags_10, + sizeof(asn_DEF_ran_CellIdentificationParameters_List_tags_10) + /sizeof(asn_DEF_ran_CellIdentificationParameters_List_tags_10[0]) - 1, /* 1 */ + asn_DEF_ran_CellIdentificationParameters_List_tags_10, /* Same as above */ + sizeof(asn_DEF_ran_CellIdentificationParameters_List_tags_10) + /sizeof(asn_DEF_ran_CellIdentificationParameters_List_tags_10[0]), /* 2 */ + { &asn_OER_type_ran_CellIdentificationParameters_List_constr_10, &asn_PER_type_ran_CellIdentificationParameters_List_constr_10, SEQUENCE_OF_constraint }, + asn_MBR_ran_CellIdentificationParameters_List_10, + 1, /* Single element */ + &asn_SPC_ran_CellIdentificationParameters_List_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_EventTrigger_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_EventTrigger, ric_EventTriggerStyle_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ric_EventTriggerStyle_List_2, + 0, + { &asn_OER_memb_ric_EventTriggerStyle_List_constr_2, &asn_PER_memb_ric_EventTriggerStyle_List_constr_2, memb_ric_EventTriggerStyle_List_constraint_1 }, + 0, 0, /* No default value */ + "ric-EventTriggerStyle-List" + }, + { ATF_POINTER, 4, offsetof(struct RANFunctionDefinition_EventTrigger, ran_L2Parameters_List), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_ran_L2Parameters_List_4, + 0, + { &asn_OER_memb_ran_L2Parameters_List_constr_4, &asn_PER_memb_ran_L2Parameters_List_constr_4, memb_ran_L2Parameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-L2Parameters-List" + }, + { ATF_POINTER, 3, offsetof(struct RANFunctionDefinition_EventTrigger, ran_CallProcessTypes_List), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_ran_CallProcessTypes_List_6, + 0, + { &asn_OER_memb_ran_CallProcessTypes_List_constr_6, &asn_PER_memb_ran_CallProcessTypes_List_constr_6, memb_ran_CallProcessTypes_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-CallProcessTypes-List" + }, + { ATF_POINTER, 2, offsetof(struct RANFunctionDefinition_EventTrigger, ran_UEIdentificationParameters_List), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_ran_UEIdentificationParameters_List_8, + 0, + { &asn_OER_memb_ran_UEIdentificationParameters_List_constr_8, &asn_PER_memb_ran_UEIdentificationParameters_List_constr_8, memb_ran_UEIdentificationParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-UEIdentificationParameters-List" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_EventTrigger, ran_CellIdentificationParameters_List), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_ran_CellIdentificationParameters_List_10, + 0, + { &asn_OER_memb_ran_CellIdentificationParameters_List_constr_10, &asn_PER_memb_ran_CellIdentificationParameters_List_constr_10, memb_ran_CellIdentificationParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-CellIdentificationParameters-List" + }, +}; +static const int asn_MAP_RANFunctionDefinition_EventTrigger_oms_1[] = { 1, 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_EventTrigger_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_EventTrigger_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-EventTriggerStyle-List */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ran-L2Parameters-List */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ran-CallProcessTypes-List */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ran-UEIdentificationParameters-List */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* ran-CellIdentificationParameters-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_EventTrigger_specs_1 = { + sizeof(struct RANFunctionDefinition_EventTrigger), + offsetof(struct RANFunctionDefinition_EventTrigger, _asn_ctx), + asn_MAP_RANFunctionDefinition_EventTrigger_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_RANFunctionDefinition_EventTrigger_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_EventTrigger = { + "RANFunctionDefinition-EventTrigger", + "RANFunctionDefinition-EventTrigger", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_EventTrigger_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_EventTrigger_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_EventTrigger_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_EventTrigger_1, + 5, /* Elements count */ + &asn_SPC_RANFunctionDefinition_EventTrigger_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Insert-Indication-Item.c b/e2sm/lib/RANFunctionDefinition-Insert-Indication-Item.c new file mode 100644 index 0000000..b26f955 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Insert-Indication-Item.c @@ -0,0 +1,152 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Insert-Indication-Item.h" + +#include "InsertIndication-RANParameter-Item.h" +static int +memb_ran_InsertIndicationParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ran_InsertIndicationParameters_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_InsertIndicationParameters_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_InsertIndicationParameters_List_constr_4 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_InsertIndicationParameters_List_constr_4 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ran_InsertIndicationParameters_List_4[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_InsertIndication_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_InsertIndicationParameters_List_tags_4[] = { + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_InsertIndicationParameters_List_specs_4 = { + sizeof(struct RANFunctionDefinition_Insert_Indication_Item__ran_InsertIndicationParameters_List), + offsetof(struct RANFunctionDefinition_Insert_Indication_Item__ran_InsertIndicationParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_InsertIndicationParameters_List_4 = { + "ran-InsertIndicationParameters-List", + "ran-InsertIndicationParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_InsertIndicationParameters_List_tags_4, + sizeof(asn_DEF_ran_InsertIndicationParameters_List_tags_4) + /sizeof(asn_DEF_ran_InsertIndicationParameters_List_tags_4[0]) - 1, /* 1 */ + asn_DEF_ran_InsertIndicationParameters_List_tags_4, /* Same as above */ + sizeof(asn_DEF_ran_InsertIndicationParameters_List_tags_4) + /sizeof(asn_DEF_ran_InsertIndicationParameters_List_tags_4[0]), /* 2 */ + { &asn_OER_type_ran_InsertIndicationParameters_List_constr_4, &asn_PER_type_ran_InsertIndicationParameters_List_constr_4, SEQUENCE_OF_constraint }, + asn_MBR_ran_InsertIndicationParameters_List_4, + 1, /* Single element */ + &asn_SPC_ran_InsertIndicationParameters_List_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Insert_Indication_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert_Indication_Item, ric_InsertIndication_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_InsertIndication_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-InsertIndication-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert_Indication_Item, ric_InsertIndication_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_InsertIndication_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-InsertIndication-Name" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Insert_Indication_Item, ran_InsertIndicationParameters_List), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + 0, + &asn_DEF_ran_InsertIndicationParameters_List_4, + 0, + { &asn_OER_memb_ran_InsertIndicationParameters_List_constr_4, &asn_PER_memb_ran_InsertIndicationParameters_List_constr_4, memb_ran_InsertIndicationParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-InsertIndicationParameters-List" + }, +}; +static const int asn_MAP_RANFunctionDefinition_Insert_Indication_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Insert_Indication_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Insert_Indication_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-InsertIndication-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-InsertIndication-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ran-InsertIndicationParameters-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Insert_Indication_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_Insert_Indication_Item), + offsetof(struct RANFunctionDefinition_Insert_Indication_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_Insert_Indication_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RANFunctionDefinition_Insert_Indication_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Insert_Indication_Item = { + "RANFunctionDefinition-Insert-Indication-Item", + "RANFunctionDefinition-Insert-Indication-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Insert_Indication_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Insert_Indication_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Insert_Indication_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Insert_Indication_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Insert_Indication_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Insert_Indication_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Insert_Indication_Item_1, + 3, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Insert_Indication_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Insert-Item.c b/e2sm/lib/RANFunctionDefinition-Insert-Item.c new file mode 100644 index 0000000..009195a --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Insert-Item.c @@ -0,0 +1,202 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Insert-Item.h" + +#include "RANFunctionDefinition-Insert-Indication-Item.h" +static int +memb_ric_InsertIndication_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ric_InsertIndication_List_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ric_InsertIndication_List_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ric_InsertIndication_List_constr_6 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ric_InsertIndication_List_constr_6 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_InsertIndication_List_6[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_Insert_Indication_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ric_InsertIndication_List_tags_6[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ric_InsertIndication_List_specs_6 = { + sizeof(struct RANFunctionDefinition_Insert_Item__ric_InsertIndication_List), + offsetof(struct RANFunctionDefinition_Insert_Item__ric_InsertIndication_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_InsertIndication_List_6 = { + "ric-InsertIndication-List", + "ric-InsertIndication-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ric_InsertIndication_List_tags_6, + sizeof(asn_DEF_ric_InsertIndication_List_tags_6) + /sizeof(asn_DEF_ric_InsertIndication_List_tags_6[0]) - 1, /* 1 */ + asn_DEF_ric_InsertIndication_List_tags_6, /* Same as above */ + sizeof(asn_DEF_ric_InsertIndication_List_tags_6) + /sizeof(asn_DEF_ric_InsertIndication_List_tags_6[0]), /* 2 */ + { &asn_OER_type_ric_InsertIndication_List_constr_6, &asn_PER_type_ric_InsertIndication_List_constr_6, SEQUENCE_OF_constraint }, + asn_MBR_ric_InsertIndication_List_6, + 1, /* Single element */ + &asn_SPC_ric_InsertIndication_List_specs_6 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Insert_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert_Item, ric_InsertStyle_Type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-InsertStyle-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert_Item, ric_InsertStyle_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-InsertStyle-Name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert_Item, ric_SupportedEventTriggerStyle_Type), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-SupportedEventTriggerStyle-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert_Item, ric_ActionDefinitionFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ActionDefinitionFormat-Type" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Insert_Item, ric_InsertIndication_List), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_ric_InsertIndication_List_6, + 0, + { &asn_OER_memb_ric_InsertIndication_List_constr_6, &asn_PER_memb_ric_InsertIndication_List_constr_6, memb_ric_InsertIndication_List_constraint_1 }, + 0, 0, /* No default value */ + "ric-InsertIndication-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert_Item, ric_IndicationHeaderFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-IndicationHeaderFormat-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert_Item, ric_IndicationMessageFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-IndicationMessageFormat-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert_Item, ric_CallProcessIDFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-CallProcessIDFormat-Type" + }, +}; +static const int asn_MAP_RANFunctionDefinition_Insert_Item_oms_1[] = { 4 }; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Insert_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Insert_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-InsertStyle-Type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-InsertStyle-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ric-SupportedEventTriggerStyle-Type */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ric-ActionDefinitionFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ric-InsertIndication-List */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* ric-IndicationHeaderFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* ric-IndicationMessageFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* ric-CallProcessIDFormat-Type */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Insert_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_Insert_Item), + offsetof(struct RANFunctionDefinition_Insert_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_Insert_Item_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_RANFunctionDefinition_Insert_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 8, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Insert_Item = { + "RANFunctionDefinition-Insert-Item", + "RANFunctionDefinition-Insert-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Insert_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Insert_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Insert_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Insert_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Insert_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Insert_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Insert_Item_1, + 8, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Insert_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Insert.c b/e2sm/lib/RANFunctionDefinition-Insert.c new file mode 100644 index 0000000..462454f --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Insert.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Insert.h" + +#include "RANFunctionDefinition-Insert-Item.h" +static int +memb_ric_InsertStyle_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ric_InsertStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_ric_InsertStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ric_InsertStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_ric_InsertStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_InsertStyle_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_Insert_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ric_InsertStyle_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ric_InsertStyle_List_specs_2 = { + sizeof(struct RANFunctionDefinition_Insert__ric_InsertStyle_List), + offsetof(struct RANFunctionDefinition_Insert__ric_InsertStyle_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_InsertStyle_List_2 = { + "ric-InsertStyle-List", + "ric-InsertStyle-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ric_InsertStyle_List_tags_2, + sizeof(asn_DEF_ric_InsertStyle_List_tags_2) + /sizeof(asn_DEF_ric_InsertStyle_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ric_InsertStyle_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ric_InsertStyle_List_tags_2) + /sizeof(asn_DEF_ric_InsertStyle_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ric_InsertStyle_List_constr_2, &asn_PER_type_ric_InsertStyle_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ric_InsertStyle_List_2, + 1, /* Single element */ + &asn_SPC_ric_InsertStyle_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Insert_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Insert, ric_InsertStyle_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ric_InsertStyle_List_2, + 0, + { &asn_OER_memb_ric_InsertStyle_List_constr_2, &asn_PER_memb_ric_InsertStyle_List_constr_2, memb_ric_InsertStyle_List_constraint_1 }, + 0, 0, /* No default value */ + "ric-InsertStyle-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Insert_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Insert_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-InsertStyle-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Insert_specs_1 = { + sizeof(struct RANFunctionDefinition_Insert), + offsetof(struct RANFunctionDefinition_Insert, _asn_ctx), + asn_MAP_RANFunctionDefinition_Insert_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Insert = { + "RANFunctionDefinition-Insert", + "RANFunctionDefinition-Insert", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Insert_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Insert_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Insert_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Insert_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Insert_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Insert_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Insert_1, + 1, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Insert_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Policy-Action-Item.c b/e2sm/lib/RANFunctionDefinition-Policy-Action-Item.c new file mode 100644 index 0000000..81fd3a8 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Policy-Action-Item.c @@ -0,0 +1,252 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Policy-Action-Item.h" + +#include "PolicyAction-RANParameter-Item.h" +#include "PolicyCondition-RANParameter-Item.h" +static int +memb_ran_PolicyActionParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int +memb_ran_PolicyConditionParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ran_PolicyActionParameters_List_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_PolicyActionParameters_List_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ran_PolicyConditionParameters_List_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_PolicyConditionParameters_List_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_PolicyActionParameters_List_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_PolicyActionParameters_List_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_PolicyConditionParameters_List_constr_7 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_PolicyConditionParameters_List_constr_7 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ran_PolicyActionParameters_List_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PolicyAction_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_PolicyActionParameters_List_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_PolicyActionParameters_List_specs_5 = { + sizeof(struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyActionParameters_List), + offsetof(struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyActionParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_PolicyActionParameters_List_5 = { + "ran-PolicyActionParameters-List", + "ran-PolicyActionParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_PolicyActionParameters_List_tags_5, + sizeof(asn_DEF_ran_PolicyActionParameters_List_tags_5) + /sizeof(asn_DEF_ran_PolicyActionParameters_List_tags_5[0]) - 1, /* 1 */ + asn_DEF_ran_PolicyActionParameters_List_tags_5, /* Same as above */ + sizeof(asn_DEF_ran_PolicyActionParameters_List_tags_5) + /sizeof(asn_DEF_ran_PolicyActionParameters_List_tags_5[0]), /* 2 */ + { &asn_OER_type_ran_PolicyActionParameters_List_constr_5, &asn_PER_type_ran_PolicyActionParameters_List_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_ran_PolicyActionParameters_List_5, + 1, /* Single element */ + &asn_SPC_ran_PolicyActionParameters_List_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_ran_PolicyConditionParameters_List_7[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_PolicyCondition_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_PolicyConditionParameters_List_tags_7[] = { + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_PolicyConditionParameters_List_specs_7 = { + sizeof(struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyConditionParameters_List), + offsetof(struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyConditionParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_PolicyConditionParameters_List_7 = { + "ran-PolicyConditionParameters-List", + "ran-PolicyConditionParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_PolicyConditionParameters_List_tags_7, + sizeof(asn_DEF_ran_PolicyConditionParameters_List_tags_7) + /sizeof(asn_DEF_ran_PolicyConditionParameters_List_tags_7[0]) - 1, /* 1 */ + asn_DEF_ran_PolicyConditionParameters_List_tags_7, /* Same as above */ + sizeof(asn_DEF_ran_PolicyConditionParameters_List_tags_7) + /sizeof(asn_DEF_ran_PolicyConditionParameters_List_tags_7[0]), /* 2 */ + { &asn_OER_type_ran_PolicyConditionParameters_List_constr_7, &asn_PER_type_ran_PolicyConditionParameters_List_constr_7, SEQUENCE_OF_constraint }, + asn_MBR_ran_PolicyConditionParameters_List_7, + 1, /* Single element */ + &asn_SPC_ran_PolicyConditionParameters_List_specs_7 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Policy_Action_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ric_PolicyAction_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_ControlAction_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-PolicyAction-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ric_PolicyAction_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_ControlAction_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-PolicyAction-Name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ric_ActionDefinitionFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ActionDefinitionFormat-Type" + }, + { ATF_POINTER, 2, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ran_PolicyActionParameters_List), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_ran_PolicyActionParameters_List_5, + 0, + { &asn_OER_memb_ran_PolicyActionParameters_List_constr_5, &asn_PER_memb_ran_PolicyActionParameters_List_constr_5, memb_ran_PolicyActionParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-PolicyActionParameters-List" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ran_PolicyConditionParameters_List), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + 0, + &asn_DEF_ran_PolicyConditionParameters_List_7, + 0, + { &asn_OER_memb_ran_PolicyConditionParameters_List_constr_7, &asn_PER_memb_ran_PolicyConditionParameters_List_constr_7, memb_ran_PolicyConditionParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-PolicyConditionParameters-List" + }, +}; +static const int asn_MAP_RANFunctionDefinition_Policy_Action_Item_oms_1[] = { 3, 4 }; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Policy_Action_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-PolicyAction-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-PolicyAction-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ric-ActionDefinitionFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ran-PolicyActionParameters-List */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* ran-PolicyConditionParameters-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Policy_Action_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_Policy_Action_Item), + offsetof(struct RANFunctionDefinition_Policy_Action_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_Policy_Action_Item_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_RANFunctionDefinition_Policy_Action_Item_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Policy_Action_Item = { + "RANFunctionDefinition-Policy-Action-Item", + "RANFunctionDefinition-Policy-Action-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Policy_Action_Item_1, + 5, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Policy_Action_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Policy-Item.c b/e2sm/lib/RANFunctionDefinition-Policy-Item.c new file mode 100644 index 0000000..77b82ec --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Policy-Item.c @@ -0,0 +1,162 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Policy-Item.h" + +#include "RANFunctionDefinition-Policy-Action-Item.h" +static int +memb_ric_PolicyAction_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ric_PolicyAction_List_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ric_PolicyAction_List_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ric_PolicyAction_List_constr_5 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ric_PolicyAction_List_constr_5 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_PolicyAction_List_5[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_Policy_Action_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ric_PolicyAction_List_tags_5[] = { + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ric_PolicyAction_List_specs_5 = { + sizeof(struct RANFunctionDefinition_Policy_Item__ric_PolicyAction_List), + offsetof(struct RANFunctionDefinition_Policy_Item__ric_PolicyAction_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_PolicyAction_List_5 = { + "ric-PolicyAction-List", + "ric-PolicyAction-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ric_PolicyAction_List_tags_5, + sizeof(asn_DEF_ric_PolicyAction_List_tags_5) + /sizeof(asn_DEF_ric_PolicyAction_List_tags_5[0]) - 1, /* 1 */ + asn_DEF_ric_PolicyAction_List_tags_5, /* Same as above */ + sizeof(asn_DEF_ric_PolicyAction_List_tags_5) + /sizeof(asn_DEF_ric_PolicyAction_List_tags_5[0]), /* 2 */ + { &asn_OER_type_ric_PolicyAction_List_constr_5, &asn_PER_type_ric_PolicyAction_List_constr_5, SEQUENCE_OF_constraint }, + asn_MBR_ric_PolicyAction_List_5, + 1, /* Single element */ + &asn_SPC_ric_PolicyAction_List_specs_5 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Policy_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy_Item, ric_PolicyStyle_Type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-PolicyStyle-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy_Item, ric_PolicyStyle_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-PolicyStyle-Name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy_Item, ric_SupportedEventTriggerStyle_Type), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-SupportedEventTriggerStyle-Type" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Policy_Item, ric_PolicyAction_List), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + 0, + &asn_DEF_ric_PolicyAction_List_5, + 0, + { &asn_OER_memb_ric_PolicyAction_List_constr_5, &asn_PER_memb_ric_PolicyAction_List_constr_5, memb_ric_PolicyAction_List_constraint_1 }, + 0, 0, /* No default value */ + "ric-PolicyAction-List" + }, +}; +static const int asn_MAP_RANFunctionDefinition_Policy_Item_oms_1[] = { 3 }; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Policy_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Policy_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-PolicyStyle-Type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-PolicyStyle-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ric-SupportedEventTriggerStyle-Type */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ric-PolicyAction-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Policy_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_Policy_Item), + offsetof(struct RANFunctionDefinition_Policy_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_Policy_Item_tag2el_1, + 4, /* Count of tags in the map */ + asn_MAP_RANFunctionDefinition_Policy_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 4, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Policy_Item = { + "RANFunctionDefinition-Policy-Item", + "RANFunctionDefinition-Policy-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Policy_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Policy_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Policy_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Policy_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Policy_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Policy_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Policy_Item_1, + 4, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Policy_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Policy.c b/e2sm/lib/RANFunctionDefinition-Policy.c new file mode 100644 index 0000000..f809dec --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Policy.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Policy.h" + +#include "RANFunctionDefinition-Policy-Item.h" +static int +memb_ric_PolicyStyle_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ric_PolicyStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_ric_PolicyStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ric_PolicyStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_ric_PolicyStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_PolicyStyle_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_Policy_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ric_PolicyStyle_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ric_PolicyStyle_List_specs_2 = { + sizeof(struct RANFunctionDefinition_Policy__ric_PolicyStyle_List), + offsetof(struct RANFunctionDefinition_Policy__ric_PolicyStyle_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_PolicyStyle_List_2 = { + "ric-PolicyStyle-List", + "ric-PolicyStyle-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ric_PolicyStyle_List_tags_2, + sizeof(asn_DEF_ric_PolicyStyle_List_tags_2) + /sizeof(asn_DEF_ric_PolicyStyle_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ric_PolicyStyle_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ric_PolicyStyle_List_tags_2) + /sizeof(asn_DEF_ric_PolicyStyle_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ric_PolicyStyle_List_constr_2, &asn_PER_type_ric_PolicyStyle_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ric_PolicyStyle_List_2, + 1, /* Single element */ + &asn_SPC_ric_PolicyStyle_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Policy_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy, ric_PolicyStyle_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ric_PolicyStyle_List_2, + 0, + { &asn_OER_memb_ric_PolicyStyle_List_constr_2, &asn_PER_memb_ric_PolicyStyle_List_constr_2, memb_ric_PolicyStyle_List_constraint_1 }, + 0, 0, /* No default value */ + "ric-PolicyStyle-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Policy_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Policy_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-PolicyStyle-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Policy_specs_1 = { + sizeof(struct RANFunctionDefinition_Policy), + offsetof(struct RANFunctionDefinition_Policy, _asn_ctx), + asn_MAP_RANFunctionDefinition_Policy_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Policy = { + "RANFunctionDefinition-Policy", + "RANFunctionDefinition-Policy", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Policy_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Policy_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Policy_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Policy_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Policy_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Policy_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Policy_1, + 1, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Policy_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Report-Item.c b/e2sm/lib/RANFunctionDefinition-Report-Item.c new file mode 100644 index 0000000..131b739 --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Report-Item.c @@ -0,0 +1,192 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Report-Item.h" + +#include "Report-RANParameter-Item.h" +static int +memb_ran_ReportParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ran_ReportParameters_List_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ran_ReportParameters_List_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ran_ReportParameters_List_constr_8 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ran_ReportParameters_List_constr_8 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ran_ReportParameters_List_8[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_Report_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ran_ReportParameters_List_tags_8[] = { + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ran_ReportParameters_List_specs_8 = { + sizeof(struct RANFunctionDefinition_Report_Item__ran_ReportParameters_List), + offsetof(struct RANFunctionDefinition_Report_Item__ran_ReportParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ran_ReportParameters_List_8 = { + "ran-ReportParameters-List", + "ran-ReportParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ran_ReportParameters_List_tags_8, + sizeof(asn_DEF_ran_ReportParameters_List_tags_8) + /sizeof(asn_DEF_ran_ReportParameters_List_tags_8[0]) - 1, /* 1 */ + asn_DEF_ran_ReportParameters_List_tags_8, /* Same as above */ + sizeof(asn_DEF_ran_ReportParameters_List_tags_8) + /sizeof(asn_DEF_ran_ReportParameters_List_tags_8[0]), /* 2 */ + { &asn_OER_type_ran_ReportParameters_List_constr_8, &asn_PER_type_ran_ReportParameters_List_constr_8, SEQUENCE_OF_constraint }, + asn_MBR_ran_ReportParameters_List_8, + 1, /* Single element */ + &asn_SPC_ran_ReportParameters_List_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Report_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Report_Item, ric_ReportStyle_Type), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ReportStyle-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Report_Item, ric_ReportStyle_Name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ReportStyle-Name" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Report_Item, ric_SupportedEventTriggerStyle_Type), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Style_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-SupportedEventTriggerStyle-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Report_Item, ric_ReportActionFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-ReportActionFormat-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Report_Item, ric_IndicationHeaderFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-IndicationHeaderFormat-Type" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Report_Item, ric_IndicationMessageFormat_Type), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_Format_Type, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-IndicationMessageFormat-Type" + }, + { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Report_Item, ran_ReportParameters_List), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + 0, + &asn_DEF_ran_ReportParameters_List_8, + 0, + { &asn_OER_memb_ran_ReportParameters_List_constr_8, &asn_PER_memb_ran_ReportParameters_List_constr_8, memb_ran_ReportParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ran-ReportParameters-List" + }, +}; +static const int asn_MAP_RANFunctionDefinition_Report_Item_oms_1[] = { 6 }; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Report_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Report_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-ReportStyle-Type */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-ReportStyle-Name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ric-SupportedEventTriggerStyle-Type */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ric-ReportActionFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ric-IndicationHeaderFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* ric-IndicationMessageFormat-Type */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* ran-ReportParameters-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Report_Item_specs_1 = { + sizeof(struct RANFunctionDefinition_Report_Item), + offsetof(struct RANFunctionDefinition_Report_Item, _asn_ctx), + asn_MAP_RANFunctionDefinition_Report_Item_tag2el_1, + 7, /* Count of tags in the map */ + asn_MAP_RANFunctionDefinition_Report_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Report_Item = { + "RANFunctionDefinition-Report-Item", + "RANFunctionDefinition-Report-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Report_Item_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Report_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Report_Item_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Report_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Report_Item_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Report_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Report_Item_1, + 7, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Report_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANFunctionDefinition-Report.c b/e2sm/lib/RANFunctionDefinition-Report.c new file mode 100644 index 0000000..15ec43d --- /dev/null +++ b/e2sm/lib/RANFunctionDefinition-Report.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANFunctionDefinition-Report.h" + +#include "RANFunctionDefinition-Report-Item.h" +static int +memb_ric_ReportStyle_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 63)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ric_ReportStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_type_ric_ReportStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ric_ReportStyle_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..63)) */}; +static asn_per_constraints_t asn_PER_memb_ric_ReportStyle_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 1, 63 } /* (SIZE(1..63)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ric_ReportStyle_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANFunctionDefinition_Report_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ric_ReportStyle_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ric_ReportStyle_List_specs_2 = { + sizeof(struct RANFunctionDefinition_Report__ric_ReportStyle_List), + offsetof(struct RANFunctionDefinition_Report__ric_ReportStyle_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ric_ReportStyle_List_2 = { + "ric-ReportStyle-List", + "ric-ReportStyle-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ric_ReportStyle_List_tags_2, + sizeof(asn_DEF_ric_ReportStyle_List_tags_2) + /sizeof(asn_DEF_ric_ReportStyle_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ric_ReportStyle_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ric_ReportStyle_List_tags_2) + /sizeof(asn_DEF_ric_ReportStyle_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ric_ReportStyle_List_constr_2, &asn_PER_type_ric_ReportStyle_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ric_ReportStyle_List_2, + 1, /* Single element */ + &asn_SPC_ric_ReportStyle_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Report_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Report, ric_ReportStyle_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ric_ReportStyle_List_2, + 0, + { &asn_OER_memb_ric_ReportStyle_List_constr_2, &asn_PER_memb_ric_ReportStyle_List_constr_2, memb_ric_ReportStyle_List_constraint_1 }, + 0, 0, /* No default value */ + "ric-ReportStyle-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Report_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Report_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ric-ReportStyle-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Report_specs_1 = { + sizeof(struct RANFunctionDefinition_Report), + offsetof(struct RANFunctionDefinition_Report, _asn_ctx), + asn_MAP_RANFunctionDefinition_Report_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Report = { + "RANFunctionDefinition-Report", + "RANFunctionDefinition-Report", + &asn_OP_SEQUENCE, + asn_DEF_RANFunctionDefinition_Report_tags_1, + sizeof(asn_DEF_RANFunctionDefinition_Report_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Report_tags_1[0]), /* 1 */ + asn_DEF_RANFunctionDefinition_Report_tags_1, /* Same as above */ + sizeof(asn_DEF_RANFunctionDefinition_Report_tags_1) + /sizeof(asn_DEF_RANFunctionDefinition_Report_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANFunctionDefinition_Report_1, + 1, /* Elements count */ + &asn_SPC_RANFunctionDefinition_Report_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Definition-Choice-LIST-Item.c b/e2sm/lib/RANParameter-Definition-Choice-LIST-Item.c new file mode 100644 index 0000000..e009483 --- /dev/null +++ b/e2sm/lib/RANParameter-Definition-Choice-LIST-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Definition-Choice-LIST-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_LIST_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Definition_Choice_LIST_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Definition_Choice_LIST_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct RANParameter_Definition_Choice_LIST_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_RANParameter_Definition_Choice_LIST_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_RANParameter_Definition_Choice_LIST_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Definition_Choice_LIST_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_Choice_LIST_Item_specs_1 = { + sizeof(struct RANParameter_Definition_Choice_LIST_Item), + offsetof(struct RANParameter_Definition_Choice_LIST_Item, _asn_ctx), + asn_MAP_RANParameter_Definition_Choice_LIST_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RANParameter_Definition_Choice_LIST_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice_LIST_Item = { + "RANParameter-Definition-Choice-LIST-Item", + "RANParameter-Definition-Choice-LIST-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Definition_Choice_LIST_Item_tags_1, + sizeof(asn_DEF_RANParameter_Definition_Choice_LIST_Item_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_Choice_LIST_Item_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Definition_Choice_LIST_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Definition_Choice_LIST_Item_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_Choice_LIST_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Definition_Choice_LIST_Item_1, + 3, /* Elements count */ + &asn_SPC_RANParameter_Definition_Choice_LIST_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Definition-Choice-LIST.c b/e2sm/lib/RANParameter-Definition-Choice-LIST.c new file mode 100644 index 0000000..7852c16 --- /dev/null +++ b/e2sm/lib/RANParameter-Definition-Choice-LIST.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Definition-Choice-LIST.h" + +#include "RANParameter-Definition-Choice-LIST-Item.h" +static int +memb_ranParameter_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ranParameter_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ranParameter_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ranParameter_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ranParameter_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranParameter_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANParameter_Definition_Choice_LIST_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ranParameter_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ranParameter_List_specs_2 = { + sizeof(struct RANParameter_Definition_Choice_LIST__ranParameter_List), + offsetof(struct RANParameter_Definition_Choice_LIST__ranParameter_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranParameter_List_2 = { + "ranParameter-List", + "ranParameter-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ranParameter_List_tags_2, + sizeof(asn_DEF_ranParameter_List_tags_2) + /sizeof(asn_DEF_ranParameter_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_ranParameter_List_tags_2, /* Same as above */ + sizeof(asn_DEF_ranParameter_List_tags_2) + /sizeof(asn_DEF_ranParameter_List_tags_2[0]), /* 2 */ + { &asn_OER_type_ranParameter_List_constr_2, &asn_PER_type_ranParameter_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ranParameter_List_2, + 1, /* Single element */ + &asn_SPC_ranParameter_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_LIST_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Definition_Choice_LIST, ranParameter_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ranParameter_List_2, + 0, + { &asn_OER_memb_ranParameter_List_constr_2, &asn_PER_memb_ranParameter_List_constr_2, memb_ranParameter_List_constraint_1 }, + 0, 0, /* No default value */ + "ranParameter-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Definition_Choice_LIST_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Definition_Choice_LIST_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_Choice_LIST_specs_1 = { + sizeof(struct RANParameter_Definition_Choice_LIST), + offsetof(struct RANParameter_Definition_Choice_LIST, _asn_ctx), + asn_MAP_RANParameter_Definition_Choice_LIST_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice_LIST = { + "RANParameter-Definition-Choice-LIST", + "RANParameter-Definition-Choice-LIST", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Definition_Choice_LIST_tags_1, + sizeof(asn_DEF_RANParameter_Definition_Choice_LIST_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_Choice_LIST_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Definition_Choice_LIST_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Definition_Choice_LIST_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_Choice_LIST_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Definition_Choice_LIST_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_Definition_Choice_LIST_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Definition-Choice-STRUCTURE-Item.c b/e2sm/lib/RANParameter-Definition-Choice-STRUCTURE-Item.c new file mode 100644 index 0000000..5af88e5 --- /dev/null +++ b/e2sm/lib/RANParameter-Definition-Choice-STRUCTURE-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Definition-Choice-STRUCTURE-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_STRUCTURE_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Definition_Choice_STRUCTURE_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Definition_Choice_STRUCTURE_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct RANParameter_Definition_Choice_STRUCTURE_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_RANParameter_Definition_Choice_STRUCTURE_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Definition_Choice_STRUCTURE_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_Choice_STRUCTURE_Item_specs_1 = { + sizeof(struct RANParameter_Definition_Choice_STRUCTURE_Item), + offsetof(struct RANParameter_Definition_Choice_STRUCTURE_Item, _asn_ctx), + asn_MAP_RANParameter_Definition_Choice_STRUCTURE_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RANParameter_Definition_Choice_STRUCTURE_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item = { + "RANParameter-Definition-Choice-STRUCTURE-Item", + "RANParameter-Definition-Choice-STRUCTURE-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item_tags_1, + sizeof(asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Definition_Choice_STRUCTURE_Item_1, + 3, /* Elements count */ + &asn_SPC_RANParameter_Definition_Choice_STRUCTURE_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Definition-Choice-STRUCTURE.c b/e2sm/lib/RANParameter-Definition-Choice-STRUCTURE.c new file mode 100644 index 0000000..c6c0679 --- /dev/null +++ b/e2sm/lib/RANParameter-Definition-Choice-STRUCTURE.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Definition-Choice-STRUCTURE.h" + +#include "RANParameter-Definition-Choice-STRUCTURE-Item.h" +static int +memb_ranParameter_STRUCTURE_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ranParameter_STRUCTURE_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ranParameter_STRUCTURE_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ranParameter_STRUCTURE_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ranParameter_STRUCTURE_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranParameter_STRUCTURE_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANParameter_Definition_Choice_STRUCTURE_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ranParameter_STRUCTURE_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ranParameter_STRUCTURE_specs_2 = { + sizeof(struct RANParameter_Definition_Choice_STRUCTURE__ranParameter_STRUCTURE), + offsetof(struct RANParameter_Definition_Choice_STRUCTURE__ranParameter_STRUCTURE, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranParameter_STRUCTURE_2 = { + "ranParameter-STRUCTURE", + "ranParameter-STRUCTURE", + &asn_OP_SEQUENCE_OF, + asn_DEF_ranParameter_STRUCTURE_tags_2, + sizeof(asn_DEF_ranParameter_STRUCTURE_tags_2) + /sizeof(asn_DEF_ranParameter_STRUCTURE_tags_2[0]) - 1, /* 1 */ + asn_DEF_ranParameter_STRUCTURE_tags_2, /* Same as above */ + sizeof(asn_DEF_ranParameter_STRUCTURE_tags_2) + /sizeof(asn_DEF_ranParameter_STRUCTURE_tags_2[0]), /* 2 */ + { &asn_OER_type_ranParameter_STRUCTURE_constr_2, &asn_PER_type_ranParameter_STRUCTURE_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_ranParameter_STRUCTURE_2, + 1, /* Single element */ + &asn_SPC_ranParameter_STRUCTURE_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_STRUCTURE_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Definition_Choice_STRUCTURE, ranParameter_STRUCTURE), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_ranParameter_STRUCTURE_2, + 0, + { &asn_OER_memb_ranParameter_STRUCTURE_constr_2, &asn_PER_memb_ranParameter_STRUCTURE_constr_2, memb_ranParameter_STRUCTURE_constraint_1 }, + 0, 0, /* No default value */ + "ranParameter-STRUCTURE" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Definition_Choice_STRUCTURE_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Definition_Choice_STRUCTURE_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-STRUCTURE */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_Choice_STRUCTURE_specs_1 = { + sizeof(struct RANParameter_Definition_Choice_STRUCTURE), + offsetof(struct RANParameter_Definition_Choice_STRUCTURE, _asn_ctx), + asn_MAP_RANParameter_Definition_Choice_STRUCTURE_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice_STRUCTURE = { + "RANParameter-Definition-Choice-STRUCTURE", + "RANParameter-Definition-Choice-STRUCTURE", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Definition_Choice_STRUCTURE_tags_1, + sizeof(asn_DEF_RANParameter_Definition_Choice_STRUCTURE_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_Choice_STRUCTURE_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Definition_Choice_STRUCTURE_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Definition_Choice_STRUCTURE_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_Choice_STRUCTURE_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Definition_Choice_STRUCTURE_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_Definition_Choice_STRUCTURE_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Definition-Choice.c b/e2sm/lib/RANParameter-Definition-Choice.c new file mode 100644 index 0000000..4dd0a8c --- /dev/null +++ b/e2sm/lib/RANParameter-Definition-Choice.c @@ -0,0 +1,67 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Definition-Choice.h" + +#include "RANParameter-Definition-Choice-LIST.h" +#include "RANParameter-Definition-Choice-STRUCTURE.h" +static asn_oer_constraints_t asn_OER_type_RANParameter_Definition_Choice_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RANParameter_Definition_Choice_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RANParameter_Definition_Choice_1[] = { + { ATF_POINTER, 0, offsetof(struct RANParameter_Definition_Choice, choice.choiceLIST), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition_Choice_LIST, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "choiceLIST" + }, + { ATF_POINTER, 0, offsetof(struct RANParameter_Definition_Choice, choice.choiceSTRUCTURE), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition_Choice_STRUCTURE, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "choiceSTRUCTURE" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Definition_Choice_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* choiceLIST */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* choiceSTRUCTURE */ +}; +asn_CHOICE_specifics_t asn_SPC_RANParameter_Definition_Choice_specs_1 = { + sizeof(struct RANParameter_Definition_Choice), + offsetof(struct RANParameter_Definition_Choice, _asn_ctx), + offsetof(struct RANParameter_Definition_Choice, present), + sizeof(((struct RANParameter_Definition_Choice *)0)->present), + asn_MAP_RANParameter_Definition_Choice_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition_Choice = { + "RANParameter-Definition-Choice", + "RANParameter-Definition-Choice", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_RANParameter_Definition_Choice_constr_1, &asn_PER_type_RANParameter_Definition_Choice_constr_1, CHOICE_constraint }, + asn_MBR_RANParameter_Definition_Choice_1, + 2, /* Elements count */ + &asn_SPC_RANParameter_Definition_Choice_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Definition.c b/e2sm/lib/RANParameter-Definition.c new file mode 100644 index 0000000..7298790 --- /dev/null +++ b/e2sm/lib/RANParameter-Definition.c @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Definition.h" + +#include "RANParameter-Definition-Choice.h" +asn_TYPE_member_t asn_MBR_RANParameter_Definition_1[] = { + { ATF_POINTER, 0, offsetof(struct RANParameter_Definition, ranParameter_Definition_Choice), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition_Choice, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition-Choice" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Definition_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Definition_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-Definition-Choice */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Definition_specs_1 = { + sizeof(struct RANParameter_Definition), + offsetof(struct RANParameter_Definition, _asn_ctx), + asn_MAP_RANParameter_Definition_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Definition = { + "RANParameter-Definition", + "RANParameter-Definition", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Definition_tags_1, + sizeof(asn_DEF_RANParameter_Definition_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Definition_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Definition_tags_1) + /sizeof(asn_DEF_RANParameter_Definition_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Definition_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_Definition_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-ELEMENT.c b/e2sm/lib/RANParameter-ELEMENT.c deleted file mode 100644 index 63edc16..0000000 --- a/e2sm/lib/RANParameter-ELEMENT.c +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RANParameter-ELEMENT.h" - -asn_TYPE_member_t asn_MBR_RANParameter_ELEMENT_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANParameter_ELEMENT, keyFlag), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_BOOLEAN, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "keyFlag" - }, - { ATF_NOFLAGS, 0, offsetof(struct RANParameter_ELEMENT, ranParameter_Value), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_RANParameter_Value, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ranParameter-Value" - }, -}; -static const ber_tlv_tag_t asn_DEF_RANParameter_ELEMENT_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RANParameter_ELEMENT_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* keyFlag */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-Value */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ELEMENT_specs_1 = { - sizeof(struct RANParameter_ELEMENT), - offsetof(struct RANParameter_ELEMENT, _asn_ctx), - asn_MAP_RANParameter_ELEMENT_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RANParameter_ELEMENT = { - "RANParameter-ELEMENT", - "RANParameter-ELEMENT", - &asn_OP_SEQUENCE, - asn_DEF_RANParameter_ELEMENT_tags_1, - sizeof(asn_DEF_RANParameter_ELEMENT_tags_1) - /sizeof(asn_DEF_RANParameter_ELEMENT_tags_1[0]), /* 1 */ - asn_DEF_RANParameter_ELEMENT_tags_1, /* Same as above */ - sizeof(asn_DEF_RANParameter_ELEMENT_tags_1) - /sizeof(asn_DEF_RANParameter_ELEMENT_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RANParameter_ELEMENT_1, - 2, /* Elements count */ - &asn_SPC_RANParameter_ELEMENT_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/RANParameter-ID.c b/e2sm/lib/RANParameter-ID.c index 4965d59..684cc0e 100644 --- a/e2sm/lib/RANParameter-ID.c +++ b/e2sm/lib/RANParameter-ID.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -19,8 +19,11 @@ RANParameter_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, } - /* Constraint check succeeded */ - return 0; + if(1 /* No applicable constraints whatsoever */) { + /* Nothing is here. See below */ + } + + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); } /* @@ -28,18 +31,13 @@ RANParameter_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * so here we adjust the DEF accordingly. */ static asn_oer_constraints_t asn_OER_type_RANParameter_ID_constr_1 CC_NOTUSED = { - { 4, 1 } /* (0..4294967295) */, + { 0, 0 }, -1}; asn_per_constraints_t asn_PER_type_RANParameter_ID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -const asn_INTEGER_specifics_t asn_SPC_RANParameter_ID_specs_1 = { - 0, 0, 0, 0, 0, - 0, /* Native long size */ - 1 /* Unsigned representation */ -}; static const ber_tlv_tag_t asn_DEF_RANParameter_ID_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) }; @@ -55,6 +53,6 @@ asn_TYPE_descriptor_t asn_DEF_RANParameter_ID = { /sizeof(asn_DEF_RANParameter_ID_tags_1[0]), /* 1 */ { &asn_OER_type_RANParameter_ID_constr_1, &asn_PER_type_RANParameter_ID_constr_1, RANParameter_ID_constraint }, 0, 0, /* No members */ - &asn_SPC_RANParameter_ID_specs_1 /* Additional specs */ + 0 /* No specifics */ }; diff --git a/e2sm/lib/RANParameter-Item.c b/e2sm/lib/RANParameter-Item.c deleted file mode 100644 index 0da6978..0000000 --- a/e2sm/lib/RANParameter-Item.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RANParameter-Item.h" - -#include "RANParameter-ValueType.h" -asn_TYPE_member_t asn_MBR_RANParameter_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Item, ranParameterItem_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RANParameter_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ranParameterItem-ID" - }, - { ATF_POINTER, 0, offsetof(struct RANParameter_Item, ranParameterItem_valueType), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - +1, /* EXPLICIT tag at current level */ - &asn_DEF_RANParameter_ValueType, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ranParameterItem-valueType" - }, -}; -static const ber_tlv_tag_t asn_DEF_RANParameter_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameterItem-ID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameterItem-valueType */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Item_specs_1 = { - sizeof(struct RANParameter_Item), - offsetof(struct RANParameter_Item, _asn_ctx), - asn_MAP_RANParameter_Item_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RANParameter_Item = { - "RANParameter-Item", - "RANParameter-Item", - &asn_OP_SEQUENCE, - asn_DEF_RANParameter_Item_tags_1, - sizeof(asn_DEF_RANParameter_Item_tags_1) - /sizeof(asn_DEF_RANParameter_Item_tags_1[0]), /* 1 */ - asn_DEF_RANParameter_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_RANParameter_Item_tags_1) - /sizeof(asn_DEF_RANParameter_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RANParameter_Item_1, - 2, /* Elements count */ - &asn_SPC_RANParameter_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/RANParameter-LIST.c b/e2sm/lib/RANParameter-LIST.c index 501db25..22fa28f 100644 --- a/e2sm/lib/RANParameter-LIST.c +++ b/e2sm/lib/RANParameter-LIST.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -9,7 +9,7 @@ #include "RANParameter-STRUCTURE.h" static int -memb_list_of_ranParameter_Structures_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, +memb_list_of_ranParameter_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { size_t size; @@ -23,7 +23,7 @@ memb_list_of_ranParameter_Structures_constraint_1(const asn_TYPE_descriptor_t *t /* Determine the number of elements */ size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - if((size >= 1 && size <= 4294967295)) { + if((size >= 1 && size <= 65535)) { /* Perform validation of the inner elements */ return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); } else { @@ -34,23 +34,23 @@ memb_list_of_ranParameter_Structures_constraint_1(const asn_TYPE_descriptor_t *t } } -static asn_oer_constraints_t asn_OER_type_list_of_ranParameter_Structures_constr_2 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_list_of_ranParameter_constr_2 CC_NOTUSED = { { 0, 0 }, - -1 /* (SIZE(1..4294967295)) */}; -static asn_per_constraints_t asn_PER_type_list_of_ranParameter_Structures_constr_2 CC_NOTUSED = { + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_list_of_ranParameter_constr_2 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 32, -1, 1, 4294967295 } /* (SIZE(1..4294967295)) */, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, 0, 0 /* No PER value map */ }; -static asn_oer_constraints_t asn_OER_memb_list_of_ranParameter_Structures_constr_2 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_memb_list_of_ranParameter_constr_2 CC_NOTUSED = { { 0, 0 }, - -1 /* (SIZE(1..4294967295)) */}; -static asn_per_constraints_t asn_PER_memb_list_of_ranParameter_Structures_constr_2 CC_NOTUSED = { + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_list_of_ranParameter_constr_2 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 32, -1, 1, 4294967295 } /* (SIZE(1..4294967295)) */, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, 0, 0 /* No PER value map */ }; -static asn_TYPE_member_t asn_MBR_list_of_ranParameter_Structures_2[] = { +static asn_TYPE_member_t asn_MBR_list_of_ranParameter_2[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, @@ -61,48 +61,48 @@ static asn_TYPE_member_t asn_MBR_list_of_ranParameter_Structures_2[] = { "" }, }; -static const ber_tlv_tag_t asn_DEF_list_of_ranParameter_Structures_tags_2[] = { +static const ber_tlv_tag_t asn_DEF_list_of_ranParameter_tags_2[] = { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; -static asn_SET_OF_specifics_t asn_SPC_list_of_ranParameter_Structures_specs_2 = { - sizeof(struct RANParameter_LIST__list_of_ranParameter_Structures), - offsetof(struct RANParameter_LIST__list_of_ranParameter_Structures, _asn_ctx), +static asn_SET_OF_specifics_t asn_SPC_list_of_ranParameter_specs_2 = { + sizeof(struct RANParameter_LIST__list_of_ranParameter), + offsetof(struct RANParameter_LIST__list_of_ranParameter, _asn_ctx), 0, /* XER encoding is XMLDelimitedItemList */ }; static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_list_of_ranParameter_Structures_2 = { - "list-of-ranParameter-Structures", - "list-of-ranParameter-Structures", +asn_TYPE_descriptor_t asn_DEF_list_of_ranParameter_2 = { + "list-of-ranParameter", + "list-of-ranParameter", &asn_OP_SEQUENCE_OF, - asn_DEF_list_of_ranParameter_Structures_tags_2, - sizeof(asn_DEF_list_of_ranParameter_Structures_tags_2) - /sizeof(asn_DEF_list_of_ranParameter_Structures_tags_2[0]) - 1, /* 1 */ - asn_DEF_list_of_ranParameter_Structures_tags_2, /* Same as above */ - sizeof(asn_DEF_list_of_ranParameter_Structures_tags_2) - /sizeof(asn_DEF_list_of_ranParameter_Structures_tags_2[0]), /* 2 */ - { &asn_OER_type_list_of_ranParameter_Structures_constr_2, &asn_PER_type_list_of_ranParameter_Structures_constr_2, SEQUENCE_OF_constraint }, - asn_MBR_list_of_ranParameter_Structures_2, + asn_DEF_list_of_ranParameter_tags_2, + sizeof(asn_DEF_list_of_ranParameter_tags_2) + /sizeof(asn_DEF_list_of_ranParameter_tags_2[0]) - 1, /* 1 */ + asn_DEF_list_of_ranParameter_tags_2, /* Same as above */ + sizeof(asn_DEF_list_of_ranParameter_tags_2) + /sizeof(asn_DEF_list_of_ranParameter_tags_2[0]), /* 2 */ + { &asn_OER_type_list_of_ranParameter_constr_2, &asn_PER_type_list_of_ranParameter_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_list_of_ranParameter_2, 1, /* Single element */ - &asn_SPC_list_of_ranParameter_Structures_specs_2 /* Additional specs */ + &asn_SPC_list_of_ranParameter_specs_2 /* Additional specs */ }; asn_TYPE_member_t asn_MBR_RANParameter_LIST_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANParameter_LIST, list_of_ranParameter_Structures), + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_LIST, list_of_ranParameter), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, - &asn_DEF_list_of_ranParameter_Structures_2, + &asn_DEF_list_of_ranParameter_2, 0, - { &asn_OER_memb_list_of_ranParameter_Structures_constr_2, &asn_PER_memb_list_of_ranParameter_Structures_constr_2, memb_list_of_ranParameter_Structures_constraint_1 }, + { &asn_OER_memb_list_of_ranParameter_constr_2, &asn_PER_memb_list_of_ranParameter_constr_2, memb_list_of_ranParameter_constraint_1 }, 0, 0, /* No default value */ - "list-of-ranParameter-Structures" + "list-of-ranParameter" }, }; static const ber_tlv_tag_t asn_DEF_RANParameter_LIST_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; static const asn_TYPE_tag2member_t asn_MAP_RANParameter_LIST_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* list-of-ranParameter-Structures */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* list-of-ranParameter */ }; asn_SEQUENCE_specifics_t asn_SPC_RANParameter_LIST_specs_1 = { sizeof(struct RANParameter_LIST), diff --git a/e2sm/lib/RANParameter-Name.c b/e2sm/lib/RANParameter-Name.c index fdd2f4c..30b6e4f 100644 --- a/e2sm/lib/RANParameter-Name.c +++ b/e2sm/lib/RANParameter-Name.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/RANParameter-STRUCTURE-Item.c b/e2sm/lib/RANParameter-STRUCTURE-Item.c new file mode 100644 index 0000000..e630ad4 --- /dev/null +++ b/e2sm/lib/RANParameter-STRUCTURE-Item.c @@ -0,0 +1,61 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-STRUCTURE-Item.h" + +#include "RANParameter-ValueType.h" +asn_TYPE_member_t asn_MBR_RANParameter_STRUCTURE_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_STRUCTURE_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_POINTER, 0, offsetof(struct RANParameter_STRUCTURE_Item, ranParameter_valueType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_ValueType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-valueType" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_STRUCTURE_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_STRUCTURE_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-valueType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_STRUCTURE_Item_specs_1 = { + sizeof(struct RANParameter_STRUCTURE_Item), + offsetof(struct RANParameter_STRUCTURE_Item, _asn_ctx), + asn_MAP_RANParameter_STRUCTURE_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_STRUCTURE_Item = { + "RANParameter-STRUCTURE-Item", + "RANParameter-STRUCTURE-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_STRUCTURE_Item_tags_1, + sizeof(asn_DEF_RANParameter_STRUCTURE_Item_tags_1) + /sizeof(asn_DEF_RANParameter_STRUCTURE_Item_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_STRUCTURE_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_STRUCTURE_Item_tags_1) + /sizeof(asn_DEF_RANParameter_STRUCTURE_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_STRUCTURE_Item_1, + 2, /* Elements count */ + &asn_SPC_RANParameter_STRUCTURE_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-STRUCTURE.c b/e2sm/lib/RANParameter-STRUCTURE.c index 89aa285..03a0695 100644 --- a/e2sm/lib/RANParameter-STRUCTURE.c +++ b/e2sm/lib/RANParameter-STRUCTURE.c @@ -1,13 +1,13 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANParameter-STRUCTURE.h" -#include "RANParameter-Item.h" +#include "RANParameter-STRUCTURE-Item.h" static int memb_sequence_of_ranParameters_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { @@ -23,7 +23,7 @@ memb_sequence_of_ranParameters_constraint_1(const asn_TYPE_descriptor_t *td, con /* Determine the number of elements */ size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - if((size >= 1 && size <= 4294967295)) { + if((size >= 1 && size <= 65535)) { /* Perform validation of the inner elements */ return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); } else { @@ -36,25 +36,25 @@ memb_sequence_of_ranParameters_constraint_1(const asn_TYPE_descriptor_t *td, con static asn_oer_constraints_t asn_OER_type_sequence_of_ranParameters_constr_2 CC_NOTUSED = { { 0, 0 }, - -1 /* (SIZE(1..4294967295)) */}; + -1 /* (SIZE(1..65535)) */}; static asn_per_constraints_t asn_PER_type_sequence_of_ranParameters_constr_2 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 32, -1, 1, 4294967295 } /* (SIZE(1..4294967295)) */, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, 0, 0 /* No PER value map */ }; static asn_oer_constraints_t asn_OER_memb_sequence_of_ranParameters_constr_2 CC_NOTUSED = { { 0, 0 }, - -1 /* (SIZE(1..4294967295)) */}; + -1 /* (SIZE(1..65535)) */}; static asn_per_constraints_t asn_PER_memb_sequence_of_ranParameters_constr_2 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 32, -1, 1, 4294967295 } /* (SIZE(1..4294967295)) */, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, 0, 0 /* No PER value map */ }; static asn_TYPE_member_t asn_MBR_sequence_of_ranParameters_2[] = { { ATF_POINTER, 0, 0, (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, - &asn_DEF_RANParameter_Item, + &asn_DEF_RANParameter_STRUCTURE_Item, 0, { 0, 0, 0 }, 0, 0, /* No default value */ @@ -88,7 +88,7 @@ asn_TYPE_descriptor_t asn_DEF_sequence_of_ranParameters_2 = { }; asn_TYPE_member_t asn_MBR_RANParameter_STRUCTURE_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANParameter_STRUCTURE, sequence_of_ranParameters), + { ATF_POINTER, 1, offsetof(struct RANParameter_STRUCTURE, sequence_of_ranParameters), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, &asn_DEF_sequence_of_ranParameters_2, @@ -98,6 +98,7 @@ asn_TYPE_member_t asn_MBR_RANParameter_STRUCTURE_1[] = { "sequence-of-ranParameters" }, }; +static const int asn_MAP_RANParameter_STRUCTURE_oms_1[] = { 0 }; static const ber_tlv_tag_t asn_DEF_RANParameter_STRUCTURE_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) }; @@ -109,7 +110,8 @@ asn_SEQUENCE_specifics_t asn_SPC_RANParameter_STRUCTURE_specs_1 = { offsetof(struct RANParameter_STRUCTURE, _asn_ctx), asn_MAP_RANParameter_STRUCTURE_tag2el_1, 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ + asn_MAP_RANParameter_STRUCTURE_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ 1, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_RANParameter_STRUCTURE = { diff --git a/e2sm/lib/RANParameter-Testing-Item-Choice-ElementFalse.c b/e2sm/lib/RANParameter-Testing-Item-Choice-ElementFalse.c new file mode 100644 index 0000000..e50e5db --- /dev/null +++ b/e2sm/lib/RANParameter-Testing-Item-Choice-ElementFalse.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Testing-Item-Choice-ElementFalse.h" + +#include "RANParameter-Value.h" +asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_Choice_ElementFalse_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Testing_Item_Choice_ElementFalse, ranParameter_TestCondition), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_TestingCondition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-TestCondition" + }, + { ATF_POINTER, 2, offsetof(struct RANParameter_Testing_Item_Choice_ElementFalse, ranParameter_Value), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_Value, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Value" + }, + { ATF_POINTER, 1, offsetof(struct RANParameter_Testing_Item_Choice_ElementFalse, logicalOR), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LogicalOR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "logicalOR" + }, +}; +static const int asn_MAP_RANParameter_Testing_Item_Choice_ElementFalse_oms_1[] = { 1, 2 }; +static const ber_tlv_tag_t asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Testing_Item_Choice_ElementFalse_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-TestCondition */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-Value */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* logicalOR */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_Choice_ElementFalse_specs_1 = { + sizeof(struct RANParameter_Testing_Item_Choice_ElementFalse), + offsetof(struct RANParameter_Testing_Item_Choice_ElementFalse, _asn_ctx), + asn_MAP_RANParameter_Testing_Item_Choice_ElementFalse_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_RANParameter_Testing_Item_Choice_ElementFalse_oms_1, /* Optional members */ + 2, 0, /* Root/Additions */ + 3, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse = { + "RANParameter-Testing-Item-Choice-ElementFalse", + "RANParameter-Testing-Item-Choice-ElementFalse", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse_tags_1, + sizeof(asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Testing_Item_Choice_ElementFalse_1, + 3, /* Elements count */ + &asn_SPC_RANParameter_Testing_Item_Choice_ElementFalse_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Testing-Item-Choice-ElementTrue.c b/e2sm/lib/RANParameter-Testing-Item-Choice-ElementTrue.c new file mode 100644 index 0000000..03b10ff --- /dev/null +++ b/e2sm/lib/RANParameter-Testing-Item-Choice-ElementTrue.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Testing-Item-Choice-ElementTrue.h" + +asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_Choice_ElementTrue_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Testing_Item_Choice_ElementTrue, ranParameter_value), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_Value, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-value" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Testing_Item_Choice_ElementTrue_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_Choice_ElementTrue_specs_1 = { + sizeof(struct RANParameter_Testing_Item_Choice_ElementTrue), + offsetof(struct RANParameter_Testing_Item_Choice_ElementTrue, _asn_ctx), + asn_MAP_RANParameter_Testing_Item_Choice_ElementTrue_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue = { + "RANParameter-Testing-Item-Choice-ElementTrue", + "RANParameter-Testing-Item-Choice-ElementTrue", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue_tags_1, + sizeof(asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Testing_Item_Choice_ElementTrue_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_Testing_Item_Choice_ElementTrue_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Testing-Item-Choice-List.c b/e2sm/lib/RANParameter-Testing-Item-Choice-List.c new file mode 100644 index 0000000..ea685da --- /dev/null +++ b/e2sm/lib/RANParameter-Testing-Item-Choice-List.c @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Testing-Item-Choice-List.h" + +#include "RANParameter-Testing-LIST.h" +asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_Choice_List_1[] = { + { ATF_POINTER, 0, offsetof(struct RANParameter_Testing_Item_Choice_List, ranParameter_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing_LIST, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Testing_Item_Choice_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Testing_Item_Choice_List_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_Choice_List_specs_1 = { + sizeof(struct RANParameter_Testing_Item_Choice_List), + offsetof(struct RANParameter_Testing_Item_Choice_List, _asn_ctx), + asn_MAP_RANParameter_Testing_Item_Choice_List_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item_Choice_List = { + "RANParameter-Testing-Item-Choice-List", + "RANParameter-Testing-Item-Choice-List", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Testing_Item_Choice_List_tags_1, + sizeof(asn_DEF_RANParameter_Testing_Item_Choice_List_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_Choice_List_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Testing_Item_Choice_List_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Testing_Item_Choice_List_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_Choice_List_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Testing_Item_Choice_List_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_Testing_Item_Choice_List_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Testing-Item-Choice-Structure.c b/e2sm/lib/RANParameter-Testing-Item-Choice-Structure.c new file mode 100644 index 0000000..ae75fd4 --- /dev/null +++ b/e2sm/lib/RANParameter-Testing-Item-Choice-Structure.c @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Testing-Item-Choice-Structure.h" + +#include "RANParameter-Testing-STRUCTURE.h" +asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_Choice_Structure_1[] = { + { ATF_POINTER, 0, offsetof(struct RANParameter_Testing_Item_Choice_Structure, ranParameter_Structure), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing_STRUCTURE, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Structure" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Testing_Item_Choice_Structure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Testing_Item_Choice_Structure_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-Structure */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_Choice_Structure_specs_1 = { + sizeof(struct RANParameter_Testing_Item_Choice_Structure), + offsetof(struct RANParameter_Testing_Item_Choice_Structure, _asn_ctx), + asn_MAP_RANParameter_Testing_Item_Choice_Structure_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item_Choice_Structure = { + "RANParameter-Testing-Item-Choice-Structure", + "RANParameter-Testing-Item-Choice-Structure", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Testing_Item_Choice_Structure_tags_1, + sizeof(asn_DEF_RANParameter_Testing_Item_Choice_Structure_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_Choice_Structure_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Testing_Item_Choice_Structure_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Testing_Item_Choice_Structure_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_Choice_Structure_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Testing_Item_Choice_Structure_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_Testing_Item_Choice_Structure_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Testing-Item.c b/e2sm/lib/RANParameter-Testing-Item.c new file mode 100644 index 0000000..d81b410 --- /dev/null +++ b/e2sm/lib/RANParameter-Testing-Item.c @@ -0,0 +1,141 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Testing-Item.h" + +#include "RANParameter-Testing-Item-Choice-List.h" +#include "RANParameter-Testing-Item-Choice-Structure.h" +#include "RANParameter-Testing-Item-Choice-ElementTrue.h" +#include "RANParameter-Testing-Item-Choice-ElementFalse.h" +static asn_oer_constraints_t asn_OER_type_ranParameter_Type_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ranParameter_Type_constr_3 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranParameter_Type_3[] = { + { ATF_POINTER, 0, offsetof(struct RANParameter_Testing_Item__ranParameter_Type, choice.ranP_Choice_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing_Item_Choice_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranP-Choice-List" + }, + { ATF_POINTER, 0, offsetof(struct RANParameter_Testing_Item__ranParameter_Type, choice.ranP_Choice_Structure), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing_Item_Choice_Structure, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranP-Choice-Structure" + }, + { ATF_POINTER, 0, offsetof(struct RANParameter_Testing_Item__ranParameter_Type, choice.ranP_Choice_ElementTrue), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing_Item_Choice_ElementTrue, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranP-Choice-ElementTrue" + }, + { ATF_POINTER, 0, offsetof(struct RANParameter_Testing_Item__ranParameter_Type, choice.ranP_Choice_ElementFalse), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing_Item_Choice_ElementFalse, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranP-Choice-ElementFalse" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ranParameter_Type_tag2el_3[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranP-Choice-List */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranP-Choice-Structure */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ranP-Choice-ElementTrue */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ranP-Choice-ElementFalse */ +}; +static asn_CHOICE_specifics_t asn_SPC_ranParameter_Type_specs_3 = { + sizeof(struct RANParameter_Testing_Item__ranParameter_Type), + offsetof(struct RANParameter_Testing_Item__ranParameter_Type, _asn_ctx), + offsetof(struct RANParameter_Testing_Item__ranParameter_Type, present), + sizeof(((struct RANParameter_Testing_Item__ranParameter_Type *)0)->present), + asn_MAP_ranParameter_Type_tag2el_3, + 4, /* Count of tags in the map */ + 0, 0, + 4 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranParameter_Type_3 = { + "ranParameter-Type", + "ranParameter-Type", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ranParameter_Type_constr_3, &asn_PER_type_ranParameter_Type_constr_3, CHOICE_constraint }, + asn_MBR_ranParameter_Type_3, + 4, /* Elements count */ + &asn_SPC_ranParameter_Type_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANParameter_Testing_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Testing_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Testing_Item, ranParameter_Type), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_ranParameter_Type_3, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Type" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Testing_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Testing_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-Type */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_Testing_Item_specs_1 = { + sizeof(struct RANParameter_Testing_Item), + offsetof(struct RANParameter_Testing_Item, _asn_ctx), + asn_MAP_RANParameter_Testing_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_Item = { + "RANParameter-Testing-Item", + "RANParameter-Testing-Item", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_Testing_Item_tags_1, + sizeof(asn_DEF_RANParameter_Testing_Item_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Testing_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Testing_Item_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_Testing_Item_1, + 2, /* Elements count */ + &asn_SPC_RANParameter_Testing_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Testing-LIST.c b/e2sm/lib/RANParameter-Testing-LIST.c new file mode 100644 index 0000000..c4e4abc --- /dev/null +++ b/e2sm/lib/RANParameter-Testing-LIST.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Testing-LIST.h" + +#include "RANParameter-Testing-Item.h" +static asn_oer_constraints_t asn_OER_type_RANParameter_Testing_LIST_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +asn_per_constraints_t asn_PER_type_RANParameter_Testing_LIST_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RANParameter_Testing_LIST_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANParameter_Testing_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Testing_LIST_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RANParameter_Testing_LIST_specs_1 = { + sizeof(struct RANParameter_Testing_LIST), + offsetof(struct RANParameter_Testing_LIST, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_LIST = { + "RANParameter-Testing-LIST", + "RANParameter-Testing-LIST", + &asn_OP_SEQUENCE_OF, + asn_DEF_RANParameter_Testing_LIST_tags_1, + sizeof(asn_DEF_RANParameter_Testing_LIST_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_LIST_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Testing_LIST_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Testing_LIST_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_LIST_tags_1[0]), /* 1 */ + { &asn_OER_type_RANParameter_Testing_LIST_constr_1, &asn_PER_type_RANParameter_Testing_LIST_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RANParameter_Testing_LIST_1, + 1, /* Single element */ + &asn_SPC_RANParameter_Testing_LIST_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Testing-STRUCTURE.c b/e2sm/lib/RANParameter-Testing-STRUCTURE.c new file mode 100644 index 0000000..2080910 --- /dev/null +++ b/e2sm/lib/RANParameter-Testing-STRUCTURE.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Testing-STRUCTURE.h" + +#include "RANParameter-Testing-Item.h" +static asn_oer_constraints_t asn_OER_type_RANParameter_Testing_STRUCTURE_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +asn_per_constraints_t asn_PER_type_RANParameter_Testing_STRUCTURE_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RANParameter_Testing_STRUCTURE_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANParameter_Testing_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Testing_STRUCTURE_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RANParameter_Testing_STRUCTURE_specs_1 = { + sizeof(struct RANParameter_Testing_STRUCTURE), + offsetof(struct RANParameter_Testing_STRUCTURE, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing_STRUCTURE = { + "RANParameter-Testing-STRUCTURE", + "RANParameter-Testing-STRUCTURE", + &asn_OP_SEQUENCE_OF, + asn_DEF_RANParameter_Testing_STRUCTURE_tags_1, + sizeof(asn_DEF_RANParameter_Testing_STRUCTURE_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_STRUCTURE_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Testing_STRUCTURE_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Testing_STRUCTURE_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_STRUCTURE_tags_1[0]), /* 1 */ + { &asn_OER_type_RANParameter_Testing_STRUCTURE_constr_1, &asn_PER_type_RANParameter_Testing_STRUCTURE_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RANParameter_Testing_STRUCTURE_1, + 1, /* Single element */ + &asn_SPC_RANParameter_Testing_STRUCTURE_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Testing.c b/e2sm/lib/RANParameter-Testing.c new file mode 100644 index 0000000..6aa8873 --- /dev/null +++ b/e2sm/lib/RANParameter-Testing.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-Testing.h" + +#include "RANParameter-Testing-Item.h" +static asn_oer_constraints_t asn_OER_type_RANParameter_Testing_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..255)) */}; +asn_per_constraints_t asn_PER_type_RANParameter_Testing_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 8, 8, 1, 255 } /* (SIZE(1..255)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_RANParameter_Testing_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RANParameter_Testing_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_Testing_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_RANParameter_Testing_specs_1 = { + sizeof(struct RANParameter_Testing), + offsetof(struct RANParameter_Testing, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_Testing = { + "RANParameter-Testing", + "RANParameter-Testing", + &asn_OP_SEQUENCE_OF, + asn_DEF_RANParameter_Testing_tags_1, + sizeof(asn_DEF_RANParameter_Testing_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_Testing_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_Testing_tags_1) + /sizeof(asn_DEF_RANParameter_Testing_tags_1[0]), /* 1 */ + { &asn_OER_type_RANParameter_Testing_constr_1, &asn_PER_type_RANParameter_Testing_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_RANParameter_Testing_1, + 1, /* Single element */ + &asn_SPC_RANParameter_Testing_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-TestingCondition.c b/e2sm/lib/RANParameter-TestingCondition.c new file mode 100644 index 0000000..35db21f --- /dev/null +++ b/e2sm/lib/RANParameter-TestingCondition.c @@ -0,0 +1,179 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-TestingCondition.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_ranP_Choice_comparison_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ranP_Choice_comparison_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_ranP_Choice_presence_constr_10 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_ranP_Choice_presence_constr_10 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_type_RANParameter_TestingCondition_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RANParameter_TestingCondition_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_ranP_Choice_comparison_value2enum_2[] = { + { 0, 5, "equal" }, + { 1, 10, "difference" }, + { 2, 11, "greaterthan" }, + { 3, 8, "lessthan" }, + { 4, 8, "contains" }, + { 5, 11, "starts-with" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ranP_Choice_comparison_enum2value_2[] = { + 4, /* contains(4) */ + 1, /* difference(1) */ + 0, /* equal(0) */ + 2, /* greaterthan(2) */ + 3, /* lessthan(3) */ + 5 /* starts-with(5) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_ranP_Choice_comparison_specs_2 = { + asn_MAP_ranP_Choice_comparison_value2enum_2, /* "tag" => N; sorted by tag */ + asn_MAP_ranP_Choice_comparison_enum2value_2, /* N => "tag"; sorted by N */ + 6, /* Number of elements in the maps */ + 7, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ranP_Choice_comparison_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranP_Choice_comparison_2 = { + "ranP-Choice-comparison", + "ranP-Choice-comparison", + &asn_OP_NativeEnumerated, + asn_DEF_ranP_Choice_comparison_tags_2, + sizeof(asn_DEF_ranP_Choice_comparison_tags_2) + /sizeof(asn_DEF_ranP_Choice_comparison_tags_2[0]) - 1, /* 1 */ + asn_DEF_ranP_Choice_comparison_tags_2, /* Same as above */ + sizeof(asn_DEF_ranP_Choice_comparison_tags_2) + /sizeof(asn_DEF_ranP_Choice_comparison_tags_2[0]), /* 2 */ + { &asn_OER_type_ranP_Choice_comparison_constr_2, &asn_PER_type_ranP_Choice_comparison_constr_2, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ranP_Choice_comparison_specs_2 /* Additional specs */ +}; + +static const asn_INTEGER_enum_map_t asn_MAP_ranP_Choice_presence_value2enum_10[] = { + { 0, 7, "present" }, + { 1, 10, "configured" }, + { 2, 8, "rollover" }, + { 3, 8, "non-zero" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_ranP_Choice_presence_enum2value_10[] = { + 1, /* configured(1) */ + 3, /* non-zero(3) */ + 0, /* present(0) */ + 2 /* rollover(2) */ + /* This list is extensible */ +}; +static const asn_INTEGER_specifics_t asn_SPC_ranP_Choice_presence_specs_10 = { + asn_MAP_ranP_Choice_presence_value2enum_10, /* "tag" => N; sorted by tag */ + asn_MAP_ranP_Choice_presence_enum2value_10, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_ranP_Choice_presence_tags_10[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranP_Choice_presence_10 = { + "ranP-Choice-presence", + "ranP-Choice-presence", + &asn_OP_NativeEnumerated, + asn_DEF_ranP_Choice_presence_tags_10, + sizeof(asn_DEF_ranP_Choice_presence_tags_10) + /sizeof(asn_DEF_ranP_Choice_presence_tags_10[0]) - 1, /* 1 */ + asn_DEF_ranP_Choice_presence_tags_10, /* Same as above */ + sizeof(asn_DEF_ranP_Choice_presence_tags_10) + /sizeof(asn_DEF_ranP_Choice_presence_tags_10[0]), /* 2 */ + { &asn_OER_type_ranP_Choice_presence_constr_10, &asn_PER_type_ranP_Choice_presence_constr_10, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_ranP_Choice_presence_specs_10 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RANParameter_TestingCondition_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_TestingCondition, choice.ranP_Choice_comparison), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ranP_Choice_comparison_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranP-Choice-comparison" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_TestingCondition, choice.ranP_Choice_presence), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ranP_Choice_presence_10, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranP-Choice-presence" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_TestingCondition_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranP-Choice-comparison */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranP-Choice-presence */ +}; +asn_CHOICE_specifics_t asn_SPC_RANParameter_TestingCondition_specs_1 = { + sizeof(struct RANParameter_TestingCondition), + offsetof(struct RANParameter_TestingCondition, _asn_ctx), + offsetof(struct RANParameter_TestingCondition, present), + sizeof(((struct RANParameter_TestingCondition *)0)->present), + asn_MAP_RANParameter_TestingCondition_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_TestingCondition = { + "RANParameter-TestingCondition", + "RANParameter-TestingCondition", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_RANParameter_TestingCondition_constr_1, &asn_PER_type_RANParameter_TestingCondition_constr_1, CHOICE_constraint }, + asn_MBR_RANParameter_TestingCondition_1, + 2, /* Elements count */ + &asn_SPC_RANParameter_TestingCondition_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-Value.c b/e2sm/lib/RANParameter-Value.c index 91f2bc9..f3cc00c 100644 --- a/e2sm/lib/RANParameter-Value.c +++ b/e2sm/lib/RANParameter-Value.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -11,22 +11,49 @@ static asn_oer_constraints_t asn_OER_type_RANParameter_Value_constr_1 CC_NOTUSED { 0, 0 }, -1}; asn_per_constraints_t asn_PER_type_RANParameter_Value_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; asn_TYPE_member_t asn_MBR_RANParameter_Value_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Value, choice.valueInt), + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Value, choice.valueBoolean), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ + &asn_DEF_BOOLEAN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "valueBoolean" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Value, choice.valueInt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ &asn_DEF_NativeInteger, 0, { 0, 0, 0 }, 0, 0, /* No default value */ "valueInt" }, + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Value, choice.valueReal), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeReal, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "valueReal" + }, + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Value, choice.valueBitS), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_BIT_STRING, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "valueBitS" + }, { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Value, choice.valueOctS), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), -1, /* IMPLICIT tag at current level */ &asn_DEF_OCTET_STRING, 0, @@ -34,10 +61,23 @@ asn_TYPE_member_t asn_MBR_RANParameter_Value_1[] = { 0, 0, /* No default value */ "valueOctS" }, + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_Value, choice.valuePrintableString), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_PrintableString, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "valuePrintableString" + }, }; static const asn_TYPE_tag2member_t asn_MAP_RANParameter_Value_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* valueInt */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* valueOctS */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* valueBoolean */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* valueInt */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* valueReal */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* valueBitS */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* valueOctS */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* valuePrintableString */ }; asn_CHOICE_specifics_t asn_SPC_RANParameter_Value_specs_1 = { sizeof(struct RANParameter_Value), @@ -45,9 +85,9 @@ asn_CHOICE_specifics_t asn_SPC_RANParameter_Value_specs_1 = { offsetof(struct RANParameter_Value, present), sizeof(((struct RANParameter_Value *)0)->present), asn_MAP_RANParameter_Value_tag2el_1, - 2, /* Count of tags in the map */ + 6, /* Count of tags in the map */ 0, 0, - 2 /* Extensions start */ + 6 /* Extensions start */ }; asn_TYPE_descriptor_t asn_DEF_RANParameter_Value = { "RANParameter-Value", @@ -59,7 +99,7 @@ asn_TYPE_descriptor_t asn_DEF_RANParameter_Value = { 0, /* No tags (count) */ { &asn_OER_type_RANParameter_Value_constr_1, &asn_PER_type_RANParameter_Value_constr_1, CHOICE_constraint }, asn_MBR_RANParameter_Value_1, - 2, /* Elements count */ + 6, /* Elements count */ &asn_SPC_RANParameter_Value_specs_1 /* Additional specs */ }; diff --git a/e2sm/lib/RANParameter-ValueType-Choice-ElementFalse.c b/e2sm/lib/RANParameter-ValueType-Choice-ElementFalse.c new file mode 100644 index 0000000..943ee92 --- /dev/null +++ b/e2sm/lib/RANParameter-ValueType-Choice-ElementFalse.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-ValueType-Choice-ElementFalse.h" + +#include "RANParameter-Value.h" +asn_TYPE_member_t asn_MBR_RANParameter_ValueType_Choice_ElementFalse_1[] = { + { ATF_POINTER, 1, offsetof(struct RANParameter_ValueType_Choice_ElementFalse, ranParameter_value), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_Value, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-value" + }, +}; +static const int asn_MAP_RANParameter_ValueType_Choice_ElementFalse_oms_1[] = { 0 }; +static const ber_tlv_tag_t asn_DEF_RANParameter_ValueType_Choice_ElementFalse_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_ValueType_Choice_ElementFalse_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ValueType_Choice_ElementFalse_specs_1 = { + sizeof(struct RANParameter_ValueType_Choice_ElementFalse), + offsetof(struct RANParameter_ValueType_Choice_ElementFalse, _asn_ctx), + asn_MAP_RANParameter_ValueType_Choice_ElementFalse_tag2el_1, + 1, /* Count of tags in the map */ + asn_MAP_RANParameter_ValueType_Choice_ElementFalse_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType_Choice_ElementFalse = { + "RANParameter-ValueType-Choice-ElementFalse", + "RANParameter-ValueType-Choice-ElementFalse", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_ValueType_Choice_ElementFalse_tags_1, + sizeof(asn_DEF_RANParameter_ValueType_Choice_ElementFalse_tags_1) + /sizeof(asn_DEF_RANParameter_ValueType_Choice_ElementFalse_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_ValueType_Choice_ElementFalse_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_ValueType_Choice_ElementFalse_tags_1) + /sizeof(asn_DEF_RANParameter_ValueType_Choice_ElementFalse_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_ValueType_Choice_ElementFalse_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_ValueType_Choice_ElementFalse_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-ValueType-Choice-ElementTrue.c b/e2sm/lib/RANParameter-ValueType-Choice-ElementTrue.c new file mode 100644 index 0000000..2cb2bcd --- /dev/null +++ b/e2sm/lib/RANParameter-ValueType-Choice-ElementTrue.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-ValueType-Choice-ElementTrue.h" + +asn_TYPE_member_t asn_MBR_RANParameter_ValueType_Choice_ElementTrue_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RANParameter_ValueType_Choice_ElementTrue, ranParameter_value), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_Value, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-value" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_ValueType_Choice_ElementTrue_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_ValueType_Choice_ElementTrue_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-value */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ValueType_Choice_ElementTrue_specs_1 = { + sizeof(struct RANParameter_ValueType_Choice_ElementTrue), + offsetof(struct RANParameter_ValueType_Choice_ElementTrue, _asn_ctx), + asn_MAP_RANParameter_ValueType_Choice_ElementTrue_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType_Choice_ElementTrue = { + "RANParameter-ValueType-Choice-ElementTrue", + "RANParameter-ValueType-Choice-ElementTrue", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_ValueType_Choice_ElementTrue_tags_1, + sizeof(asn_DEF_RANParameter_ValueType_Choice_ElementTrue_tags_1) + /sizeof(asn_DEF_RANParameter_ValueType_Choice_ElementTrue_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_ValueType_Choice_ElementTrue_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_ValueType_Choice_ElementTrue_tags_1) + /sizeof(asn_DEF_RANParameter_ValueType_Choice_ElementTrue_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_ValueType_Choice_ElementTrue_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_ValueType_Choice_ElementTrue_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-ValueType-Choice-List.c b/e2sm/lib/RANParameter-ValueType-Choice-List.c new file mode 100644 index 0000000..f4572e2 --- /dev/null +++ b/e2sm/lib/RANParameter-ValueType-Choice-List.c @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-ValueType-Choice-List.h" + +#include "RANParameter-LIST.h" +asn_TYPE_member_t asn_MBR_RANParameter_ValueType_Choice_List_1[] = { + { ATF_POINTER, 0, offsetof(struct RANParameter_ValueType_Choice_List, ranParameter_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_LIST, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_ValueType_Choice_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_ValueType_Choice_List_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ValueType_Choice_List_specs_1 = { + sizeof(struct RANParameter_ValueType_Choice_List), + offsetof(struct RANParameter_ValueType_Choice_List, _asn_ctx), + asn_MAP_RANParameter_ValueType_Choice_List_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType_Choice_List = { + "RANParameter-ValueType-Choice-List", + "RANParameter-ValueType-Choice-List", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_ValueType_Choice_List_tags_1, + sizeof(asn_DEF_RANParameter_ValueType_Choice_List_tags_1) + /sizeof(asn_DEF_RANParameter_ValueType_Choice_List_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_ValueType_Choice_List_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_ValueType_Choice_List_tags_1) + /sizeof(asn_DEF_RANParameter_ValueType_Choice_List_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_ValueType_Choice_List_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_ValueType_Choice_List_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-ValueType-Choice-Structure.c b/e2sm/lib/RANParameter-ValueType-Choice-Structure.c new file mode 100644 index 0000000..bea8294 --- /dev/null +++ b/e2sm/lib/RANParameter-ValueType-Choice-Structure.c @@ -0,0 +1,51 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RANParameter-ValueType-Choice-Structure.h" + +#include "RANParameter-STRUCTURE.h" +asn_TYPE_member_t asn_MBR_RANParameter_ValueType_Choice_Structure_1[] = { + { ATF_POINTER, 0, offsetof(struct RANParameter_ValueType_Choice_Structure, ranParameter_Structure), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_STRUCTURE, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Structure" + }, +}; +static const ber_tlv_tag_t asn_DEF_RANParameter_ValueType_Choice_Structure_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RANParameter_ValueType_Choice_Structure_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ranParameter-Structure */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RANParameter_ValueType_Choice_Structure_specs_1 = { + sizeof(struct RANParameter_ValueType_Choice_Structure), + offsetof(struct RANParameter_ValueType_Choice_Structure, _asn_ctx), + asn_MAP_RANParameter_ValueType_Choice_Structure_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType_Choice_Structure = { + "RANParameter-ValueType-Choice-Structure", + "RANParameter-ValueType-Choice-Structure", + &asn_OP_SEQUENCE, + asn_DEF_RANParameter_ValueType_Choice_Structure_tags_1, + sizeof(asn_DEF_RANParameter_ValueType_Choice_Structure_tags_1) + /sizeof(asn_DEF_RANParameter_ValueType_Choice_Structure_tags_1[0]), /* 1 */ + asn_DEF_RANParameter_ValueType_Choice_Structure_tags_1, /* Same as above */ + sizeof(asn_DEF_RANParameter_ValueType_Choice_Structure_tags_1) + /sizeof(asn_DEF_RANParameter_ValueType_Choice_Structure_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RANParameter_ValueType_Choice_Structure_1, + 1, /* Elements count */ + &asn_SPC_RANParameter_ValueType_Choice_Structure_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RANParameter-ValueType.c b/e2sm/lib/RANParameter-ValueType.c index ebbf953..8852e86 100644 --- a/e2sm/lib/RANParameter-ValueType.c +++ b/e2sm/lib/RANParameter-ValueType.c @@ -1,56 +1,67 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "RANParameter-ValueType.h" -#include "RANParameter-ELEMENT.h" -#include "RANParameter-STRUCTURE.h" -#include "RANParameter-LIST.h" +#include "RANParameter-ValueType-Choice-ElementTrue.h" +#include "RANParameter-ValueType-Choice-ElementFalse.h" +#include "RANParameter-ValueType-Choice-Structure.h" +#include "RANParameter-ValueType-Choice-List.h" static asn_oer_constraints_t asn_OER_type_RANParameter_ValueType_constr_1 CC_NOTUSED = { { 0, 0 }, -1}; asn_per_constraints_t asn_PER_type_RANParameter_ValueType_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; asn_TYPE_member_t asn_MBR_RANParameter_ValueType_1[] = { - { ATF_POINTER, 0, offsetof(struct RANParameter_ValueType, choice.ranParameter_Element), + { ATF_POINTER, 0, offsetof(struct RANParameter_ValueType, choice.ranP_Choice_ElementTrue), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_RANParameter_ELEMENT, + &asn_DEF_RANParameter_ValueType_Choice_ElementTrue, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "ranParameter-Element" + "ranP-Choice-ElementTrue" }, - { ATF_POINTER, 0, offsetof(struct RANParameter_ValueType, choice.ranParameter_Structure), + { ATF_POINTER, 0, offsetof(struct RANParameter_ValueType, choice.ranP_Choice_ElementFalse), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_RANParameter_STRUCTURE, + &asn_DEF_RANParameter_ValueType_Choice_ElementFalse, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "ranParameter-Structure" + "ranP-Choice-ElementFalse" }, - { ATF_POINTER, 0, offsetof(struct RANParameter_ValueType, choice.ranParameter_List), + { ATF_POINTER, 0, offsetof(struct RANParameter_ValueType, choice.ranP_Choice_Structure), (ASN_TAG_CLASS_CONTEXT | (2 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_RANParameter_LIST, + &asn_DEF_RANParameter_ValueType_Choice_Structure, 0, { 0, 0, 0 }, 0, 0, /* No default value */ - "ranParameter-List" + "ranP-Choice-Structure" + }, + { ATF_POINTER, 0, offsetof(struct RANParameter_ValueType, choice.ranP_Choice_List), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ValueType_Choice_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranP-Choice-List" }, }; static const asn_TYPE_tag2member_t asn_MAP_RANParameter_ValueType_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-Element */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-Structure */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-List */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranP-Choice-ElementTrue */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranP-Choice-ElementFalse */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ranP-Choice-Structure */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ranP-Choice-List */ }; asn_CHOICE_specifics_t asn_SPC_RANParameter_ValueType_specs_1 = { sizeof(struct RANParameter_ValueType), @@ -58,9 +69,9 @@ asn_CHOICE_specifics_t asn_SPC_RANParameter_ValueType_specs_1 = { offsetof(struct RANParameter_ValueType, present), sizeof(((struct RANParameter_ValueType *)0)->present), asn_MAP_RANParameter_ValueType_tag2el_1, - 3, /* Count of tags in the map */ + 4, /* Count of tags in the map */ 0, 0, - 3 /* Extensions start */ + 4 /* Extensions start */ }; asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType = { "RANParameter-ValueType", @@ -72,7 +83,7 @@ asn_TYPE_descriptor_t asn_DEF_RANParameter_ValueType = { 0, /* No tags (count) */ { &asn_OER_type_RANParameter_ValueType_constr_1, &asn_PER_type_RANParameter_ValueType_constr_1, CHOICE_constraint }, asn_MBR_RANParameter_ValueType_1, - 3, /* Elements count */ + 4, /* Elements count */ &asn_SPC_RANParameter_ValueType_specs_1 /* Additional specs */ }; diff --git a/e2sm/lib/TimeStamp.c b/e2sm/lib/RANUEID.c similarity index 58% rename from e2sm/lib/TimeStamp.c rename to e2sm/lib/RANUEID.c index 6d6fd9c..f1fe907 100644 --- a/e2sm/lib/TimeStamp.c +++ b/e2sm/lib/RANUEID.c @@ -1,14 +1,14 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "TimeStamp.h" +#include "RANUEID.h" int -TimeStamp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +RANUEID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; size_t size; @@ -37,28 +37,28 @@ TimeStamp_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using OCTET_STRING, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_TimeStamp_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_RANUEID_constr_1 CC_NOTUSED = { { 0, 0 }, 8 /* (SIZE(8..8)) */}; -asn_per_constraints_t asn_PER_type_TimeStamp_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_RANUEID_constr_1 CC_NOTUSED = { { APC_UNCONSTRAINED, -1, -1, 0, 0 }, { APC_CONSTRAINED, 0, 0, 8, 8 } /* (SIZE(8..8)) */, 0, 0 /* No PER value map */ }; -static const ber_tlv_tag_t asn_DEF_TimeStamp_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_RANUEID_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_TimeStamp = { - "TimeStamp", - "TimeStamp", +asn_TYPE_descriptor_t asn_DEF_RANUEID = { + "RANUEID", + "RANUEID", &asn_OP_OCTET_STRING, - asn_DEF_TimeStamp_tags_1, - sizeof(asn_DEF_TimeStamp_tags_1) - /sizeof(asn_DEF_TimeStamp_tags_1[0]), /* 1 */ - asn_DEF_TimeStamp_tags_1, /* Same as above */ - sizeof(asn_DEF_TimeStamp_tags_1) - /sizeof(asn_DEF_TimeStamp_tags_1[0]), /* 1 */ - { &asn_OER_type_TimeStamp_constr_1, &asn_PER_type_TimeStamp_constr_1, TimeStamp_constraint }, + asn_DEF_RANUEID_tags_1, + sizeof(asn_DEF_RANUEID_tags_1) + /sizeof(asn_DEF_RANUEID_tags_1[0]), /* 1 */ + asn_DEF_RANUEID_tags_1, /* Same as above */ + sizeof(asn_DEF_RANUEID_tags_1) + /sizeof(asn_DEF_RANUEID_tags_1[0]), /* 1 */ + { &asn_OER_type_RANUEID_constr_1, &asn_PER_type_RANUEID_constr_1, RANUEID_constraint }, 0, 0, /* No members */ &asn_SPC_OCTET_STRING_specs /* Additional specs */ }; diff --git a/e2sm/lib/RANfunction-Name.c b/e2sm/lib/RANfunction-Name.c index a56189d..d467e01 100644 --- a/e2sm/lib/RANfunction-Name.c +++ b/e2sm/lib/RANfunction-Name.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -155,7 +155,7 @@ memb_ranFunction_E2SM_OID_constraint_1(const asn_TYPE_descriptor_t *td, const vo size = st->size; - if((size >= 1 && size <= 150) + if((size >= 1 && size <= 1000) && !check_permitted_alphabet_3(st)) { /* Constraint check succeeded */ return 0; @@ -228,7 +228,7 @@ static asn_oer_constraints_t asn_OER_memb_ranFunction_E2SM_OID_constr_3 CC_NOTUS -1 /* (SIZE(0..MAX)) */}; static asn_per_constraints_t asn_PER_memb_ranFunction_E2SM_OID_constr_3 CC_NOTUSED = { { APC_CONSTRAINED, 7, 7, 32, 122 } /* (32..122) */, - { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 1, 150 } /* (SIZE(1..150,...)) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 10, 10, 1, 1000 } /* (SIZE(1..1000,...)) */, asn_PER_MAP_ranFunction_E2SM_OID_3_v2c, /* Value to PER code map */ asn_PER_MAP_ranFunction_E2SM_OID_3_c2v /* PER code to value map */ }; diff --git a/e2sm/lib/RIC-CallProcessBreakpoint-ID.c b/e2sm/lib/RIC-CallProcessBreakpoint-ID.c new file mode 100644 index 0000000..bd9f37b --- /dev/null +++ b/e2sm/lib/RIC-CallProcessBreakpoint-ID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-CallProcessBreakpoint-ID.h" + +int +RIC_CallProcessBreakpoint_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RIC_CallProcessBreakpoint_ID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RIC_CallProcessBreakpoint_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RIC_CallProcessBreakpoint_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RIC_CallProcessBreakpoint_ID = { + "RIC-CallProcessBreakpoint-ID", + "RIC-CallProcessBreakpoint-ID", + &asn_OP_NativeInteger, + asn_DEF_RIC_CallProcessBreakpoint_ID_tags_1, + sizeof(asn_DEF_RIC_CallProcessBreakpoint_ID_tags_1) + /sizeof(asn_DEF_RIC_CallProcessBreakpoint_ID_tags_1[0]), /* 1 */ + asn_DEF_RIC_CallProcessBreakpoint_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_CallProcessBreakpoint_ID_tags_1) + /sizeof(asn_DEF_RIC_CallProcessBreakpoint_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_CallProcessBreakpoint_ID_constr_1, &asn_PER_type_RIC_CallProcessBreakpoint_ID_constr_1, RIC_CallProcessBreakpoint_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RIC-CallProcessBreakpoint-Name.c b/e2sm/lib/RIC-CallProcessBreakpoint-Name.c new file mode 100644 index 0000000..85d59b2 --- /dev/null +++ b/e2sm/lib/RIC-CallProcessBreakpoint-Name.c @@ -0,0 +1,109 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-CallProcessBreakpoint-Name.h" + +static const int permitted_alphabet_table_1[256] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ + 1, 0, 0, 0, 0, 0, 0, 2, 3, 4, 0, 5, 6, 7, 8, 9, /* . '() +,-./ */ +10,11,12,13,14,15,16,17,18,19,20, 0, 0,21, 0,22, /* 0123456789: = ? */ + 0,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37, /* ABCDEFGHIJKLMNO */ +38,39,40,41,42,43,44,45,46,47,48, 0, 0, 0, 0, 0, /* PQRSTUVWXYZ */ + 0,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63, /* abcdefghijklmno */ +64,65,66,67,68,69,70,71,72,73,74, 0, 0, 0, 0, 0, /* pqrstuvwxyz */ +}; +static const int permitted_alphabet_code2value_1[74] = { +32,39,40,41,43,44,45,46,47,48,49,50,51,52,53,54, +55,56,57,58,61,63,65,66,67,68,69,70,71,72,73,74, +75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90, +97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112, +113,114,115,116,117,118,119,120,121,122,}; + + +static int check_permitted_alphabet_1(const void *sptr) { + const int *table = permitted_alphabet_table_1; + /* The underlying type is PrintableString */ + const PrintableString_t *st = (const PrintableString_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!table[cv]) return -1; + } + return 0; +} + +int +RIC_CallProcessBreakpoint_Name_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const PrintableString_t *st = (const PrintableString_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 150) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int asn_PER_MAP_RIC_CallProcessBreakpoint_Name_1_v2c(unsigned int value) { + if(value >= sizeof(permitted_alphabet_table_1)/sizeof(permitted_alphabet_table_1[0])) + return -1; + return permitted_alphabet_table_1[value] - 1; +} +static int asn_PER_MAP_RIC_CallProcessBreakpoint_Name_1_c2v(unsigned int code) { + if(code >= sizeof(permitted_alphabet_code2value_1)/sizeof(permitted_alphabet_code2value_1[0])) + return -1; + return permitted_alphabet_code2value_1[code]; +} +/* + * This type is implemented using PrintableString, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RIC_CallProcessBreakpoint_Name_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_RIC_CallProcessBreakpoint_Name_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 32, 122 } /* (32..122) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 1, 150 } /* (SIZE(1..150,...)) */, + asn_PER_MAP_RIC_CallProcessBreakpoint_Name_1_v2c, /* Value to PER code map */ + asn_PER_MAP_RIC_CallProcessBreakpoint_Name_1_c2v /* PER code to value map */ +}; +static const ber_tlv_tag_t asn_DEF_RIC_CallProcessBreakpoint_Name_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (19 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RIC_CallProcessBreakpoint_Name = { + "RIC-CallProcessBreakpoint-Name", + "RIC-CallProcessBreakpoint-Name", + &asn_OP_PrintableString, + asn_DEF_RIC_CallProcessBreakpoint_Name_tags_1, + sizeof(asn_DEF_RIC_CallProcessBreakpoint_Name_tags_1) + /sizeof(asn_DEF_RIC_CallProcessBreakpoint_Name_tags_1[0]), /* 1 */ + asn_DEF_RIC_CallProcessBreakpoint_Name_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_CallProcessBreakpoint_Name_tags_1) + /sizeof(asn_DEF_RIC_CallProcessBreakpoint_Name_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_CallProcessBreakpoint_Name_constr_1, &asn_PER_type_RIC_CallProcessBreakpoint_Name_constr_1, RIC_CallProcessBreakpoint_Name_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RIC-CallProcessType-ID.c b/e2sm/lib/RIC-CallProcessType-ID.c new file mode 100644 index 0000000..8cdeed4 --- /dev/null +++ b/e2sm/lib/RIC-CallProcessType-ID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-CallProcessType-ID.h" + +int +RIC_CallProcessType_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RIC_CallProcessType_ID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RIC_CallProcessType_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RIC_CallProcessType_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RIC_CallProcessType_ID = { + "RIC-CallProcessType-ID", + "RIC-CallProcessType-ID", + &asn_OP_NativeInteger, + asn_DEF_RIC_CallProcessType_ID_tags_1, + sizeof(asn_DEF_RIC_CallProcessType_ID_tags_1) + /sizeof(asn_DEF_RIC_CallProcessType_ID_tags_1[0]), /* 1 */ + asn_DEF_RIC_CallProcessType_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_CallProcessType_ID_tags_1) + /sizeof(asn_DEF_RIC_CallProcessType_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_CallProcessType_ID_constr_1, &asn_PER_type_RIC_CallProcessType_ID_constr_1, RIC_CallProcessType_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RANcallProcess-ID-string.c b/e2sm/lib/RIC-CallProcessType-Name.c similarity index 69% rename from e2sm/lib/RANcallProcess-ID-string.c rename to e2sm/lib/RIC-CallProcessType-Name.c index 69092be..419f264 100644 --- a/e2sm/lib/RANcallProcess-ID-string.c +++ b/e2sm/lib/RIC-CallProcessType-Name.c @@ -1,11 +1,11 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "RANcallProcess-ID-string.h" +#include "RIC-CallProcessType-Name.h" static const int permitted_alphabet_table_1[256] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ @@ -40,7 +40,7 @@ static int check_permitted_alphabet_1(const void *sptr) { } int -RANcallProcess_ID_string_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +RIC_CallProcessType_Name_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { const PrintableString_t *st = (const PrintableString_t *)sptr; size_t size; @@ -66,12 +66,12 @@ RANcallProcess_ID_string_constraint(const asn_TYPE_descriptor_t *td, const void } } -static int asn_PER_MAP_RANcallProcess_ID_string_1_v2c(unsigned int value) { +static int asn_PER_MAP_RIC_CallProcessType_Name_1_v2c(unsigned int value) { if(value >= sizeof(permitted_alphabet_table_1)/sizeof(permitted_alphabet_table_1[0])) return -1; return permitted_alphabet_table_1[value] - 1; } -static int asn_PER_MAP_RANcallProcess_ID_string_1_c2v(unsigned int code) { +static int asn_PER_MAP_RIC_CallProcessType_Name_1_c2v(unsigned int code) { if(code >= sizeof(permitted_alphabet_code2value_1)/sizeof(permitted_alphabet_code2value_1[0])) return -1; return permitted_alphabet_code2value_1[code]; @@ -80,29 +80,29 @@ static int asn_PER_MAP_RANcallProcess_ID_string_1_c2v(unsigned int code) { * This type is implemented using PrintableString, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_RANcallProcess_ID_string_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_RIC_CallProcessType_Name_constr_1 CC_NOTUSED = { { 0, 0 }, -1 /* (SIZE(0..MAX)) */}; -static asn_per_constraints_t asn_PER_type_RANcallProcess_ID_string_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_RIC_CallProcessType_Name_constr_1 CC_NOTUSED = { { APC_CONSTRAINED, 7, 7, 32, 122 } /* (32..122) */, { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 1, 150 } /* (SIZE(1..150,...)) */, - asn_PER_MAP_RANcallProcess_ID_string_1_v2c, /* Value to PER code map */ - asn_PER_MAP_RANcallProcess_ID_string_1_c2v /* PER code to value map */ + asn_PER_MAP_RIC_CallProcessType_Name_1_v2c, /* Value to PER code map */ + asn_PER_MAP_RIC_CallProcessType_Name_1_c2v /* PER code to value map */ }; -static const ber_tlv_tag_t asn_DEF_RANcallProcess_ID_string_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_RIC_CallProcessType_Name_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (19 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_RANcallProcess_ID_string = { - "RANcallProcess-ID-string", - "RANcallProcess-ID-string", +asn_TYPE_descriptor_t asn_DEF_RIC_CallProcessType_Name = { + "RIC-CallProcessType-Name", + "RIC-CallProcessType-Name", &asn_OP_PrintableString, - asn_DEF_RANcallProcess_ID_string_tags_1, - sizeof(asn_DEF_RANcallProcess_ID_string_tags_1) - /sizeof(asn_DEF_RANcallProcess_ID_string_tags_1[0]), /* 1 */ - asn_DEF_RANcallProcess_ID_string_tags_1, /* Same as above */ - sizeof(asn_DEF_RANcallProcess_ID_string_tags_1) - /sizeof(asn_DEF_RANcallProcess_ID_string_tags_1[0]), /* 1 */ - { &asn_OER_type_RANcallProcess_ID_string_constr_1, &asn_PER_type_RANcallProcess_ID_string_constr_1, RANcallProcess_ID_string_constraint }, + asn_DEF_RIC_CallProcessType_Name_tags_1, + sizeof(asn_DEF_RIC_CallProcessType_Name_tags_1) + /sizeof(asn_DEF_RIC_CallProcessType_Name_tags_1[0]), /* 1 */ + asn_DEF_RIC_CallProcessType_Name_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_CallProcessType_Name_tags_1) + /sizeof(asn_DEF_RIC_CallProcessType_Name_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_CallProcessType_Name_constr_1, &asn_PER_type_RIC_CallProcessType_Name_constr_1, RIC_CallProcessType_Name_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/e2sm/lib/RIC-ControlAction-ID.c b/e2sm/lib/RIC-ControlAction-ID.c index b0a0178..839a7b2 100644 --- a/e2sm/lib/RIC-ControlAction-ID.c +++ b/e2sm/lib/RIC-ControlAction-ID.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ @@ -21,7 +21,7 @@ RIC_ControlAction_ID_constraint(const asn_TYPE_descriptor_t *td, const void *spt value = *(const long *)sptr; - if((value >= 0 && value <= 65535)) { + if((value >= 1 && value <= 65535)) { /* Constraint check succeeded */ return 0; } else { @@ -37,10 +37,10 @@ RIC_ControlAction_ID_constraint(const asn_TYPE_descriptor_t *td, const void *spt * so here we adjust the DEF accordingly. */ static asn_oer_constraints_t asn_OER_type_RIC_ControlAction_ID_constr_1 CC_NOTUSED = { - { 2, 1 } /* (0..65535) */, + { 0, 0 }, -1}; asn_per_constraints_t asn_PER_type_RIC_ControlAction_ID_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 16, 16, 0, 65535 } /* (0..65535) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; diff --git a/e2sm/lib/RIC-ControlAction-Item.c b/e2sm/lib/RIC-ControlAction-Item.c deleted file mode 100644 index cc89d2d..0000000 --- a/e2sm/lib/RIC-ControlAction-Item.c +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RIC-ControlAction-Item.h" - -#include "RAN-ControlParameter-Item.h" -static int -memb_ran_ControlParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 4294967295)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_ran_ControlParameters_List_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4294967295)) */}; -static asn_per_constraints_t asn_PER_type_ran_ControlParameters_List_constr_4 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 32, -1, 1, 4294967295 } /* (SIZE(1..4294967295)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ran_ControlParameters_List_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..4294967295)) */}; -static asn_per_constraints_t asn_PER_memb_ran_ControlParameters_List_constr_4 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 32, -1, 1, 4294967295 } /* (SIZE(1..4294967295)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_ran_ControlParameters_List_4[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RAN_ControlParameter_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ran_ControlParameters_List_tags_4[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ran_ControlParameters_List_specs_4 = { - sizeof(struct RIC_ControlAction_Item__ran_ControlParameters_List), - offsetof(struct RIC_ControlAction_Item__ran_ControlParameters_List, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_ran_ControlParameters_List_4 = { - "ran-ControlParameters-List", - "ran-ControlParameters-List", - &asn_OP_SEQUENCE_OF, - asn_DEF_ran_ControlParameters_List_tags_4, - sizeof(asn_DEF_ran_ControlParameters_List_tags_4) - /sizeof(asn_DEF_ran_ControlParameters_List_tags_4[0]) - 1, /* 1 */ - asn_DEF_ran_ControlParameters_List_tags_4, /* Same as above */ - sizeof(asn_DEF_ran_ControlParameters_List_tags_4) - /sizeof(asn_DEF_ran_ControlParameters_List_tags_4[0]), /* 2 */ - { &asn_OER_type_ran_ControlParameters_List_constr_4, &asn_PER_type_ran_ControlParameters_List_constr_4, SEQUENCE_OF_constraint }, - asn_MBR_ran_ControlParameters_List_4, - 1, /* Single element */ - &asn_SPC_ran_ControlParameters_List_specs_4 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RIC_ControlAction_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RIC_ControlAction_Item, ric_ControlAction_ID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_ControlAction_ID, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ControlAction-ID" - }, - { ATF_NOFLAGS, 0, offsetof(struct RIC_ControlAction_Item, ric_ControlAction_Name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_ControlAction_Name, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ControlAction-Name" - }, - { ATF_POINTER, 1, offsetof(struct RIC_ControlAction_Item, ran_ControlParameters_List), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - 0, - &asn_DEF_ran_ControlParameters_List_4, - 0, - { &asn_OER_memb_ran_ControlParameters_List_constr_4, &asn_PER_memb_ran_ControlParameters_List_constr_4, memb_ran_ControlParameters_List_constraint_1 }, - 0, 0, /* No default value */ - "ran-ControlParameters-List" - }, -}; -static const int asn_MAP_RIC_ControlAction_Item_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_RIC_ControlAction_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RIC_ControlAction_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-ControlAction-ID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-ControlAction-Name */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ran-ControlParameters-List */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RIC_ControlAction_Item_specs_1 = { - sizeof(struct RIC_ControlAction_Item), - offsetof(struct RIC_ControlAction_Item, _asn_ctx), - asn_MAP_RIC_ControlAction_Item_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_RIC_ControlAction_Item_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RIC_ControlAction_Item = { - "RIC-ControlAction-Item", - "RIC-ControlAction-Item", - &asn_OP_SEQUENCE, - asn_DEF_RIC_ControlAction_Item_tags_1, - sizeof(asn_DEF_RIC_ControlAction_Item_tags_1) - /sizeof(asn_DEF_RIC_ControlAction_Item_tags_1[0]), /* 1 */ - asn_DEF_RIC_ControlAction_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_RIC_ControlAction_Item_tags_1) - /sizeof(asn_DEF_RIC_ControlAction_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RIC_ControlAction_Item_1, - 3, /* Elements count */ - &asn_SPC_RIC_ControlAction_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/RIC-ControlAction-Name.c b/e2sm/lib/RIC-ControlAction-Name.c index 346ea42..8a6bd62 100644 --- a/e2sm/lib/RIC-ControlAction-Name.c +++ b/e2sm/lib/RIC-ControlAction-Name.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/RIC-ControlStyle-Item.c b/e2sm/lib/RIC-ControlStyle-Item.c deleted file mode 100644 index 9aae0c9..0000000 --- a/e2sm/lib/RIC-ControlStyle-Item.c +++ /dev/null @@ -1,172 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RIC-ControlStyle-Item.h" - -#include "RIC-ControlAction-Item.h" -static int -memb_ric_ControlAction_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 65535)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_ric_ControlAction_List_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..65535)) */}; -static asn_per_constraints_t asn_PER_type_ric_ControlAction_List_constr_4 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_ric_ControlAction_List_constr_4 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..65535)) */}; -static asn_per_constraints_t asn_PER_memb_ric_ControlAction_List_constr_4 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_ric_ControlAction_List_4[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_RIC_ControlAction_Item, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ric_ControlAction_List_tags_4[] = { - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_ric_ControlAction_List_specs_4 = { - sizeof(struct RIC_ControlStyle_Item__ric_ControlAction_List), - offsetof(struct RIC_ControlStyle_Item__ric_ControlAction_List, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_ric_ControlAction_List_4 = { - "ric-ControlAction-List", - "ric-ControlAction-List", - &asn_OP_SEQUENCE_OF, - asn_DEF_ric_ControlAction_List_tags_4, - sizeof(asn_DEF_ric_ControlAction_List_tags_4) - /sizeof(asn_DEF_ric_ControlAction_List_tags_4[0]) - 1, /* 1 */ - asn_DEF_ric_ControlAction_List_tags_4, /* Same as above */ - sizeof(asn_DEF_ric_ControlAction_List_tags_4) - /sizeof(asn_DEF_ric_ControlAction_List_tags_4[0]), /* 2 */ - { &asn_OER_type_ric_ControlAction_List_constr_4, &asn_PER_type_ric_ControlAction_List_constr_4, SEQUENCE_OF_constraint }, - asn_MBR_ric_ControlAction_List_4, - 1, /* Single element */ - &asn_SPC_ric_ControlAction_List_specs_4 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_RIC_ControlStyle_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RIC_ControlStyle_Item, ric_ControlStyle_Type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Style_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ControlStyle-Type" - }, - { ATF_NOFLAGS, 0, offsetof(struct RIC_ControlStyle_Item, ric_ControlStyle_Name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Style_Name, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ControlStyle-Name" - }, - { ATF_POINTER, 1, offsetof(struct RIC_ControlStyle_Item, ric_ControlAction_List), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - 0, - &asn_DEF_ric_ControlAction_List_4, - 0, - { &asn_OER_memb_ric_ControlAction_List_constr_4, &asn_PER_memb_ric_ControlAction_List_constr_4, memb_ric_ControlAction_List_constraint_1 }, - 0, 0, /* No default value */ - "ric-ControlAction-List" - }, - { ATF_NOFLAGS, 0, offsetof(struct RIC_ControlStyle_Item, ric_ControlHeaderFormat_Type), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Format_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ControlHeaderFormat-Type" - }, - { ATF_NOFLAGS, 0, offsetof(struct RIC_ControlStyle_Item, ric_ControlMessageFormat_Type), - (ASN_TAG_CLASS_CONTEXT | (4 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Format_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ControlMessageFormat-Type" - }, -}; -static const int asn_MAP_RIC_ControlStyle_Item_oms_1[] = { 2 }; -static const ber_tlv_tag_t asn_DEF_RIC_ControlStyle_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RIC_ControlStyle_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-ControlStyle-Type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-ControlStyle-Name */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ric-ControlAction-List */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ric-ControlHeaderFormat-Type */ - { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* ric-ControlMessageFormat-Type */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RIC_ControlStyle_Item_specs_1 = { - sizeof(struct RIC_ControlStyle_Item), - offsetof(struct RIC_ControlStyle_Item, _asn_ctx), - asn_MAP_RIC_ControlStyle_Item_tag2el_1, - 5, /* Count of tags in the map */ - asn_MAP_RIC_ControlStyle_Item_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 5, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RIC_ControlStyle_Item = { - "RIC-ControlStyle-Item", - "RIC-ControlStyle-Item", - &asn_OP_SEQUENCE, - asn_DEF_RIC_ControlStyle_Item_tags_1, - sizeof(asn_DEF_RIC_ControlStyle_Item_tags_1) - /sizeof(asn_DEF_RIC_ControlStyle_Item_tags_1[0]), /* 1 */ - asn_DEF_RIC_ControlStyle_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_RIC_ControlStyle_Item_tags_1) - /sizeof(asn_DEF_RIC_ControlStyle_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RIC_ControlStyle_Item_1, - 5, /* Elements count */ - &asn_SPC_RIC_ControlStyle_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/MeasurementTypeID.c b/e2sm/lib/RIC-EventTrigger-Cell-ID.c similarity index 50% rename from e2sm/lib/MeasurementTypeID.c rename to e2sm/lib/RIC-EventTrigger-Cell-ID.c index 62a8a79..1a3e811 100644 --- a/e2sm/lib/MeasurementTypeID.c +++ b/e2sm/lib/RIC-EventTrigger-Cell-ID.c @@ -1,14 +1,14 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ -#include "MeasurementTypeID.h" +#include "RIC-EventTrigger-Cell-ID.h" int -MeasurementTypeID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, +RIC_EventTrigger_Cell_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key) { long value; @@ -36,28 +36,28 @@ MeasurementTypeID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, * This type is implemented using NativeInteger, * so here we adjust the DEF accordingly. */ -static asn_oer_constraints_t asn_OER_type_MeasurementTypeID_constr_1 CC_NOTUSED = { +static asn_oer_constraints_t asn_OER_type_RIC_EventTrigger_Cell_ID_constr_1 CC_NOTUSED = { { 0, 0 }, -1}; -asn_per_constraints_t asn_PER_type_MeasurementTypeID_constr_1 CC_NOTUSED = { +asn_per_constraints_t asn_PER_type_RIC_EventTrigger_Cell_ID_constr_1 CC_NOTUSED = { { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, { APC_UNCONSTRAINED, -1, -1, 0, 0 }, 0, 0 /* No PER value map */ }; -static const ber_tlv_tag_t asn_DEF_MeasurementTypeID_tags_1[] = { +static const ber_tlv_tag_t asn_DEF_RIC_EventTrigger_Cell_ID_tags_1[] = { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) }; -asn_TYPE_descriptor_t asn_DEF_MeasurementTypeID = { - "MeasurementTypeID", - "MeasurementTypeID", +asn_TYPE_descriptor_t asn_DEF_RIC_EventTrigger_Cell_ID = { + "RIC-EventTrigger-Cell-ID", + "RIC-EventTrigger-Cell-ID", &asn_OP_NativeInteger, - asn_DEF_MeasurementTypeID_tags_1, - sizeof(asn_DEF_MeasurementTypeID_tags_1) - /sizeof(asn_DEF_MeasurementTypeID_tags_1[0]), /* 1 */ - asn_DEF_MeasurementTypeID_tags_1, /* Same as above */ - sizeof(asn_DEF_MeasurementTypeID_tags_1) - /sizeof(asn_DEF_MeasurementTypeID_tags_1[0]), /* 1 */ - { &asn_OER_type_MeasurementTypeID_constr_1, &asn_PER_type_MeasurementTypeID_constr_1, MeasurementTypeID_constraint }, + asn_DEF_RIC_EventTrigger_Cell_ID_tags_1, + sizeof(asn_DEF_RIC_EventTrigger_Cell_ID_tags_1) + /sizeof(asn_DEF_RIC_EventTrigger_Cell_ID_tags_1[0]), /* 1 */ + asn_DEF_RIC_EventTrigger_Cell_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_EventTrigger_Cell_ID_tags_1) + /sizeof(asn_DEF_RIC_EventTrigger_Cell_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_EventTrigger_Cell_ID_constr_1, &asn_PER_type_RIC_EventTrigger_Cell_ID_constr_1, RIC_EventTrigger_Cell_ID_constraint }, 0, 0, /* No members */ 0 /* No specifics */ }; diff --git a/e2sm/lib/RIC-EventTrigger-UE-ID.c b/e2sm/lib/RIC-EventTrigger-UE-ID.c new file mode 100644 index 0000000..ff95b0f --- /dev/null +++ b/e2sm/lib/RIC-EventTrigger-UE-ID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-EventTrigger-UE-ID.h" + +int +RIC_EventTrigger_UE_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RIC_EventTrigger_UE_ID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RIC_EventTrigger_UE_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RIC_EventTrigger_UE_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RIC_EventTrigger_UE_ID = { + "RIC-EventTrigger-UE-ID", + "RIC-EventTrigger-UE-ID", + &asn_OP_NativeInteger, + asn_DEF_RIC_EventTrigger_UE_ID_tags_1, + sizeof(asn_DEF_RIC_EventTrigger_UE_ID_tags_1) + /sizeof(asn_DEF_RIC_EventTrigger_UE_ID_tags_1[0]), /* 1 */ + asn_DEF_RIC_EventTrigger_UE_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_EventTrigger_UE_ID_tags_1) + /sizeof(asn_DEF_RIC_EventTrigger_UE_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_EventTrigger_UE_ID_constr_1, &asn_PER_type_RIC_EventTrigger_UE_ID_constr_1, RIC_EventTrigger_UE_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RIC-EventTrigger-UEevent-ID.c b/e2sm/lib/RIC-EventTrigger-UEevent-ID.c new file mode 100644 index 0000000..18a1dfc --- /dev/null +++ b/e2sm/lib/RIC-EventTrigger-UEevent-ID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-EventTrigger-UEevent-ID.h" + +int +RIC_EventTrigger_UEevent_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RIC_EventTrigger_UEevent_ID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RIC_EventTrigger_UEevent_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RIC_EventTrigger_UEevent_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RIC_EventTrigger_UEevent_ID = { + "RIC-EventTrigger-UEevent-ID", + "RIC-EventTrigger-UEevent-ID", + &asn_OP_NativeInteger, + asn_DEF_RIC_EventTrigger_UEevent_ID_tags_1, + sizeof(asn_DEF_RIC_EventTrigger_UEevent_ID_tags_1) + /sizeof(asn_DEF_RIC_EventTrigger_UEevent_ID_tags_1[0]), /* 1 */ + asn_DEF_RIC_EventTrigger_UEevent_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_EventTrigger_UEevent_ID_tags_1) + /sizeof(asn_DEF_RIC_EventTrigger_UEevent_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_EventTrigger_UEevent_ID_constr_1, &asn_PER_type_RIC_EventTrigger_UEevent_ID_constr_1, RIC_EventTrigger_UEevent_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RIC-EventTriggerCondition-ID.c b/e2sm/lib/RIC-EventTriggerCondition-ID.c new file mode 100644 index 0000000..de6d3e6 --- /dev/null +++ b/e2sm/lib/RIC-EventTriggerCondition-ID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-EventTriggerCondition-ID.h" + +int +RIC_EventTriggerCondition_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RIC_EventTriggerCondition_ID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RIC_EventTriggerCondition_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RIC_EventTriggerCondition_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RIC_EventTriggerCondition_ID = { + "RIC-EventTriggerCondition-ID", + "RIC-EventTriggerCondition-ID", + &asn_OP_NativeInteger, + asn_DEF_RIC_EventTriggerCondition_ID_tags_1, + sizeof(asn_DEF_RIC_EventTriggerCondition_ID_tags_1) + /sizeof(asn_DEF_RIC_EventTriggerCondition_ID_tags_1[0]), /* 1 */ + asn_DEF_RIC_EventTriggerCondition_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_EventTriggerCondition_ID_tags_1) + /sizeof(asn_DEF_RIC_EventTriggerCondition_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_EventTriggerCondition_ID_constr_1, &asn_PER_type_RIC_EventTriggerCondition_ID_constr_1, RIC_EventTriggerCondition_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RIC-EventTriggerStyle-Item.c b/e2sm/lib/RIC-EventTriggerStyle-Item.c deleted file mode 100644 index 029f300..0000000 --- a/e2sm/lib/RIC-EventTriggerStyle-Item.c +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RIC-EventTriggerStyle-Item.h" - -asn_TYPE_member_t asn_MBR_RIC_EventTriggerStyle_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RIC_EventTriggerStyle_Item, ric_EventTriggerStyle_Type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Style_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-EventTriggerStyle-Type" - }, - { ATF_NOFLAGS, 0, offsetof(struct RIC_EventTriggerStyle_Item, ric_EventTriggerStyle_Name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Style_Name, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-EventTriggerStyle-Name" - }, - { ATF_NOFLAGS, 0, offsetof(struct RIC_EventTriggerStyle_Item, ric_EventTriggerFormat_Type), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Format_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-EventTriggerFormat-Type" - }, -}; -static const ber_tlv_tag_t asn_DEF_RIC_EventTriggerStyle_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RIC_EventTriggerStyle_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-EventTriggerStyle-Type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-EventTriggerStyle-Name */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ric-EventTriggerFormat-Type */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RIC_EventTriggerStyle_Item_specs_1 = { - sizeof(struct RIC_EventTriggerStyle_Item), - offsetof(struct RIC_EventTriggerStyle_Item, _asn_ctx), - asn_MAP_RIC_EventTriggerStyle_Item_tag2el_1, - 3, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RIC_EventTriggerStyle_Item = { - "RIC-EventTriggerStyle-Item", - "RIC-EventTriggerStyle-Item", - &asn_OP_SEQUENCE, - asn_DEF_RIC_EventTriggerStyle_Item_tags_1, - sizeof(asn_DEF_RIC_EventTriggerStyle_Item_tags_1) - /sizeof(asn_DEF_RIC_EventTriggerStyle_Item_tags_1[0]), /* 1 */ - asn_DEF_RIC_EventTriggerStyle_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_RIC_EventTriggerStyle_Item_tags_1) - /sizeof(asn_DEF_RIC_EventTriggerStyle_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RIC_EventTriggerStyle_Item_1, - 3, /* Elements count */ - &asn_SPC_RIC_EventTriggerStyle_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/RIC-Format-Type.c b/e2sm/lib/RIC-Format-Type.c index 8242722..e2f2a7a 100644 --- a/e2sm/lib/RIC-Format-Type.c +++ b/e2sm/lib/RIC-Format-Type.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/RIC-InsertIndication-ID.c b/e2sm/lib/RIC-InsertIndication-ID.c new file mode 100644 index 0000000..6cf61e3 --- /dev/null +++ b/e2sm/lib/RIC-InsertIndication-ID.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-InsertIndication-ID.h" + +int +RIC_InsertIndication_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 65535)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RIC_InsertIndication_ID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RIC_InsertIndication_ID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 16, 16, 1, 65535 } /* (1..65535,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_RIC_InsertIndication_ID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RIC_InsertIndication_ID = { + "RIC-InsertIndication-ID", + "RIC-InsertIndication-ID", + &asn_OP_NativeInteger, + asn_DEF_RIC_InsertIndication_ID_tags_1, + sizeof(asn_DEF_RIC_InsertIndication_ID_tags_1) + /sizeof(asn_DEF_RIC_InsertIndication_ID_tags_1[0]), /* 1 */ + asn_DEF_RIC_InsertIndication_ID_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_InsertIndication_ID_tags_1) + /sizeof(asn_DEF_RIC_InsertIndication_ID_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_InsertIndication_ID_constr_1, &asn_PER_type_RIC_InsertIndication_ID_constr_1, RIC_InsertIndication_ID_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RIC-InsertIndication-Name.c b/e2sm/lib/RIC-InsertIndication-Name.c new file mode 100644 index 0000000..ddc9c47 --- /dev/null +++ b/e2sm/lib/RIC-InsertIndication-Name.c @@ -0,0 +1,109 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-InsertIndication-Name.h" + +static const int permitted_alphabet_table_1[256] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* */ + 1, 0, 0, 0, 0, 0, 0, 2, 3, 4, 0, 5, 6, 7, 8, 9, /* . '() +,-./ */ +10,11,12,13,14,15,16,17,18,19,20, 0, 0,21, 0,22, /* 0123456789: = ? */ + 0,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37, /* ABCDEFGHIJKLMNO */ +38,39,40,41,42,43,44,45,46,47,48, 0, 0, 0, 0, 0, /* PQRSTUVWXYZ */ + 0,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63, /* abcdefghijklmno */ +64,65,66,67,68,69,70,71,72,73,74, 0, 0, 0, 0, 0, /* pqrstuvwxyz */ +}; +static const int permitted_alphabet_code2value_1[74] = { +32,39,40,41,43,44,45,46,47,48,49,50,51,52,53,54, +55,56,57,58,61,63,65,66,67,68,69,70,71,72,73,74, +75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90, +97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112, +113,114,115,116,117,118,119,120,121,122,}; + + +static int check_permitted_alphabet_1(const void *sptr) { + const int *table = permitted_alphabet_table_1; + /* The underlying type is PrintableString */ + const PrintableString_t *st = (const PrintableString_t *)sptr; + const uint8_t *ch = st->buf; + const uint8_t *end = ch + st->size; + + for(; ch < end; ch++) { + uint8_t cv = *ch; + if(!table[cv]) return -1; + } + return 0; +} + +int +RIC_InsertIndication_Name_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const PrintableString_t *st = (const PrintableString_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size >= 1 && size <= 150) + && !check_permitted_alphabet_1(st)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static int asn_PER_MAP_RIC_InsertIndication_Name_1_v2c(unsigned int value) { + if(value >= sizeof(permitted_alphabet_table_1)/sizeof(permitted_alphabet_table_1[0])) + return -1; + return permitted_alphabet_table_1[value] - 1; +} +static int asn_PER_MAP_RIC_InsertIndication_Name_1_c2v(unsigned int code) { + if(code >= sizeof(permitted_alphabet_code2value_1)/sizeof(permitted_alphabet_code2value_1[0])) + return -1; + return permitted_alphabet_code2value_1[code]; +} +/* + * This type is implemented using PrintableString, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RIC_InsertIndication_Name_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..MAX)) */}; +asn_per_constraints_t asn_PER_type_RIC_InsertIndication_Name_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 7, 7, 32, 122 } /* (32..122) */, + { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, 1, 150 } /* (SIZE(1..150,...)) */, + asn_PER_MAP_RIC_InsertIndication_Name_1_v2c, /* Value to PER code map */ + asn_PER_MAP_RIC_InsertIndication_Name_1_c2v /* PER code to value map */ +}; +static const ber_tlv_tag_t asn_DEF_RIC_InsertIndication_Name_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (19 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RIC_InsertIndication_Name = { + "RIC-InsertIndication-Name", + "RIC-InsertIndication-Name", + &asn_OP_PrintableString, + asn_DEF_RIC_InsertIndication_Name_tags_1, + sizeof(asn_DEF_RIC_InsertIndication_Name_tags_1) + /sizeof(asn_DEF_RIC_InsertIndication_Name_tags_1[0]), /* 1 */ + asn_DEF_RIC_InsertIndication_Name_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_InsertIndication_Name_tags_1) + /sizeof(asn_DEF_RIC_InsertIndication_Name_tags_1[0]), /* 1 */ + { &asn_OER_type_RIC_InsertIndication_Name_constr_1, &asn_PER_type_RIC_InsertIndication_Name_constr_1, RIC_InsertIndication_Name_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/RIC-PolicyAction-RANParameter-Item.c b/e2sm/lib/RIC-PolicyAction-RANParameter-Item.c new file mode 100644 index 0000000..d146925 --- /dev/null +++ b/e2sm/lib/RIC-PolicyAction-RANParameter-Item.c @@ -0,0 +1,60 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-PolicyAction-RANParameter-Item.h" + +asn_TYPE_member_t asn_MBR_RIC_PolicyAction_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RIC_PolicyAction_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct RIC_PolicyAction_RANParameter_Item, ranParameter_valueType), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_RANParameter_ValueType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-valueType" + }, +}; +static const ber_tlv_tag_t asn_DEF_RIC_PolicyAction_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RIC_PolicyAction_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameter-valueType */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RIC_PolicyAction_RANParameter_Item_specs_1 = { + sizeof(struct RIC_PolicyAction_RANParameter_Item), + offsetof(struct RIC_PolicyAction_RANParameter_Item, _asn_ctx), + asn_MAP_RIC_PolicyAction_RANParameter_Item_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RIC_PolicyAction_RANParameter_Item = { + "RIC-PolicyAction-RANParameter-Item", + "RIC-PolicyAction-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_RIC_PolicyAction_RANParameter_Item_tags_1, + sizeof(asn_DEF_RIC_PolicyAction_RANParameter_Item_tags_1) + /sizeof(asn_DEF_RIC_PolicyAction_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_RIC_PolicyAction_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_PolicyAction_RANParameter_Item_tags_1) + /sizeof(asn_DEF_RIC_PolicyAction_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RIC_PolicyAction_RANParameter_Item_1, + 2, /* Elements count */ + &asn_SPC_RIC_PolicyAction_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RIC-PolicyAction.c b/e2sm/lib/RIC-PolicyAction.c new file mode 100644 index 0000000..8b93916 --- /dev/null +++ b/e2sm/lib/RIC-PolicyAction.c @@ -0,0 +1,142 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RIC-PolicyAction.h" + +#include "RIC-PolicyAction-RANParameter-Item.h" +static int +memb_ranParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 65535)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_ranParameters_List_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_type_ranParameters_List_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_ranParameters_List_constr_3 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +static asn_per_constraints_t asn_PER_memb_ranParameters_List_constr_3 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_ranParameters_List_3[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_RIC_PolicyAction_RANParameter_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_ranParameters_List_tags_3[] = { + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_ranParameters_List_specs_3 = { + sizeof(struct RIC_PolicyAction__ranParameters_List), + offsetof(struct RIC_PolicyAction__ranParameters_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_ranParameters_List_3 = { + "ranParameters-List", + "ranParameters-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_ranParameters_List_tags_3, + sizeof(asn_DEF_ranParameters_List_tags_3) + /sizeof(asn_DEF_ranParameters_List_tags_3[0]) - 1, /* 1 */ + asn_DEF_ranParameters_List_tags_3, /* Same as above */ + sizeof(asn_DEF_ranParameters_List_tags_3) + /sizeof(asn_DEF_ranParameters_List_tags_3[0]), /* 2 */ + { &asn_OER_type_ranParameters_List_constr_3, &asn_PER_type_ranParameters_List_constr_3, SEQUENCE_OF_constraint }, + asn_MBR_ranParameters_List_3, + 1, /* Single element */ + &asn_SPC_ranParameters_List_specs_3 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RIC_PolicyAction_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RIC_PolicyAction, ric_PolicyAction_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RIC_ControlAction_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ric-PolicyAction-ID" + }, + { ATF_POINTER, 1, offsetof(struct RIC_PolicyAction, ranParameters_List), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + 0, + &asn_DEF_ranParameters_List_3, + 0, + { &asn_OER_memb_ranParameters_List_constr_3, &asn_PER_memb_ranParameters_List_constr_3, memb_ranParameters_List_constraint_1 }, + 0, 0, /* No default value */ + "ranParameters-List" + }, +}; +static const int asn_MAP_RIC_PolicyAction_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_RIC_PolicyAction_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RIC_PolicyAction_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-PolicyAction-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranParameters-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RIC_PolicyAction_specs_1 = { + sizeof(struct RIC_PolicyAction), + offsetof(struct RIC_PolicyAction, _asn_ctx), + asn_MAP_RIC_PolicyAction_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_RIC_PolicyAction_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RIC_PolicyAction = { + "RIC-PolicyAction", + "RIC-PolicyAction", + &asn_OP_SEQUENCE, + asn_DEF_RIC_PolicyAction_tags_1, + sizeof(asn_DEF_RIC_PolicyAction_tags_1) + /sizeof(asn_DEF_RIC_PolicyAction_tags_1[0]), /* 1 */ + asn_DEF_RIC_PolicyAction_tags_1, /* Same as above */ + sizeof(asn_DEF_RIC_PolicyAction_tags_1) + /sizeof(asn_DEF_RIC_PolicyAction_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RIC_PolicyAction_1, + 2, /* Elements count */ + &asn_SPC_RIC_PolicyAction_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RIC-ReportStyle-Item.c b/e2sm/lib/RIC-ReportStyle-Item.c deleted file mode 100644 index 9efe8c3..0000000 --- a/e2sm/lib/RIC-ReportStyle-Item.c +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RIC-ReportStyle-Item.h" - -asn_TYPE_member_t asn_MBR_RIC_ReportStyle_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct RIC_ReportStyle_Item, ric_ReportStyle_Type), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Style_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ReportStyle-Type" - }, - { ATF_NOFLAGS, 0, offsetof(struct RIC_ReportStyle_Item, ric_ReportStyle_Name), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Style_Name, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ReportStyle-Name" - }, - { ATF_NOFLAGS, 0, offsetof(struct RIC_ReportStyle_Item, ric_ReportIndicationHeaderFormat_Type), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Format_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ReportIndicationHeaderFormat-Type" - }, - { ATF_NOFLAGS, 0, offsetof(struct RIC_ReportStyle_Item, ric_ReportIndicationMessageFormat_Type), - (ASN_TAG_CLASS_CONTEXT | (3 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RIC_Format_Type, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ric-ReportIndicationMessageFormat-Type" - }, -}; -static const ber_tlv_tag_t asn_DEF_RIC_ReportStyle_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_RIC_ReportStyle_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-ReportStyle-Type */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-ReportStyle-Name */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ric-ReportIndicationHeaderFormat-Type */ - { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ric-ReportIndicationMessageFormat-Type */ -}; -asn_SEQUENCE_specifics_t asn_SPC_RIC_ReportStyle_Item_specs_1 = { - sizeof(struct RIC_ReportStyle_Item), - offsetof(struct RIC_ReportStyle_Item, _asn_ctx), - asn_MAP_RIC_ReportStyle_Item_tag2el_1, - 4, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 4, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_RIC_ReportStyle_Item = { - "RIC-ReportStyle-Item", - "RIC-ReportStyle-Item", - &asn_OP_SEQUENCE, - asn_DEF_RIC_ReportStyle_Item_tags_1, - sizeof(asn_DEF_RIC_ReportStyle_Item_tags_1) - /sizeof(asn_DEF_RIC_ReportStyle_Item_tags_1[0]), /* 1 */ - asn_DEF_RIC_ReportStyle_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_RIC_ReportStyle_Item_tags_1) - /sizeof(asn_DEF_RIC_ReportStyle_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_RIC_ReportStyle_Item_1, - 4, /* Elements count */ - &asn_SPC_RIC_ReportStyle_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/RIC-Style-Name.c b/e2sm/lib/RIC-Style-Name.c index 7cc5fcc..f8c4660 100644 --- a/e2sm/lib/RIC-Style-Name.c +++ b/e2sm/lib/RIC-Style-Name.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/RIC-Style-Type.c b/e2sm/lib/RIC-Style-Type.c index 14475b8..467c568 100644 --- a/e2sm/lib/RIC-Style-Type.c +++ b/e2sm/lib/RIC-Style-Type.c @@ -1,7 +1,7 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ diff --git a/e2sm/lib/RRC-MessageID.c b/e2sm/lib/RRC-MessageID.c new file mode 100644 index 0000000..075db39 --- /dev/null +++ b/e2sm/lib/RRC-MessageID.c @@ -0,0 +1,117 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RRC-MessageID.h" + +static asn_oer_constraints_t asn_OER_type_rrcType_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_type_rrcType_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_rrcType_2[] = { + { ATF_NOFLAGS, 0, offsetof(struct RRC_MessageID__rrcType, choice.lTE), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RRCclass_LTE, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "lTE" + }, + { ATF_NOFLAGS, 0, offsetof(struct RRC_MessageID__rrcType, choice.nR), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RRCclass_NR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nR" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_rrcType_tag2el_2[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* lTE */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* nR */ +}; +static asn_CHOICE_specifics_t asn_SPC_rrcType_specs_2 = { + sizeof(struct RRC_MessageID__rrcType), + offsetof(struct RRC_MessageID__rrcType, _asn_ctx), + offsetof(struct RRC_MessageID__rrcType, present), + sizeof(((struct RRC_MessageID__rrcType *)0)->present), + asn_MAP_rrcType_tag2el_2, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_rrcType_2 = { + "rrcType", + "rrcType", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_rrcType_constr_2, &asn_PER_type_rrcType_constr_2, CHOICE_constraint }, + asn_MBR_rrcType_2, + 2, /* Elements count */ + &asn_SPC_rrcType_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_RRC_MessageID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct RRC_MessageID, rrcType), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_rrcType_2, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "rrcType" + }, + { ATF_NOFLAGS, 0, offsetof(struct RRC_MessageID, messageID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "messageID" + }, +}; +static const ber_tlv_tag_t asn_DEF_RRC_MessageID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_RRC_MessageID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rrcType */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* messageID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_RRC_MessageID_specs_1 = { + sizeof(struct RRC_MessageID), + offsetof(struct RRC_MessageID, _asn_ctx), + asn_MAP_RRC_MessageID_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_RRC_MessageID = { + "RRC-MessageID", + "RRC-MessageID", + &asn_OP_SEQUENCE, + asn_DEF_RRC_MessageID_tags_1, + sizeof(asn_DEF_RRC_MessageID_tags_1) + /sizeof(asn_DEF_RRC_MessageID_tags_1[0]), /* 1 */ + asn_DEF_RRC_MessageID_tags_1, /* Same as above */ + sizeof(asn_DEF_RRC_MessageID_tags_1) + /sizeof(asn_DEF_RRC_MessageID_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_RRC_MessageID_1, + 2, /* Elements count */ + &asn_SPC_RRC_MessageID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RRC-State.c b/e2sm/lib/RRC-State.c new file mode 100644 index 0000000..391c70d --- /dev/null +++ b/e2sm/lib/RRC-State.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RRC-State.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RRC_State_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RRC_State_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RRC_State_value2enum_1[] = { + { 0, 13, "rrc-connected" }, + { 1, 12, "rrc-inactive" }, + { 2, 8, "rrc-idle" }, + { 3, 3, "any" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RRC_State_enum2value_1[] = { + 3, /* any(3) */ + 0, /* rrc-connected(0) */ + 2, /* rrc-idle(2) */ + 1 /* rrc-inactive(1) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RRC_State_specs_1 = { + asn_MAP_RRC_State_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RRC_State_enum2value_1, /* N => "tag"; sorted by N */ + 4, /* Number of elements in the maps */ + 5, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RRC_State_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RRC_State = { + "RRC-State", + "RRC-State", + &asn_OP_NativeEnumerated, + asn_DEF_RRC_State_tags_1, + sizeof(asn_DEF_RRC_State_tags_1) + /sizeof(asn_DEF_RRC_State_tags_1[0]), /* 1 */ + asn_DEF_RRC_State_tags_1, /* Same as above */ + sizeof(asn_DEF_RRC_State_tags_1) + /sizeof(asn_DEF_RRC_State_tags_1[0]), /* 1 */ + { &asn_OER_type_RRC_State_constr_1, &asn_PER_type_RRC_State_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RRC_State_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RRCEvent.c b/e2sm/lib/RRCEvent.c deleted file mode 100644 index 8113c36..0000000 --- a/e2sm/lib/RRCEvent.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RRCEvent.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RRCEvent_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RRCEvent_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RRCEvent_value2enum_1[] = { - { 0, 2, "b1" }, - { 1, 2, "a3" }, - { 2, 2, "a5" }, - { 3, 8, "periodic" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_RRCEvent_enum2value_1[] = { - 1, /* a3(1) */ - 2, /* a5(2) */ - 0, /* b1(0) */ - 3 /* periodic(3) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_RRCEvent_specs_1 = { - asn_MAP_RRCEvent_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RRCEvent_enum2value_1, /* N => "tag"; sorted by N */ - 4, /* Number of elements in the maps */ - 5, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RRCEvent_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RRCEvent = { - "RRCEvent", - "RRCEvent", - &asn_OP_NativeEnumerated, - asn_DEF_RRCEvent_tags_1, - sizeof(asn_DEF_RRCEvent_tags_1) - /sizeof(asn_DEF_RRCEvent_tags_1[0]), /* 1 */ - asn_DEF_RRCEvent_tags_1, /* Same as above */ - sizeof(asn_DEF_RRCEvent_tags_1) - /sizeof(asn_DEF_RRCEvent_tags_1[0]), /* 1 */ - { &asn_OER_type_RRCEvent_constr_1, &asn_PER_type_RRCEvent_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RRCEvent_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/RRCclass-LTE.c b/e2sm/lib/RRCclass-LTE.c new file mode 100644 index 0000000..39c575f --- /dev/null +++ b/e2sm/lib/RRCclass-LTE.c @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RRCclass-LTE.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RRCclass_LTE_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RRCclass_LTE_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 4, 4, 0, 11 } /* (0..11,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RRCclass_LTE_value2enum_1[] = { + { 0, 8, "bCCH-BCH" }, + { 1, 13, "bCCH-BCH-MBMS" }, + { 2, 11, "bCCH-DL-SCH" }, + { 3, 14, "bCCH-DL-SCH-BR" }, + { 4, 16, "bCCH-DL-SCH-MBMS" }, + { 5, 4, "mCCH" }, + { 6, 4, "pCCH" }, + { 7, 7, "dL-CCCH" }, + { 8, 7, "dL-DCCH" }, + { 9, 7, "uL-CCCH" }, + { 10, 7, "uL-DCCH" }, + { 11, 7, "sC-MCCH" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RRCclass_LTE_enum2value_1[] = { + 0, /* bCCH-BCH(0) */ + 1, /* bCCH-BCH-MBMS(1) */ + 2, /* bCCH-DL-SCH(2) */ + 3, /* bCCH-DL-SCH-BR(3) */ + 4, /* bCCH-DL-SCH-MBMS(4) */ + 7, /* dL-CCCH(7) */ + 8, /* dL-DCCH(8) */ + 5, /* mCCH(5) */ + 6, /* pCCH(6) */ + 11, /* sC-MCCH(11) */ + 9, /* uL-CCCH(9) */ + 10 /* uL-DCCH(10) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RRCclass_LTE_specs_1 = { + asn_MAP_RRCclass_LTE_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RRCclass_LTE_enum2value_1, /* N => "tag"; sorted by N */ + 12, /* Number of elements in the maps */ + 13, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RRCclass_LTE_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RRCclass_LTE = { + "RRCclass-LTE", + "RRCclass-LTE", + &asn_OP_NativeEnumerated, + asn_DEF_RRCclass_LTE_tags_1, + sizeof(asn_DEF_RRCclass_LTE_tags_1) + /sizeof(asn_DEF_RRCclass_LTE_tags_1[0]), /* 1 */ + asn_DEF_RRCclass_LTE_tags_1, /* Same as above */ + sizeof(asn_DEF_RRCclass_LTE_tags_1) + /sizeof(asn_DEF_RRCclass_LTE_tags_1[0]), /* 1 */ + { &asn_OER_type_RRCclass_LTE_constr_1, &asn_PER_type_RRCclass_LTE_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RRCclass_LTE_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RRCclass-NR.c b/e2sm/lib/RRCclass-NR.c new file mode 100644 index 0000000..b4bf12c --- /dev/null +++ b/e2sm/lib/RRCclass-NR.c @@ -0,0 +1,70 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "RRCclass-NR.h" + +/* + * This type is implemented using NativeEnumerated, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_RRCclass_NR_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_RRCclass_NR_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 7 } /* (0..7,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const asn_INTEGER_enum_map_t asn_MAP_RRCclass_NR_value2enum_1[] = { + { 0, 8, "bCCH-BCH" }, + { 1, 11, "bCCH-DL-SCH" }, + { 2, 7, "dL-CCCH" }, + { 3, 7, "dL-DCCH" }, + { 4, 4, "pCCH" }, + { 5, 7, "uL-CCCH" }, + { 6, 8, "uL-CCCH1" }, + { 7, 7, "uL-DCCH" } + /* This list is extensible */ +}; +static const unsigned int asn_MAP_RRCclass_NR_enum2value_1[] = { + 0, /* bCCH-BCH(0) */ + 1, /* bCCH-DL-SCH(1) */ + 2, /* dL-CCCH(2) */ + 3, /* dL-DCCH(3) */ + 4, /* pCCH(4) */ + 5, /* uL-CCCH(5) */ + 6, /* uL-CCCH1(6) */ + 7 /* uL-DCCH(7) */ + /* This list is extensible */ +}; +const asn_INTEGER_specifics_t asn_SPC_RRCclass_NR_specs_1 = { + asn_MAP_RRCclass_NR_value2enum_1, /* "tag" => N; sorted by tag */ + asn_MAP_RRCclass_NR_enum2value_1, /* N => "tag"; sorted by N */ + 8, /* Number of elements in the maps */ + 9, /* Extensions before this member */ + 1, /* Strict enumeration */ + 0, /* Native long size */ + 0 +}; +static const ber_tlv_tag_t asn_DEF_RRCclass_NR_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_RRCclass_NR = { + "RRCclass-NR", + "RRCclass-NR", + &asn_OP_NativeEnumerated, + asn_DEF_RRCclass_NR_tags_1, + sizeof(asn_DEF_RRCclass_NR_tags_1) + /sizeof(asn_DEF_RRCclass_NR_tags_1[0]), /* 1 */ + asn_DEF_RRCclass_NR_tags_1, /* Same as above */ + sizeof(asn_DEF_RRCclass_NR_tags_1) + /sizeof(asn_DEF_RRCclass_NR_tags_1[0]), /* 1 */ + { &asn_OER_type_RRCclass_NR_constr_1, &asn_PER_type_RRCclass_NR_constr_1, NativeEnumerated_constraint }, + 0, 0, /* Defined elsewhere */ + &asn_SPC_RRCclass_NR_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/RSRP-Range.c b/e2sm/lib/RSRP-Range.c deleted file mode 100644 index 31f13c4..0000000 --- a/e2sm/lib/RSRP-Range.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RSRP-Range.h" - -int -RSRP_Range_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RSRP_Range_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -asn_per_constraints_t asn_PER_type_RSRP_Range_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RSRP_Range_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RSRP_Range = { - "RSRP-Range", - "RSRP-Range", - &asn_OP_NativeInteger, - asn_DEF_RSRP_Range_tags_1, - sizeof(asn_DEF_RSRP_Range_tags_1) - /sizeof(asn_DEF_RSRP_Range_tags_1[0]), /* 1 */ - asn_DEF_RSRP_Range_tags_1, /* Same as above */ - sizeof(asn_DEF_RSRP_Range_tags_1) - /sizeof(asn_DEF_RSRP_Range_tags_1[0]), /* 1 */ - { &asn_OER_type_RSRP_Range_constr_1, &asn_PER_type_RSRP_Range_constr_1, RSRP_Range_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/e2sm/lib/RSRP-RangeEUTRA.c b/e2sm/lib/RSRP-RangeEUTRA.c deleted file mode 100644 index 5c646f7..0000000 --- a/e2sm/lib/RSRP-RangeEUTRA.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RSRP-RangeEUTRA.h" - -int -RSRP_RangeEUTRA_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 97)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RSRP_RangeEUTRA_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..97) */, - -1}; -asn_per_constraints_t asn_PER_type_RSRP_RangeEUTRA_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 97 } /* (0..97) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RSRP_RangeEUTRA_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RSRP_RangeEUTRA = { - "RSRP-RangeEUTRA", - "RSRP-RangeEUTRA", - &asn_OP_NativeInteger, - asn_DEF_RSRP_RangeEUTRA_tags_1, - sizeof(asn_DEF_RSRP_RangeEUTRA_tags_1) - /sizeof(asn_DEF_RSRP_RangeEUTRA_tags_1[0]), /* 1 */ - asn_DEF_RSRP_RangeEUTRA_tags_1, /* Same as above */ - sizeof(asn_DEF_RSRP_RangeEUTRA_tags_1) - /sizeof(asn_DEF_RSRP_RangeEUTRA_tags_1[0]), /* 1 */ - { &asn_OER_type_RSRP_RangeEUTRA_constr_1, &asn_PER_type_RSRP_RangeEUTRA_constr_1, RSRP_RangeEUTRA_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/e2sm/lib/RSRQ-Range.c b/e2sm/lib/RSRQ-Range.c deleted file mode 100644 index 0782d80..0000000 --- a/e2sm/lib/RSRQ-Range.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RSRQ-Range.h" - -int -RSRQ_Range_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RSRQ_Range_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -asn_per_constraints_t asn_PER_type_RSRQ_Range_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RSRQ_Range_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RSRQ_Range = { - "RSRQ-Range", - "RSRQ-Range", - &asn_OP_NativeInteger, - asn_DEF_RSRQ_Range_tags_1, - sizeof(asn_DEF_RSRQ_Range_tags_1) - /sizeof(asn_DEF_RSRQ_Range_tags_1[0]), /* 1 */ - asn_DEF_RSRQ_Range_tags_1, /* Same as above */ - sizeof(asn_DEF_RSRQ_Range_tags_1) - /sizeof(asn_DEF_RSRQ_Range_tags_1[0]), /* 1 */ - { &asn_OER_type_RSRQ_Range_constr_1, &asn_PER_type_RSRQ_Range_constr_1, RSRQ_Range_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/e2sm/lib/RSRQ-RangeEUTRA.c b/e2sm/lib/RSRQ-RangeEUTRA.c deleted file mode 100644 index 1de3c4e..0000000 --- a/e2sm/lib/RSRQ-RangeEUTRA.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RSRQ-RangeEUTRA.h" - -int -RSRQ_RangeEUTRA_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 34)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RSRQ_RangeEUTRA_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..34) */, - -1}; -asn_per_constraints_t asn_PER_type_RSRQ_RangeEUTRA_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 34 } /* (0..34) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_RSRQ_RangeEUTRA_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RSRQ_RangeEUTRA = { - "RSRQ-RangeEUTRA", - "RSRQ-RangeEUTRA", - &asn_OP_NativeInteger, - asn_DEF_RSRQ_RangeEUTRA_tags_1, - sizeof(asn_DEF_RSRQ_RangeEUTRA_tags_1) - /sizeof(asn_DEF_RSRQ_RangeEUTRA_tags_1[0]), /* 1 */ - asn_DEF_RSRQ_RangeEUTRA_tags_1, /* Same as above */ - sizeof(asn_DEF_RSRQ_RangeEUTRA_tags_1) - /sizeof(asn_DEF_RSRQ_RangeEUTRA_tags_1[0]), /* 1 */ - { &asn_OER_type_RSRQ_RangeEUTRA_constr_1, &asn_PER_type_RSRQ_RangeEUTRA_constr_1, RSRQ_RangeEUTRA_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/e2sm/lib/RT-Period-IE.c b/e2sm/lib/RT-Period-IE.c deleted file mode 100644 index 7edf20d..0000000 --- a/e2sm/lib/RT-Period-IE.c +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "RT-Period-IE.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_RT_Period_IE_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_RT_Period_IE_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 5, 5, 0, 19 } /* (0..19,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_RT_Period_IE_value2enum_1[] = { - { 0, 4, "ms10" }, - { 1, 4, "ms20" }, - { 2, 4, "ms32" }, - { 3, 4, "ms40" }, - { 4, 4, "ms60" }, - { 5, 4, "ms64" }, - { 6, 4, "ms70" }, - { 7, 4, "ms80" }, - { 8, 5, "ms128" }, - { 9, 5, "ms160" }, - { 10, 5, "ms256" }, - { 11, 5, "ms320" }, - { 12, 5, "ms512" }, - { 13, 5, "ms640" }, - { 14, 6, "ms1024" }, - { 15, 6, "ms1280" }, - { 16, 6, "ms2048" }, - { 17, 6, "ms2560" }, - { 18, 6, "ms5120" }, - { 19, 7, "ms10240" } - /* This list is extensible */ -}; -static const unsigned int asn_MAP_RT_Period_IE_enum2value_1[] = { - 0, /* ms10(0) */ - 14, /* ms1024(14) */ - 19, /* ms10240(19) */ - 8, /* ms128(8) */ - 15, /* ms1280(15) */ - 9, /* ms160(9) */ - 1, /* ms20(1) */ - 16, /* ms2048(16) */ - 10, /* ms256(10) */ - 17, /* ms2560(17) */ - 2, /* ms32(2) */ - 11, /* ms320(11) */ - 3, /* ms40(3) */ - 12, /* ms512(12) */ - 18, /* ms5120(18) */ - 4, /* ms60(4) */ - 5, /* ms64(5) */ - 13, /* ms640(13) */ - 6, /* ms70(6) */ - 7 /* ms80(7) */ - /* This list is extensible */ -}; -const asn_INTEGER_specifics_t asn_SPC_RT_Period_IE_specs_1 = { - asn_MAP_RT_Period_IE_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_RT_Period_IE_enum2value_1, /* N => "tag"; sorted by N */ - 20, /* Number of elements in the maps */ - 21, /* Extensions before this member */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_RT_Period_IE_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_RT_Period_IE = { - "RT-Period-IE", - "RT-Period-IE", - &asn_OP_NativeEnumerated, - asn_DEF_RT_Period_IE_tags_1, - sizeof(asn_DEF_RT_Period_IE_tags_1) - /sizeof(asn_DEF_RT_Period_IE_tags_1[0]), /* 1 */ - asn_DEF_RT_Period_IE_tags_1, /* Same as above */ - sizeof(asn_DEF_RT_Period_IE_tags_1) - /sizeof(asn_DEF_RT_Period_IE_tags_1[0]), /* 1 */ - { &asn_OER_type_RT_Period_IE_constr_1, &asn_PER_type_RT_Period_IE_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_RT_Period_IE_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/Report-RANParameter-Item.c b/e2sm/lib/Report-RANParameter-Item.c new file mode 100644 index 0000000..772e65e --- /dev/null +++ b/e2sm/lib/Report-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "Report-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_Report_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct Report_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct Report_RANParameter_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct Report_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_Report_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_Report_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_Report_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_Report_RANParameter_Item_specs_1 = { + sizeof(struct Report_RANParameter_Item), + offsetof(struct Report_RANParameter_Item, _asn_ctx), + asn_MAP_Report_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_Report_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_Report_RANParameter_Item = { + "Report-RANParameter-Item", + "Report-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_Report_RANParameter_Item_tags_1, + sizeof(asn_DEF_Report_RANParameter_Item_tags_1) + /sizeof(asn_DEF_Report_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_Report_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_Report_RANParameter_Item_tags_1) + /sizeof(asn_DEF_Report_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_Report_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_Report_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/ResultsPerCSI-RS-Index.c b/e2sm/lib/ResultsPerCSI-RS-Index.c deleted file mode 100644 index 36abbd9..0000000 --- a/e2sm/lib/ResultsPerCSI-RS-Index.c +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "ResultsPerCSI-RS-Index.h" - -#include "MeasQuantityResults.h" -asn_TYPE_member_t asn_MBR_ResultsPerCSI_RS_Index_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ResultsPerCSI_RS_Index, csi_RS_Index), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_CSI_RS_Index, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "csi-RS-Index" - }, - { ATF_POINTER, 1, offsetof(struct ResultsPerCSI_RS_Index, csi_RS_Results), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasQuantityResults, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "csi-RS-Results" - }, -}; -static const int asn_MAP_ResultsPerCSI_RS_Index_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_ResultsPerCSI_RS_Index_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ResultsPerCSI_RS_Index_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* csi-RS-Index */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* csi-RS-Results */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ResultsPerCSI_RS_Index_specs_1 = { - sizeof(struct ResultsPerCSI_RS_Index), - offsetof(struct ResultsPerCSI_RS_Index, _asn_ctx), - asn_MAP_ResultsPerCSI_RS_Index_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_ResultsPerCSI_RS_Index_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ResultsPerCSI_RS_Index = { - "ResultsPerCSI-RS-Index", - "ResultsPerCSI-RS-Index", - &asn_OP_SEQUENCE, - asn_DEF_ResultsPerCSI_RS_Index_tags_1, - sizeof(asn_DEF_ResultsPerCSI_RS_Index_tags_1) - /sizeof(asn_DEF_ResultsPerCSI_RS_Index_tags_1[0]), /* 1 */ - asn_DEF_ResultsPerCSI_RS_Index_tags_1, /* Same as above */ - sizeof(asn_DEF_ResultsPerCSI_RS_Index_tags_1) - /sizeof(asn_DEF_ResultsPerCSI_RS_Index_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ResultsPerCSI_RS_Index_1, - 2, /* Elements count */ - &asn_SPC_ResultsPerCSI_RS_Index_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/ResultsPerCSI-RS-IndexList.c b/e2sm/lib/ResultsPerCSI-RS-IndexList.c deleted file mode 100644 index d98d4d1..0000000 --- a/e2sm/lib/ResultsPerCSI-RS-IndexList.c +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "ResultsPerCSI-RS-IndexList.h" - -#include "ResultsPerCSI-RS-Index.h" -static asn_oer_constraints_t asn_OER_type_ResultsPerCSI_RS_IndexList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..64)) */}; -asn_per_constraints_t asn_PER_type_ResultsPerCSI_RS_IndexList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_ResultsPerCSI_RS_IndexList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ResultsPerCSI_RS_Index, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ResultsPerCSI_RS_IndexList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ResultsPerCSI_RS_IndexList_specs_1 = { - sizeof(struct ResultsPerCSI_RS_IndexList), - offsetof(struct ResultsPerCSI_RS_IndexList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ResultsPerCSI_RS_IndexList = { - "ResultsPerCSI-RS-IndexList", - "ResultsPerCSI-RS-IndexList", - &asn_OP_SEQUENCE_OF, - asn_DEF_ResultsPerCSI_RS_IndexList_tags_1, - sizeof(asn_DEF_ResultsPerCSI_RS_IndexList_tags_1) - /sizeof(asn_DEF_ResultsPerCSI_RS_IndexList_tags_1[0]), /* 1 */ - asn_DEF_ResultsPerCSI_RS_IndexList_tags_1, /* Same as above */ - sizeof(asn_DEF_ResultsPerCSI_RS_IndexList_tags_1) - /sizeof(asn_DEF_ResultsPerCSI_RS_IndexList_tags_1[0]), /* 1 */ - { &asn_OER_type_ResultsPerCSI_RS_IndexList_constr_1, &asn_PER_type_ResultsPerCSI_RS_IndexList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_ResultsPerCSI_RS_IndexList_1, - 1, /* Single element */ - &asn_SPC_ResultsPerCSI_RS_IndexList_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/ResultsPerSSB-Index.c b/e2sm/lib/ResultsPerSSB-Index.c deleted file mode 100644 index 5aca175..0000000 --- a/e2sm/lib/ResultsPerSSB-Index.c +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "ResultsPerSSB-Index.h" - -#include "MeasQuantityResults.h" -asn_TYPE_member_t asn_MBR_ResultsPerSSB_Index_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ResultsPerSSB_Index, ssb_Index), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_SSB_Index, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ssb-Index" - }, - { ATF_POINTER, 1, offsetof(struct ResultsPerSSB_Index, ssb_Results), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasQuantityResults, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "ssb-Results" - }, -}; -static const int asn_MAP_ResultsPerSSB_Index_oms_1[] = { 1 }; -static const ber_tlv_tag_t asn_DEF_ResultsPerSSB_Index_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ResultsPerSSB_Index_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ssb-Index */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ssb-Results */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ResultsPerSSB_Index_specs_1 = { - sizeof(struct ResultsPerSSB_Index), - offsetof(struct ResultsPerSSB_Index, _asn_ctx), - asn_MAP_ResultsPerSSB_Index_tag2el_1, - 2, /* Count of tags in the map */ - asn_MAP_ResultsPerSSB_Index_oms_1, /* Optional members */ - 1, 0, /* Root/Additions */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ResultsPerSSB_Index = { - "ResultsPerSSB-Index", - "ResultsPerSSB-Index", - &asn_OP_SEQUENCE, - asn_DEF_ResultsPerSSB_Index_tags_1, - sizeof(asn_DEF_ResultsPerSSB_Index_tags_1) - /sizeof(asn_DEF_ResultsPerSSB_Index_tags_1[0]), /* 1 */ - asn_DEF_ResultsPerSSB_Index_tags_1, /* Same as above */ - sizeof(asn_DEF_ResultsPerSSB_Index_tags_1) - /sizeof(asn_DEF_ResultsPerSSB_Index_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ResultsPerSSB_Index_1, - 2, /* Elements count */ - &asn_SPC_ResultsPerSSB_Index_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/ResultsPerSSB-IndexList.c b/e2sm/lib/ResultsPerSSB-IndexList.c deleted file mode 100644 index 2d7e1ab..0000000 --- a/e2sm/lib/ResultsPerSSB-IndexList.c +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "ResultsPerSSB-IndexList.h" - -#include "ResultsPerSSB-Index.h" -static asn_oer_constraints_t asn_OER_type_ResultsPerSSB_IndexList_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..64)) */}; -asn_per_constraints_t asn_PER_type_ResultsPerSSB_IndexList_constr_1 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_ResultsPerSSB_IndexList_1[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_ResultsPerSSB_Index, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_ResultsPerSSB_IndexList_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -asn_SET_OF_specifics_t asn_SPC_ResultsPerSSB_IndexList_specs_1 = { - sizeof(struct ResultsPerSSB_IndexList), - offsetof(struct ResultsPerSSB_IndexList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -asn_TYPE_descriptor_t asn_DEF_ResultsPerSSB_IndexList = { - "ResultsPerSSB-IndexList", - "ResultsPerSSB-IndexList", - &asn_OP_SEQUENCE_OF, - asn_DEF_ResultsPerSSB_IndexList_tags_1, - sizeof(asn_DEF_ResultsPerSSB_IndexList_tags_1) - /sizeof(asn_DEF_ResultsPerSSB_IndexList_tags_1[0]), /* 1 */ - asn_DEF_ResultsPerSSB_IndexList_tags_1, /* Same as above */ - sizeof(asn_DEF_ResultsPerSSB_IndexList_tags_1) - /sizeof(asn_DEF_ResultsPerSSB_IndexList_tags_1[0]), /* 1 */ - { &asn_OER_type_ResultsPerSSB_IndexList_constr_1, &asn_PER_type_ResultsPerSSB_IndexList_constr_1, SEQUENCE_OF_constraint }, - asn_MBR_ResultsPerSSB_IndexList_1, - 1, /* Single element */ - &asn_SPC_ResultsPerSSB_IndexList_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/S-NSSAI.c b/e2sm/lib/S-NSSAI.c index 29b31b2..8f0588e 100644 --- a/e2sm/lib/S-NSSAI.c +++ b/e2sm/lib/S-NSSAI.c @@ -1,96 +1,28 @@ /* * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` */ #include "S-NSSAI.h" -static int -memb_sST_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 1)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static int -memb_sD_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - size = st->size; - - if((size == 3)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_memb_sST_constr_2 CC_NOTUSED = { - { 0, 0 }, - 1 /* (SIZE(1..1)) */}; -static asn_per_constraints_t asn_PER_memb_sST_constr_2 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_sD_constr_3 CC_NOTUSED = { - { 0, 0 }, - 3 /* (SIZE(3..3)) */}; -static asn_per_constraints_t asn_PER_memb_sD_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_S_NSSAI_1[] = { +static asn_TYPE_member_t asn_MBR_S_NSSAI_1[] = { { ATF_NOFLAGS, 0, offsetof(struct S_NSSAI, sST), (ASN_TAG_CLASS_CONTEXT | (0 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, + &asn_DEF_SST, 0, - { &asn_OER_memb_sST_constr_2, &asn_PER_memb_sST_constr_2, memb_sST_constraint_1 }, + { 0, 0, 0 }, 0, 0, /* No default value */ "sST" }, { ATF_POINTER, 1, offsetof(struct S_NSSAI, sD), (ASN_TAG_CLASS_CONTEXT | (1 << 2)), -1, /* IMPLICIT tag at current level */ - &asn_DEF_OCTET_STRING, + &asn_DEF_SD, 0, - { &asn_OER_memb_sD_constr_3, &asn_PER_memb_sD_constr_3, memb_sD_constraint_1 }, + { 0, 0, 0 }, 0, 0, /* No default value */ "sD" }, @@ -103,14 +35,14 @@ static const asn_TYPE_tag2member_t asn_MAP_S_NSSAI_tag2el_1[] = { { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sST */ { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* sD */ }; -asn_SEQUENCE_specifics_t asn_SPC_S_NSSAI_specs_1 = { +static asn_SEQUENCE_specifics_t asn_SPC_S_NSSAI_specs_1 = { sizeof(struct S_NSSAI), offsetof(struct S_NSSAI, _asn_ctx), asn_MAP_S_NSSAI_tag2el_1, 2, /* Count of tags in the map */ asn_MAP_S_NSSAI_oms_1, /* Optional members */ 1, 0, /* Root/Additions */ - -1, /* First extension addition */ + 2, /* First extension addition */ }; asn_TYPE_descriptor_t asn_DEF_S_NSSAI = { "S-NSSAI", diff --git a/e2sm/lib/SD.c b/e2sm/lib/SD.c new file mode 100644 index 0000000..aa3655d --- /dev/null +++ b/e2sm/lib/SD.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "SD.h" + +int +SD_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 3)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SD_constr_1 CC_NOTUSED = { + { 0, 0 }, + 3 /* (SIZE(3..3)) */}; +asn_per_constraints_t asn_PER_type_SD_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SD_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SD = { + "SD", + "SD", + &asn_OP_OCTET_STRING, + asn_DEF_SD_tags_1, + sizeof(asn_DEF_SD_tags_1) + /sizeof(asn_DEF_SD_tags_1[0]), /* 1 */ + asn_DEF_SD_tags_1, /* Same as above */ + sizeof(asn_DEF_SD_tags_1) + /sizeof(asn_DEF_SD_tags_1[0]), /* 1 */ + { &asn_OER_type_SD_constr_1, &asn_PER_type_SD_constr_1, SD_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/SINR-RangeEUTRA.c b/e2sm/lib/SINR-RangeEUTRA.c deleted file mode 100644 index fdee3e7..0000000 --- a/e2sm/lib/SINR-RangeEUTRA.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "SINR-RangeEUTRA.h" - -int -SINR_RangeEUTRA_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 127)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SINR_RangeEUTRA_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..127) */, - -1}; -asn_per_constraints_t asn_PER_type_SINR_RangeEUTRA_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 7, 7, 0, 127 } /* (0..127) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SINR_RangeEUTRA_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SINR_RangeEUTRA = { - "SINR-RangeEUTRA", - "SINR-RangeEUTRA", - &asn_OP_NativeInteger, - asn_DEF_SINR_RangeEUTRA_tags_1, - sizeof(asn_DEF_SINR_RangeEUTRA_tags_1) - /sizeof(asn_DEF_SINR_RangeEUTRA_tags_1[0]), /* 1 */ - asn_DEF_SINR_RangeEUTRA_tags_1, /* Same as above */ - sizeof(asn_DEF_SINR_RangeEUTRA_tags_1) - /sizeof(asn_DEF_SINR_RangeEUTRA_tags_1[0]), /* 1 */ - { &asn_OER_type_SINR_RangeEUTRA_constr_1, &asn_PER_type_SINR_RangeEUTRA_constr_1, SINR_RangeEUTRA_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/e2sm/lib/SSB-Index.c b/e2sm/lib/SSB-Index.c deleted file mode 100644 index 3f9975e..0000000 --- a/e2sm/lib/SSB-Index.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "SSB-Index.h" - -int -SSB_Index_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 63)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_SSB_Index_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..63) */, - -1}; -asn_per_constraints_t asn_PER_type_SSB_Index_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 6, 6, 0, 63 } /* (0..63) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_SSB_Index_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_SSB_Index = { - "SSB-Index", - "SSB-Index", - &asn_OP_NativeInteger, - asn_DEF_SSB_Index_tags_1, - sizeof(asn_DEF_SSB_Index_tags_1) - /sizeof(asn_DEF_SSB_Index_tags_1[0]), /* 1 */ - asn_DEF_SSB_Index_tags_1, /* Same as above */ - sizeof(asn_DEF_SSB_Index_tags_1) - /sizeof(asn_DEF_SSB_Index_tags_1[0]), /* 1 */ - { &asn_OER_type_SSB_Index_constr_1, &asn_PER_type_SSB_Index_constr_1, SSB_Index_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/e2sm/lib/SST.c b/e2sm/lib/SST.c new file mode 100644 index 0000000..2712cd1 --- /dev/null +++ b/e2sm/lib/SST.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "SST.h" + +int +SST_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr; + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + size = st->size; + + if((size == 1)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using OCTET_STRING, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SST_constr_1 CC_NOTUSED = { + { 0, 0 }, + 1 /* (SIZE(1..1)) */}; +asn_per_constraints_t asn_PER_type_SST_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 0, 0, 1, 1 } /* (SIZE(1..1)) */, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SST_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SST = { + "SST", + "SST", + &asn_OP_OCTET_STRING, + asn_DEF_SST_tags_1, + sizeof(asn_DEF_SST_tags_1) + /sizeof(asn_DEF_SST_tags_1[0]), /* 1 */ + asn_DEF_SST_tags_1, /* Same as above */ + sizeof(asn_DEF_SST_tags_1) + /sizeof(asn_DEF_SST_tags_1[0]), /* 1 */ + { &asn_OER_type_SST_constr_1, &asn_PER_type_SST_constr_1, SST_constraint }, + 0, 0, /* No members */ + &asn_SPC_OCTET_STRING_specs /* Additional specs */ +}; + diff --git a/e2sm/lib/ServCellIndex.c b/e2sm/lib/ServCellIndex.c deleted file mode 100644 index a7dec96..0000000 --- a/e2sm/lib/ServCellIndex.c +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "ServCellIndex.h" - -int -ServCellIndex_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - long value; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - value = *(const long *)sptr; - - if((value >= 0 && value <= 31)) { - /* Constraint check succeeded */ - return 0; - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -/* - * This type is implemented using NativeInteger, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_ServCellIndex_constr_1 CC_NOTUSED = { - { 1, 1 } /* (0..31) */, - -1}; -asn_per_constraints_t asn_PER_type_ServCellIndex_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 5, 5, 0, 31 } /* (0..31) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const ber_tlv_tag_t asn_DEF_ServCellIndex_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_ServCellIndex = { - "ServCellIndex", - "ServCellIndex", - &asn_OP_NativeInteger, - asn_DEF_ServCellIndex_tags_1, - sizeof(asn_DEF_ServCellIndex_tags_1) - /sizeof(asn_DEF_ServCellIndex_tags_1[0]), /* 1 */ - asn_DEF_ServCellIndex_tags_1, /* Same as above */ - sizeof(asn_DEF_ServCellIndex_tags_1) - /sizeof(asn_DEF_ServCellIndex_tags_1[0]), /* 1 */ - { &asn_OER_type_ServCellIndex_constr_1, &asn_PER_type_ServCellIndex_constr_1, ServCellIndex_constraint }, - 0, 0, /* No members */ - 0 /* No specifics */ -}; - diff --git a/e2sm/lib/ServedPlmnPerCellListItem.c b/e2sm/lib/ServedPlmnPerCellListItem.c deleted file mode 100644 index 4f10db7..0000000 --- a/e2sm/lib/ServedPlmnPerCellListItem.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "ServedPlmnPerCellListItem.h" - -#include "FGC-DU-PM-Container.h" -#include "EPC-DU-PM-Container.h" -asn_TYPE_member_t asn_MBR_ServedPlmnPerCellListItem_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct ServedPlmnPerCellListItem, pLMN_Identity), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_PLMN_Identity, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "pLMN-Identity" - }, - { ATF_POINTER, 2, offsetof(struct ServedPlmnPerCellListItem, du_PM_5GC), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_FGC_DU_PM_Container, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "du-PM-5GC" - }, - { ATF_POINTER, 1, offsetof(struct ServedPlmnPerCellListItem, du_PM_EPC), - (ASN_TAG_CLASS_CONTEXT | (2 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_EPC_DU_PM_Container, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "du-PM-EPC" - }, -}; -static const int asn_MAP_ServedPlmnPerCellListItem_oms_1[] = { 1, 2 }; -static const ber_tlv_tag_t asn_DEF_ServedPlmnPerCellListItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_ServedPlmnPerCellListItem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMN-Identity */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* du-PM-5GC */ - { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* du-PM-EPC */ -}; -asn_SEQUENCE_specifics_t asn_SPC_ServedPlmnPerCellListItem_specs_1 = { - sizeof(struct ServedPlmnPerCellListItem), - offsetof(struct ServedPlmnPerCellListItem, _asn_ctx), - asn_MAP_ServedPlmnPerCellListItem_tag2el_1, - 3, /* Count of tags in the map */ - asn_MAP_ServedPlmnPerCellListItem_oms_1, /* Optional members */ - 2, 0, /* Root/Additions */ - 3, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_ServedPlmnPerCellListItem = { - "ServedPlmnPerCellListItem", - "ServedPlmnPerCellListItem", - &asn_OP_SEQUENCE, - asn_DEF_ServedPlmnPerCellListItem_tags_1, - sizeof(asn_DEF_ServedPlmnPerCellListItem_tags_1) - /sizeof(asn_DEF_ServedPlmnPerCellListItem_tags_1[0]), /* 1 */ - asn_DEF_ServedPlmnPerCellListItem_tags_1, /* Same as above */ - sizeof(asn_DEF_ServedPlmnPerCellListItem_tags_1) - /sizeof(asn_DEF_ServedPlmnPerCellListItem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_ServedPlmnPerCellListItem_1, - 3, /* Elements count */ - &asn_SPC_ServedPlmnPerCellListItem_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/ServingCell-ARFCN.c b/e2sm/lib/ServingCell-ARFCN.c new file mode 100644 index 0000000..1e6bf06 --- /dev/null +++ b/e2sm/lib/ServingCell-ARFCN.c @@ -0,0 +1,66 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "ServingCell-ARFCN.h" + +#include "NR-ARFCN.h" +static asn_oer_constraints_t asn_OER_type_ServingCell_ARFCN_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ServingCell_ARFCN_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_ServingCell_ARFCN_1[] = { + { ATF_POINTER, 0, offsetof(struct ServingCell_ARFCN, choice.nR), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NR_ARFCN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nR" + }, + { ATF_NOFLAGS, 0, offsetof(struct ServingCell_ARFCN, choice.eUTRA), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E_UTRA_ARFCN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eUTRA" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ServingCell_ARFCN_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nR */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* eUTRA */ +}; +asn_CHOICE_specifics_t asn_SPC_ServingCell_ARFCN_specs_1 = { + sizeof(struct ServingCell_ARFCN), + offsetof(struct ServingCell_ARFCN, _asn_ctx), + offsetof(struct ServingCell_ARFCN, present), + sizeof(((struct ServingCell_ARFCN *)0)->present), + asn_MAP_ServingCell_ARFCN_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_ServingCell_ARFCN = { + "ServingCell-ARFCN", + "ServingCell-ARFCN", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ServingCell_ARFCN_constr_1, &asn_PER_type_ServingCell_ARFCN_constr_1, CHOICE_constraint }, + asn_MBR_ServingCell_ARFCN_1, + 2, /* Elements count */ + &asn_SPC_ServingCell_ARFCN_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/ServingCell-PCI.c b/e2sm/lib/ServingCell-PCI.c new file mode 100644 index 0000000..191d27f --- /dev/null +++ b/e2sm/lib/ServingCell-PCI.c @@ -0,0 +1,65 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "ServingCell-PCI.h" + +static asn_oer_constraints_t asn_OER_type_ServingCell_PCI_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_ServingCell_PCI_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_ServingCell_PCI_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct ServingCell_PCI, choice.nR), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NR_PCI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "nR" + }, + { ATF_NOFLAGS, 0, offsetof(struct ServingCell_PCI, choice.eUTRA), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E_UTRA_PCI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eUTRA" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_ServingCell_PCI_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nR */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* eUTRA */ +}; +asn_CHOICE_specifics_t asn_SPC_ServingCell_PCI_specs_1 = { + sizeof(struct ServingCell_PCI), + offsetof(struct ServingCell_PCI, _asn_ctx), + offsetof(struct ServingCell_PCI, present), + sizeof(((struct ServingCell_PCI *)0)->present), + asn_MAP_ServingCell_PCI_tag2el_1, + 2, /* Count of tags in the map */ + 0, 0, + 2 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_ServingCell_PCI = { + "ServingCell-PCI", + "ServingCell-PCI", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_ServingCell_PCI_constr_1, &asn_PER_type_ServingCell_PCI_constr_1, CHOICE_constraint }, + asn_MBR_ServingCell_PCI_1, + 2, /* Elements count */ + &asn_SPC_ServingCell_PCI_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/ServingCellMeasurements.c b/e2sm/lib/ServingCellMeasurements.c deleted file mode 100644 index 8ff6d3b..0000000 --- a/e2sm/lib/ServingCellMeasurements.c +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "ServingCellMeasurements.h" - -#include "MeasResultServMOList.h" -#include "MeasResultPCell.h" -static asn_oer_constraints_t asn_OER_type_ServingCellMeasurements_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -asn_per_constraints_t asn_PER_type_ServingCellMeasurements_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED | APC_EXTENSIBLE, 1, 1, 0, 1 } /* (0..1,...) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -asn_TYPE_member_t asn_MBR_ServingCellMeasurements_1[] = { - { ATF_POINTER, 0, offsetof(struct ServingCellMeasurements, choice.nr_measResultServingMOList), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasResultServMOList, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "nr-measResultServingMOList" - }, - { ATF_POINTER, 0, offsetof(struct ServingCellMeasurements, choice.eutra_measResultPCell), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_MeasResultPCell, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "eutra-measResultPCell" - }, -}; -static const asn_TYPE_tag2member_t asn_MAP_ServingCellMeasurements_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nr-measResultServingMOList */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* eutra-measResultPCell */ -}; -asn_CHOICE_specifics_t asn_SPC_ServingCellMeasurements_specs_1 = { - sizeof(struct ServingCellMeasurements), - offsetof(struct ServingCellMeasurements, _asn_ctx), - offsetof(struct ServingCellMeasurements, present), - sizeof(((struct ServingCellMeasurements *)0)->present), - asn_MAP_ServingCellMeasurements_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, - 2 /* Extensions start */ -}; -asn_TYPE_descriptor_t asn_DEF_ServingCellMeasurements = { - "ServingCellMeasurements", - "ServingCellMeasurements", - &asn_OP_CHOICE, - 0, /* No effective tags (pointer) */ - 0, /* No effective tags (count) */ - 0, /* No tags (pointer) */ - 0, /* No tags (count) */ - { &asn_OER_type_ServingCellMeasurements_constr_1, &asn_PER_type_ServingCellMeasurements_constr_1, CHOICE_constraint }, - asn_MBR_ServingCellMeasurements_1, - 2, /* Elements count */ - &asn_SPC_ServingCellMeasurements_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/SlicePerPlmnPerCellListItem.c b/e2sm/lib/SlicePerPlmnPerCellListItem.c deleted file mode 100644 index 021489f..0000000 --- a/e2sm/lib/SlicePerPlmnPerCellListItem.c +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "SlicePerPlmnPerCellListItem.h" - -#include "FQIPERSlicesPerPlmnPerCellListItem.h" -static int -memb_fQIPERSlicesPerPlmnPerCellList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 64)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_fQIPERSlicesPerPlmnPerCellList_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..64)) */}; -static asn_per_constraints_t asn_PER_type_fQIPERSlicesPerPlmnPerCellList_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_fQIPERSlicesPerPlmnPerCellList_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..64)) */}; -static asn_per_constraints_t asn_PER_memb_fQIPERSlicesPerPlmnPerCellList_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_fQIPERSlicesPerPlmnPerCellList_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_FQIPERSlicesPerPlmnPerCellListItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_fQIPERSlicesPerPlmnPerCellList_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_fQIPERSlicesPerPlmnPerCellList_specs_3 = { - sizeof(struct SlicePerPlmnPerCellListItem__fQIPERSlicesPerPlmnPerCellList), - offsetof(struct SlicePerPlmnPerCellListItem__fQIPERSlicesPerPlmnPerCellList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_fQIPERSlicesPerPlmnPerCellList_3 = { - "fQIPERSlicesPerPlmnPerCellList", - "fQIPERSlicesPerPlmnPerCellList", - &asn_OP_SEQUENCE_OF, - asn_DEF_fQIPERSlicesPerPlmnPerCellList_tags_3, - sizeof(asn_DEF_fQIPERSlicesPerPlmnPerCellList_tags_3) - /sizeof(asn_DEF_fQIPERSlicesPerPlmnPerCellList_tags_3[0]) - 1, /* 1 */ - asn_DEF_fQIPERSlicesPerPlmnPerCellList_tags_3, /* Same as above */ - sizeof(asn_DEF_fQIPERSlicesPerPlmnPerCellList_tags_3) - /sizeof(asn_DEF_fQIPERSlicesPerPlmnPerCellList_tags_3[0]), /* 2 */ - { &asn_OER_type_fQIPERSlicesPerPlmnPerCellList_constr_3, &asn_PER_type_fQIPERSlicesPerPlmnPerCellList_constr_3, SEQUENCE_OF_constraint }, - asn_MBR_fQIPERSlicesPerPlmnPerCellList_3, - 1, /* Single element */ - &asn_SPC_fQIPERSlicesPerPlmnPerCellList_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SlicePerPlmnPerCellListItem_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SlicePerPlmnPerCellListItem, sliceID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_S_NSSAI, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sliceID" - }, - { ATF_NOFLAGS, 0, offsetof(struct SlicePerPlmnPerCellListItem, fQIPERSlicesPerPlmnPerCellList), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_fQIPERSlicesPerPlmnPerCellList_3, - 0, - { &asn_OER_memb_fQIPERSlicesPerPlmnPerCellList_constr_3, &asn_PER_memb_fQIPERSlicesPerPlmnPerCellList_constr_3, memb_fQIPERSlicesPerPlmnPerCellList_constraint_1 }, - 0, 0, /* No default value */ - "fQIPERSlicesPerPlmnPerCellList" - }, -}; -static const ber_tlv_tag_t asn_DEF_SlicePerPlmnPerCellListItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SlicePerPlmnPerCellListItem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sliceID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* fQIPERSlicesPerPlmnPerCellList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SlicePerPlmnPerCellListItem_specs_1 = { - sizeof(struct SlicePerPlmnPerCellListItem), - offsetof(struct SlicePerPlmnPerCellListItem, _asn_ctx), - asn_MAP_SlicePerPlmnPerCellListItem_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SlicePerPlmnPerCellListItem = { - "SlicePerPlmnPerCellListItem", - "SlicePerPlmnPerCellListItem", - &asn_OP_SEQUENCE, - asn_DEF_SlicePerPlmnPerCellListItem_tags_1, - sizeof(asn_DEF_SlicePerPlmnPerCellListItem_tags_1) - /sizeof(asn_DEF_SlicePerPlmnPerCellListItem_tags_1[0]), /* 1 */ - asn_DEF_SlicePerPlmnPerCellListItem_tags_1, /* Same as above */ - sizeof(asn_DEF_SlicePerPlmnPerCellListItem_tags_1) - /sizeof(asn_DEF_SlicePerPlmnPerCellListItem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SlicePerPlmnPerCellListItem_1, - 2, /* Elements count */ - &asn_SPC_SlicePerPlmnPerCellListItem_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/SliceToReportListItem.c b/e2sm/lib/SliceToReportListItem.c deleted file mode 100644 index b466fc3..0000000 --- a/e2sm/lib/SliceToReportListItem.c +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "SliceToReportListItem.h" - -#include "FQIPERSlicesPerPlmnListItem.h" -static int -memb_fQIPERSlicesPerPlmnList_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, - asn_app_constraint_failed_f *ctfailcb, void *app_key) { - size_t size; - - if(!sptr) { - ASN__CTFAIL(app_key, td, sptr, - "%s: value not given (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } - - /* Determine the number of elements */ - size = _A_CSEQUENCE_FROM_VOID(sptr)->count; - - if((size >= 1 && size <= 64)) { - /* Perform validation of the inner elements */ - return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); - } else { - ASN__CTFAIL(app_key, td, sptr, - "%s: constraint failed (%s:%d)", - td->name, __FILE__, __LINE__); - return -1; - } -} - -static asn_oer_constraints_t asn_OER_type_fQIPERSlicesPerPlmnList_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..64)) */}; -static asn_per_constraints_t asn_PER_type_fQIPERSlicesPerPlmnList_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -static asn_oer_constraints_t asn_OER_memb_fQIPERSlicesPerPlmnList_constr_3 CC_NOTUSED = { - { 0, 0 }, - -1 /* (SIZE(1..64)) */}; -static asn_per_constraints_t asn_PER_memb_fQIPERSlicesPerPlmnList_constr_3 CC_NOTUSED = { - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - { APC_CONSTRAINED, 6, 6, 1, 64 } /* (SIZE(1..64)) */, - 0, 0 /* No PER value map */ -}; -static asn_TYPE_member_t asn_MBR_fQIPERSlicesPerPlmnList_3[] = { - { ATF_POINTER, 0, 0, - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), - 0, - &asn_DEF_FQIPERSlicesPerPlmnListItem, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "" - }, -}; -static const ber_tlv_tag_t asn_DEF_fQIPERSlicesPerPlmnList_tags_3[] = { - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static asn_SET_OF_specifics_t asn_SPC_fQIPERSlicesPerPlmnList_specs_3 = { - sizeof(struct SliceToReportListItem__fQIPERSlicesPerPlmnList), - offsetof(struct SliceToReportListItem__fQIPERSlicesPerPlmnList, _asn_ctx), - 0, /* XER encoding is XMLDelimitedItemList */ -}; -static /* Use -fall-defs-global to expose */ -asn_TYPE_descriptor_t asn_DEF_fQIPERSlicesPerPlmnList_3 = { - "fQIPERSlicesPerPlmnList", - "fQIPERSlicesPerPlmnList", - &asn_OP_SEQUENCE_OF, - asn_DEF_fQIPERSlicesPerPlmnList_tags_3, - sizeof(asn_DEF_fQIPERSlicesPerPlmnList_tags_3) - /sizeof(asn_DEF_fQIPERSlicesPerPlmnList_tags_3[0]) - 1, /* 1 */ - asn_DEF_fQIPERSlicesPerPlmnList_tags_3, /* Same as above */ - sizeof(asn_DEF_fQIPERSlicesPerPlmnList_tags_3) - /sizeof(asn_DEF_fQIPERSlicesPerPlmnList_tags_3[0]), /* 2 */ - { &asn_OER_type_fQIPERSlicesPerPlmnList_constr_3, &asn_PER_type_fQIPERSlicesPerPlmnList_constr_3, SEQUENCE_OF_constraint }, - asn_MBR_fQIPERSlicesPerPlmnList_3, - 1, /* Single element */ - &asn_SPC_fQIPERSlicesPerPlmnList_specs_3 /* Additional specs */ -}; - -asn_TYPE_member_t asn_MBR_SliceToReportListItem_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct SliceToReportListItem, sliceID), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_S_NSSAI, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "sliceID" - }, - { ATF_NOFLAGS, 0, offsetof(struct SliceToReportListItem, fQIPERSlicesPerPlmnList), - (ASN_TAG_CLASS_CONTEXT | (1 << 2)), - 0, - &asn_DEF_fQIPERSlicesPerPlmnList_3, - 0, - { &asn_OER_memb_fQIPERSlicesPerPlmnList_constr_3, &asn_PER_memb_fQIPERSlicesPerPlmnList_constr_3, memb_fQIPERSlicesPerPlmnList_constraint_1 }, - 0, 0, /* No default value */ - "fQIPERSlicesPerPlmnList" - }, -}; -static const ber_tlv_tag_t asn_DEF_SliceToReportListItem_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_SliceToReportListItem_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* sliceID */ - { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* fQIPERSlicesPerPlmnList */ -}; -asn_SEQUENCE_specifics_t asn_SPC_SliceToReportListItem_specs_1 = { - sizeof(struct SliceToReportListItem), - offsetof(struct SliceToReportListItem, _asn_ctx), - asn_MAP_SliceToReportListItem_tag2el_1, - 2, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 2, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_SliceToReportListItem = { - "SliceToReportListItem", - "SliceToReportListItem", - &asn_OP_SEQUENCE, - asn_DEF_SliceToReportListItem_tags_1, - sizeof(asn_DEF_SliceToReportListItem_tags_1) - /sizeof(asn_DEF_SliceToReportListItem_tags_1[0]), /* 1 */ - asn_DEF_SliceToReportListItem_tags_1, /* Same as above */ - sizeof(asn_DEF_SliceToReportListItem_tags_1) - /sizeof(asn_DEF_SliceToReportListItem_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_SliceToReportListItem_1, - 2, /* Elements count */ - &asn_SPC_SliceToReportListItem_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/SubscriberProfileIDforRFP.c b/e2sm/lib/SubscriberProfileIDforRFP.c new file mode 100644 index 0000000..ab0182d --- /dev/null +++ b/e2sm/lib/SubscriberProfileIDforRFP.c @@ -0,0 +1,64 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "SubscriberProfileIDforRFP.h" + +int +SubscriberProfileIDforRFP_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 256)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +/* + * This type is implemented using NativeInteger, + * so here we adjust the DEF accordingly. + */ +static asn_oer_constraints_t asn_OER_type_SubscriberProfileIDforRFP_constr_1 CC_NOTUSED = { + { 2, 1 } /* (1..256) */, + -1}; +static asn_per_constraints_t asn_PER_type_SubscriberProfileIDforRFP_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED, 8, 8, 1, 256 } /* (1..256) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +static const ber_tlv_tag_t asn_DEF_SubscriberProfileIDforRFP_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)) +}; +asn_TYPE_descriptor_t asn_DEF_SubscriberProfileIDforRFP = { + "SubscriberProfileIDforRFP", + "SubscriberProfileIDforRFP", + &asn_OP_NativeInteger, + asn_DEF_SubscriberProfileIDforRFP_tags_1, + sizeof(asn_DEF_SubscriberProfileIDforRFP_tags_1) + /sizeof(asn_DEF_SubscriberProfileIDforRFP_tags_1[0]), /* 1 */ + asn_DEF_SubscriberProfileIDforRFP_tags_1, /* Same as above */ + sizeof(asn_DEF_SubscriberProfileIDforRFP_tags_1) + /sizeof(asn_DEF_SubscriberProfileIDforRFP_tags_1[0]), /* 1 */ + { &asn_OER_type_SubscriberProfileIDforRFP_constr_1, &asn_PER_type_SubscriberProfileIDforRFP_constr_1, SubscriberProfileIDforRFP_constraint }, + 0, 0, /* No members */ + 0 /* No specifics */ +}; + diff --git a/e2sm/lib/SupportedSULBandList.c b/e2sm/lib/SupportedSULBandList.c new file mode 100644 index 0000000..7e74326 --- /dev/null +++ b/e2sm/lib/SupportedSULBandList.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "SupportedSULBandList.h" + +#include "SupportedSULFreqBandItem.h" +static asn_oer_constraints_t asn_OER_type_SupportedSULBandList_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(0..32)) */}; +asn_per_constraints_t asn_PER_type_SupportedSULBandList_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 6, 6, 0, 32 } /* (SIZE(0..32)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SupportedSULBandList_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_SupportedSULFreqBandItem, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_SupportedSULBandList_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_SupportedSULBandList_specs_1 = { + sizeof(struct SupportedSULBandList), + offsetof(struct SupportedSULBandList, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_SupportedSULBandList = { + "SupportedSULBandList", + "SupportedSULBandList", + &asn_OP_SEQUENCE_OF, + asn_DEF_SupportedSULBandList_tags_1, + sizeof(asn_DEF_SupportedSULBandList_tags_1) + /sizeof(asn_DEF_SupportedSULBandList_tags_1[0]), /* 1 */ + asn_DEF_SupportedSULBandList_tags_1, /* Same as above */ + sizeof(asn_DEF_SupportedSULBandList_tags_1) + /sizeof(asn_DEF_SupportedSULBandList_tags_1[0]), /* 1 */ + { &asn_OER_type_SupportedSULBandList_constr_1, &asn_PER_type_SupportedSULBandList_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_SupportedSULBandList_1, + 1, /* Single element */ + &asn_SPC_SupportedSULBandList_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/SupportedSULFreqBandItem.c b/e2sm/lib/SupportedSULFreqBandItem.c new file mode 100644 index 0000000..ea7192f --- /dev/null +++ b/e2sm/lib/SupportedSULFreqBandItem.c @@ -0,0 +1,83 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "SupportedSULFreqBandItem.h" + +static int +memb_freqBandIndicatorNr_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 1024)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_freqBandIndicatorNr_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_freqBandIndicatorNr_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 10, 10, 1, 1024 } /* (1..1024,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_SupportedSULFreqBandItem_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct SupportedSULFreqBandItem, freqBandIndicatorNr), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_freqBandIndicatorNr_constr_2, &asn_PER_memb_freqBandIndicatorNr_constr_2, memb_freqBandIndicatorNr_constraint_1 }, + 0, 0, /* No default value */ + "freqBandIndicatorNr" + }, +}; +static const ber_tlv_tag_t asn_DEF_SupportedSULFreqBandItem_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_SupportedSULFreqBandItem_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* freqBandIndicatorNr */ +}; +asn_SEQUENCE_specifics_t asn_SPC_SupportedSULFreqBandItem_specs_1 = { + sizeof(struct SupportedSULFreqBandItem), + offsetof(struct SupportedSULFreqBandItem, _asn_ctx), + asn_MAP_SupportedSULFreqBandItem_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_SupportedSULFreqBandItem = { + "SupportedSULFreqBandItem", + "SupportedSULFreqBandItem", + &asn_OP_SEQUENCE, + asn_DEF_SupportedSULFreqBandItem_tags_1, + sizeof(asn_DEF_SupportedSULFreqBandItem_tags_1) + /sizeof(asn_DEF_SupportedSULFreqBandItem_tags_1[0]), /* 1 */ + asn_DEF_SupportedSULFreqBandItem_tags_1, /* Same as above */ + sizeof(asn_DEF_SupportedSULFreqBandItem_tags_1) + /sizeof(asn_DEF_SupportedSULFreqBandItem_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_SupportedSULFreqBandItem_1, + 1, /* Elements count */ + &asn_SPC_SupportedSULFreqBandItem_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/Trigger-ConditionIE-Item.c b/e2sm/lib/Trigger-ConditionIE-Item.c deleted file mode 100644 index dd0e6f4..0000000 --- a/e2sm/lib/Trigger-ConditionIE-Item.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "Trigger-ConditionIE-Item.h" - -asn_TYPE_member_t asn_MBR_Trigger_ConditionIE_Item_1[] = { - { ATF_NOFLAGS, 0, offsetof(struct Trigger_ConditionIE_Item, report_Period_IE), - (ASN_TAG_CLASS_CONTEXT | (0 << 2)), - -1, /* IMPLICIT tag at current level */ - &asn_DEF_RT_Period_IE, - 0, - { 0, 0, 0 }, - 0, 0, /* No default value */ - "report-Period-IE" - }, -}; -static const ber_tlv_tag_t asn_DEF_Trigger_ConditionIE_Item_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) -}; -static const asn_TYPE_tag2member_t asn_MAP_Trigger_ConditionIE_Item_tag2el_1[] = { - { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* report-Period-IE */ -}; -asn_SEQUENCE_specifics_t asn_SPC_Trigger_ConditionIE_Item_specs_1 = { - sizeof(struct Trigger_ConditionIE_Item), - offsetof(struct Trigger_ConditionIE_Item, _asn_ctx), - asn_MAP_Trigger_ConditionIE_Item_tag2el_1, - 1, /* Count of tags in the map */ - 0, 0, 0, /* Optional elements (not needed) */ - 1, /* First extension addition */ -}; -asn_TYPE_descriptor_t asn_DEF_Trigger_ConditionIE_Item = { - "Trigger-ConditionIE-Item", - "Trigger-ConditionIE-Item", - &asn_OP_SEQUENCE, - asn_DEF_Trigger_ConditionIE_Item_tags_1, - sizeof(asn_DEF_Trigger_ConditionIE_Item_tags_1) - /sizeof(asn_DEF_Trigger_ConditionIE_Item_tags_1[0]), /* 1 */ - asn_DEF_Trigger_ConditionIE_Item_tags_1, /* Same as above */ - sizeof(asn_DEF_Trigger_ConditionIE_Item_tags_1) - /sizeof(asn_DEF_Trigger_ConditionIE_Item_tags_1[0]), /* 1 */ - { 0, 0, SEQUENCE_constraint }, - asn_MBR_Trigger_ConditionIE_Item_1, - 1, /* Elements count */ - &asn_SPC_Trigger_ConditionIE_Item_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/TriggerType-Choice-L2state.c b/e2sm/lib/TriggerType-Choice-L2state.c new file mode 100644 index 0000000..bfb7433 --- /dev/null +++ b/e2sm/lib/TriggerType-Choice-L2state.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "TriggerType-Choice-L2state.h" + +asn_TYPE_member_t asn_MBR_TriggerType_Choice_L2state_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TriggerType_Choice_L2state, associatedL2variables), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Testing, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "associatedL2variables" + }, +}; +static const ber_tlv_tag_t asn_DEF_TriggerType_Choice_L2state_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TriggerType_Choice_L2state_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* associatedL2variables */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TriggerType_Choice_L2state_specs_1 = { + sizeof(struct TriggerType_Choice_L2state), + offsetof(struct TriggerType_Choice_L2state, _asn_ctx), + asn_MAP_TriggerType_Choice_L2state_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice_L2state = { + "TriggerType-Choice-L2state", + "TriggerType-Choice-L2state", + &asn_OP_SEQUENCE, + asn_DEF_TriggerType_Choice_L2state_tags_1, + sizeof(asn_DEF_TriggerType_Choice_L2state_tags_1) + /sizeof(asn_DEF_TriggerType_Choice_L2state_tags_1[0]), /* 1 */ + asn_DEF_TriggerType_Choice_L2state_tags_1, /* Same as above */ + sizeof(asn_DEF_TriggerType_Choice_L2state_tags_1) + /sizeof(asn_DEF_TriggerType_Choice_L2state_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TriggerType_Choice_L2state_1, + 1, /* Elements count */ + &asn_SPC_TriggerType_Choice_L2state_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/TriggerType-Choice-RRCstate-Item.c b/e2sm/lib/TriggerType-Choice-RRCstate-Item.c new file mode 100644 index 0000000..5d95e41 --- /dev/null +++ b/e2sm/lib/TriggerType-Choice-RRCstate-Item.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "TriggerType-Choice-RRCstate-Item.h" + +asn_TYPE_member_t asn_MBR_TriggerType_Choice_RRCstate_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TriggerType_Choice_RRCstate_Item, stateChangedTo), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RRC_State, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "stateChangedTo" + }, + { ATF_POINTER, 1, offsetof(struct TriggerType_Choice_RRCstate_Item, logicalOR), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_LogicalOR, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "logicalOR" + }, +}; +static const int asn_MAP_TriggerType_Choice_RRCstate_Item_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_TriggerType_Choice_RRCstate_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TriggerType_Choice_RRCstate_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* stateChangedTo */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* logicalOR */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TriggerType_Choice_RRCstate_Item_specs_1 = { + sizeof(struct TriggerType_Choice_RRCstate_Item), + offsetof(struct TriggerType_Choice_RRCstate_Item, _asn_ctx), + asn_MAP_TriggerType_Choice_RRCstate_Item_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_TriggerType_Choice_RRCstate_Item_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice_RRCstate_Item = { + "TriggerType-Choice-RRCstate-Item", + "TriggerType-Choice-RRCstate-Item", + &asn_OP_SEQUENCE, + asn_DEF_TriggerType_Choice_RRCstate_Item_tags_1, + sizeof(asn_DEF_TriggerType_Choice_RRCstate_Item_tags_1) + /sizeof(asn_DEF_TriggerType_Choice_RRCstate_Item_tags_1[0]), /* 1 */ + asn_DEF_TriggerType_Choice_RRCstate_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_TriggerType_Choice_RRCstate_Item_tags_1) + /sizeof(asn_DEF_TriggerType_Choice_RRCstate_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TriggerType_Choice_RRCstate_Item_1, + 2, /* Elements count */ + &asn_SPC_TriggerType_Choice_RRCstate_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/TriggerType-Choice-RRCstate.c b/e2sm/lib/TriggerType-Choice-RRCstate.c new file mode 100644 index 0000000..b62aef3 --- /dev/null +++ b/e2sm/lib/TriggerType-Choice-RRCstate.c @@ -0,0 +1,130 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "TriggerType-Choice-RRCstate.h" + +#include "TriggerType-Choice-RRCstate-Item.h" +static int +memb_rrcState_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + size_t size; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + /* Determine the number of elements */ + size = _A_CSEQUENCE_FROM_VOID(sptr)->count; + + if((size >= 1 && size <= 8)) { + /* Perform validation of the inner elements */ + return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key); + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_type_rrcState_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +static asn_per_constraints_t asn_PER_type_rrcState_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_oer_constraints_t asn_OER_memb_rrcState_List_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..8)) */}; +static asn_per_constraints_t asn_PER_memb_rrcState_List_constr_2 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 3, 3, 1, 8 } /* (SIZE(1..8)) */, + 0, 0 /* No PER value map */ +}; +static asn_TYPE_member_t asn_MBR_rrcState_List_2[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_TriggerType_Choice_RRCstate_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_rrcState_List_tags_2[] = { + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_SET_OF_specifics_t asn_SPC_rrcState_List_specs_2 = { + sizeof(struct TriggerType_Choice_RRCstate__rrcState_List), + offsetof(struct TriggerType_Choice_RRCstate__rrcState_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_rrcState_List_2 = { + "rrcState-List", + "rrcState-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_rrcState_List_tags_2, + sizeof(asn_DEF_rrcState_List_tags_2) + /sizeof(asn_DEF_rrcState_List_tags_2[0]) - 1, /* 1 */ + asn_DEF_rrcState_List_tags_2, /* Same as above */ + sizeof(asn_DEF_rrcState_List_tags_2) + /sizeof(asn_DEF_rrcState_List_tags_2[0]), /* 2 */ + { &asn_OER_type_rrcState_List_constr_2, &asn_PER_type_rrcState_List_constr_2, SEQUENCE_OF_constraint }, + asn_MBR_rrcState_List_2, + 1, /* Single element */ + &asn_SPC_rrcState_List_specs_2 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_TriggerType_Choice_RRCstate_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TriggerType_Choice_RRCstate, rrcState_List), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + 0, + &asn_DEF_rrcState_List_2, + 0, + { &asn_OER_memb_rrcState_List_constr_2, &asn_PER_memb_rrcState_List_constr_2, memb_rrcState_List_constraint_1 }, + 0, 0, /* No default value */ + "rrcState-List" + }, +}; +static const ber_tlv_tag_t asn_DEF_TriggerType_Choice_RRCstate_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TriggerType_Choice_RRCstate_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* rrcState-List */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TriggerType_Choice_RRCstate_specs_1 = { + sizeof(struct TriggerType_Choice_RRCstate), + offsetof(struct TriggerType_Choice_RRCstate, _asn_ctx), + asn_MAP_TriggerType_Choice_RRCstate_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice_RRCstate = { + "TriggerType-Choice-RRCstate", + "TriggerType-Choice-RRCstate", + &asn_OP_SEQUENCE, + asn_DEF_TriggerType_Choice_RRCstate_tags_1, + sizeof(asn_DEF_TriggerType_Choice_RRCstate_tags_1) + /sizeof(asn_DEF_TriggerType_Choice_RRCstate_tags_1[0]), /* 1 */ + asn_DEF_TriggerType_Choice_RRCstate_tags_1, /* Same as above */ + sizeof(asn_DEF_TriggerType_Choice_RRCstate_tags_1) + /sizeof(asn_DEF_TriggerType_Choice_RRCstate_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TriggerType_Choice_RRCstate_1, + 1, /* Elements count */ + &asn_SPC_TriggerType_Choice_RRCstate_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/TriggerType-Choice-UEID.c b/e2sm/lib/TriggerType-Choice-UEID.c new file mode 100644 index 0000000..26967e1 --- /dev/null +++ b/e2sm/lib/TriggerType-Choice-UEID.c @@ -0,0 +1,83 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "TriggerType-Choice-UEID.h" + +static int +memb_ueIDchange_ID_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr, + asn_app_constraint_failed_f *ctfailcb, void *app_key) { + long value; + + if(!sptr) { + ASN__CTFAIL(app_key, td, sptr, + "%s: value not given (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } + + value = *(const long *)sptr; + + if((value >= 1 && value <= 512)) { + /* Constraint check succeeded */ + return 0; + } else { + ASN__CTFAIL(app_key, td, sptr, + "%s: constraint failed (%s:%d)", + td->name, __FILE__, __LINE__); + return -1; + } +} + +static asn_oer_constraints_t asn_OER_memb_ueIDchange_ID_constr_2 CC_NOTUSED = { + { 0, 0 }, + -1}; +static asn_per_constraints_t asn_PER_memb_ueIDchange_ID_constr_2 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 9, 9, 1, 512 } /* (1..512,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TriggerType_Choice_UEID_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct TriggerType_Choice_UEID, ueIDchange_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NativeInteger, + 0, + { &asn_OER_memb_ueIDchange_ID_constr_2, &asn_PER_memb_ueIDchange_ID_constr_2, memb_ueIDchange_ID_constraint_1 }, + 0, 0, /* No default value */ + "ueIDchange-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_TriggerType_Choice_UEID_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_TriggerType_Choice_UEID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ueIDchange-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_TriggerType_Choice_UEID_specs_1 = { + sizeof(struct TriggerType_Choice_UEID), + offsetof(struct TriggerType_Choice_UEID, _asn_ctx), + asn_MAP_TriggerType_Choice_UEID_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice_UEID = { + "TriggerType-Choice-UEID", + "TriggerType-Choice-UEID", + &asn_OP_SEQUENCE, + asn_DEF_TriggerType_Choice_UEID_tags_1, + sizeof(asn_DEF_TriggerType_Choice_UEID_tags_1) + /sizeof(asn_DEF_TriggerType_Choice_UEID_tags_1[0]), /* 1 */ + asn_DEF_TriggerType_Choice_UEID_tags_1, /* Same as above */ + sizeof(asn_DEF_TriggerType_Choice_UEID_tags_1) + /sizeof(asn_DEF_TriggerType_Choice_UEID_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_TriggerType_Choice_UEID_1, + 1, /* Elements count */ + &asn_SPC_TriggerType_Choice_UEID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/TriggerType-Choice.c b/e2sm/lib/TriggerType-Choice.c new file mode 100644 index 0000000..230194b --- /dev/null +++ b/e2sm/lib/TriggerType-Choice.c @@ -0,0 +1,78 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "TriggerType-Choice.h" + +#include "TriggerType-Choice-RRCstate.h" +#include "TriggerType-Choice-UEID.h" +#include "TriggerType-Choice-L2state.h" +static asn_oer_constraints_t asn_OER_type_TriggerType_Choice_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_TriggerType_Choice_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_TriggerType_Choice_1[] = { + { ATF_POINTER, 0, offsetof(struct TriggerType_Choice, choice.triggerType_Choice_RRCstate), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TriggerType_Choice_RRCstate, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "triggerType-Choice-RRCstate" + }, + { ATF_POINTER, 0, offsetof(struct TriggerType_Choice, choice.triggerType_Choice_UEID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TriggerType_Choice_UEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "triggerType-Choice-UEID" + }, + { ATF_POINTER, 0, offsetof(struct TriggerType_Choice, choice.triggerType_Choice_L2state), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_TriggerType_Choice_L2state, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "triggerType-Choice-L2state" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_TriggerType_Choice_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* triggerType-Choice-RRCstate */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* triggerType-Choice-UEID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* triggerType-Choice-L2state */ +}; +asn_CHOICE_specifics_t asn_SPC_TriggerType_Choice_specs_1 = { + sizeof(struct TriggerType_Choice), + offsetof(struct TriggerType_Choice, _asn_ctx), + offsetof(struct TriggerType_Choice, present), + sizeof(((struct TriggerType_Choice *)0)->present), + asn_MAP_TriggerType_Choice_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, + 3 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_TriggerType_Choice = { + "TriggerType-Choice", + "TriggerType-Choice", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_TriggerType_Choice_constr_1, &asn_PER_type_TriggerType_Choice_constr_1, CHOICE_constraint }, + asn_MBR_TriggerType_Choice_1, + 3, /* Elements count */ + &asn_SPC_TriggerType_Choice_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/TriggeringMessage.c b/e2sm/lib/TriggeringMessage.c deleted file mode 100644 index 4af15f3..0000000 --- a/e2sm/lib/TriggeringMessage.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "TriggeringMessage.h" - -/* - * This type is implemented using NativeEnumerated, - * so here we adjust the DEF accordingly. - */ -static asn_oer_constraints_t asn_OER_type_TriggeringMessage_constr_1 CC_NOTUSED = { - { 0, 0 }, - -1}; -static asn_per_constraints_t asn_PER_type_TriggeringMessage_constr_1 CC_NOTUSED = { - { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */, - { APC_UNCONSTRAINED, -1, -1, 0, 0 }, - 0, 0 /* No PER value map */ -}; -static const asn_INTEGER_enum_map_t asn_MAP_TriggeringMessage_value2enum_1[] = { - { 0, 18, "initiating-message" }, - { 1, 18, "successful-outcome" }, - { 2, 21, "unsuccessfull-outcome" } -}; -static const unsigned int asn_MAP_TriggeringMessage_enum2value_1[] = { - 0, /* initiating-message(0) */ - 1, /* successful-outcome(1) */ - 2 /* unsuccessfull-outcome(2) */ -}; -static const asn_INTEGER_specifics_t asn_SPC_TriggeringMessage_specs_1 = { - asn_MAP_TriggeringMessage_value2enum_1, /* "tag" => N; sorted by tag */ - asn_MAP_TriggeringMessage_enum2value_1, /* N => "tag"; sorted by N */ - 3, /* Number of elements in the maps */ - 0, /* Enumeration is not extensible */ - 1, /* Strict enumeration */ - 0, /* Native long size */ - 0 -}; -static const ber_tlv_tag_t asn_DEF_TriggeringMessage_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_TriggeringMessage = { - "TriggeringMessage", - "TriggeringMessage", - &asn_OP_NativeEnumerated, - asn_DEF_TriggeringMessage_tags_1, - sizeof(asn_DEF_TriggeringMessage_tags_1) - /sizeof(asn_DEF_TriggeringMessage_tags_1[0]), /* 1 */ - asn_DEF_TriggeringMessage_tags_1, /* Same as above */ - sizeof(asn_DEF_TriggeringMessage_tags_1) - /sizeof(asn_DEF_TriggeringMessage_tags_1[0]), /* 1 */ - { &asn_OER_type_TriggeringMessage_constr_1, &asn_PER_type_TriggeringMessage_constr_1, NativeEnumerated_constraint }, - 0, 0, /* Defined elsewhere */ - &asn_SPC_TriggeringMessage_specs_1 /* Additional specs */ -}; - diff --git a/e2sm/lib/UE-Identity.c b/e2sm/lib/UE-Identity.c deleted file mode 100644 index f0c1410..0000000 --- a/e2sm/lib/UE-Identity.c +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - * From ASN.1 module "E2SM-KPM-RC" - * found in "e2sm-kpm-rc.asn" - * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` - */ - -#include "UE-Identity.h" - -/* - * This type is implemented using OCTET_STRING, - * so here we adjust the DEF accordingly. - */ -static const ber_tlv_tag_t asn_DEF_UE_Identity_tags_1[] = { - (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) -}; -asn_TYPE_descriptor_t asn_DEF_UE_Identity = { - "UE-Identity", - "UE-Identity", - &asn_OP_OCTET_STRING, - asn_DEF_UE_Identity_tags_1, - sizeof(asn_DEF_UE_Identity_tags_1) - /sizeof(asn_DEF_UE_Identity_tags_1[0]), /* 1 */ - asn_DEF_UE_Identity_tags_1, /* Same as above */ - sizeof(asn_DEF_UE_Identity_tags_1) - /sizeof(asn_DEF_UE_Identity_tags_1[0]), /* 1 */ - { 0, 0, OCTET_STRING_constraint }, - 0, 0, /* No members */ - &asn_SPC_OCTET_STRING_specs /* Additional specs */ -}; - diff --git a/e2sm/lib/UEID-EN-GNB.c b/e2sm/lib/UEID-EN-GNB.c new file mode 100644 index 0000000..e5da432 --- /dev/null +++ b/e2sm/lib/UEID-EN-GNB.c @@ -0,0 +1,103 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-EN-GNB.h" + +#include "UEID-GNB-CU-CP-E1AP-ID-List.h" +asn_TYPE_member_t asn_MBR_UEID_EN_GNB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEID_EN_GNB, m_eNB_UE_X2AP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ENB_UE_X2AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "m-eNB-UE-X2AP-ID" + }, + { ATF_POINTER, 1, offsetof(struct UEID_EN_GNB, m_eNB_UE_X2AP_ID_Extension), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ENB_UE_X2AP_ID_Extension, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "m-eNB-UE-X2AP-ID-Extension" + }, + { ATF_NOFLAGS, 0, offsetof(struct UEID_EN_GNB, globalENB_ID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalENB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "globalENB-ID" + }, + { ATF_POINTER, 3, offsetof(struct UEID_EN_GNB, gNB_CU_UE_F1AP_ID), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_CU_UE_F1AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-UE-F1AP-ID" + }, + { ATF_POINTER, 2, offsetof(struct UEID_EN_GNB, gNB_CU_CP_UE_E1AP_ID_List), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-CP-UE-E1AP-ID-List" + }, + { ATF_POINTER, 1, offsetof(struct UEID_EN_GNB, ran_UEID), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANUEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ran-UEID" + }, +}; +static const int asn_MAP_UEID_EN_GNB_oms_1[] = { 1, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_UEID_EN_GNB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_EN_GNB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* m-eNB-UE-X2AP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* m-eNB-UE-X2AP-ID-Extension */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* globalENB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* gNB-CU-UE-F1AP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* gNB-CU-CP-UE-E1AP-ID-List */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* ran-UEID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEID_EN_GNB_specs_1 = { + sizeof(struct UEID_EN_GNB), + offsetof(struct UEID_EN_GNB, _asn_ctx), + asn_MAP_UEID_EN_GNB_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_UEID_EN_GNB_oms_1, /* Optional members */ + 4, 0, /* Root/Additions */ + 6, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_EN_GNB = { + "UEID-EN-GNB", + "UEID-EN-GNB", + &asn_OP_SEQUENCE, + asn_DEF_UEID_EN_GNB_tags_1, + sizeof(asn_DEF_UEID_EN_GNB_tags_1) + /sizeof(asn_DEF_UEID_EN_GNB_tags_1[0]), /* 1 */ + asn_DEF_UEID_EN_GNB_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_EN_GNB_tags_1) + /sizeof(asn_DEF_UEID_EN_GNB_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEID_EN_GNB_1, + 6, /* Elements count */ + &asn_SPC_UEID_EN_GNB_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-ENB.c b/e2sm/lib/UEID-ENB.c new file mode 100644 index 0000000..bdf2af8 --- /dev/null +++ b/e2sm/lib/UEID-ENB.c @@ -0,0 +1,93 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-ENB.h" + +#include "GlobalENB-ID.h" +asn_TYPE_member_t asn_MBR_UEID_ENB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEID_ENB, mME_UE_S1AP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_MME_UE_S1AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "mME-UE-S1AP-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct UEID_ENB, gUMMEI), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GUMMEI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gUMMEI" + }, + { ATF_POINTER, 3, offsetof(struct UEID_ENB, m_eNB_UE_X2AP_ID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ENB_UE_X2AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "m-eNB-UE-X2AP-ID" + }, + { ATF_POINTER, 2, offsetof(struct UEID_ENB, m_eNB_UE_X2AP_ID_Extension), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_ENB_UE_X2AP_ID_Extension, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "m-eNB-UE-X2AP-ID-Extension" + }, + { ATF_POINTER, 1, offsetof(struct UEID_ENB, globalENB_ID), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalENB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "globalENB-ID" + }, +}; +static const int asn_MAP_UEID_ENB_oms_1[] = { 2, 3, 4 }; +static const ber_tlv_tag_t asn_DEF_UEID_ENB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_ENB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* mME-UE-S1AP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* gUMMEI */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* m-eNB-UE-X2AP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* m-eNB-UE-X2AP-ID-Extension */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* globalENB-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEID_ENB_specs_1 = { + sizeof(struct UEID_ENB), + offsetof(struct UEID_ENB, _asn_ctx), + asn_MAP_UEID_ENB_tag2el_1, + 5, /* Count of tags in the map */ + asn_MAP_UEID_ENB_oms_1, /* Optional members */ + 3, 0, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_ENB = { + "UEID-ENB", + "UEID-ENB", + &asn_OP_SEQUENCE, + asn_DEF_UEID_ENB_tags_1, + sizeof(asn_DEF_UEID_ENB_tags_1) + /sizeof(asn_DEF_UEID_ENB_tags_1[0]), /* 1 */ + asn_DEF_UEID_ENB_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_ENB_tags_1) + /sizeof(asn_DEF_UEID_ENB_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEID_ENB_1, + 5, /* Elements count */ + &asn_SPC_UEID_ENB_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-Item.c b/e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-Item.c new file mode 100644 index 0000000..893be77 --- /dev/null +++ b/e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-Item.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-GNB-CU-CP-E1AP-ID-Item.h" + +asn_TYPE_member_t asn_MBR_UEID_GNB_CU_CP_E1AP_ID_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEID_GNB_CU_CP_E1AP_ID_Item, gNB_CU_CP_UE_E1AP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_CU_CP_UE_E1AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-CP-UE-E1AP-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_GNB_CU_CP_E1AP_ID_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gNB-CU-CP-UE-E1AP-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_CU_CP_E1AP_ID_Item_specs_1 = { + sizeof(struct UEID_GNB_CU_CP_E1AP_ID_Item), + offsetof(struct UEID_GNB_CU_CP_E1AP_ID_Item, _asn_ctx), + asn_MAP_UEID_GNB_CU_CP_E1AP_ID_Item_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item = { + "UEID-GNB-CU-CP-E1AP-ID-Item", + "UEID-GNB-CU-CP-E1AP-ID-Item", + &asn_OP_SEQUENCE, + asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item_tags_1, + sizeof(asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item_tags_1[0]), /* 1 */ + asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEID_GNB_CU_CP_E1AP_ID_Item_1, + 1, /* Elements count */ + &asn_SPC_UEID_GNB_CU_CP_E1AP_ID_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-List.c b/e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-List.c new file mode 100644 index 0000000..d6d6bc2 --- /dev/null +++ b/e2sm/lib/UEID-GNB-CU-CP-E1AP-ID-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-GNB-CU-CP-E1AP-ID-List.h" + +#include "UEID-GNB-CU-CP-E1AP-ID-Item.h" +static asn_oer_constraints_t asn_OER_type_UEID_GNB_CU_CP_E1AP_ID_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..65535)) */}; +asn_per_constraints_t asn_PER_type_UEID_GNB_CU_CP_E1AP_ID_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_UEID_GNB_CU_CP_E1AP_ID_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_UEID_GNB_CU_CP_E1AP_ID_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_UEID_GNB_CU_CP_E1AP_ID_List_specs_1 = { + sizeof(struct UEID_GNB_CU_CP_E1AP_ID_List), + offsetof(struct UEID_GNB_CU_CP_E1AP_ID_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List = { + "UEID-GNB-CU-CP-E1AP-ID-List", + "UEID-GNB-CU-CP-E1AP-ID-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List_tags_1, + sizeof(asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List_tags_1[0]), /* 1 */ + asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List_tags_1[0]), /* 1 */ + { &asn_OER_type_UEID_GNB_CU_CP_E1AP_ID_List_constr_1, &asn_PER_type_UEID_GNB_CU_CP_E1AP_ID_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_UEID_GNB_CU_CP_E1AP_ID_List_1, + 1, /* Single element */ + &asn_SPC_UEID_GNB_CU_CP_E1AP_ID_List_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-GNB-CU-CP-F1AP-ID-Item.c b/e2sm/lib/UEID-GNB-CU-CP-F1AP-ID-Item.c new file mode 100644 index 0000000..0a893b4 --- /dev/null +++ b/e2sm/lib/UEID-GNB-CU-CP-F1AP-ID-Item.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-GNB-CU-CP-F1AP-ID-Item.h" + +asn_TYPE_member_t asn_MBR_UEID_GNB_CU_CP_F1AP_ID_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEID_GNB_CU_CP_F1AP_ID_Item, gNB_CU_UE_F1AP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_CU_UE_F1AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-UE-F1AP-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_GNB_CU_CP_F1AP_ID_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gNB-CU-UE-F1AP-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_CU_CP_F1AP_ID_Item_specs_1 = { + sizeof(struct UEID_GNB_CU_CP_F1AP_ID_Item), + offsetof(struct UEID_GNB_CU_CP_F1AP_ID_Item, _asn_ctx), + asn_MAP_UEID_GNB_CU_CP_F1AP_ID_Item_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item = { + "UEID-GNB-CU-CP-F1AP-ID-Item", + "UEID-GNB-CU-CP-F1AP-ID-Item", + &asn_OP_SEQUENCE, + asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item_tags_1, + sizeof(asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item_tags_1[0]), /* 1 */ + asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEID_GNB_CU_CP_F1AP_ID_Item_1, + 1, /* Elements count */ + &asn_SPC_UEID_GNB_CU_CP_F1AP_ID_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-GNB-CU-F1AP-ID-List.c b/e2sm/lib/UEID-GNB-CU-F1AP-ID-List.c new file mode 100644 index 0000000..98da296 --- /dev/null +++ b/e2sm/lib/UEID-GNB-CU-F1AP-ID-List.c @@ -0,0 +1,53 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-GNB-CU-F1AP-ID-List.h" + +#include "UEID-GNB-CU-CP-F1AP-ID-Item.h" +static asn_oer_constraints_t asn_OER_type_UEID_GNB_CU_F1AP_ID_List_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1 /* (SIZE(1..4)) */}; +asn_per_constraints_t asn_PER_type_UEID_GNB_CU_F1AP_ID_List_constr_1 CC_NOTUSED = { + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + { APC_CONSTRAINED, 2, 2, 1, 4 } /* (SIZE(1..4)) */, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_UEID_GNB_CU_F1AP_ID_List_1[] = { + { ATF_POINTER, 0, 0, + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_UEID_GNB_CU_CP_F1AP_ID_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "" + }, +}; +static const ber_tlv_tag_t asn_DEF_UEID_GNB_CU_F1AP_ID_List_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +asn_SET_OF_specifics_t asn_SPC_UEID_GNB_CU_F1AP_ID_List_specs_1 = { + sizeof(struct UEID_GNB_CU_F1AP_ID_List), + offsetof(struct UEID_GNB_CU_F1AP_ID_List, _asn_ctx), + 0, /* XER encoding is XMLDelimitedItemList */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_F1AP_ID_List = { + "UEID-GNB-CU-F1AP-ID-List", + "UEID-GNB-CU-F1AP-ID-List", + &asn_OP_SEQUENCE_OF, + asn_DEF_UEID_GNB_CU_F1AP_ID_List_tags_1, + sizeof(asn_DEF_UEID_GNB_CU_F1AP_ID_List_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_F1AP_ID_List_tags_1[0]), /* 1 */ + asn_DEF_UEID_GNB_CU_F1AP_ID_List_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_GNB_CU_F1AP_ID_List_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_F1AP_ID_List_tags_1[0]), /* 1 */ + { &asn_OER_type_UEID_GNB_CU_F1AP_ID_List_constr_1, &asn_PER_type_UEID_GNB_CU_F1AP_ID_List_constr_1, SEQUENCE_OF_constraint }, + asn_MBR_UEID_GNB_CU_F1AP_ID_List_1, + 1, /* Single element */ + &asn_SPC_UEID_GNB_CU_F1AP_ID_List_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-GNB-CU-UP.c b/e2sm/lib/UEID-GNB-CU-UP.c new file mode 100644 index 0000000..169b1b5 --- /dev/null +++ b/e2sm/lib/UEID-GNB-CU-UP.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-GNB-CU-UP.h" + +asn_TYPE_member_t asn_MBR_UEID_GNB_CU_UP_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEID_GNB_CU_UP, gNB_CU_CP_UE_E1AP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_CU_CP_UE_E1AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-CP-UE-E1AP-ID" + }, + { ATF_POINTER, 1, offsetof(struct UEID_GNB_CU_UP, ran_UEID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANUEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ran-UEID" + }, +}; +static const int asn_MAP_UEID_GNB_CU_UP_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_UEID_GNB_CU_UP_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_GNB_CU_UP_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB-CU-CP-UE-E1AP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ran-UEID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_CU_UP_specs_1 = { + sizeof(struct UEID_GNB_CU_UP), + offsetof(struct UEID_GNB_CU_UP, _asn_ctx), + asn_MAP_UEID_GNB_CU_UP_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_UEID_GNB_CU_UP_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_GNB_CU_UP = { + "UEID-GNB-CU-UP", + "UEID-GNB-CU-UP", + &asn_OP_SEQUENCE, + asn_DEF_UEID_GNB_CU_UP_tags_1, + sizeof(asn_DEF_UEID_GNB_CU_UP_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_UP_tags_1[0]), /* 1 */ + asn_DEF_UEID_GNB_CU_UP_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_GNB_CU_UP_tags_1) + /sizeof(asn_DEF_UEID_GNB_CU_UP_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEID_GNB_CU_UP_1, + 2, /* Elements count */ + &asn_SPC_UEID_GNB_CU_UP_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-GNB-DU.c b/e2sm/lib/UEID-GNB-DU.c new file mode 100644 index 0000000..4bc5c7f --- /dev/null +++ b/e2sm/lib/UEID-GNB-DU.c @@ -0,0 +1,62 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-GNB-DU.h" + +asn_TYPE_member_t asn_MBR_UEID_GNB_DU_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEID_GNB_DU, gNB_CU_UE_F1AP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GNB_CU_UE_F1AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-UE-F1AP-ID" + }, + { ATF_POINTER, 1, offsetof(struct UEID_GNB_DU, ran_UEID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANUEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ran-UEID" + }, +}; +static const int asn_MAP_UEID_GNB_DU_oms_1[] = { 1 }; +static const ber_tlv_tag_t asn_DEF_UEID_GNB_DU_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_GNB_DU_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB-CU-UE-F1AP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ran-UEID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_DU_specs_1 = { + sizeof(struct UEID_GNB_DU), + offsetof(struct UEID_GNB_DU, _asn_ctx), + asn_MAP_UEID_GNB_DU_tag2el_1, + 2, /* Count of tags in the map */ + asn_MAP_UEID_GNB_DU_oms_1, /* Optional members */ + 1, 0, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_GNB_DU = { + "UEID-GNB-DU", + "UEID-GNB-DU", + &asn_OP_SEQUENCE, + asn_DEF_UEID_GNB_DU_tags_1, + sizeof(asn_DEF_UEID_GNB_DU_tags_1) + /sizeof(asn_DEF_UEID_GNB_DU_tags_1[0]), /* 1 */ + asn_DEF_UEID_GNB_DU_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_GNB_DU_tags_1) + /sizeof(asn_DEF_UEID_GNB_DU_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEID_GNB_DU_1, + 2, /* Elements count */ + &asn_SPC_UEID_GNB_DU_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-GNB.c b/e2sm/lib/UEID-GNB.c new file mode 100644 index 0000000..f529b8b --- /dev/null +++ b/e2sm/lib/UEID-GNB.c @@ -0,0 +1,126 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-GNB.h" + +#include "UEID-GNB-CU-F1AP-ID-List.h" +#include "UEID-GNB-CU-CP-E1AP-ID-List.h" +#include "GlobalGNB-ID.h" +#include "GlobalNGRANNodeID.h" +asn_TYPE_member_t asn_MBR_UEID_GNB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEID_GNB, amf_UE_NGAP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AMF_UE_NGAP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "amf-UE-NGAP-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct UEID_GNB, guami), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GUAMI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "guami" + }, + { ATF_POINTER, 6, offsetof(struct UEID_GNB, gNB_CU_UE_F1AP_ID_List), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_GNB_CU_F1AP_ID_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-UE-F1AP-ID-List" + }, + { ATF_POINTER, 5, offsetof(struct UEID_GNB, gNB_CU_CP_UE_E1AP_ID_List), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_GNB_CU_CP_E1AP_ID_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-CP-UE-E1AP-ID-List" + }, + { ATF_POINTER, 4, offsetof(struct UEID_GNB, ran_UEID), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANUEID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ran-UEID" + }, + { ATF_POINTER, 3, offsetof(struct UEID_GNB, m_NG_RAN_UE_XnAP_ID), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NG_RANnodeUEXnAPID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "m-NG-RAN-UE-XnAP-ID" + }, + { ATF_POINTER, 2, offsetof(struct UEID_GNB, globalGNB_ID), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalGNB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "globalGNB-ID" + }, + { ATF_POINTER, 1, offsetof(struct UEID_GNB, globalNG_RANNode_ID), + (ASN_TAG_CLASS_CONTEXT | (7 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_GlobalNGRANNodeID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "globalNG-RANNode-ID" + }, +}; +static const int asn_MAP_UEID_GNB_oms_1[] = { 2, 3, 4, 5, 6, 7 }; +static const ber_tlv_tag_t asn_DEF_UEID_GNB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_GNB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* amf-UE-NGAP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* guami */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* gNB-CU-UE-F1AP-ID-List */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* gNB-CU-CP-UE-E1AP-ID-List */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ran-UEID */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* m-NG-RAN-UE-XnAP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* globalGNB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 } /* globalNG-RANNode-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEID_GNB_specs_1 = { + sizeof(struct UEID_GNB), + offsetof(struct UEID_GNB, _asn_ctx), + asn_MAP_UEID_GNB_tag2el_1, + 8, /* Count of tags in the map */ + asn_MAP_UEID_GNB_oms_1, /* Optional members */ + 5, 1, /* Root/Additions */ + 7, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_GNB = { + "UEID-GNB", + "UEID-GNB", + &asn_OP_SEQUENCE, + asn_DEF_UEID_GNB_tags_1, + sizeof(asn_DEF_UEID_GNB_tags_1) + /sizeof(asn_DEF_UEID_GNB_tags_1[0]), /* 1 */ + asn_DEF_UEID_GNB_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_GNB_tags_1) + /sizeof(asn_DEF_UEID_GNB_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEID_GNB_1, + 8, /* Elements count */ + &asn_SPC_UEID_GNB_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-NG-ENB-DU.c b/e2sm/lib/UEID-NG-ENB-DU.c new file mode 100644 index 0000000..bba9b70 --- /dev/null +++ b/e2sm/lib/UEID-NG-ENB-DU.c @@ -0,0 +1,50 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-NG-ENB-DU.h" + +asn_TYPE_member_t asn_MBR_UEID_NG_ENB_DU_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEID_NG_ENB_DU, ng_eNB_CU_UE_W1AP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NGENB_CU_UE_W1AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ng-eNB-CU-UE-W1AP-ID" + }, +}; +static const ber_tlv_tag_t asn_DEF_UEID_NG_ENB_DU_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_NG_ENB_DU_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ng-eNB-CU-UE-W1AP-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEID_NG_ENB_DU_specs_1 = { + sizeof(struct UEID_NG_ENB_DU), + offsetof(struct UEID_NG_ENB_DU, _asn_ctx), + asn_MAP_UEID_NG_ENB_DU_tag2el_1, + 1, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + 1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_NG_ENB_DU = { + "UEID-NG-ENB-DU", + "UEID-NG-ENB-DU", + &asn_OP_SEQUENCE, + asn_DEF_UEID_NG_ENB_DU_tags_1, + sizeof(asn_DEF_UEID_NG_ENB_DU_tags_1) + /sizeof(asn_DEF_UEID_NG_ENB_DU_tags_1[0]), /* 1 */ + asn_DEF_UEID_NG_ENB_DU_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_NG_ENB_DU_tags_1) + /sizeof(asn_DEF_UEID_NG_ENB_DU_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEID_NG_ENB_DU_1, + 1, /* Elements count */ + &asn_SPC_UEID_NG_ENB_DU_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID-NG-ENB.c b/e2sm/lib/UEID-NG-ENB.c new file mode 100644 index 0000000..5681365 --- /dev/null +++ b/e2sm/lib/UEID-NG-ENB.c @@ -0,0 +1,104 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID-NG-ENB.h" + +#include "GlobalNgENB-ID.h" +#include "GlobalNGRANNodeID.h" +asn_TYPE_member_t asn_MBR_UEID_NG_ENB_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEID_NG_ENB, amf_UE_NGAP_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_AMF_UE_NGAP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "amf-UE-NGAP-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct UEID_NG_ENB, guami), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GUAMI, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "guami" + }, + { ATF_POINTER, 4, offsetof(struct UEID_NG_ENB, ng_eNB_CU_UE_W1AP_ID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NGENB_CU_UE_W1AP_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ng-eNB-CU-UE-W1AP-ID" + }, + { ATF_POINTER, 3, offsetof(struct UEID_NG_ENB, m_NG_RAN_UE_XnAP_ID), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_NG_RANnodeUEXnAPID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "m-NG-RAN-UE-XnAP-ID" + }, + { ATF_POINTER, 2, offsetof(struct UEID_NG_ENB, globalNgENB_ID), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_GlobalNgENB_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "globalNgENB-ID" + }, + { ATF_POINTER, 1, offsetof(struct UEID_NG_ENB, globalNG_RANNode_ID), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_GlobalNGRANNodeID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "globalNG-RANNode-ID" + }, +}; +static const int asn_MAP_UEID_NG_ENB_oms_1[] = { 2, 3, 4, 5 }; +static const ber_tlv_tag_t asn_DEF_UEID_NG_ENB_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_NG_ENB_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* amf-UE-NGAP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* guami */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ng-eNB-CU-UE-W1AP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* m-NG-RAN-UE-XnAP-ID */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* globalNgENB-ID */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* globalNG-RANNode-ID */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEID_NG_ENB_specs_1 = { + sizeof(struct UEID_NG_ENB), + offsetof(struct UEID_NG_ENB, _asn_ctx), + asn_MAP_UEID_NG_ENB_tag2el_1, + 6, /* Count of tags in the map */ + asn_MAP_UEID_NG_ENB_oms_1, /* Optional members */ + 3, 1, /* Root/Additions */ + 5, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID_NG_ENB = { + "UEID-NG-ENB", + "UEID-NG-ENB", + &asn_OP_SEQUENCE, + asn_DEF_UEID_NG_ENB_tags_1, + sizeof(asn_DEF_UEID_NG_ENB_tags_1) + /sizeof(asn_DEF_UEID_NG_ENB_tags_1[0]), /* 1 */ + asn_DEF_UEID_NG_ENB_tags_1, /* Same as above */ + sizeof(asn_DEF_UEID_NG_ENB_tags_1) + /sizeof(asn_DEF_UEID_NG_ENB_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEID_NG_ENB_1, + 6, /* Elements count */ + &asn_SPC_UEID_NG_ENB_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEID.c b/e2sm/lib/UEID.c new file mode 100644 index 0000000..42c27ab --- /dev/null +++ b/e2sm/lib/UEID.c @@ -0,0 +1,122 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEID.h" + +#include "UEID-GNB.h" +#include "UEID-GNB-DU.h" +#include "UEID-GNB-CU-UP.h" +#include "UEID-NG-ENB.h" +#include "UEID-NG-ENB-DU.h" +#include "UEID-EN-GNB.h" +#include "UEID-ENB.h" +static asn_oer_constraints_t asn_OER_type_UEID_constr_1 CC_NOTUSED = { + { 0, 0 }, + -1}; +asn_per_constraints_t asn_PER_type_UEID_constr_1 CC_NOTUSED = { + { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 6 } /* (0..6,...) */, + { APC_UNCONSTRAINED, -1, -1, 0, 0 }, + 0, 0 /* No PER value map */ +}; +asn_TYPE_member_t asn_MBR_UEID_1[] = { + { ATF_POINTER, 0, offsetof(struct UEID, choice.gNB_UEID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_GNB, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-UEID" + }, + { ATF_POINTER, 0, offsetof(struct UEID, choice.gNB_DU_UEID), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_GNB_DU, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-DU-UEID" + }, + { ATF_POINTER, 0, offsetof(struct UEID, choice.gNB_CU_UP_UEID), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_GNB_CU_UP, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "gNB-CU-UP-UEID" + }, + { ATF_POINTER, 0, offsetof(struct UEID, choice.ng_eNB_UEID), + (ASN_TAG_CLASS_CONTEXT | (3 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_NG_ENB, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ng-eNB-UEID" + }, + { ATF_POINTER, 0, offsetof(struct UEID, choice.ng_eNB_DU_UEID), + (ASN_TAG_CLASS_CONTEXT | (4 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_NG_ENB_DU, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ng-eNB-DU-UEID" + }, + { ATF_POINTER, 0, offsetof(struct UEID, choice.en_gNB_UEID), + (ASN_TAG_CLASS_CONTEXT | (5 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_EN_GNB, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "en-gNB-UEID" + }, + { ATF_POINTER, 0, offsetof(struct UEID, choice.eNB_UEID), + (ASN_TAG_CLASS_CONTEXT | (6 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_UEID_ENB, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "eNB-UEID" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_UEID_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB-UEID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* gNB-DU-UEID */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* gNB-CU-UP-UEID */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ng-eNB-UEID */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ng-eNB-DU-UEID */ + { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* en-gNB-UEID */ + { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* eNB-UEID */ +}; +asn_CHOICE_specifics_t asn_SPC_UEID_specs_1 = { + sizeof(struct UEID), + offsetof(struct UEID, _asn_ctx), + offsetof(struct UEID, present), + sizeof(((struct UEID *)0)->present), + asn_MAP_UEID_tag2el_1, + 7, /* Count of tags in the map */ + 0, 0, + 7 /* Extensions start */ +}; +asn_TYPE_descriptor_t asn_DEF_UEID = { + "UEID", + "UEID", + &asn_OP_CHOICE, + 0, /* No effective tags (pointer) */ + 0, /* No effective tags (count) */ + 0, /* No tags (pointer) */ + 0, /* No tags (count) */ + { &asn_OER_type_UEID_constr_1, &asn_PER_type_UEID_constr_1, CHOICE_constraint }, + asn_MBR_UEID_1, + 7, /* Elements count */ + &asn_SPC_UEID_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/UEIdentification-RANParameter-Item.c b/e2sm/lib/UEIdentification-RANParameter-Item.c new file mode 100644 index 0000000..7349bbd --- /dev/null +++ b/e2sm/lib/UEIdentification-RANParameter-Item.c @@ -0,0 +1,73 @@ +/* + * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) + * From ASN.1 module "E2SM-RC-IEs" + * found in "e2sm-rc-nov2021.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .` + */ + +#include "UEIdentification-RANParameter-Item.h" + +#include "RANParameter-Definition.h" +asn_TYPE_member_t asn_MBR_UEIdentification_RANParameter_Item_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct UEIdentification_RANParameter_Item, ranParameter_ID), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_ID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-ID" + }, + { ATF_NOFLAGS, 0, offsetof(struct UEIdentification_RANParameter_Item, ranParameter_name), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Name, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-name" + }, + { ATF_POINTER, 1, offsetof(struct UEIdentification_RANParameter_Item, ranParameter_Definition), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_RANParameter_Definition, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "ranParameter-Definition" + }, +}; +static const int asn_MAP_UEIdentification_RANParameter_Item_oms_1[] = { 2 }; +static const ber_tlv_tag_t asn_DEF_UEIdentification_RANParameter_Item_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_UEIdentification_RANParameter_Item_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranParameter-ID */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranParameter-name */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ranParameter-Definition */ +}; +asn_SEQUENCE_specifics_t asn_SPC_UEIdentification_RANParameter_Item_specs_1 = { + sizeof(struct UEIdentification_RANParameter_Item), + offsetof(struct UEIdentification_RANParameter_Item, _asn_ctx), + asn_MAP_UEIdentification_RANParameter_Item_tag2el_1, + 3, /* Count of tags in the map */ + asn_MAP_UEIdentification_RANParameter_Item_oms_1, /* Optional members */ + 0, 1, /* Root/Additions */ + 2, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_UEIdentification_RANParameter_Item = { + "UEIdentification-RANParameter-Item", + "UEIdentification-RANParameter-Item", + &asn_OP_SEQUENCE, + asn_DEF_UEIdentification_RANParameter_Item_tags_1, + sizeof(asn_DEF_UEIdentification_RANParameter_Item_tags_1) + /sizeof(asn_DEF_UEIdentification_RANParameter_Item_tags_1[0]), /* 1 */ + asn_DEF_UEIdentification_RANParameter_Item_tags_1, /* Same as above */ + sizeof(asn_DEF_UEIdentification_RANParameter_Item_tags_1) + /sizeof(asn_DEF_UEIdentification_RANParameter_Item_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_UEIdentification_RANParameter_Item_1, + 3, /* Elements count */ + &asn_SPC_UEIdentification_RANParameter_Item_specs_1 /* Additional specs */ +}; + diff --git a/e2sm/lib/asn_random_fill.c b/e2sm/lib/asn_random_fill.c index 2e3e892..819cf70 100644 --- a/e2sm/lib/asn_random_fill.c +++ b/e2sm/lib/asn_random_fill.c @@ -48,11 +48,7 @@ asn_random_between(intmax_t lb, intmax_t rb) { for(; got_entropy < range;) { got_entropy = (got_entropy << 24) | 0xffffff; -#ifdef WIN32 - value = (value << 24) | (rand() % 0xffffff); //MCHECK:for building on Windows -#else - value = (value << 24) | (random() % 0xffffff); //MCHECK:for building on Linux -#endif + value = (value << 24) | (random() % 0xffffff); } return lb + (intmax_t)(value % (range + 1)); diff --git a/e2sm/lib/pdu_collection.c b/e2sm/lib/pdu_collection.c deleted file mode 100644 index deea97d..0000000 --- a/e2sm/lib/pdu_collection.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Generated by asn1c-0.9.29 (http://lionet.info/asn1c) - */ - -struct asn_TYPE_descriptor_s; /* Forward declaration */ - -extern struct asn_TYPE_descriptor_s asn_DEF_Criticality; -extern struct asn_TYPE_descriptor_s asn_DEF_Presence; -extern struct asn_TYPE_descriptor_s asn_DEF_ProcedureCode; -extern struct asn_TYPE_descriptor_s asn_DEF_TriggeringMessage; -extern struct asn_TYPE_descriptor_s asn_DEF_E2SM_KPM_RANFunctionDefinition; -extern struct asn_TYPE_descriptor_s asn_DEF_E2SM_KPM_ActionDefinition; -extern struct asn_TYPE_descriptor_s asn_DEF_E2SM_KPM_IndicationHeader; -extern struct asn_TYPE_descriptor_s asn_DEF_E2SM_KPM_IndicationMessage; -extern struct asn_TYPE_descriptor_s asn_DEF_E2SM_RC_RANFunctionDefinition; -extern struct asn_TYPE_descriptor_s asn_DEF_E2SM_RC_ControlHeader; -extern struct asn_TYPE_descriptor_s asn_DEF_E2SM_RC_ControlMessage; -extern struct asn_TYPE_descriptor_s asn_DEF_E2SM_KPM_EventTriggerDefinition; -extern struct asn_TYPE_descriptor_s asn_DEF_RANcallProcess_ID_string; - - -struct asn_TYPE_descriptor_s *asn_pdu_collection[] = { - /* From module E2SM-KPM-RC in e2sm-kpm-rc.asn */ - &asn_DEF_Criticality, - &asn_DEF_Presence, - &asn_DEF_ProcedureCode, - &asn_DEF_TriggeringMessage, - &asn_DEF_E2SM_KPM_RANFunctionDefinition, - &asn_DEF_E2SM_KPM_ActionDefinition, - &asn_DEF_E2SM_KPM_IndicationHeader, - &asn_DEF_E2SM_KPM_IndicationMessage, - &asn_DEF_E2SM_RC_RANFunctionDefinition, - &asn_DEF_E2SM_RC_ControlHeader, - &asn_DEF_E2SM_RC_ControlMessage, - &asn_DEF_E2SM_KPM_EventTriggerDefinition, - &asn_DEF_RANcallProcess_ID_string, - 0 -}; - diff --git a/e2sm/wrapper.c b/e2sm/wrapper.c old mode 100644 new mode 100755 index 9f0fdcf..1d5deb2 --- a/e2sm/wrapper.c +++ b/e2sm/wrapper.c @@ -2,10 +2,12 @@ #include "wrapper.h" #include "OCTET_STRING.h" +//ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size,struct uEID *inUEID,long f1AP[1],long e1AP[1],long ricControlStyleType, long ricControlActionID) +ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size,struct uEID *inUEID,long f1AP[],size_t f1AP_len,long e1AP[],size_t e1Ap_len,long ricControlStyleType, long ricControlActionID, void* plmnId, size_t plmnIdSize) +{ + fprintf(stderr,"e2SM wrapper function Entered\n"); + fprintf(stderr,"plmn Size = %ld and aMFRegionID Size = %ld and aMFSetID_size = %ld and aMFPointer_size = %ld \n", inUEID->pLMNIdentity_size,inUEID->aMFRegionID_size,inUEID->aMFSetID_size,inUEID->aMFPointer_size); -ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size, void *ueIDbuf, size_t ueIDbuf_size, - long ricControlStyleType, long ricControlActionID) -{ E2SM_RC_ControlHeader_t *controlHeaderIE = (E2SM_RC_ControlHeader_t *)calloc(1, sizeof(E2SM_RC_ControlHeader_t)); if(!controlHeaderIE) { @@ -13,23 +15,167 @@ ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size, void *ueID return -1; } - controlHeaderIE->present = E2SM_RC_ControlHeader_PR_controlHeader_Format1; - //E2SM_RC_ControlHeader_Format1_t *controlHeader_Fmt1 = controlHeaderIE->choice.controlHeader_Format1; + controlHeaderIE->ric_controlHeader_formats.present = E2SM_RC_ControlHeader__ric_controlHeader_formats_PR_controlHeader_Format1; E2SM_RC_ControlHeader_Format1_t *controlHeader_Fmt1 = (E2SM_RC_ControlHeader_Format1_t *)calloc(1, sizeof(E2SM_RC_ControlHeader_Format1_t)); if(!controlHeader_Fmt1) { fprintf(stderr, "alloc E2SM_RC_ControlHeader failed\n"); return -1; } - - controlHeader_Fmt1->ueId.buf = (uint8_t*)calloc(1, ueIDbuf_size); - memcpy(controlHeader_Fmt1->ueId.buf, ueIDbuf, ueIDbuf_size); //Check how to get ueIDbuf from string - controlHeader_Fmt1->ueId.size = ueIDbuf_size; + + controlHeader_Fmt1->ueID.present = UEID_PR_gNB_UEID; + controlHeader_Fmt1->ueID.choice.gNB_UEID = (UEID_GNB_t *)calloc(1,sizeof(UEID_GNB_t)); + if(! controlHeader_Fmt1->ueID.choice.gNB_UEID) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + fprintf(stderr, "alloc gNB_UEID failed\n"); + return -1; + } + + asn_long2INTEGER(&controlHeader_Fmt1->ueID.choice.gNB_UEID->amf_UE_NGAP_ID,inUEID->amf_UE_NGAP_Id); + + fprintf(stderr, "e2sm_encode_ric_control_header amf_UE_NGAP_ID encoded \n"); + + //OCTET_STRING_fromBuf(&controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.pLMNIdentity,inUEID->pLMNIdentity, inUEID->pLMNIdentity_size); + + OCTET_STRING_fromBuf(&controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.pLMNIdentity, plmnId,plmnIdSize); + fprintf(stderr, "e2smrc_encode_ric_control_header pLMNIdentity encoded \n"); + + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFRegionID.buf = (uint8_t*)calloc(1,inUEID->aMFRegionID_size); + if(!controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFRegionID.buf) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + fprintf(stderr, "alloc aMFRegionID Value failed\n"); + return -1; + } + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFRegionID.size = inUEID->aMFRegionID_size; + //controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFRegionID.buf[0] = inUEID->aMFRegionID && 0XFF; + //controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFRegionID.buf[0] = *(inUEID->aMFRegionID ) & 0XFF; + memcpy(controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFRegionID.buf,inUEID->aMFRegionID,inUEID->aMFRegionID_size); + + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFSetID.buf = (uint8_t*)calloc(1, inUEID->aMFSetID_size); + if(!controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFSetID.buf) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + fprintf(stderr, "alloc aMFSetID Value failed\n"); + return -1; + } + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFSetID.size = inUEID->aMFSetID_size; + //controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFSetID.buf[0] = (inUEID->aMFSetID && 0xFF00) >> 8; + //controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFSetID.buf[1] = inUEID->aMFSetID && 0XFF00 && 0X00FF; + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFSetID.buf[0] = (*(inUEID->aMFSetID) & 0xFFC0) >> 8; + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFSetID.bits_unused = 6; + + + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFPointer.buf = (uint8_t*)calloc(1, inUEID->aMFPointer_size); + if(!controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFPointer.buf) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + fprintf(stderr, "alloc aMFPointer Value failed\n"); + return -1; + } + + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFPointer.size = inUEID->aMFPointer_size; + //controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFPointer.buf[0] = inUEID->aMFPointer && 0XFF; + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFPointer.buf[0] = (*(inUEID->aMFPointer) & 0xFC) >> 2; + controlHeader_Fmt1->ueID.choice.gNB_UEID->guami.aMFPointer.bits_unused = 2; + + + controlHeader_Fmt1->ueID.choice.gNB_UEID->gNB_CU_UE_F1AP_ID_List = (UEID_GNB_CU_F1AP_ID_List_t *)calloc(1,sizeof(UEID_GNB_CU_F1AP_ID_List_t)); + if(! controlHeader_Fmt1->ueID.choice.gNB_UEID->gNB_CU_UE_F1AP_ID_List) + { + fprintf(stderr, "alloc gNB_CU_CP_UE_E1AP_ID_list failed\n"); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + return -1; + } + /* + UEID_GNB_CU_CP_F1AP_ID_Item_t *F1AP_ID_Item = (UEID_GNB_CU_CP_F1AP_ID_Item_t *)calloc (1, sizeof(UEID_GNB_CU_CP_F1AP_ID_Item_t )); + if(! F1AP_ID_Item) + { + fprintf(stderr, "alloc UEID_GNB_CU_CP_F1AP_ID_Item failed\n"); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + return -1; + } + */ + //f1AP is an array of data + //int n = sizeof(f1AP)/sizeof(long int); + for(int i =0; i < f1AP_len; i++) + { + UEID_GNB_CU_CP_F1AP_ID_Item_t *F1AP_ID_Item = (UEID_GNB_CU_CP_F1AP_ID_Item_t *)calloc (1, sizeof(UEID_GNB_CU_CP_F1AP_ID_Item_t )); + if(! F1AP_ID_Item) + { + fprintf(stderr, "alloc UEID_GNB_CU_CP_F1AP_ID_Item failed\n"); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + return -1; + } + F1AP_ID_Item->gNB_CU_UE_F1AP_ID = f1AP[i]; + fprintf(stderr, "F1AP_id %d =%lu\n",i,*((unsigned long *) F1AP_id +i )); + ASN_SEQUENCE_ADD(&controlHeader_Fmt1->ueID.choice.gNB_UEID->gNB_CU_UE_F1AP_ID_List->list,F1AP_ID_Item); + } + //F1AP_ID_Item->gNB_CU_UE_F1AP_ID = f1AP[0]; + //ASN_SEQUENCE_ADD(&controlHeader_Fmt1->ueID.choice.gNB_UEID->gNB_CU_UE_F1AP_ID_List->list,F1AP_ID_Item); + + + + controlHeader_Fmt1->ueID.choice.gNB_UEID->gNB_CU_CP_UE_E1AP_ID_List = (UEID_GNB_CU_CP_E1AP_ID_List_t *)calloc(1,sizeof(UEID_GNB_CU_CP_E1AP_ID_List_t)); + + if(! controlHeader_Fmt1->ueID.choice.gNB_UEID->gNB_CU_CP_UE_E1AP_ID_List) + { + fprintf(stderr, "alloc gNB_CU_CP_UE_E1AP_ID_list failed\n"); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + return -1; + } + + + //n = sizeof(e1AP)/sizeof(long int); + for(int i =0; i < e1Ap_len; i++) + { + UEID_GNB_CU_CP_E1AP_ID_Item_t *E1AP_ID_Item = (UEID_GNB_CU_CP_E1AP_ID_Item_t *)calloc (1, sizeof(UEID_GNB_CU_CP_E1AP_ID_Item_t )); + if(! E1AP_ID_Item) + { + fprintf(stderr, "alloc UEID_GNB_CU_CP_E1AP_ID_Item failed\n"); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + return -1; + + } + E1AP_ID_Item->gNB_CU_CP_UE_E1AP_ID = e1AP[i]; + ASN_SEQUENCE_ADD(&controlHeader_Fmt1->ueID.choice.gNB_UEID->gNB_CU_CP_UE_E1AP_ID_List->list,E1AP_ID_Item); + //E1AP_ID_Item->gNB_CU_CP_UE_E1AP_ID = (*(unsigned long *) E1AP_id) ; + //ASN_SEQUENCE_ADD(&controlHeader_Fmt1->ueID.choice.gNB_UEID->gNB_CU_CP_UE_E1AP_ID_List->list,E1AP_ID_Item); + } + - controlHeader_Fmt1->ric_ControlStyle_Type = ricControlStyleType; + /*UEID_GNB_CU_CP_E1AP_ID_Item_t *E1AP_ID_Item = (UEID_GNB_CU_CP_E1AP_ID_Item_t *)calloc (1, sizeof(UEID_GNB_CU_CP_E1AP_ID_Item_t )); + if(! E1AP_ID_Item) + { + fprintf(stderr, "alloc UEID_GNB_CU_CP_E1AP_ID_Item failed\n"); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); + return -1; + + } + E1AP_ID_Item->gNB_CU_CP_UE_E1AP_ID = e1AP[0]; + ASN_SEQUENCE_ADD(&controlHeader_Fmt1->ueID.choice.gNB_UEID->gNB_CU_CP_UE_E1AP_ID_List->list,E1AP_ID_Item); + */ + controlHeader_Fmt1->ric_Style_Type = ricControlStyleType; controlHeader_Fmt1->ric_ControlAction_ID = ricControlActionID; - controlHeaderIE->choice.controlHeader_Format1 = controlHeader_Fmt1; + controlHeaderIE->ric_controlHeader_formats.choice.controlHeader_Format1 = controlHeader_Fmt1; + + fprintf(stderr, "Manju string %s\n",controlHeaderIE->ric_controlHeader_formats.choice.controlHeader_Format1->ueID.choice.gNB_UEID->amf_UE_NGAP_ID.buf) ; + + fprintf(stderr, "Manju string %s\n",controlHeaderIE->ric_controlHeader_formats.choice.controlHeader_Format1->ueID.choice.gNB_UEID->guami.pLMNIdentity.buf); + + + fprintf(stderr, "Manju string %s\n",controlHeaderIE->ric_controlHeader_formats.choice.controlHeader_Format1->ueID.choice.gNB_UEID->guami.aMFRegionID.buf); + +fprintf(stderr, "Manju string %s\n",controlHeaderIE->ric_controlHeader_formats.choice.controlHeader_Format1->ueID.choice.gNB_UEID->guami.aMFSetID.buf); + +fprintf(stderr, "Manju string %s\n",controlHeaderIE->ric_controlHeader_formats.choice.controlHeader_Format1->ueID.choice.gNB_UEID->guami.aMFPointer.buf); + +fprintf(stderr, "Manju string %lu\n",(**(controlHeaderIE->ric_controlHeader_formats.choice.controlHeader_Format1->ueID.choice.gNB_UEID->gNB_CU_CP_UE_E1AP_ID_List->list.array)).gNB_CU_CP_UE_E1AP_ID); + +fprintf(stderr, "Manju string %lu\n",(**(controlHeaderIE->ric_controlHeader_formats.choice.controlHeader_Format1->ueID.choice.gNB_UEID->gNB_CU_UE_F1AP_ID_List->list.array)).gNB_CU_UE_F1AP_ID); + fprintf(stderr, "showing xer of asn_DEF_E2SM_RC_ControlHeader data\n"); xer_fprint(stderr, &asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); @@ -38,11 +184,13 @@ ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size, void *ueID asn_enc_rval_t encode_result; encode_result = aper_encode_to_buffer(&asn_DEF_E2SM_RC_ControlHeader, NULL, controlHeaderIE, buffer, buf_size); + + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlHeader, controlHeaderIE); if(encode_result.encoded == -1) { fprintf(stderr, "Cannot encode %s: %s\n", encode_result.failed_type->name, strerror(errno)); - return -1; + return -1; } else { @@ -50,185 +198,280 @@ ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size, void *ueID } } +ssize_t e2sm_encode_nrcgi(NR_CGI_t *nr_cgi, void* plmnIdValue, size_t plmnId_size,ulong lNRCellId, uint8_t* buffer, size_t buf_size) +{ + nr_cgi = (NR_CGI_t*)calloc(1, sizeof(NR_CGI_t)); + if(!nr_cgi) { + fprintf(stderr, "e2src_encode_nrcgi alloc nr_cgi failed \n"); + return -1; + } + OCTET_STRING_fromBuf(&nr_cgi->pLMNIdentity,plmnIdValue, plmnId_size); + //fprintf(stderr, "encodec Plmn Id = %s plmnIdValue %s and lNRCellId = %lu \n", nr_cgi->pLMNIdentity, plmnIdValue,lNRCellId); + //fprintf(stderr, "encodec Plmn Id = %s and lNRCellId = %d \n", nr_cgi->pLMNIdentity,plmnIdValue,lNRCellId); + BIT_STRING_t *nr_cell_id = (BIT_STRING_t*)calloc(1, sizeof(BIT_STRING_t)); + if(nr_cell_id) + { + nr_cell_id->buf = (uint8_t*)calloc(1,5); + if(nr_cell_id->buf) + { + nr_cell_id->size = 5; + nr_cell_id->buf[0] = ((lNRCellId & 0X0FF0000000) >> 28); + nr_cell_id->buf[1] = ((lNRCellId & 0X000FF00000) >> 20); + nr_cell_id->buf[2] = ((lNRCellId & 0X00000FF000) >> 12); + nr_cell_id->buf[3] = ((lNRCellId & 0X0000000FF0) >> 4); + nr_cell_id->buf[4] = (lNRCellId & 0X000000000F) << 4; + nr_cell_id->bits_unused = 4; + + nr_cgi->nRCellIdentity = *nr_cell_id; + } + } + + fprintf(stderr, "showing xer of asn_DEF_NR_CGI NR_CGI_t data\n"); + xer_fprint(stderr, &asn_DEF_NR_CGI, nr_cgi); + asn_enc_rval_t encode_result = aper_encode_to_buffer(&asn_DEF_NR_CGI, NULL, nr_cgi, buffer, buf_size); -ssize_t e2sm_encode_ric_control_message(void *buffer, size_t buf_size, long targetPrimaryCell, + if(encode_result.encoded != -1) + { + fprintf(stderr, "nr_cgi encodedi length = %zd \n", encode_result.encoded) ; + return encode_result.encoded; + } + else + { + fprintf(stderr, "nr_cgi encode failed =%zd \n", encode_result.encoded) ; + return -1 ; + } +} + +ssize_t e2sm_encode_ric_control_message(void *buffer, size_t buf_size, long targetPrimaryCell, long targetCell, long nrOrEUtraCell, long nrCGIOrECGI, void* ranParameterValue, size_t ranParameterValue_size) { - E2SM_RC_ControlMessage_t *e2smRcControlMsg = (E2SM_RC_ControlMessage_t*)calloc(1, sizeof(E2SM_RC_ControlMessage_t)); - if(!e2smRcControlMsg) { - fprintf(stderr, "alloc E2SM_RC_ControlMessage_t failed\n"); - return -1; - } - - e2smRcControlMsg->present = E2SM_RC_ControlMessage_PR_controlMessage_Format1; + fprintf(stderr, "e2sm_encode_ric_control_message \n") ; + //NR_CGI_t *nr_cgi = NULL; + //uint8_t nrcgiBuf[buf_size]; + //ssize_t nrcgiBuf_size,nrcgiLen; - // E2SM_RC_ControlMessage_Format1_t *e2smRcControlFormat1 = e2smRcControlMsg->choice.controlMessage_Format1; - E2SM_RC_ControlMessage_Format1_t *e2smRcControlFormat1 = (E2SM_RC_ControlMessage_Format1_t*)calloc(1, sizeof(E2SM_RC_ControlMessage_Format1_t)); - if(!e2smRcControlMsg) { - fprintf(stderr, "alloc E2SM_RC_ControlMessage_Format1_t failed\n"); + E2SM_RC_ControlMessage_t *e2smrcRcControlMsg = (E2SM_RC_ControlMessage_t*)calloc(1, sizeof(E2SM_RC_ControlMessage_t)); + if(!e2smrcRcControlMsg) { + fprintf(stderr, "alloc E2SM_ControlMessage_t failed\n"); return -1; } - + e2smrcRcControlMsg->ric_controlMessage_formats.present = E2SM_RC_ControlMessage__ric_controlMessage_formats_PR_controlMessage_Format1; - e2smRcControlFormat1->ranParameters_List = - (struct E2SM_RC_ControlMessage_Format1__ranParameters_List*)calloc(1, sizeof(struct E2SM_RC_ControlMessage_Format1__ranParameters_List)); - if(!e2smRcControlFormat1->ranParameters_List) - { - fprintf(stderr, "alloc e2smRcControlFormat1->ranParameters_List failed\n"); - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); - return -1; - } - - // Start Target Primary Cell - RANParameter_Item_t *ranParameterItem1 = (RANParameter_Item_t*)calloc(1,sizeof(RANParameter_Item_t)); + E2SM_RC_ControlMessage_Format1_t *e2smrcRcControlFormat1 = (E2SM_RC_ControlMessage_Format1_t*)calloc(1, sizeof(E2SM_RC_ControlMessage_Format1_t)); + if(!e2smrcRcControlFormat1) { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc E2SM_ControlMessage_Format1_t failed\n"); + return -1; + } + // Start Target Primary Cell + E2SM_RC_ControlMessage_Format1_Item_t *ranParameterItem1 = (E2SM_RC_ControlMessage_Format1_Item_t *) calloc(1,sizeof( + E2SM_RC_ControlMessage_Format1_Item_t)); if(!ranParameterItem1) { fprintf(stderr, "alloc RANParameter_Item_t1 failed\n"); - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); return -1; } - - ranParameterItem1->ranParameterItem_ID = targetPrimaryCell; // Target Primary Cell ID value = 1 - RANParameter_ValueType_t *ranParameterValueType1 = (RANParameter_ValueType_t*)calloc(1, sizeof(RANParameter_ValueType_t)); - if(!ranParameterValueType1) - { - fprintf(stderr, "alloc RANParameter_ValueType_t1 failed\n"); - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); - return -1; - } - - ranParameterValueType1->present = RANParameter_ValueType_PR_ranParameter_Structure; - RANParameter_STRUCTURE_t *ranParameterStructure1 = (RANParameter_STRUCTURE_t*)calloc(1, sizeof(RANParameter_STRUCTURE_t)); + ranParameterItem1->ranParameter_ID = targetPrimaryCell; // Target Primary Cell ID value = 1 + ranParameterItem1->ranParameter_valueType.present = RANParameter_ValueType_PR_ranP_Choice_Structure; + + RANParameter_ValueType_Choice_Structure_t *ranParameterStructure1 = (RANParameter_ValueType_Choice_Structure_t*)calloc(1, sizeof(RANParameter_ValueType_Choice_Structure_t)); if(!ranParameterStructure1) { fprintf(stderr, "alloc RANParameter_STRUCTURE_t1 failed\n"); - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); return -1; } - - // Start Target Cell - RANParameter_Item_t *ranParameterItem2 = (RANParameter_Item_t*)calloc(1,sizeof(RANParameter_Item_t)); + fprintf(stderr, "targetPrimaryCell encoded \n"); + + // Start Target Cell + RANParameter_STRUCTURE_Item_t *ranParameterItem2 = (RANParameter_STRUCTURE_Item_t *)calloc(1,sizeof(RANParameter_STRUCTURE_Item_t)); + if(!ranParameterItem2) { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); fprintf(stderr, "alloc RANParameter_Item_t2 failed\n"); return -1; } - ranParameterItem2->ranParameterItem_ID = targetCell; // Target Cell ID value = 2 - RANParameter_ValueType_t *ranParameterValueType2 = (RANParameter_ValueType_t*)calloc(1, sizeof(RANParameter_ValueType_t)); - if(!ranParameterValueType2) - { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); - fprintf(stderr, "alloc RANParameter_STRUCTURE_t2 failed\n"); - return -1; - } - + ranParameterItem2->ranParameter_ID = targetCell; // Target Cell ID value = 2 - ranParameterValueType2->present = RANParameter_ValueType_PR_ranParameter_Structure; - RANParameter_STRUCTURE_t *ranParameterStructure2 = (RANParameter_STRUCTURE_t*)calloc(1, sizeof(struct RANParameter_STRUCTURE)); + RANParameter_ValueType_Choice_Structure_t *ranParameterStructure2 = (RANParameter_ValueType_Choice_Structure_t*)calloc(1, sizeof(struct RANParameter_ValueType_Choice_Structure)); if(!ranParameterStructure2) { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); fprintf(stderr, "alloc RANParameter_STRUCTURE_t2 failed\n"); return -1; } - - // Start NR Cell (or E-UTRA Cell) - RANParameter_Item_t *ranParameterItem3 = (RANParameter_Item_t*)calloc(1,sizeof(RANParameter_Item_t)); + fprintf(stderr, "targetPrimaryCellId Value encoded \n"); + + // Start NR Cell (or E-UTRA Cell) + RANParameter_STRUCTURE_Item_t *ranParameterItem3 = (RANParameter_STRUCTURE_Item_t*)calloc(1,sizeof(RANParameter_STRUCTURE_Item_t)); if(!ranParameterItem3) { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); fprintf(stderr, "alloc RANParameter_Item_t3 failed\n"); return -1; } - ranParameterItem3->ranParameterItem_ID = nrOrEUtraCell; // NR Cell ID (or E-UTRA Cell ID) value = - RANParameter_ValueType_t *ranParameterValueType3 = (RANParameter_ValueType_t*)calloc(1, sizeof(RANParameter_ValueType_t)); - if(!ranParameterValueType3) - { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); - fprintf(stderr, "alloc RANParameter_Item_t3 failed\n"); - return -1; - } + ranParameterItem3->ranParameter_ID = nrOrEUtraCell; // NR Cell ID (or E-UTRA Cell ID) value = - ranParameterValueType3->present = RANParameter_ValueType_PR_ranParameter_Structure; - RANParameter_STRUCTURE_t *ranParameterStructure3 = (struct RANParameter_STRUCTURE*)calloc(1, sizeof(struct RANParameter_STRUCTURE)); + RANParameter_ValueType_Choice_Structure_t *ranParameterStructure3 = (struct RANParameter_ValueType_Choice_Structure*)calloc(1, sizeof(struct RANParameter_ValueType_Choice_Structure)); if(!ranParameterStructure3) { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); fprintf(stderr, "alloc RANParameter_Item_t3 failed\n"); return -1; } + fprintf(stderr, " NR Cell ID Value encoded \n"); - // Start NR CGI (or ECGI) - RANParameter_Item_t *ranParameterItem4 = (RANParameter_Item_t*)calloc(1, sizeof(RANParameter_Item_t)); + // Start NR CGI (or ECGI) + RANParameter_STRUCTURE_Item_t *ranParameterItem4 = (RANParameter_STRUCTURE_Item_t *) calloc(1,sizeof( + RANParameter_STRUCTURE_Item_t)); if(!ranParameterItem4) { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); fprintf(stderr, "alloc RANParameter_Item_t4 failed\n"); return -1; } - ranParameterItem4->ranParameterItem_ID = nrCGIOrECGI; // NR CGI ID (or ECGI ID) value = - RANParameter_ValueType_t *ranParameterValueType4 = (RANParameter_ValueType_t*)calloc(1, sizeof(RANParameter_ValueType_t)); - if(!ranParameterValueType4) - { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); - fprintf(stderr, "alloc RANParameter_Item_t4 failed\n"); + + ranParameterItem4->ranParameter_ID = nrCGIOrECGI; // NR CGI ID (or ECGI ID) value = + + ranParameterItem4->ranParameter_valueType = (RANParameter_ValueType_t*)calloc(1,sizeof(RANParameter_ValueType_t)); + if(!ranParameterItem4->ranParameter_valueType) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameterItem4->ranParameter_valueType failed\n"); return -1; - } - ranParameterValueType4->present = RANParameter_ValueType_PR_ranParameter_Element; - ranParameterValueType4->choice.ranParameter_Element = (RANParameter_ELEMENT_t*)calloc(1, sizeof(RANParameter_ELEMENT_t)); - if(!ranParameterValueType4->choice.ranParameter_Element) + } + + ranParameterItem4->ranParameter_valueType->present = RANParameter_ValueType_PR_ranP_Choice_ElementFalse; + ranParameterItem4->ranParameter_valueType->choice.ranP_Choice_ElementFalse = (RANParameter_ValueType_Choice_ElementFalse_t *)calloc(1, sizeof(RANParameter_ValueType_Choice_ElementFalse_t)); + if(!ranParameterItem4->ranParameter_valueType->choice.ranP_Choice_ElementFalse) { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); fprintf(stderr, "alloc RANParameter_Item_t4 failed\n"); return -1; } - ranParameterValueType4->choice.ranParameter_Element->keyFlag = 0; - ranParameterValueType4->choice.ranParameter_Element->ranParameter_Value.present = RANParameter_Value_PR_valueOctS; - ranParameterValueType4->choice.ranParameter_Element->ranParameter_Value.choice.valueOctS.buf = - (uint8_t*)calloc(1, ranParameterValue_size); - if(!ranParameterValueType4->choice.ranParameter_Element->ranParameter_Value.choice.valueOctS.buf) - { - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); - fprintf(stderr, "alloc RANParameter Value failed\n"); + ranParameterItem4->ranParameter_valueType->choice.ranP_Choice_ElementFalse->ranParameter_value = (RANParameter_Value_t *)calloc(1, sizeof(RANParameter_Value_t)); + if(!ranParameterItem4->ranParameter_valueType->choice.ranP_Choice_ElementFalse->ranParameter_value) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameter_value failed\n"); return -1; - } - memcpy(ranParameterValueType4->choice.ranParameter_Element->ranParameter_Value.choice.valueOctS.buf, ranParameterValue, ranParameterValue_size); - ranParameterValueType4->choice.ranParameter_Element->ranParameter_Value.choice.valueOctS.size = ranParameterValue_size; - ranParameterItem4->ranParameterItem_valueType = ranParameterValueType4; // NR CGI (or ECGI) - - ASN_SEQUENCE_ADD(&ranParameterStructure3->sequence_of_ranParameters.list, ranParameterItem4); // NR CGI (or ECGI) - ranParameterValueType3->choice.ranParameter_Structure = ranParameterStructure3; // NR Cell (or E-UTRA Cell) - ranParameterItem3->ranParameterItem_valueType = ranParameterValueType3; + } + ranParameterItem4->ranParameter_valueType->choice.ranP_Choice_ElementFalse->ranParameter_value->present = RANParameter_Value_PR_valueOctS; + OCTET_STRING_fromBuf(&ranParameterItem4->ranParameter_valueType->choice.ranP_Choice_ElementFalse->ranParameter_value->choice.valueOctS,ranParameterValue, ranParameterValue_size); - ASN_SEQUENCE_ADD(&ranParameterStructure2->sequence_of_ranParameters.list, ranParameterItem3); // NR Cell (or E-UTRA Cell) - ranParameterValueType2->choice.ranParameter_Structure = ranParameterStructure2; // Target Cell - ranParameterItem2->ranParameterItem_valueType = ranParameterValueType2; + /* + fprintf(stderr, "Target Plmn Id = %s ranParameterValue and lNRCellId = %lu \n", ranParameterValue,lNRCellId); + nrcgiLen = e2sm_encode_nrcgi(nr_cgi, ranParameterValue, ranParameterValue_size, lNRCellId,nrcgiBuf,nrcgiBuf_size); + if(nrcgiLen == -1 ) + { + fprintf(stderr,"e2srmc_encode_nrcgi failed \n"); + return nrcgiLen; + } + OCTET_STRING_fromBuf(&ranParameterItem4->ranParameter_valueType->choice.ranP_Choice_ElementFalse->ranParameter_value->choice.valueOctS,nrcgiBuf,nrcgiLen); + */ + fprintf(stderr, " NR CGI encoded \n"); - ASN_SEQUENCE_ADD(&ranParameterStructure1->sequence_of_ranParameters.list, ranParameterItem2); // Target Cell - ranParameterValueType1->choice.ranParameter_Structure = ranParameterStructure1; // Target Primary Cell - ranParameterItem1->ranParameterItem_valueType = ranParameterValueType1; + ranParameterStructure3->ranParameter_Structure = (RANParameter_STRUCTURE_t*)calloc(1,sizeof(RANParameter_STRUCTURE_t)); + if(!ranParameterStructure3->ranParameter_Structure) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameterStructure3->ranParameter_Structure failed\n"); + return -1; + } - ASN_SEQUENCE_ADD(&e2smRcControlFormat1->ranParameters_List->list, ranParameterItem1); // Target Primary Cell - e2smRcControlMsg->choice.controlMessage_Format1 = e2smRcControlFormat1; + ranParameterStructure3->ranParameter_Structure->sequence_of_ranParameters = (struct RANParameter_STRUCTURE__sequence_of_ranParameters*)calloc(1,sizeof(struct RANParameter_STRUCTURE__sequence_of_ranParameters)); + if(!ranParameterStructure3->ranParameter_Structure->sequence_of_ranParameters) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameterStructure3->ranParameter_Structure->sequence_of_ranParameters failed\n"); + return -1; + } + + + + ASN_SEQUENCE_ADD(&ranParameterStructure3->ranParameter_Structure->sequence_of_ranParameters->list, ranParameterItem4); // NR CGI (or ECGI) + ranParameterItem3->ranParameter_valueType = (RANParameter_ValueType_t*)calloc(1,sizeof(RANParameter_ValueType_t)); + if(!ranParameterItem3->ranParameter_valueType) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameterItem3->ranParameter_valueType failed\n"); + return -1; + } + ranParameterItem3->ranParameter_valueType->present = RANParameter_ValueType_PR_ranP_Choice_Structure; + ranParameterItem3->ranParameter_valueType->choice.ranP_Choice_Structure = ranParameterStructure3; // NR Cell (or E-UTRA Cell) + fprintf(stderr, " ranParameterStructure3 encoded \n"); + + ranParameterStructure2->ranParameter_Structure = (RANParameter_STRUCTURE_t*)calloc(1,sizeof(RANParameter_STRUCTURE_t)); + if(!ranParameterStructure2->ranParameter_Structure) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameterStructure2->ranParameter_Structure failed\n"); + return -1; + } + + ranParameterStructure2->ranParameter_Structure->sequence_of_ranParameters = (struct RANParameter_STRUCTURE__sequence_of_ranParameters*)calloc(1,sizeof(struct RANParameter_STRUCTURE__sequence_of_ranParameters)); + if(!ranParameterStructure2->ranParameter_Structure->sequence_of_ranParameters) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameterStructure3->ranParameter_Structure->sequence_of_ranParameters failed\n"); + return -1; + } + + ASN_SEQUENCE_ADD(&ranParameterStructure2->ranParameter_Structure->sequence_of_ranParameters->list, ranParameterItem3); // NR Cell (or E-UTRA Cell) + ranParameterItem2->ranParameter_valueType = (RANParameter_ValueType_t*)calloc(1,sizeof(RANParameter_ValueType_t)); + if(!ranParameterItem2->ranParameter_valueType) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameterItem2->ranParameter_valueType failed\n"); + return -1; + } + ranParameterItem2->ranParameter_valueType->present = RANParameter_ValueType_PR_ranP_Choice_Structure; + ranParameterItem2->ranParameter_valueType->choice.ranP_Choice_Structure = ranParameterStructure2; // Target Cell + fprintf(stderr, " ranParameterStructure2 encoded \n"); + + ranParameterStructure1->ranParameter_Structure = (RANParameter_STRUCTURE_t*)calloc(1,sizeof(RANParameter_STRUCTURE_t)); + if(!ranParameterStructure1->ranParameter_Structure) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameterStructure1->ranParameter_Structure failed\n"); + return -1; + } + + ranParameterStructure1->ranParameter_Structure->sequence_of_ranParameters = (struct RANParameter_STRUCTURE__sequence_of_ranParameters*)calloc(1,sizeof(struct RANParameter_STRUCTURE__sequence_of_ranParameters)); + if(!ranParameterStructure1->ranParameter_Structure->sequence_of_ranParameters) + { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "alloc ranParameterStructure1->ranParameter_Structure->sequence_of_ranParameters failed\n"); + return -1; + } + fprintf(stderr, " ranParameterStructure1 encoded \n"); + + ASN_SEQUENCE_ADD(&ranParameterStructure1->ranParameter_Structure->sequence_of_ranParameters->list, ranParameterItem2); // Target Cell + ranParameterItem1->ranParameter_valueType.choice.ranP_Choice_Structure = ranParameterStructure1; // Target Primary Cell + + ASN_SEQUENCE_ADD(&e2smrcRcControlFormat1->ranP_List.list, ranParameterItem1); // Target Primary Cell + e2smrcRcControlMsg->ric_controlMessage_formats.choice.controlMessage_Format1 = e2smrcRcControlFormat1; fprintf(stderr, "showing xer of asn_DEF_E2SM_RC_ControlMessage data\n"); - xer_fprint(stderr, &asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + xer_fprint(stderr, &asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); fprintf(stderr, "\n"); fprintf(stderr, "After xer of asn_DEF_E2SM_RC_ControlMessage data\n"); asn_enc_rval_t encode_result; - encode_result = aper_encode_to_buffer(&asn_DEF_E2SM_RC_ControlMessage, NULL, e2smRcControlMsg, buffer, buf_size); - ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smRcControlMsg); + encode_result = aper_encode_to_buffer(&asn_DEF_E2SM_RC_ControlMessage, NULL, e2smrcRcControlMsg, buffer, buf_size); + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlMessage, e2smrcRcControlMsg); + fprintf(stderr, "encoded length = %ld \n", encode_result.encoded); if(encode_result.encoded == -1) { fprintf(stderr, "Cannot encode %s: %s\n", encode_result.failed_type->name, strerror(errno)); @@ -240,3 +483,23 @@ ssize_t e2sm_encode_ric_control_message(void *buffer, size_t buf_size, long targ } } + +E2SM_RC_ControlOutcome_t* e2sm_decode_ric_call_process_outcome(void *buffer, size_t buf_size) +{ + fprintf(stderr, "e2sm_decode_ric_call_process_outcome Enter \n"); + asn_dec_rval_t decode_result; + E2SM_RC_ControlOutcome_t* controlOutcome = NULL; + decode_result = aper_decode_complete(NULL, &asn_DEF_E2SM_RC_ControlOutcome, (void **)&controlOutcome, buffer, buf_size); + if(decode_result.code == RC_OK) { + xer_fprint(stdout, &asn_DEF_E2SM_RC_ControlOutcome, controlOutcome); + return controlOutcome; + } + else { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlOutcome, controlOutcome); + return NULL; + } +} + +void e2sm_free_ric_call_process_outcome(E2SM_RC_ControlOutcome_t* controlOutcome) { + ASN_STRUCT_FREE(asn_DEF_E2SM_RC_ControlOutcome, controlOutcome); +} diff --git a/e2sm/wrapper.h b/e2sm/wrapper.h old mode 100644 new mode 100755 index 98dd0a6..b41dab2 --- a/e2sm/wrapper.h +++ b/e2sm/wrapper.h @@ -4,9 +4,9 @@ //#include "ARP.h" #include "BOOLEAN.h" #include "NativeReal.h" -#include "NULL.h" +//#include "NULL.h" #include "REAL.h" -#include "TimeStamp.h" +//#include "TimeStamp.h" #include "OCTET_STRING.h" #include "E2SM-RC-ControlHeader-Format1.h" #include "E2SM-RC-ControlHeader.h" @@ -17,10 +17,10 @@ #include "NativeInteger.h" #include "OPEN_TYPE.h" #include "PrintableString.h" -#include "RAN-ControlParameter-Item.h" -#include "RANParameter-ELEMENT.h" +//#include "RAN-ControlParameter-Item.h" +//#include "RANParameter-ELEMENT.h" #include "RANParameter-ID.h" -#include "RANParameter-Item.h" +//#include "RANParameter-Item.h" #include "RANParameter-LIST.h" #include "RANParameter-Name.h" #include "RANParameter-STRUCTURE.h" @@ -28,20 +28,55 @@ #include "RANParameter-ValueType.h" #include "RANfunction-Name.h" #include "RIC-ControlAction-ID.h" -#include "RIC-ControlAction-Item.h" +//#include "RIC-ControlAction-Item.h" #include "RIC-ControlAction-Name.h" -#include "RIC-ControlStyle-Item.h" -#include "RIC-EventTriggerStyle-Item.h" +//#include "RIC-ControlStyle-Item.h" +//#include "RIC-EventTriggerStyle-Item.h" #include "RIC-Format-Type.h" #include "RIC-Style-Name.h" #include "RIC-Style-Type.h" -#include "UE-Identity.h" +//#include "UE-Identity.h" +#include "RANParameter-ValueType-Choice-ElementFalse.h" +#include "RANParameter-ValueType-Choice-Structure.h" +#include "UEID.h" +#include "UEID-GNB.h" +#include "UEID-GNB-CU-F1AP-ID-List.h" +#include "UEID-GNB-CU-CP-E1AP-ID-List.h" +#include "UEID-GNB-CU-CP-F1AP-ID-Item.h" +#include "UEID-GNB-CU-CP-E1AP-ID-Item.h" +#include "E2SM-RC-ControlMessage-Format1-Item.h" +#include "RANParameter-STRUCTURE-Item.h" +#include "E2SM-RC-ControlOutcome.h" +#include "E2SM-RC-ControlOutcome-Format1.h" +#include "E2SM-RC-ControlOutcome-Format1-Item.h" +#include "NR-CGI.h" -extern ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size, void *ueIDbuf, size_t ueIDbuf_size, long ricControlStyleType, long ricControlActionID); +long F1AP_id[1]; +long E1AP_id[1]; +struct uEID { + long amf_UE_NGAP_Id; + //size_t amf_UE_NGAP_Id_size; + const char* pLMNIdentity; + size_t pLMNIdentity_size; + const char* aMFRegionID; + size_t aMFRegionID_size; + const char* aMFSetID; + size_t aMFSetID_size; + const char* aMFPointer; + size_t aMFPointer_size; +}; -//extern ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size, long ricControlStyleType, long ricControlActionID); +//extern ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size,struct uEID *in,long f1AP[1],long e1AP[1],long ricControlStyleType, long ricControlActionID); + +extern ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size,struct uEID *in,long f1AP[],size_t f1AP_len,long e1AP[],size_t e1Ap_len,long ricControlStyleType, long ricControlActionID, void *ranParameterValue, size_t ranParameterValue_size); extern ssize_t e2sm_encode_ric_control_message(void *buffer, size_t buf_size, long targetPrimaryCell, long targetCell, long nrOrEUtraCell, long nrCGIOrECGI, void *ranParameterValue, size_t ranParameterValue_size); +extern E2SM_RC_ControlOutcome_t* e2sm_decode_ric_call_process_outcome(void *buffer, size_t buf_size); +extern void e2sm_free_ric_call_process_outcome(E2SM_RC_ControlOutcome_t* controlOutcome) ; +extern ssize_t e2sm_encode_nrcgi(NR_CGI_t *nr_cgi, void* ranParameterValue, size_t ranParameterValue_size, + ulong lNRCellId,uint8_t* buffer, size_t buf_size); + +//extern ssize_t encodeRANParameterTestingItemForStructure(RANParameter_ValueType_Choice_Structure_t **ranParameterChoiceItemStruct,E2SM_RC_ControlMessage_Format1_Item_t **ranParameterItem,long ranParameterID); #endif /* _WRAPPER_H_ */ diff --git a/go.mod b/go.mod index 2e78dfc..6f3c2c8 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module nrtric +module nrtric go 1.14 @@ -6,7 +6,8 @@ require ( gerrit.o-ran-sc.org/r/ric-plt/xapp-frame v0.0.0-00010101000000-000000000000 github.com/golang/protobuf v1.5.2 golang.org/x/net v0.0.0-20210614182718-04defd469f4e - google.golang.org/grpc v1.39.0 + google.golang.org/grpc v1.39.0 + google.golang.org/protobuf v1.28.0 // indirect k8s.io/utils v0.0.0-20210629042839-4a2b36d8d73f // indirect ) diff --git a/go.sum b/go.sum index 3cef1f4..c01bd1e 100644 --- a/go.sum +++ b/go.sum @@ -61,6 +61,7 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.m github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/globalsign/mgo v0.0.0-20180905125535-1ca0a4f7cbcb/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= github.com/globalsign/mgo v0.0.0-20181015135952-eeefdecb41b8/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= @@ -122,6 +123,7 @@ github.com/go-openapi/validate v0.19.6 h1:WsKw9J1WzYBVxWRYwLqEk3325RL6G0SSWksuam github.com/go-openapi/validate v0.19.6/go.mod h1:8DJv2CVJQ6kGNpFW6eV9N3JviE1C85nY1c2z52x1Gk4= github.com/go-redis/redis v6.15.3+incompatible h1:NZ0O90AhLSvSrvLZ/S9h7D4kl1mW2PrKyxL7MyBKO2g= github.com/go-redis/redis v6.15.3+incompatible/go.mod h1:W2YCLaZryXHirdd9QqwkiVUxCQsrx8SbLq9Uqk7JS7A= +github.com/go-redis/redis v6.15.9+incompatible/go.mod h1:NAIEuMOZ/fxfXJIrKDQDz8wamY7mA7PouImQ2Jvg6kA= github.com/go-stack/stack v1.8.0 h1:5SgMzNM5HxrEjV0ww2lTmX6E2Izsfxas4+YHWRs3Lsk= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= @@ -195,12 +197,17 @@ github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5 github.com/mitchellh/mapstructure v1.1.2 h1:fmNYVwqnSfB9mZU6OS2O6GsXM+wcskZDuKQzvN1EDeE= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.8.0 h1:VkHVNpR4iVnU8XQR6DBm8BqYjN7CRzw+xKUbVVbbW9w= github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= github.com/onsi/gomega v1.5.0 h1:izbySO9zDPmjJ8rDjLvkA2zJHIo+HkYXHnf7eN7SSyo= github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= github.com/pelletier/go-toml v1.2.0 h1:T5zMGML61Wp+FlcbWjRDT7yAxhJNAiPPLOFECq181zc= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= @@ -289,6 +296,7 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20210614182718-04defd469f4e h1:XpT3nA5TvE525Ne3hInMh6+GETgn27Zfm9dxsThnX2Q= golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= @@ -308,7 +316,11 @@ golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20190321052220-f7bb7a8bee54/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da h1:b3NXsE2LusjYGGjL5bxEVZZORm/YEFFrWFjR8eFrw/c= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -358,6 +370,8 @@ google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlba google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0 h1:bxAC2xTBsZGibn2RTntX0oH50xLsqy1OxA9tTL3p/lk= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.28.0 h1:w43yiav+6bVFTBQFZX0r7ipe9JQ1QsbMgHwbBziscLw= +google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= @@ -373,8 +387,10 @@ gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4 h1:/eiJrUcujPVeJ3xlSWaiNi3uSVmDGBK1pDHUHAnao1I= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20210629042839-4a2b36d8d73f h1:6Cyc8f2OS555SrragQyv4rQ5G7F2haZ6KY2oxO1wzlE= k8s.io/utils v0.0.0-20210629042839-4a2b36d8d73f/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= diff --git a/protocol/grpc/ricmsgcommrpc/proto/rc.proto b/protocol/grpc/ricmsgcommrpc/proto/rc.proto index 6de5b1c..7ff8e8e 100644 --- a/protocol/grpc/ricmsgcommrpc/proto/rc.proto +++ b/protocol/grpc/ricmsgcommrpc/proto/rc.proto @@ -24,9 +24,26 @@ message RICE2APHeader { message RICControlHeader { int64 ControlStyle = 1; int64 ControlActionId = 2; - string UEID = 3; + UeId UEID = 3; } +message UeId { + gNBUEID GnbUEID = 1; +} + +message gNBUEID { + int64 amfUENGAPID = 1; + Guami guami = 2; + repeated int64 gNBCUUEF1APID = 3; + repeated int64 gNBCUCPUEE1APID = 4; +} + +message Guami { + string pLMNIdentity = 1; + string aMFRegionID = 2; + string aMFSetID = 3; + string aMFPointer = 4; +} message RICControlMessage { RICControlCellTypeEnum RICControlCellTypeVal = 1; diff --git a/protocol/grpc/ricmsgcommrpc/rc/rc.pb.go b/protocol/grpc/ricmsgcommrpc/rc/rc.pb.go index 18fbde2..967ff88 100644 --- a/protocol/grpc/ricmsgcommrpc/rc/rc.pb.go +++ b/protocol/grpc/ricmsgcommrpc/rc/rc.pb.go @@ -1,16 +1,32 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. +// Code generated by protoc-gen-go. // source: rc.proto - +// DO NOT EDIT! + +/* +Package rc is a generated protocol buffer package. + +It is generated from these files: + rc.proto + +It has these top-level messages: + RICE2APHeader + RICControlHeader + UeId + GNBUEID + Guami + RICControlMessage + RicControlGrpcReq + RicControlGrpcRsp +*/ package rc +import proto "github.com/golang/protobuf/proto" +import fmt "fmt" +import math "math" + import ( - context "context" - fmt "fmt" - proto "github.com/golang/protobuf/proto" + context "golang.org/x/net/context" grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - math "math" ) // Reference imports to suppress errors if they are not otherwise used. @@ -22,7 +38,7 @@ var _ = math.Inf // is compatible with the proto package it is being compiled against. // A compilation error at this line likely means your copy of the // proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package +const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package type RICControlCellTypeEnum int32 @@ -37,7 +53,6 @@ var RICControlCellTypeEnum_name = map[int32]string{ 1: "RIC_CONTROL_NR_CELL", 2: "RIC_CONTROL_EUTRAN_CELL", } - var RICControlCellTypeEnum_value = map[string]int32{ "RIC_CONTROL_CELL_UNKWON": 0, "RIC_CONTROL_NR_CELL": 1, @@ -47,10 +62,7 @@ var RICControlCellTypeEnum_value = map[string]int32{ func (x RICControlCellTypeEnum) String() string { return proto.EnumName(RICControlCellTypeEnum_name, int32(x)) } - -func (RICControlCellTypeEnum) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_a4fc9282119cff7c, []int{0} -} +func (RICControlCellTypeEnum) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } type RICControlAckEnum int32 @@ -67,7 +79,6 @@ var RICControlAckEnum_name = map[int32]string{ 2: "RIC_CONTROL_ACK", 3: "RIC_CONTROL_NACK", } - var RICControlAckEnum_value = map[string]int32{ "RIC_CONTROL_ACK_UNKWON": 0, "RIC_CONTROL_NO_ACK": 1, @@ -78,43 +89,17 @@ var RICControlAckEnum_value = map[string]int32{ func (x RICControlAckEnum) String() string { return proto.EnumName(RICControlAckEnum_name, int32(x)) } - -func (RICControlAckEnum) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_a4fc9282119cff7c, []int{1} -} +func (RICControlAckEnum) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } type RICE2APHeader struct { - RanFuncId int64 `protobuf:"varint,1,opt,name=RanFuncId,proto3" json:"RanFuncId,omitempty"` - RICRequestorID int64 `protobuf:"varint,2,opt,name=RICRequestorID,proto3" json:"RICRequestorID,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + RanFuncId int64 `protobuf:"varint,1,opt,name=RanFuncId" json:"RanFuncId,omitempty"` + RICRequestorID int64 `protobuf:"varint,2,opt,name=RICRequestorID" json:"RICRequestorID,omitempty"` } -func (m *RICE2APHeader) Reset() { *m = RICE2APHeader{} } -func (m *RICE2APHeader) String() string { return proto.CompactTextString(m) } -func (*RICE2APHeader) ProtoMessage() {} -func (*RICE2APHeader) Descriptor() ([]byte, []int) { - return fileDescriptor_a4fc9282119cff7c, []int{0} -} - -func (m *RICE2APHeader) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_RICE2APHeader.Unmarshal(m, b) -} -func (m *RICE2APHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_RICE2APHeader.Marshal(b, m, deterministic) -} -func (m *RICE2APHeader) XXX_Merge(src proto.Message) { - xxx_messageInfo_RICE2APHeader.Merge(m, src) -} -func (m *RICE2APHeader) XXX_Size() int { - return xxx_messageInfo_RICE2APHeader.Size(m) -} -func (m *RICE2APHeader) XXX_DiscardUnknown() { - xxx_messageInfo_RICE2APHeader.DiscardUnknown(m) -} - -var xxx_messageInfo_RICE2APHeader proto.InternalMessageInfo +func (m *RICE2APHeader) Reset() { *m = RICE2APHeader{} } +func (m *RICE2APHeader) String() string { return proto.CompactTextString(m) } +func (*RICE2APHeader) ProtoMessage() {} +func (*RICE2APHeader) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } func (m *RICE2APHeader) GetRanFuncId() int64 { if m != nil { @@ -131,92 +116,142 @@ func (m *RICE2APHeader) GetRICRequestorID() int64 { } type RICControlHeader struct { - ControlStyle int64 `protobuf:"varint,1,opt,name=ControlStyle,proto3" json:"ControlStyle,omitempty"` - ControlActionId int64 `protobuf:"varint,2,opt,name=ControlActionId,proto3" json:"ControlActionId,omitempty"` - UEID string `protobuf:"bytes,3,opt,name=UEID,proto3" json:"UEID,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + ControlStyle int64 `protobuf:"varint,1,opt,name=ControlStyle" json:"ControlStyle,omitempty"` + ControlActionId int64 `protobuf:"varint,2,opt,name=ControlActionId" json:"ControlActionId,omitempty"` + UEID *UeId `protobuf:"bytes,3,opt,name=UEID" json:"UEID,omitempty"` } -func (m *RICControlHeader) Reset() { *m = RICControlHeader{} } -func (m *RICControlHeader) String() string { return proto.CompactTextString(m) } -func (*RICControlHeader) ProtoMessage() {} -func (*RICControlHeader) Descriptor() ([]byte, []int) { - return fileDescriptor_a4fc9282119cff7c, []int{1} +func (m *RICControlHeader) Reset() { *m = RICControlHeader{} } +func (m *RICControlHeader) String() string { return proto.CompactTextString(m) } +func (*RICControlHeader) ProtoMessage() {} +func (*RICControlHeader) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } + +func (m *RICControlHeader) GetControlStyle() int64 { + if m != nil { + return m.ControlStyle + } + return 0 } -func (m *RICControlHeader) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_RICControlHeader.Unmarshal(m, b) +func (m *RICControlHeader) GetControlActionId() int64 { + if m != nil { + return m.ControlActionId + } + return 0 } -func (m *RICControlHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_RICControlHeader.Marshal(b, m, deterministic) + +func (m *RICControlHeader) GetUEID() *UeId { + if m != nil { + return m.UEID + } + return nil } -func (m *RICControlHeader) XXX_Merge(src proto.Message) { - xxx_messageInfo_RICControlHeader.Merge(m, src) + +type UeId struct { + GnbUEID *GNBUEID `protobuf:"bytes,1,opt,name=GnbUEID" json:"GnbUEID,omitempty"` } -func (m *RICControlHeader) XXX_Size() int { - return xxx_messageInfo_RICControlHeader.Size(m) + +func (m *UeId) Reset() { *m = UeId{} } +func (m *UeId) String() string { return proto.CompactTextString(m) } +func (*UeId) ProtoMessage() {} +func (*UeId) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} } + +func (m *UeId) GetGnbUEID() *GNBUEID { + if m != nil { + return m.GnbUEID + } + return nil } -func (m *RICControlHeader) XXX_DiscardUnknown() { - xxx_messageInfo_RICControlHeader.DiscardUnknown(m) + +type GNBUEID struct { + AmfUENGAPID int64 `protobuf:"varint,1,opt,name=amfUENGAPID" json:"amfUENGAPID,omitempty"` + Guami *Guami `protobuf:"bytes,2,opt,name=guami" json:"guami,omitempty"` + GNBCUUEF1APID []int64 `protobuf:"varint,3,rep,packed,name=gNBCUUEF1APID" json:"gNBCUUEF1APID,omitempty"` + GNBCUCPUEE1APID []int64 `protobuf:"varint,4,rep,packed,name=gNBCUCPUEE1APID" json:"gNBCUCPUEE1APID,omitempty"` } -var xxx_messageInfo_RICControlHeader proto.InternalMessageInfo +func (m *GNBUEID) Reset() { *m = GNBUEID{} } +func (m *GNBUEID) String() string { return proto.CompactTextString(m) } +func (*GNBUEID) ProtoMessage() {} +func (*GNBUEID) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} } -func (m *RICControlHeader) GetControlStyle() int64 { +func (m *GNBUEID) GetAmfUENGAPID() int64 { if m != nil { - return m.ControlStyle + return m.AmfUENGAPID } return 0 } -func (m *RICControlHeader) GetControlActionId() int64 { +func (m *GNBUEID) GetGuami() *Guami { if m != nil { - return m.ControlActionId + return m.Guami } - return 0 + return nil } -func (m *RICControlHeader) GetUEID() string { +func (m *GNBUEID) GetGNBCUUEF1APID() []int64 { if m != nil { - return m.UEID + return m.GNBCUUEF1APID } - return "" + return nil } -type RICControlMessage struct { - RICControlCellTypeVal RICControlCellTypeEnum `protobuf:"varint,1,opt,name=RICControlCellTypeVal,proto3,enum=rc.RICControlCellTypeEnum" json:"RICControlCellTypeVal,omitempty"` - TargetCellID string `protobuf:"bytes,2,opt,name=TargetCellID,proto3" json:"TargetCellID,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *GNBUEID) GetGNBCUCPUEE1APID() []int64 { + if m != nil { + return m.GNBCUCPUEE1APID + } + return nil } -func (m *RICControlMessage) Reset() { *m = RICControlMessage{} } -func (m *RICControlMessage) String() string { return proto.CompactTextString(m) } -func (*RICControlMessage) ProtoMessage() {} -func (*RICControlMessage) Descriptor() ([]byte, []int) { - return fileDescriptor_a4fc9282119cff7c, []int{2} +type Guami struct { + PLMNIdentity string `protobuf:"bytes,1,opt,name=pLMNIdentity" json:"pLMNIdentity,omitempty"` + AMFRegionID string `protobuf:"bytes,2,opt,name=aMFRegionID" json:"aMFRegionID,omitempty"` + AMFSetID string `protobuf:"bytes,3,opt,name=aMFSetID" json:"aMFSetID,omitempty"` + AMFPointer string `protobuf:"bytes,4,opt,name=aMFPointer" json:"aMFPointer,omitempty"` } -func (m *RICControlMessage) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_RICControlMessage.Unmarshal(m, b) +func (m *Guami) Reset() { *m = Guami{} } +func (m *Guami) String() string { return proto.CompactTextString(m) } +func (*Guami) ProtoMessage() {} +func (*Guami) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} } + +func (m *Guami) GetPLMNIdentity() string { + if m != nil { + return m.PLMNIdentity + } + return "" } -func (m *RICControlMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_RICControlMessage.Marshal(b, m, deterministic) + +func (m *Guami) GetAMFRegionID() string { + if m != nil { + return m.AMFRegionID + } + return "" } -func (m *RICControlMessage) XXX_Merge(src proto.Message) { - xxx_messageInfo_RICControlMessage.Merge(m, src) + +func (m *Guami) GetAMFSetID() string { + if m != nil { + return m.AMFSetID + } + return "" } -func (m *RICControlMessage) XXX_Size() int { - return xxx_messageInfo_RICControlMessage.Size(m) + +func (m *Guami) GetAMFPointer() string { + if m != nil { + return m.AMFPointer + } + return "" } -func (m *RICControlMessage) XXX_DiscardUnknown() { - xxx_messageInfo_RICControlMessage.DiscardUnknown(m) + +type RICControlMessage struct { + RICControlCellTypeVal RICControlCellTypeEnum `protobuf:"varint,1,opt,name=RICControlCellTypeVal,enum=rc.RICControlCellTypeEnum" json:"RICControlCellTypeVal,omitempty"` + TargetCellID string `protobuf:"bytes,2,opt,name=TargetCellID" json:"TargetCellID,omitempty"` } -var xxx_messageInfo_RICControlMessage proto.InternalMessageInfo +func (m *RICControlMessage) Reset() { *m = RICControlMessage{} } +func (m *RICControlMessage) String() string { return proto.CompactTextString(m) } +func (*RICControlMessage) ProtoMessage() {} +func (*RICControlMessage) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} } func (m *RICControlMessage) GetRICControlCellTypeVal() RICControlCellTypeEnum { if m != nil { @@ -232,44 +267,21 @@ func (m *RICControlMessage) GetTargetCellID() string { return "" } -//RicControl GRPC Req +// RicControl GRPC Req type RicControlGrpcReq struct { - E2NodeID string `protobuf:"bytes,1,opt,name=e2NodeID,proto3" json:"e2NodeID,omitempty"` - PlmnID string `protobuf:"bytes,2,opt,name=plmnID,proto3" json:"plmnID,omitempty"` - RanName string `protobuf:"bytes,3,opt,name=ranName,proto3" json:"ranName,omitempty"` - RICE2APHeaderData *RICE2APHeader `protobuf:"bytes,4,opt,name=RICE2APHeaderData,proto3" json:"RICE2APHeaderData,omitempty"` - RICControlHeaderData *RICControlHeader `protobuf:"bytes,5,opt,name=RICControlHeaderData,proto3" json:"RICControlHeaderData,omitempty"` - RICControlMessageData *RICControlMessage `protobuf:"bytes,6,opt,name=RICControlMessageData,proto3" json:"RICControlMessageData,omitempty"` - RICControlAckReqVal RICControlAckEnum `protobuf:"varint,7,opt,name=RICControlAckReqVal,proto3,enum=rc.RICControlAckEnum" json:"RICControlAckReqVal,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *RicControlGrpcReq) Reset() { *m = RicControlGrpcReq{} } -func (m *RicControlGrpcReq) String() string { return proto.CompactTextString(m) } -func (*RicControlGrpcReq) ProtoMessage() {} -func (*RicControlGrpcReq) Descriptor() ([]byte, []int) { - return fileDescriptor_a4fc9282119cff7c, []int{3} -} - -func (m *RicControlGrpcReq) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_RicControlGrpcReq.Unmarshal(m, b) -} -func (m *RicControlGrpcReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_RicControlGrpcReq.Marshal(b, m, deterministic) -} -func (m *RicControlGrpcReq) XXX_Merge(src proto.Message) { - xxx_messageInfo_RicControlGrpcReq.Merge(m, src) -} -func (m *RicControlGrpcReq) XXX_Size() int { - return xxx_messageInfo_RicControlGrpcReq.Size(m) -} -func (m *RicControlGrpcReq) XXX_DiscardUnknown() { - xxx_messageInfo_RicControlGrpcReq.DiscardUnknown(m) + E2NodeID string `protobuf:"bytes,1,opt,name=e2NodeID" json:"e2NodeID,omitempty"` + PlmnID string `protobuf:"bytes,2,opt,name=plmnID" json:"plmnID,omitempty"` + RanName string `protobuf:"bytes,3,opt,name=ranName" json:"ranName,omitempty"` + RICE2APHeaderData *RICE2APHeader `protobuf:"bytes,4,opt,name=RICE2APHeaderData" json:"RICE2APHeaderData,omitempty"` + RICControlHeaderData *RICControlHeader `protobuf:"bytes,5,opt,name=RICControlHeaderData" json:"RICControlHeaderData,omitempty"` + RICControlMessageData *RICControlMessage `protobuf:"bytes,6,opt,name=RICControlMessageData" json:"RICControlMessageData,omitempty"` + RICControlAckReqVal RICControlAckEnum `protobuf:"varint,7,opt,name=RICControlAckReqVal,enum=rc.RICControlAckEnum" json:"RICControlAckReqVal,omitempty"` } -var xxx_messageInfo_RicControlGrpcReq proto.InternalMessageInfo +func (m *RicControlGrpcReq) Reset() { *m = RicControlGrpcReq{} } +func (m *RicControlGrpcReq) String() string { return proto.CompactTextString(m) } +func (*RicControlGrpcReq) ProtoMessage() {} +func (*RicControlGrpcReq) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} } func (m *RicControlGrpcReq) GetE2NodeID() string { if m != nil { @@ -320,39 +332,16 @@ func (m *RicControlGrpcReq) GetRICControlAckReqVal() RICControlAckEnum { return RICControlAckEnum_RIC_CONTROL_ACK_UNKWON } -//RicControlGrpc Rsp +// RicControlGrpc Rsp type RicControlGrpcRsp struct { - RspCode int32 `protobuf:"varint,1,opt,name=rspCode,proto3" json:"rspCode,omitempty"` - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + RspCode int32 `protobuf:"varint,1,opt,name=rspCode" json:"rspCode,omitempty"` + Description string `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"` } -func (m *RicControlGrpcRsp) Reset() { *m = RicControlGrpcRsp{} } -func (m *RicControlGrpcRsp) String() string { return proto.CompactTextString(m) } -func (*RicControlGrpcRsp) ProtoMessage() {} -func (*RicControlGrpcRsp) Descriptor() ([]byte, []int) { - return fileDescriptor_a4fc9282119cff7c, []int{4} -} - -func (m *RicControlGrpcRsp) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_RicControlGrpcRsp.Unmarshal(m, b) -} -func (m *RicControlGrpcRsp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_RicControlGrpcRsp.Marshal(b, m, deterministic) -} -func (m *RicControlGrpcRsp) XXX_Merge(src proto.Message) { - xxx_messageInfo_RicControlGrpcRsp.Merge(m, src) -} -func (m *RicControlGrpcRsp) XXX_Size() int { - return xxx_messageInfo_RicControlGrpcRsp.Size(m) -} -func (m *RicControlGrpcRsp) XXX_DiscardUnknown() { - xxx_messageInfo_RicControlGrpcRsp.DiscardUnknown(m) -} - -var xxx_messageInfo_RicControlGrpcRsp proto.InternalMessageInfo +func (m *RicControlGrpcRsp) Reset() { *m = RicControlGrpcRsp{} } +func (m *RicControlGrpcRsp) String() string { return proto.CompactTextString(m) } +func (*RicControlGrpcRsp) ProtoMessage() {} +func (*RicControlGrpcRsp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} } func (m *RicControlGrpcRsp) GetRspCode() int32 { if m != nil { @@ -369,52 +358,16 @@ func (m *RicControlGrpcRsp) GetDescription() string { } func init() { - proto.RegisterEnum("rc.RICControlCellTypeEnum", RICControlCellTypeEnum_name, RICControlCellTypeEnum_value) - proto.RegisterEnum("rc.RICControlAckEnum", RICControlAckEnum_name, RICControlAckEnum_value) proto.RegisterType((*RICE2APHeader)(nil), "rc.RICE2APHeader") proto.RegisterType((*RICControlHeader)(nil), "rc.RICControlHeader") + proto.RegisterType((*UeId)(nil), "rc.UeId") + proto.RegisterType((*GNBUEID)(nil), "rc.gNBUEID") + proto.RegisterType((*Guami)(nil), "rc.Guami") proto.RegisterType((*RICControlMessage)(nil), "rc.RICControlMessage") proto.RegisterType((*RicControlGrpcReq)(nil), "rc.RicControlGrpcReq") proto.RegisterType((*RicControlGrpcRsp)(nil), "rc.RicControlGrpcRsp") -} - -func init() { proto.RegisterFile("rc.proto", fileDescriptor_a4fc9282119cff7c) } - -var fileDescriptor_a4fc9282119cff7c = []byte{ - // 527 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x54, 0x4d, 0x6f, 0xda, 0x40, - 0x10, 0xad, 0x21, 0x5f, 0x4c, 0xda, 0x84, 0x4c, 0x08, 0x41, 0x34, 0x07, 0xe4, 0x43, 0x85, 0x72, - 0xe0, 0x40, 0x7f, 0x40, 0x65, 0x2d, 0x34, 0xb1, 0x20, 0x26, 0x1a, 0xa0, 0x39, 0x22, 0x77, 0xbd, - 0x42, 0x08, 0x63, 0x9b, 0xb5, 0xa9, 0x94, 0x6b, 0x6f, 0xfd, 0xd7, 0x95, 0x97, 0x0d, 0x06, 0xe3, - 0x1b, 0xf3, 0x66, 0xde, 0x9b, 0x9d, 0x79, 0x83, 0xe1, 0x42, 0xf2, 0x4e, 0x24, 0xc3, 0x24, 0xc4, - 0x92, 0xe4, 0xe6, 0x14, 0xbe, 0x90, 0xcd, 0xfa, 0x5d, 0xeb, 0xf5, 0x59, 0xb8, 0x9e, 0x90, 0xf8, - 0x00, 0x15, 0x72, 0x83, 0x9f, 0x9b, 0x80, 0xdb, 0x5e, 0xc3, 0x68, 0x19, 0xed, 0x32, 0x65, 0x00, - 0x7e, 0x83, 0x2b, 0xb2, 0x19, 0x89, 0xf5, 0x46, 0xc4, 0x49, 0x28, 0xed, 0x5e, 0xa3, 0xa4, 0x4a, - 0x72, 0xa8, 0x99, 0x40, 0x95, 0x6c, 0xc6, 0xc2, 0x20, 0x91, 0xa1, 0xaf, 0x95, 0x4d, 0xf8, 0xac, - 0x81, 0x71, 0xf2, 0xee, 0x0b, 0x2d, 0x7e, 0x80, 0x61, 0x1b, 0xae, 0x75, 0x6c, 0xf1, 0x64, 0x11, - 0x06, 0xb6, 0xa7, 0x1b, 0xe4, 0x61, 0x44, 0x38, 0x99, 0xf6, 0xed, 0x5e, 0xa3, 0xdc, 0x32, 0xda, - 0x15, 0x52, 0xbf, 0xcd, 0x7f, 0x06, 0xdc, 0x64, 0x6d, 0x5f, 0x44, 0x1c, 0xbb, 0x73, 0x81, 0xaf, - 0x70, 0x97, 0x81, 0x4c, 0xf8, 0xfe, 0xe4, 0x3d, 0x12, 0xbf, 0x5c, 0x5f, 0x3d, 0xe0, 0xaa, 0xdb, - 0xec, 0x48, 0xde, 0x39, 0x2e, 0xe8, 0x07, 0x9b, 0x15, 0x15, 0x13, 0xd3, 0x49, 0x26, 0xae, 0x9c, - 0x8b, 0x24, 0x05, 0xf5, 0x0e, 0x2a, 0x74, 0x80, 0x99, 0x7f, 0xcb, 0x70, 0x43, 0x0b, 0xae, 0xd9, - 0x4f, 0x32, 0xe2, 0x24, 0xd6, 0xd8, 0x84, 0x0b, 0xd1, 0x75, 0x42, 0x4f, 0xd8, 0x3d, 0xd5, 0xbe, - 0x42, 0xbb, 0x18, 0xeb, 0x70, 0x16, 0xf9, 0xab, 0x60, 0xa7, 0xa7, 0x23, 0x6c, 0xc0, 0xb9, 0x74, - 0x03, 0xc7, 0x5d, 0x09, 0x3d, 0xec, 0x47, 0x88, 0x3f, 0xd4, 0xb8, 0x99, 0x79, 0x3d, 0x37, 0x71, - 0x1b, 0x27, 0x2d, 0xa3, 0x7d, 0xd9, 0xbd, 0xd1, 0x53, 0x65, 0x49, 0x3a, 0xae, 0xc5, 0x67, 0xa8, - 0xe5, 0x6d, 0x52, 0x1a, 0xa7, 0x4a, 0xa3, 0x76, 0xb8, 0x19, 0x2d, 0x53, 0xc8, 0xc0, 0xc1, 0xfe, - 0x92, 0xf5, 0xe6, 0x95, 0xd4, 0x99, 0x92, 0xba, 0x3b, 0x94, 0xd2, 0x05, 0x54, 0xcc, 0xc1, 0x27, - 0xb8, 0xcd, 0x12, 0x16, 0x5f, 0x92, 0x58, 0xa7, 0x7e, 0x9d, 0x2b, 0xbf, 0x72, 0x52, 0x16, 0x5f, - 0x2a, 0xab, 0x8a, 0x18, 0xe6, 0xe8, 0xc8, 0x83, 0x38, 0x52, 0xfb, 0x8c, 0x23, 0x16, 0x7a, 0xdb, - 0x13, 0x3c, 0xa5, 0x8f, 0x10, 0x5b, 0x70, 0xe9, 0x89, 0x98, 0xcb, 0x45, 0x94, 0x1e, 0x99, 0xb6, - 0x61, 0x1f, 0x7a, 0x5c, 0x42, 0xbd, 0xf8, 0x54, 0xf0, 0x2b, 0xdc, 0x93, 0xcd, 0x66, 0x6c, 0xe4, - 0x4c, 0x68, 0x34, 0x9c, 0xb1, 0xfe, 0x70, 0x38, 0x9b, 0x3a, 0x83, 0xb7, 0x91, 0x53, 0xfd, 0x84, - 0xf7, 0x6a, 0xa0, 0x5d, 0xd2, 0x21, 0x95, 0xaf, 0x1a, 0x79, 0x56, 0x7f, 0x3a, 0x21, 0xcb, 0xd9, - 0x26, 0x4b, 0x8f, 0x72, 0xff, 0x9a, 0xf5, 0x9c, 0xd8, 0x54, 0x2f, 0xd8, 0x31, 0x2c, 0x36, 0xc8, - 0xda, 0xd4, 0x01, 0x0f, 0xda, 0x8c, 0xd2, 0x74, 0xd5, 0xc0, 0x5b, 0xb8, 0xce, 0x71, 0xaa, 0x25, - 0xac, 0xa9, 0xbf, 0x68, 0x56, 0x9c, 0xa2, 0xe5, 0xee, 0x1b, 0x9c, 0xbf, 0xc4, 0x73, 0x16, 0xae, - 0x56, 0x38, 0x84, 0x87, 0xb1, 0x08, 0xbc, 0xec, 0x09, 0x24, 0xd6, 0x63, 0x21, 0xff, 0x2c, 0xb8, - 0x48, 0x57, 0x89, 0x5b, 0x23, 0xf2, 0x27, 0xde, 0x2c, 0x82, 0xe3, 0xe8, 0xf7, 0x99, 0xfa, 0xe6, - 0x7c, 0xff, 0x1f, 0x00, 0x00, 0xff, 0xff, 0xd2, 0xb8, 0xbb, 0xfc, 0x7f, 0x04, 0x00, 0x00, + proto.RegisterEnum("rc.RICControlCellTypeEnum", RICControlCellTypeEnum_name, RICControlCellTypeEnum_value) + proto.RegisterEnum("rc.RICControlAckEnum", RICControlAckEnum_name, RICControlAckEnum_value) } // Reference imports to suppress errors if they are not otherwise used. @@ -425,11 +378,10 @@ var _ grpc.ClientConn // is compatible with the grpc package it is being compiled against. const _ = grpc.SupportPackageIsVersion4 -// MsgCommClient is the client API for MsgComm service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +// Client API for MsgComm service + type MsgCommClient interface { - //gRPC call to Send RICControlReqServiceGrpc + // gRPC call to Send RICControlReqServiceGrpc SendRICControlReqServiceGrpc(ctx context.Context, in *RicControlGrpcReq, opts ...grpc.CallOption) (*RicControlGrpcRsp, error) } @@ -443,27 +395,20 @@ func NewMsgCommClient(cc *grpc.ClientConn) MsgCommClient { func (c *msgCommClient) SendRICControlReqServiceGrpc(ctx context.Context, in *RicControlGrpcReq, opts ...grpc.CallOption) (*RicControlGrpcRsp, error) { out := new(RicControlGrpcRsp) - err := c.cc.Invoke(ctx, "/rc.MsgComm/SendRICControlReqServiceGrpc", in, out, opts...) + err := grpc.Invoke(ctx, "/rc.MsgComm/SendRICControlReqServiceGrpc", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } -// MsgCommServer is the server API for MsgComm service. +// Server API for MsgComm service + type MsgCommServer interface { - //gRPC call to Send RICControlReqServiceGrpc + // gRPC call to Send RICControlReqServiceGrpc SendRICControlReqServiceGrpc(context.Context, *RicControlGrpcReq) (*RicControlGrpcRsp, error) } -// UnimplementedMsgCommServer can be embedded to have forward compatible implementations. -type UnimplementedMsgCommServer struct { -} - -func (*UnimplementedMsgCommServer) SendRICControlReqServiceGrpc(ctx context.Context, req *RicControlGrpcReq) (*RicControlGrpcRsp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SendRICControlReqServiceGrpc not implemented") -} - func RegisterMsgCommServer(s *grpc.Server, srv MsgCommServer) { s.RegisterService(&_MsgComm_serviceDesc, srv) } @@ -498,3 +443,53 @@ var _MsgComm_serviceDesc = grpc.ServiceDesc{ Streams: []grpc.StreamDesc{}, Metadata: "rc.proto", } + +func init() { proto.RegisterFile("rc.proto", fileDescriptor0) } + +var fileDescriptor0 = []byte{ + // 692 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x94, 0xcd, 0x6e, 0xda, 0x40, + 0x10, 0xc7, 0x6b, 0x0c, 0x21, 0x0c, 0x4d, 0x42, 0x36, 0x5f, 0x88, 0x46, 0x2d, 0xb2, 0xda, 0x0a, + 0x45, 0x6a, 0xa4, 0xd2, 0x07, 0xa8, 0x88, 0x63, 0x88, 0x15, 0x30, 0x68, 0xc0, 0xcd, 0x31, 0x72, + 0xec, 0x2d, 0x42, 0xc1, 0x1f, 0xac, 0x4d, 0xa5, 0x5c, 0x7a, 0xe8, 0xad, 0xef, 0xd0, 0x87, 0xad, + 0x76, 0x59, 0x30, 0x76, 0x38, 0xce, 0x6f, 0x3e, 0x76, 0xe6, 0x3f, 0xbb, 0x0b, 0xfb, 0xcc, 0xbd, + 0x8e, 0x58, 0x98, 0x84, 0xa4, 0xc0, 0x5c, 0xcd, 0x86, 0x03, 0x34, 0x75, 0xa3, 0xdd, 0x19, 0xdd, + 0x51, 0xc7, 0xa3, 0x8c, 0x5c, 0x42, 0x05, 0x9d, 0xa0, 0xbb, 0x0c, 0x5c, 0xd3, 0xab, 0x2b, 0x4d, + 0xa5, 0xa5, 0x62, 0x0a, 0xc8, 0x67, 0x38, 0x44, 0x53, 0x47, 0xba, 0x58, 0xd2, 0x38, 0x09, 0x99, + 0x79, 0x5b, 0x2f, 0x88, 0x90, 0x1c, 0xd5, 0x7e, 0x43, 0x0d, 0x4d, 0x5d, 0x0f, 0x83, 0x84, 0x85, + 0x73, 0x59, 0x59, 0x83, 0xb7, 0x12, 0x8c, 0x93, 0x97, 0x39, 0x95, 0xc5, 0x33, 0x8c, 0xb4, 0xe0, + 0x48, 0xda, 0x1d, 0x37, 0x99, 0x85, 0x81, 0xe9, 0xc9, 0x03, 0xf2, 0x98, 0x5c, 0x42, 0xd1, 0x36, + 0xcc, 0xdb, 0xba, 0xda, 0x54, 0x5a, 0xd5, 0xf6, 0xfe, 0x35, 0x73, 0xaf, 0x6d, 0x6a, 0x7a, 0x28, + 0xa8, 0xf6, 0x05, 0x8a, 0xdc, 0x22, 0x9f, 0xa0, 0xdc, 0x0b, 0x9e, 0x44, 0xa0, 0x22, 0x02, 0xab, + 0x3c, 0x70, 0x6a, 0xdd, 0x70, 0x84, 0x6b, 0x9f, 0xf6, 0x4f, 0x81, 0xb2, 0x84, 0xa4, 0x09, 0x55, + 0xc7, 0xff, 0x69, 0x1b, 0x56, 0xaf, 0x33, 0x92, 0x69, 0x2a, 0x6e, 0x23, 0xf2, 0x01, 0x4a, 0xd3, + 0xa5, 0xe3, 0xcf, 0x44, 0x6b, 0xd5, 0x76, 0x85, 0x97, 0xec, 0x71, 0x80, 0x2b, 0x4e, 0x3e, 0xc2, + 0xc1, 0xd4, 0xba, 0xd1, 0x6d, 0xdb, 0xe8, 0x7e, 0x15, 0x45, 0xd4, 0xa6, 0xda, 0x52, 0x31, 0x0b, + 0xf9, 0xac, 0x02, 0xe8, 0x23, 0xdb, 0x30, 0x56, 0x71, 0x45, 0x11, 0x97, 0xc7, 0xda, 0x5f, 0x05, + 0x4a, 0xe2, 0x00, 0xae, 0x61, 0xd4, 0x1f, 0x58, 0xa6, 0x47, 0x83, 0x64, 0x96, 0xbc, 0x88, 0xee, + 0x2a, 0x98, 0x61, 0x62, 0x80, 0x41, 0x17, 0xe9, 0x94, 0x0b, 0xb5, 0x5a, 0x50, 0x05, 0xb7, 0x11, + 0x69, 0xc0, 0xbe, 0x33, 0xe8, 0x8e, 0x69, 0x22, 0xf5, 0xab, 0xe0, 0xc6, 0x26, 0xef, 0x01, 0x9c, + 0x41, 0x77, 0x14, 0xce, 0x82, 0x84, 0xb2, 0x7a, 0x51, 0x78, 0xb7, 0x08, 0xef, 0xe5, 0x38, 0x5d, + 0xed, 0x80, 0xc6, 0xb1, 0x33, 0xa5, 0x64, 0x04, 0x67, 0x29, 0xd4, 0xe9, 0x7c, 0x3e, 0x79, 0x89, + 0xe8, 0x0f, 0x67, 0x2e, 0x1a, 0x3c, 0x6c, 0x37, 0xb8, 0x44, 0xaf, 0x03, 0x8c, 0x60, 0xe9, 0xe3, + 0xee, 0x44, 0x3e, 0xe9, 0xc4, 0x61, 0x53, 0x9a, 0x70, 0xb8, 0x19, 0x23, 0xc3, 0xb4, 0x3f, 0x2a, + 0x1c, 0xe3, 0xcc, 0x95, 0xd9, 0x3d, 0x16, 0xb9, 0x48, 0x17, 0x7c, 0x3a, 0xda, 0xb6, 0x42, 0x8f, + 0xca, 0xed, 0x55, 0x70, 0x63, 0x93, 0x73, 0xd8, 0x8b, 0xe6, 0x7e, 0x2a, 0x8b, 0xb4, 0x48, 0x1d, + 0xca, 0xcc, 0x09, 0x2c, 0xc7, 0xa7, 0x52, 0x90, 0xb5, 0x49, 0xbe, 0x8b, 0x71, 0xd3, 0x07, 0x72, + 0xeb, 0x24, 0x8e, 0x90, 0xa5, 0xda, 0x3e, 0x96, 0x53, 0xa5, 0x4e, 0x7c, 0x1d, 0x4b, 0xee, 0xe0, + 0x34, 0xff, 0x14, 0x44, 0x8d, 0x92, 0xa8, 0x71, 0x9a, 0x55, 0x46, 0x96, 0xd9, 0x99, 0x41, 0xee, + 0xb7, 0x45, 0x96, 0xca, 0x8b, 0x52, 0x7b, 0xa2, 0xd4, 0x59, 0xb6, 0x94, 0x0c, 0xc0, 0xdd, 0x39, + 0xa4, 0x07, 0x27, 0xa9, 0xa3, 0xe3, 0x3e, 0x23, 0x5d, 0xf0, 0x7d, 0x95, 0xc5, 0xbe, 0x72, 0xa5, + 0x3a, 0xee, 0xb3, 0x58, 0xd5, 0xae, 0x0c, 0x6d, 0xf8, 0x6a, 0x07, 0x71, 0x24, 0xf4, 0x8c, 0x23, + 0x3d, 0xf4, 0x56, 0xcf, 0xbc, 0x84, 0x6b, 0x93, 0xdf, 0x4e, 0x8f, 0xc6, 0x2e, 0x9b, 0x45, 0xfc, + 0x21, 0xaf, 0x6f, 0xe7, 0x16, 0xba, 0x7a, 0x86, 0xf3, 0xdd, 0x57, 0x85, 0xbc, 0x83, 0x0b, 0x34, + 0xf5, 0x47, 0x7d, 0x68, 0x4d, 0x70, 0xd8, 0x7f, 0xd4, 0x8d, 0x7e, 0xff, 0xd1, 0xb6, 0xee, 0x1f, + 0x86, 0x56, 0xed, 0x0d, 0xb9, 0x10, 0x03, 0x6d, 0x9c, 0x16, 0x0a, 0x7f, 0x4d, 0xc9, 0x67, 0x19, + 0xf6, 0x04, 0x3b, 0xd6, 0xca, 0x59, 0xb8, 0x62, 0xdb, 0xb7, 0x59, 0xce, 0x49, 0x1a, 0xa2, 0x83, + 0x4d, 0x46, 0x47, 0xbf, 0x4f, 0x8f, 0x39, 0x07, 0x92, 0x39, 0x66, 0xc8, 0xdd, 0x35, 0x85, 0x9c, + 0xc0, 0x51, 0x2e, 0xa7, 0x56, 0x20, 0xa7, 0xe2, 0x1b, 0x4c, 0x83, 0x39, 0x55, 0xdb, 0x0f, 0x50, + 0x1e, 0xc4, 0x53, 0x3d, 0xf4, 0x7d, 0xd2, 0x87, 0xcb, 0x31, 0x0d, 0xbc, 0xb4, 0x05, 0xa4, 0x8b, + 0x31, 0x65, 0xbf, 0x66, 0x2e, 0xe5, 0x52, 0x92, 0xd5, 0x22, 0xf2, 0x57, 0xbc, 0xb1, 0x0b, 0xc7, + 0xd1, 0xd3, 0x9e, 0xf8, 0xd7, 0xbf, 0xfd, 0x0f, 0x00, 0x00, 0xff, 0xff, 0xfb, 0x53, 0x8b, 0xc3, + 0xe3, 0x05, 0x00, 0x00, +} diff --git a/unitTest/grpcClient.sh b/unitTest/grpcClient.sh index 74ecbba..dede506 100644 --- a/unitTest/grpcClient.sh +++ b/unitTest/grpcClient.sh @@ -1,5 +1,7 @@ -./grpcurl -plaintext -d "{ \"e2NodeID\": \"36000000\", \"plmnID\": \"111\", \"ranName\": \"gnb_131_133_36000000\", \"RICE2APHeaderData\": { \"RanFuncId\": 300, \"RICRequestorID\": 2 }, \"RICControlHeaderData\": { \"ControlStyle\": 3, \"ControlActionId\": 1, \"UEID\": \"00006\" }, \"RICControlMessageData\": { \"RICControlCellTypeVal\": 4, \"TargetCellID\": \"1113\" }, \"RICControlAckReqVal\": 0 }" 10.96.106.3:7777 rc.MsgComm.SendRICControlReqServiceGrpc +#./grpcurl -plaintext -d "{ \"e2NodeID\": \"36000000\", \"plmnID\": \"111\", \"ranName\": \"gnb_131_133_36000000\", \"RICE2APHeaderData\": { \"RanFuncId\": 300, \"RICRequestorID\": 2 }, \"RICControlHeaderData\": { \"ControlStyle\": 3, \"ControlActionId\": 1, \"UEID\": \"00006\" }, \"RICControlMessageData\": { \"RICControlCellTypeVal\": 4, \"TargetCellID\": \"1113\" }, \"RICControlAckReqVal\": 0 }" 10.96.106.3:7777 rc.MsgComm.SendRICControlReqServiceGrpc #10.96.106.3:7777 is the grpc server ip and port #Values of other parameters can be provided as shown above +./grpcurl -plaintext -d "{ \"e2NodeID\": \"gnb_208_092_303030\", \"plmnID\": \"111\", \"ranName\": \"gnb_208_092_303030\", \"RICE2APHeaderData\": { \"RanFuncId\": 300, \"RICRequestorID\": 2 }, \"RICControlHeaderData\": { \"ControlStyle\": 3, \"ControlActionId\": 1, \"UEID\": {\"GnbUEID\": { \"amfUENGAPID\": 10 , \"guami\": {\"pLMNIdentity\": \"111111\",\"aMFRegionID\": \"00001001\", \"aMFSetID\": \"000000 \", \"aMFPointer\": \" 000\" },\"gNBCUUEF1APID\": 2, \"gNBCUCPUEE1APID\": 1 }} }, \"RICControlMessageData\": { \"RICControlCellTypeVal\": 4, \"TargetCellID\": \"1113\" }, \"RICControlAckReqVal\": 1 }" 10.99.225.43:7777 rc.MsgComm.SendRICControlReqServiceGrpc + diff --git a/xapp-descriptor/config.json b/xapp-descriptor/config.json index 21fd680..ed21c00 100644 --- a/xapp-descriptor/config.json +++ b/xapp-descriptor/config.json @@ -5,9 +5,9 @@ { "name": "rc", "image": { - "registry": "nexus3.o-ran-sc.org:10002", - "name": "o-ran-sc/ric-app-rc", - "tag": "1.0.1" + "registry": "hub.docker.com", + "name": "mthykand/rcxapp", + "tag": "v1.1" } } ], @@ -68,6 +68,7 @@ }, "controls": { "ricHOControlgRpcServerPort" : "7777", - "logLevel": 4 + "logLevel": 3, + "controlAckTimer" : 2 } } -- 2.16.6