From 69c3aa87b5146a9715e1cd5e98bb6e7e1d35ec91 Mon Sep 17 00:00:00 2001 From: znaty Date: Tue, 8 Oct 2024 17:23:34 +0000 Subject: [PATCH 01/68] Update 33128/r19/TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 49 +++++++++++++++++++++++++++++++++-- 1 file changed, 47 insertions(+), 2 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 647a36da..37a3a9c2 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -278,7 +278,13 @@ XIRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- IP Packet Report, see clause 6.2.3.9.5 - iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport + iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, + + -- NEF events, see clause 7.7.X.1 + nEF5GVNGroupCreation [162] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [163] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [164] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [165] NEF5GVNGroupQuery } -- ============== @@ -538,9 +544,15 @@ IRIEvent ::= CHOICE -- UDM events, see clause 7.2.2.3, continued from tag 124 uDMProSeTargetIdentifierDeconcealment [159] UDMProSeTargetIdentifierDeconcealment, - uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication + uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. + + -- NEF events, see clause 7.7.X.2 + nEF5GVNGroupCreation [162] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [163] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [164] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [165] NEF5GVNGroupQuery } IRITargetIdentifier ::= SEQUENCE @@ -818,6 +830,39 @@ NEFAFSessionWithQoSNotification ::= SEQUENCE aForASSessionWithQoSResponseCode [4] AForASSessionWithQoSResponseCode } +-- See clause 7.7.X.1.2 for details of this structure +NEF5GVNGroupCreation ::= SEQUENCE +{ + aFID [1] AFID, + gPSI [2] GPSI, + fiveGLanParametersProvision [3] SBIType +} + +-- See clause 7.7.X.1.3 for details of this structure +NEF5GVNGroupUpdate ::= SEQUENCE +{ + aFID [1] AFID, + gPSI [2] GPSI, + fiveGLanParametersProvision [3] SBIType OPTIONAL, + fiveGLanParametersProvisionPatch [4] SBIType OPTIONAL +} + +-- See clause 7.7.X.1.4 for details of this structure +NEF5GVNGroupDeletion ::= SEQUENCE +{ + aFID [1] AFID, + gPSI [2] GPSI, + externalGroupID [3] OCTET STRING +} + +-- See clause 7.7.X.1.5 for details of this structure +NEF5GVNGroupQuery ::= SEQUENCE +{ + aFID [1] AFID, + gPSI [2] GPSI, + fiveGLanParametersProvision [3] SBIType +} + -- ========================== -- Common SCEF/NEF parameters -- ========================== -- GitLab From d5bb4773ce3d6dc17f9c410866f24c5fa653c2ff Mon Sep 17 00:00:00 2001 From: znaty Date: Tue, 8 Oct 2024 17:47:17 +0000 Subject: [PATCH 02/68] Update 33128/r19/TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 37a3a9c2..435ec2ca 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -549,10 +549,10 @@ IRIEvent ::= CHOICE -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. -- NEF events, see clause 7.7.X.2 - nEF5GVNGroupCreation [162] NEF5GVNGroupCreation, - nEF5GVNGroupUpdate [163] NEF5GVNGroupUpdate, - nEF5GVNGroupDeletion [164] NEF5GVNGroupDeletion, - nEF5GVNGroupQuery [165] NEF5GVNGroupQuery + nEF5GVNGroupCreation [161] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [162] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [163] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [164] NEF5GVNGroupQuery } IRITargetIdentifier ::= SEQUENCE -- GitLab From fc0330b93bd7cc5ff29674350fbbfa66a347fe64 Mon Sep 17 00:00:00 2001 From: znaty Date: Tue, 8 Oct 2024 17:54:09 +0000 Subject: [PATCH 03/68] Update 33128/r19/TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 435ec2ca..37a3a9c2 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -549,10 +549,10 @@ IRIEvent ::= CHOICE -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. -- NEF events, see clause 7.7.X.2 - nEF5GVNGroupCreation [161] NEF5GVNGroupCreation, - nEF5GVNGroupUpdate [162] NEF5GVNGroupUpdate, - nEF5GVNGroupDeletion [163] NEF5GVNGroupDeletion, - nEF5GVNGroupQuery [164] NEF5GVNGroupQuery + nEF5GVNGroupCreation [162] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [163] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [164] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [165] NEF5GVNGroupQuery } IRITargetIdentifier ::= SEQUENCE -- GitLab From f7166f1362e1b97921b7ffb4aebdfa5325505a8e Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 9 Oct 2024 08:00:49 +0100 Subject: [PATCH 04/68] Adding linting exception --- 33128/r19/TS33128Payloads.asn | 2 +- testing/asn_lint_exceptions.json | 3 ++- testing/asn_process.py | 22 ++++++++++++++-------- 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 37a3a9c2..3fbc932c 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -835,7 +835,7 @@ NEF5GVNGroupCreation ::= SEQUENCE { aFID [1] AFID, gPSI [2] GPSI, - fiveGLanParametersProvision [3] SBIType + fiveGLanParametersProvision [3] SBIType } -- See clause 7.7.X.1.3 for details of this structure diff --git a/testing/asn_lint_exceptions.json b/testing/asn_lint_exceptions.json index 6960d857..6f8108f7 100644 --- a/testing/asn_lint_exceptions.json +++ b/testing/asn_lint_exceptions.json @@ -85,6 +85,7 @@ "Tag 6 missing in LALSReport", "Tag 8 missing in MMEStartOfInterceptionWithEPSAttachedUE", "Tag 11 missing in MMEStartOfInterceptionWithEPSAttachedUE", - "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent" + "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent", + "Tag 161 missing in IRIEvent" ] } diff --git a/testing/asn_process.py b/testing/asn_process.py index 2116eb3c..95b28878 100755 --- a/testing/asn_process.py +++ b/testing/asn_process.py @@ -20,6 +20,7 @@ filesWithBigInts = [ 'testing/dependencies/asn/IPAccessPDU.asn' ] +asn1c_path = "" change_path_to_unix = False def fix_path(path): @@ -43,10 +44,10 @@ def syntaxCheckASN(fileList): try: if file.as_posix() in filesWithBigInts: newFile = reconstrainInteger(str(file)) - p = run(["asn1c", '-E', fix_path(newFile)], capture_output=True) + p = run([asn1c_path, '-E', fix_path(newFile)], capture_output=True) Path(newFile).unlink() else: - p = run(["asn1c", '-E', fix_path(str(file))], capture_output=True) + p = run([asn1c_path, '-E', fix_path(str(file))], capture_output=True) if (p.returncode != 0): errorMessage = p.stderr.decode().splitlines()[0] if errorMessage.startswith(' Value "18446744073709551615" at line'): @@ -146,10 +147,19 @@ def processResults(results, stageName): return errorCount -def main(): +if __name__ == "__main__": loglevel = os.environ.get("LOGLEVEL", "WARNING").upper() logging.basicConfig(level=loglevel) + logging.info ('Searching for ASN1C') + asn1c_path = which("asn1c") + if asn1c_path is None: + raise Exception ("No asn1c executable found. Please install asn1c") + logging.info (f"asn1c found at {asn1c_path}") + if asn1c_path.lower().endswith("bat"): + logging.info (f"asn1c is a batch file, so assume path separators need to be changed") + change_path_to_unix = True + logging.info("Searching for ASN.1 files") fileList = list(Path(".").rglob("*.asn1")) + list(Path(".").rglob("*.asn")) logging.info(f"{len(fileList)} ASN.1 files found") @@ -210,8 +220,4 @@ def main(): if processResults(lintResults, "Linting") > 0: exit(1) - exit(0) - - -if __name__ == "__main__": - main() + exit(0) \ No newline at end of file -- GitLab From 9f096b15cde36fb0c64cc31bc844f79de83724ad Mon Sep 17 00:00:00 2001 From: hawbakert Date: Mon, 21 Oct 2024 19:16:36 +0000 Subject: [PATCH 05/68] Firstrun HSS --- 33128/r19/TS33128Payloads.asn | 82 ++++++++++++++++++++++++++++++++++- 1 file changed, 80 insertions(+), 2 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 647a36da..50eba3e1 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -278,7 +278,15 @@ XIRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- IP Packet Report, see clause 6.2.3.9.5 - iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport + iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, + + -- HSS events, see clause 7.2.3.3 + ePCHSSSubscriberRecordChange [162] EPCHSSSubscriberRecordChange, + + -- IMS HSS events, see clause 7.2.4.3 + iMSHSSServingSystemMessage [163] IMSHSSServingSystemMessage, + iMSHSSStartOfInterceptionWithRegisteredTarget [164] IMSHSSStartOfInterceptionWithRegisteredTarget, + iMSHSSSubscriberRecordChange [165] IMSHSSSubscriberRecordChange } -- ============== @@ -538,9 +546,17 @@ IRIEvent ::= CHOICE -- UDM events, see clause 7.2.2.3, continued from tag 124 uDMProSeTargetIdentifierDeconcealment [159] UDMProSeTargetIdentifierDeconcealment, - uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication + uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. + + -- HSS events, see clause 7.2.3.3 + ePCHSSSubscriberRecordChange [162] EPCHSSSubscriberRecordChange, + + -- IMS HSS events, see clause 7.2.4.3 + iMSHSSServingSystemMessage [163] IMSHSSServingSystemMessage, + iMSHSSStartOfInterceptionWithRegisteredTarget [164] IMSHSSStartOfInterceptionWithRegisteredTarget, + iMSHSSSubscriberRecordChange [165] IMSHSSSubscriberRecordChange } IRITargetIdentifier ::= SEQUENCE @@ -5827,6 +5843,13 @@ HSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE pSUserState [3] SBIType } +EPCHSSSubscriberRecordChange ::= SEQUENCE +{ + userIdentifiers [1] UserIdentifiers, + subscriberRecordChangeType [2] SubscriberRecordChangeType, + subscriberRecordChangePayload [3] SBIType +} + HSSIdentities ::= SEQUENCE { ePSSubscriberIDs [1] EPSSubscriberIDs OPTIONAL, @@ -5838,6 +5861,61 @@ SubscriptionDataSets ::= CHOICE iMSSubscriptionData [1] SBIType } +-- ======================= +-- IMS HSS definitions +-- ======================= + +IMSHSSServingSystemMessagen ::= SEQUENCE +{ + iMSI [1] IMSI, + oldPLMNID [2] PLMNID, + authorizationRequest [3] AuthorizationRequest, + roamingIndicator [4] RoamingIndicator, + responseCodes [5] UTF8String, + deregistrationData [6] SBIType +} + +IMSHSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE +{ + hSSIdentities [1] HSSIdentities, + iMSProfileData [2] SBIType, + iMSRegistrationStatus [3] IMSRegistrationStatus +} + +IMSHSSSubscriberRecordChange ::= SEQUENCE +{ + hSSIdentities [1] HSSIdentities, + subscriptionDataSets [2] SBIType, + mSISDNs [3] SEQUENCE (SIZE(1..MAX)) OF MSISDN, + iMEI [4] IMEI, + previousIMEI [5] IMEI +} + +IMSRegistrationStatus ::= ENUMERATED +{ + initialRegistration(1), + reregistration(2), + timeoutDeregistration(3), + userDeregistration(4), + administrativeDeregistration(5), + authenticationFailure(6), + authenticationTimeout(7), + unregisteredUser(8) +} + +AuthorizationRequest ::= SEQUENCE +{ + authorizationType [1] AuthorizationType, + iMPI [2] IMPI, + vistitedNetworkIdentifier [3] STRING +} + +AuthorizationType ::= ENUMERATED +{ + registration(1), + deregistration(2) +} + -- ================= -- Common Parameters -- ================= -- GitLab From 54095a784b97e780ea6ff28fcdc44cd6d61448ef Mon Sep 17 00:00:00 2001 From: hawbakert Date: Mon, 21 Oct 2024 19:19:49 +0000 Subject: [PATCH 06/68] SecondRun --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 50eba3e1..5e5da92d 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -549,7 +549,7 @@ IRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. - + -- HSS events, see clause 7.2.3.3 ePCHSSSubscriberRecordChange [162] EPCHSSSubscriberRecordChange, -- GitLab From 65f2d36dbf08cc6ffca863792aeedd56f6f03237 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Mon, 21 Oct 2024 19:23:42 +0000 Subject: [PATCH 07/68] ThirdRun Optionals --- 33128/r19/TS33128Payloads.asn | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 5e5da92d..7c5b192e 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5872,23 +5872,23 @@ IMSHSSServingSystemMessagen ::= SEQUENCE authorizationRequest [3] AuthorizationRequest, roamingIndicator [4] RoamingIndicator, responseCodes [5] UTF8String, - deregistrationData [6] SBIType + deregistrationData [6] SBIType OPTIONAL } IMSHSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE { hSSIdentities [1] HSSIdentities, - iMSProfileData [2] SBIType, + iMSProfileData [2] SBIType OPTIONAL, iMSRegistrationStatus [3] IMSRegistrationStatus } IMSHSSSubscriberRecordChange ::= SEQUENCE { hSSIdentities [1] HSSIdentities, - subscriptionDataSets [2] SBIType, - mSISDNs [3] SEQUENCE (SIZE(1..MAX)) OF MSISDN, - iMEI [4] IMEI, - previousIMEI [5] IMEI + subscriptionDataSets [2] SBIType OPTIONAL, + mSISDNs [3] SEQUENCE (SIZE(1..MAX)) OF MSISDN OPTIONAL, + iMEI [4] IMEI OPTIONAL, + previousIMEI [5] IMEI OPTIONAL } IMSRegistrationStatus ::= ENUMERATED @@ -5907,7 +5907,7 @@ AuthorizationRequest ::= SEQUENCE { authorizationType [1] AuthorizationType, iMPI [2] IMPI, - vistitedNetworkIdentifier [3] STRING + vistitedNetworkIdentifier [3] UTF8String } AuthorizationType ::= ENUMERATED -- GitLab From 61fe22d0cbed0a06dc001f94d9420c3b8638cf70 Mon Sep 17 00:00:00 2001 From: canterburym Date: Tue, 22 Oct 2024 07:14:58 +0000 Subject: [PATCH 08/68] Adding linting exception --- testing/asn_lint_exceptions.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/testing/asn_lint_exceptions.json b/testing/asn_lint_exceptions.json index 6960d857..6f8108f7 100644 --- a/testing/asn_lint_exceptions.json +++ b/testing/asn_lint_exceptions.json @@ -85,6 +85,7 @@ "Tag 6 missing in LALSReport", "Tag 8 missing in MMEStartOfInterceptionWithEPSAttachedUE", "Tag 11 missing in MMEStartOfInterceptionWithEPSAttachedUE", - "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent" + "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent", + "Tag 161 missing in IRIEvent" ] } -- GitLab From 319dfc648c22fc8e66fbd030674e1213de72f40c Mon Sep 17 00:00:00 2001 From: hawbakert Date: Tue, 29 Oct 2024 16:03:16 +0000 Subject: [PATCH 09/68] error corrections --- 33128/r19/TS33128Payloads.asn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 7c5b192e..4b0b096d 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5865,7 +5865,7 @@ SubscriptionDataSets ::= CHOICE -- IMS HSS definitions -- ======================= -IMSHSSServingSystemMessagen ::= SEQUENCE +IMSHSSServingSystemMessage ::= SEQUENCE { iMSI [1] IMSI, oldPLMNID [2] PLMNID, @@ -5877,14 +5877,14 @@ IMSHSSServingSystemMessagen ::= SEQUENCE IMSHSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE { - hSSIdentities [1] HSSIdentities, + hSSIdentities [1] SEQUENCE OF HSSIdentities, iMSProfileData [2] SBIType OPTIONAL, iMSRegistrationStatus [3] IMSRegistrationStatus } IMSHSSSubscriberRecordChange ::= SEQUENCE { - hSSIdentities [1] HSSIdentities, + hSSIdentities [1] SEQUENCE OF HSSIdentities, subscriptionDataSets [2] SBIType OPTIONAL, mSISDNs [3] SEQUENCE (SIZE(1..MAX)) OF MSISDN OPTIONAL, iMEI [4] IMEI OPTIONAL, -- GitLab From 6493a43929d122a91ab363e7902853c4d118c75e Mon Sep 17 00:00:00 2001 From: canterburym Date: Tue, 29 Oct 2024 16:30:02 +0000 Subject: [PATCH 10/68] Using your MR as a guinea pig --- .gitlab-ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 56c28f47..c0142886 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,7 +11,7 @@ stages: - build preflight: - image: "forge.3gpp.org:5050/sa3/li/forgelib" + image: "forge.etsi.org:5050/sa3/li/forgelib" stage: preflight rules: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' @@ -20,14 +20,14 @@ preflight: - forgelib-preflight https://$CI_SERVER_HOST $CI_PROJECT_ID $CI_MERGE_REQUEST_IID process_asn: - image: "forge.3gpp.org:5050/sa3/li/asn1test:latest" + image: "forge.etsi.org:5050/sa3/li/asn1test:latest" stage: check interruptible: true script: - python3 testing/asn_process.py process_xsd: - image: "forge.3gpp.org:5050/sa3/li/xsdtest_test:latest" + image: "forge.etsi.org:5050/sa3/li/xsdtest_test:latest" stage: check interruptible: true script: @@ -35,7 +35,7 @@ process_xsd: - python3 testing/lint_xml.py editorconfig_check: - image: "forge.3gpp.org:5050/sa3/li/ec_test:latest" + image: "forge.etsi.org:5050/sa3/li/ec_test:latest" stage: check interruptible: true script: @@ -43,7 +43,7 @@ editorconfig_check: generate_artefacts: - image: "forge.3gpp.org:5050/sa3/li/forgelib" + image: "forge.etsi.org:5050/sa3/li/forgelib" stage: build interruptible: true rules: -- GitLab From 493a3785f5345c200c7e747cd6040092f84a70a1 Mon Sep 17 00:00:00 2001 From: canterburym Date: Tue, 29 Oct 2024 16:32:35 +0000 Subject: [PATCH 11/68] Revert "Using your MR as a guinea pig" This reverts commit 6493a43929d122a91ab363e7902853c4d118c75e --- .gitlab-ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c0142886..56c28f47 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,7 +11,7 @@ stages: - build preflight: - image: "forge.etsi.org:5050/sa3/li/forgelib" + image: "forge.3gpp.org:5050/sa3/li/forgelib" stage: preflight rules: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' @@ -20,14 +20,14 @@ preflight: - forgelib-preflight https://$CI_SERVER_HOST $CI_PROJECT_ID $CI_MERGE_REQUEST_IID process_asn: - image: "forge.etsi.org:5050/sa3/li/asn1test:latest" + image: "forge.3gpp.org:5050/sa3/li/asn1test:latest" stage: check interruptible: true script: - python3 testing/asn_process.py process_xsd: - image: "forge.etsi.org:5050/sa3/li/xsdtest_test:latest" + image: "forge.3gpp.org:5050/sa3/li/xsdtest_test:latest" stage: check interruptible: true script: @@ -35,7 +35,7 @@ process_xsd: - python3 testing/lint_xml.py editorconfig_check: - image: "forge.etsi.org:5050/sa3/li/ec_test:latest" + image: "forge.3gpp.org:5050/sa3/li/ec_test:latest" stage: check interruptible: true script: @@ -43,7 +43,7 @@ editorconfig_check: generate_artefacts: - image: "forge.etsi.org:5050/sa3/li/forgelib" + image: "forge.3gpp.org:5050/sa3/li/forgelib" stage: build interruptible: true rules: -- GitLab From 2c7a405a82967b174587a7f7b19bd14f528df374 Mon Sep 17 00:00:00 2001 From: canterburym Date: Tue, 29 Oct 2024 16:59:21 +0000 Subject: [PATCH 12/68] temp/cicd --- .gitlab-ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 56c28f47..2718ff17 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,7 +11,7 @@ stages: - build preflight: - image: "forge.3gpp.org:5050/sa3/li/forgelib" + image: "mcanterb/forgelib" stage: preflight rules: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' @@ -20,14 +20,14 @@ preflight: - forgelib-preflight https://$CI_SERVER_HOST $CI_PROJECT_ID $CI_MERGE_REQUEST_IID process_asn: - image: "forge.3gpp.org:5050/sa3/li/asn1test:latest" + image: "mcanterb/asntest:latest" stage: check interruptible: true script: - python3 testing/asn_process.py process_xsd: - image: "forge.3gpp.org:5050/sa3/li/xsdtest_test:latest" + image: "mcanterb/xsdtest:latest" stage: check interruptible: true script: @@ -35,7 +35,7 @@ process_xsd: - python3 testing/lint_xml.py editorconfig_check: - image: "forge.3gpp.org:5050/sa3/li/ec_test:latest" + image: "mcanterb/ec_test:latest" stage: check interruptible: true script: @@ -43,7 +43,7 @@ editorconfig_check: generate_artefacts: - image: "forge.3gpp.org:5050/sa3/li/forgelib" + image: "mcanterb/forgelib" stage: build interruptible: true rules: -- GitLab From 2bbaf03e28aa6b86844da683480432246e6cc43b Mon Sep 17 00:00:00 2001 From: znaty Date: Tue, 8 Oct 2024 17:23:34 +0000 Subject: [PATCH 13/68] Update 33128/r19/TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 49 +++++++++++++++++++++++++++++++++-- 1 file changed, 47 insertions(+), 2 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 647a36da..37a3a9c2 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -278,7 +278,13 @@ XIRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- IP Packet Report, see clause 6.2.3.9.5 - iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport + iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, + + -- NEF events, see clause 7.7.X.1 + nEF5GVNGroupCreation [162] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [163] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [164] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [165] NEF5GVNGroupQuery } -- ============== @@ -538,9 +544,15 @@ IRIEvent ::= CHOICE -- UDM events, see clause 7.2.2.3, continued from tag 124 uDMProSeTargetIdentifierDeconcealment [159] UDMProSeTargetIdentifierDeconcealment, - uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication + uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. + + -- NEF events, see clause 7.7.X.2 + nEF5GVNGroupCreation [162] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [163] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [164] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [165] NEF5GVNGroupQuery } IRITargetIdentifier ::= SEQUENCE @@ -818,6 +830,39 @@ NEFAFSessionWithQoSNotification ::= SEQUENCE aForASSessionWithQoSResponseCode [4] AForASSessionWithQoSResponseCode } +-- See clause 7.7.X.1.2 for details of this structure +NEF5GVNGroupCreation ::= SEQUENCE +{ + aFID [1] AFID, + gPSI [2] GPSI, + fiveGLanParametersProvision [3] SBIType +} + +-- See clause 7.7.X.1.3 for details of this structure +NEF5GVNGroupUpdate ::= SEQUENCE +{ + aFID [1] AFID, + gPSI [2] GPSI, + fiveGLanParametersProvision [3] SBIType OPTIONAL, + fiveGLanParametersProvisionPatch [4] SBIType OPTIONAL +} + +-- See clause 7.7.X.1.4 for details of this structure +NEF5GVNGroupDeletion ::= SEQUENCE +{ + aFID [1] AFID, + gPSI [2] GPSI, + externalGroupID [3] OCTET STRING +} + +-- See clause 7.7.X.1.5 for details of this structure +NEF5GVNGroupQuery ::= SEQUENCE +{ + aFID [1] AFID, + gPSI [2] GPSI, + fiveGLanParametersProvision [3] SBIType +} + -- ========================== -- Common SCEF/NEF parameters -- ========================== -- GitLab From 76b5e8a37f3153fc0b8fbcb14d70e505f85d200c Mon Sep 17 00:00:00 2001 From: znaty Date: Tue, 8 Oct 2024 17:47:17 +0000 Subject: [PATCH 14/68] Update 33128/r19/TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 37a3a9c2..435ec2ca 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -549,10 +549,10 @@ IRIEvent ::= CHOICE -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. -- NEF events, see clause 7.7.X.2 - nEF5GVNGroupCreation [162] NEF5GVNGroupCreation, - nEF5GVNGroupUpdate [163] NEF5GVNGroupUpdate, - nEF5GVNGroupDeletion [164] NEF5GVNGroupDeletion, - nEF5GVNGroupQuery [165] NEF5GVNGroupQuery + nEF5GVNGroupCreation [161] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [162] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [163] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [164] NEF5GVNGroupQuery } IRITargetIdentifier ::= SEQUENCE -- GitLab From 8a76b4c9b361a3aab2743a003c23c73d34d2526e Mon Sep 17 00:00:00 2001 From: znaty Date: Tue, 8 Oct 2024 17:54:09 +0000 Subject: [PATCH 15/68] Update 33128/r19/TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 435ec2ca..37a3a9c2 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -549,10 +549,10 @@ IRIEvent ::= CHOICE -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. -- NEF events, see clause 7.7.X.2 - nEF5GVNGroupCreation [161] NEF5GVNGroupCreation, - nEF5GVNGroupUpdate [162] NEF5GVNGroupUpdate, - nEF5GVNGroupDeletion [163] NEF5GVNGroupDeletion, - nEF5GVNGroupQuery [164] NEF5GVNGroupQuery + nEF5GVNGroupCreation [162] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [163] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [164] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [165] NEF5GVNGroupQuery } IRITargetIdentifier ::= SEQUENCE -- GitLab From 61d63efc388babcfd47984833351bd4525ce0a9f Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 9 Oct 2024 08:00:49 +0100 Subject: [PATCH 16/68] Adding linting exception --- 33128/r19/TS33128Payloads.asn | 2 +- testing/asn_lint_exceptions.json | 3 ++- testing/asn_process.py | 22 ++++++++++++++-------- 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 37a3a9c2..3fbc932c 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -835,7 +835,7 @@ NEF5GVNGroupCreation ::= SEQUENCE { aFID [1] AFID, gPSI [2] GPSI, - fiveGLanParametersProvision [3] SBIType + fiveGLanParametersProvision [3] SBIType } -- See clause 7.7.X.1.3 for details of this structure diff --git a/testing/asn_lint_exceptions.json b/testing/asn_lint_exceptions.json index 6960d857..6f8108f7 100644 --- a/testing/asn_lint_exceptions.json +++ b/testing/asn_lint_exceptions.json @@ -85,6 +85,7 @@ "Tag 6 missing in LALSReport", "Tag 8 missing in MMEStartOfInterceptionWithEPSAttachedUE", "Tag 11 missing in MMEStartOfInterceptionWithEPSAttachedUE", - "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent" + "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent", + "Tag 161 missing in IRIEvent" ] } diff --git a/testing/asn_process.py b/testing/asn_process.py index 2116eb3c..95b28878 100755 --- a/testing/asn_process.py +++ b/testing/asn_process.py @@ -20,6 +20,7 @@ filesWithBigInts = [ 'testing/dependencies/asn/IPAccessPDU.asn' ] +asn1c_path = "" change_path_to_unix = False def fix_path(path): @@ -43,10 +44,10 @@ def syntaxCheckASN(fileList): try: if file.as_posix() in filesWithBigInts: newFile = reconstrainInteger(str(file)) - p = run(["asn1c", '-E', fix_path(newFile)], capture_output=True) + p = run([asn1c_path, '-E', fix_path(newFile)], capture_output=True) Path(newFile).unlink() else: - p = run(["asn1c", '-E', fix_path(str(file))], capture_output=True) + p = run([asn1c_path, '-E', fix_path(str(file))], capture_output=True) if (p.returncode != 0): errorMessage = p.stderr.decode().splitlines()[0] if errorMessage.startswith(' Value "18446744073709551615" at line'): @@ -146,10 +147,19 @@ def processResults(results, stageName): return errorCount -def main(): +if __name__ == "__main__": loglevel = os.environ.get("LOGLEVEL", "WARNING").upper() logging.basicConfig(level=loglevel) + logging.info ('Searching for ASN1C') + asn1c_path = which("asn1c") + if asn1c_path is None: + raise Exception ("No asn1c executable found. Please install asn1c") + logging.info (f"asn1c found at {asn1c_path}") + if asn1c_path.lower().endswith("bat"): + logging.info (f"asn1c is a batch file, so assume path separators need to be changed") + change_path_to_unix = True + logging.info("Searching for ASN.1 files") fileList = list(Path(".").rglob("*.asn1")) + list(Path(".").rglob("*.asn")) logging.info(f"{len(fileList)} ASN.1 files found") @@ -210,8 +220,4 @@ def main(): if processResults(lintResults, "Linting") > 0: exit(1) - exit(0) - - -if __name__ == "__main__": - main() + exit(0) \ No newline at end of file -- GitLab From 9a2f2a4ddc369f6b824a6ab1acf5a4b7a64d998f Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 30 Oct 2024 17:42:04 +0000 Subject: [PATCH 17/68] Updating ASN.1 testing to include R19 --- testing/asn_compile_targets.json | 7 +- testing/asn_process.py | 163 ++++++++++++++++--------------- 2 files changed, 92 insertions(+), 78 deletions(-) diff --git a/testing/asn_compile_targets.json b/testing/asn_compile_targets.json index 4de6e01f..f8667509 100644 --- a/testing/asn_compile_targets.json +++ b/testing/asn_compile_targets.json @@ -9,5 +9,10 @@ "./testing/dependencies/asn/IPAccessPDU.asn", "./testing/dependencies/asn/stubs/LI-PS-PDU.asn" ], - ["./33128/r18/TS33128IdentityAssociation.asn"] + ["./33128/r18/TS33128IdentityAssociation.asn"], + [ + "./33128/r19/TS33128Payloads.asn", + "./testing/dependencies/asn/IPAccessPDU.asn", + "./testing/dependencies/asn/stubs/LI-PS-PDU.asn" + ] ] diff --git a/testing/asn_process.py b/testing/asn_process.py index 2116eb3c..8c4394cd 100755 --- a/testing/asn_process.py +++ b/testing/asn_process.py @@ -1,7 +1,4 @@ -#!/usr/bin/env python3 - import logging -import os import json from pathlib import Path from subprocess import run @@ -9,17 +6,17 @@ from shutil import which from pycrate_asn1c.asnproc import * -import lint_asn1 - def reconstrainInteger (filename): Path('temp.asn').write_text(Path(filename).read_text().replace("18446744073709551615", "65536")) return 'temp.asn' filesWithBigInts = [ - 'testing/dependencies/asn/stubs/LI-PS-PDU.asn', - 'testing/dependencies/asn/IPAccessPDU.asn' + '102232-1/LI-PS-PDU.asn', + '102232-3/IPAccessPDU.asn', + '102232-4/L2AccessPDU.asn' ] +asn1c_path = "" change_path_to_unix = False def fix_path(path): @@ -28,7 +25,7 @@ def fix_path(path): else: return path -def syntaxCheckASN(fileList): +def syntaxCheckASN (fileList): """ Performs ASN syntax checking on a list of filenames (or pathlib Paths) @@ -43,10 +40,10 @@ def syntaxCheckASN(fileList): try: if file.as_posix() in filesWithBigInts: newFile = reconstrainInteger(str(file)) - p = run(["asn1c", '-E', fix_path(newFile)], capture_output=True) + p = run([asn1c_path, '-E', fix_path(newFile)], capture_output=True) Path(newFile).unlink() else: - p = run(["asn1c", '-E', fix_path(str(file))], capture_output=True) + p = run([asn1c_path, '-E', fix_path(str(file))], capture_output=True) if (p.returncode != 0): errorMessage = p.stderr.decode().splitlines()[0] if errorMessage.startswith(' Value "18446744073709551615" at line'): @@ -70,7 +67,29 @@ def syntaxCheckASN(fileList): } return results -def compileAllTargets(compileTargets): + +duplicateObjects = { + '102232-1/LI-PS-PDU.asn' : [ + 'CCPayload', + 'IRIPayload', + 'Location' + ], + 'testing/mod1.asn' : [ + 'ClashField' + ] +} +def fixDuplicateObjects(filename): + stringContent = filename.read_text() + for object in duplicateObjects[filename.as_posix()]: + stringContent = stringContent.replace(f'{object} ::=', f'Native{object} ::=') + stringContent = stringContent.replace(f'SEQUENCE OF {object}', f'SEQUENCE OF Native{object}') + #stringContent = sub(f"]\\w{object}", f"] Native{object}", stringContent) + + Path('temp.asn').write_text(stringContent) + return 'temp.asn' + + +def compileAllTargets (compileTargets): """ Attempts to compile a set of compile targets using the pycrate ASN1 tools @@ -81,10 +100,10 @@ def compileAllTargets(compileTargets): to be the "primary" file. This doesn't have any relavance to the compilation, but will be used as the identifier when reporting any compile errors. The compilation is performed by the pycrate ASN compile functions; errors - are caught as exceptions and rendered into a list. - + are caught as exceptions and rendered into a list. + Unfortunately, the pycrate compiler doesn't report line numbers. - The asn1c compiler does, but doesn't properly handle identifiers with the + The asn1c compiler does, but doesn't properly handle identifiers with the same name in different modules; as this occurs multiple times in TS 33.108, we can't use it. """ @@ -97,121 +116,111 @@ def compileAllTargets(compileTargets): fileNames = [] GLOBAL.clear() for filename in target: - with open(filename) as f: - fileTexts.append(f.read()) - fileNames.append(str(filename)) - logging.debug(f" Loading {filename}") - compile_text(fileTexts, filenames=fileNames) + pFile = Path(filename) + if pFile.as_posix() in duplicateObjects: + tmpFile = Path(fixDuplicateObjects(pFile)) + fileTexts.append(tmpFile.read_text()) + #tmpFile.unlink() + else: + fileTexts.append(pFile.read_text()) + fileNames.append(filename) + logging.debug (f" Loading {filename}") + compile_text(fileTexts, filenames = fileNames) results[str(firstTarget)] = { - "ok": True, + 'ok' : True, } except Exception as ex: results[str(firstTarget)] = { - "ok": False, - "code": -1, - "message": f"{ex!r}", + 'ok' : False, + 'code' : -1, + 'message' : f"{ex!r}" } continue return results -def processResults(results, stageName): + +def processResults (results, stageName): """ Counts the number of errors and writes out the output per filename :param results: List of filenames (str or Pathlib Path) :param stageName: Name to decorate the output with :returns: The number of files which had errors - """ + """ print("") - errorCount = sum([1 for r in results.values() if not r["ok"]]) + errorCount = sum([1 for r in results.values() if not r['ok']]) logging.info(f"{errorCount} {stageName} errors encountered") - + print(f"{'-':-<60}") print(f"{stageName} results:") print(f"{'-':-<60}") for filename, result in results.items(): print(f" {filename:.<55}{'..OK' if result['ok'] else 'FAIL'}") - if not result["ok"]: - if isinstance(result["message"], list): - for thing in result["message"]: + if not result['ok']: + if isinstance(result['message'], list): + for thing in result['message']: print(f" {thing['message']}") else: print(f" {result['message']}") - + print(f"{'-':-<60}") print(f"{stageName} errors: {errorCount}") print(f"{'-':-<60}") - + return errorCount -def main(): - loglevel = os.environ.get("LOGLEVEL", "WARNING").upper() - logging.basicConfig(level=loglevel) +if __name__ == '__main__': + logging.info ('Searching for ASN1C') + asn1c_path = which("asn1c") + if asn1c_path is None: + raise Exception ("No asn1c executable found. Please install asn1c") + logging.info (f"asn1c found at {asn1c_path}") + if asn1c_path.lower().endswith("bat"): + logging.info (f"asn1c is a batch file, so assume path separators need to be changed") + change_path_to_unix = True + - logging.info("Searching for ASN.1 files") + logging.info('Searching for ASN.1 files') fileList = list(Path(".").rglob("*.asn1")) + list(Path(".").rglob("*.asn")) - logging.info(f"{len(fileList)} ASN.1 files found") + logging.info(f'{len(fileList)} ASN.1 files found') for file in fileList: - logging.debug(f" {file}") - - ignoreList = Path("testing/asn_ignore.txt").read_text().splitlines() + logging.debug(f' {file}') + + ignoreList = Path('testing/asn_ignore.txt').read_text().splitlines() ignoredFiles = [] for ignore in ignoreList: - logging.debug(f"Ignoring pattern {ignore}") + logging.debug(f'Ignoring pattern {ignore}') for file in fileList: if ignore in str(file): ignoredFiles.append(file) logging.debug(f" Ignoring {str(file)} as contains {ignore}") ignoredFiles = list(set(ignoredFiles)) - logging.info(f"{len(ignoredFiles)} files ignored") + logging.info(f'{len(ignoredFiles)} files ignored') for file in ignoredFiles: - logging.debug(f" {file}") - + logging.debug(f' {file}') + fileList = [file for file in fileList if file not in ignoredFiles] - logging.info(f"{len(fileList)} files to process") + logging.info(f'{len(fileList)} files to process') for file in fileList: - logging.debug(f" {file}") + logging.debug(f' {file}') if len(fileList) == 0: - logging.warning("No files specified") + logging.warning ("No files specified") exit(0) - + logging.info("Parsing ASN1 files") parseResults = syntaxCheckASN(fileList) if processResults(parseResults, "Parsing") > 0: - exit(1) + exit(-1) - logging.info("Getting compile targets") - compileTargets = json.loads(Path("testing/asn_compile_targets.json").read_text()) - logging.info(f"{len(compileTargets)} compile targets found") + logging.info ("Getting compile targets") + compileTargets = json.loads(Path('testing/asn_compile_targets.json').read_text()) + logging.info (f"{len(compileTargets)} compile targets found") compileResults = compileAllTargets(compileTargets) if processResults(compileResults, "Compiling") > 0: - exit(1) - - logging.info("Linting files") - ignoreLintingList = Path("testing/asn_ignore_lint.txt").read_text().splitlines() - ignoredFiles = [] - for ignore in ignoreLintingList: - logging.debug(f"Ignoring pattern {ignore} for linting") - for file in fileList: - if ignore in str(file): - ignoredFiles.append(file) - logging.debug(f" Ignoring {str(file)} for linting as contains {ignore}") - ignoredFiles = list(set(ignoredFiles)) - logging.info(f"{len(ignoredFiles)} files ignored for linting") - for file in ignoredFiles: - logging.debug(f" {file}") - fileList = [file for file in fileList if file not in ignoredFiles] - lintExceptions = json.loads(Path("testing/asn_lint_exceptions.json").read_text()) - lintResults = lint_asn1.lintASN1Files(fileList, lintExceptions) - if processResults(lintResults, "Linting") > 0: - exit(1) - + exit(-1) + exit(0) - - -if __name__ == "__main__": - main() -- GitLab From 6e6b944d9a27a556c56d048e389a0a9f90f60184 Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 30 Oct 2024 17:44:57 +0000 Subject: [PATCH 18/68] Fixing updated ASN.1 testing --- testing/asn_process.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/testing/asn_process.py b/testing/asn_process.py index 8c4394cd..2ed85aec 100755 --- a/testing/asn_process.py +++ b/testing/asn_process.py @@ -11,9 +11,8 @@ def reconstrainInteger (filename): return 'temp.asn' filesWithBigInts = [ - '102232-1/LI-PS-PDU.asn', - '102232-3/IPAccessPDU.asn', - '102232-4/L2AccessPDU.asn' + 'testing/dependencies/asn/stubs/LI-PS-PDU.asn', + 'testing/dependencies/asn/IPAccessPDU.asn' ] asn1c_path = "" -- GitLab From a34bdc1621cf35b37a26b1b4eb183a8adeb08bcc Mon Sep 17 00:00:00 2001 From: canterburym Date: Wed, 30 Oct 2024 18:02:40 +0000 Subject: [PATCH 19/68] Temp/test cicd registry --- .gitlab-ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2718ff17..60e3e16b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,7 +11,7 @@ stages: - build preflight: - image: "mcanterb/forgelib" + image: "forge.3gpp.org:5050/sa3/li/forgelib" stage: preflight rules: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' @@ -20,14 +20,14 @@ preflight: - forgelib-preflight https://$CI_SERVER_HOST $CI_PROJECT_ID $CI_MERGE_REQUEST_IID process_asn: - image: "mcanterb/asntest:latest" + image: "forge.3gpp.org:5050/sa3/li/asn1test:latest" stage: check interruptible: true script: - python3 testing/asn_process.py process_xsd: - image: "mcanterb/xsdtest:latest" + image: "forge.3gpp.org:5050/sa3/li/xsdtest_test:latest" stage: check interruptible: true script: @@ -35,7 +35,7 @@ process_xsd: - python3 testing/lint_xml.py editorconfig_check: - image: "mcanterb/ec_test:latest" + image: "forge.3gpp.org:5050/sa3/li/ec_test:latest" stage: check interruptible: true script: -- GitLab From 3648bb967a5a83c8fbf2061fe09668084e3754c7 Mon Sep 17 00:00:00 2001 From: znaty Date: Mon, 14 Oct 2024 09:59:18 +0000 Subject: [PATCH 20/68] Update 33128/r19/TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 73 +++++++++++++++++++++++++++++++++-- 1 file changed, 70 insertions(+), 3 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 647a36da..fe6a48e1 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -278,7 +278,10 @@ XIRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- IP Packet Report, see clause 6.2.3.9.5 - iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport + iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, + + -- AMF events, see clause 6.2.2.2.14, continued from tag 147 + aMFUEContextUpdate [162] AMFUEContextUpdate } -- ============== @@ -538,9 +541,12 @@ IRIEvent ::= CHOICE -- UDM events, see clause 7.2.2.3, continued from tag 124 uDMProSeTargetIdentifierDeconcealment [159] UDMProSeTargetIdentifierDeconcealment, - uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication + uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. + + -- AMF events, see clause 6.2.2.3, continued from tag 147 + aMFUEContextUpdate [162] AMFUEContextUpdate } IRITargetIdentifier ::= SEQUENCE @@ -1572,7 +1578,7 @@ AMFUEPolicyTransfer ::= SEQUENCE uEPolicy [6] UEPolicy } --- See clause 6.2.2.2.12 for details of this structure +-- See clause 6.2.2.2.13 for details of this structure AMFUEServiceAccept ::= SEQUENCE { userIdentifiers [1] UserIdentifiers, @@ -1588,6 +1594,14 @@ AMFUEServiceAccept ::= SEQUENCE uERequestType [10] MUSIMUERequestType OPTIONAL } +-- See clause 6.2.2.2.14 for details of this structure +AMFUEContextUpdate ::= SEQUENCE +{ + userIdentifiers [1] UserIdentifiers, + rANUEContextModification [2] RANUEContextModification OPTIONAL, + rANDownlinkNASTransport [3] RANDownlinkNASTransport OPTIONAL +} + -- ================= -- 5G AMF parameters -- ================= @@ -1917,6 +1931,59 @@ FiveGSUpdateType ::= OCTET STRING (SIZE(1)) UnavailabilityPeriodDuration ::= OCTET STRING (SIZE(1)) +RANUEContextModification ::= SEQUENCE +{ + aMFUENGAPID [1] AMFUENGAPID + rANUENGAPID [2] RANUENGAPID, + rATFrequencySelectionPriority [3] RATFrequencySelectionPriority OPTIONAL, + newAMFUENGAPID [4] AMFUENGAPID OPTIONAL, + newGUAMI [5] GUAMI OPTIONAL, + iABAuthorizedIndicator [6] IABAuthorizedIndicator OPTIONAL, + nRV2XServicesAuthorization [7] NRV2XServicesAuthorization OPTIONAL, + lTEV2XServiceAuthorization [8] LTEV2XServiceAuthorization OPTIONAL, + rGLevelWirelineAccessCharacteristics [9] OCTET STRING OPTIONAL, + uERadioCapabilityID [10] OCTET STRING OPTIONAL, + fiveGProSeAuthorizationIndication [11] FiveGProSeAuthorizationIndication OPTIONAL, + mobileIABAuthorizedIndicator [12] MobileIABAuthorizedIndicator OPTIONAL +} + +RANDownlinkNASTransport ::= SEQUENCE +{ + aMFUENGAPID [1] AMFUENGAPID, + rANUENGAPID [2] RANUENGAPID, + oldAMF [3] GUAMI OPTIONAL, + allowedNSSAI [4] AllowedNSSAI OPTIONAL, + mobilityRestrictionList [5] MobilityRestrictionList OPTIONAL, + rATFrequencySelectionPriority [6] RATFrequencySelectionPriority OPTIONAL, + uEDifferentiationInfo [7] UEDifferentiationInfo OPTIONAL, + uERadioCapability [8] UERadioCapability OPTIONAL, + uERadioCapabilityID [9] OCTET STRING OPTIONAL, + targetNSSAIInfo [10] TargetNSSAIInfo OPTIONAL, + mobileIABAuthorizedIndicator [11] MobileIABAuthorizedIndicator OPTIONAL +} + +UECommunicationInfo ::= SEQUENCE +{ + periodicCommunicationIndicator [1] PeriodicCommunicationIndicator OPTIONAL, + periodicTime [2] INTEGER OPTIONAL, + scheduledCommunicationTime [3] SBIType OPTIONAL, + stationaryIndication [4] SBIType OPTIONAL, + trafficProfile [5] SBIType OPTIONAL, + batteryIndication [6] SBIType OPTIONAL +} + +PeriodicCommunicationIndicator ::= ENUMERATED +{ + periodically(1), + ondemand(2) +} + +MobileIABAuthorizedIndicator ::= ENUMERATED +{ + authorized(1), + notAuthorized(2) +} + -- ================== -- 5G SMF definitions -- ================== -- GitLab From 4801704ee3081636b5e289e76a5ce74c1fe5ce98 Mon Sep 17 00:00:00 2001 From: znaty Date: Mon, 14 Oct 2024 10:06:06 +0000 Subject: [PATCH 21/68] Update 33128/r19/TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index fe6a48e1..7f617b0e 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -1933,7 +1933,7 @@ UnavailabilityPeriodDuration ::= OCTET STRING (SIZE(1)) RANUEContextModification ::= SEQUENCE { - aMFUENGAPID [1] AMFUENGAPID + aMFUENGAPID [1] AMFUENGAPID, rANUENGAPID [2] RANUENGAPID, rATFrequencySelectionPriority [3] RATFrequencySelectionPriority OPTIONAL, newAMFUENGAPID [4] AMFUENGAPID OPTIONAL, -- GitLab From 27aef9ae4d3dd98e3fccd245484f42e1c2b55ed7 Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 16 Oct 2024 14:33:57 +0100 Subject: [PATCH 22/68] Fixing linter --- testing/asn_lint_exceptions.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/testing/asn_lint_exceptions.json b/testing/asn_lint_exceptions.json index 6960d857..6f8108f7 100644 --- a/testing/asn_lint_exceptions.json +++ b/testing/asn_lint_exceptions.json @@ -85,6 +85,7 @@ "Tag 6 missing in LALSReport", "Tag 8 missing in MMEStartOfInterceptionWithEPSAttachedUE", "Tag 11 missing in MMEStartOfInterceptionWithEPSAttachedUE", - "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent" + "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent", + "Tag 161 missing in IRIEvent" ] } -- GitLab From 8cec29e714d1cd2d63646968502619514612e6e9 Mon Sep 17 00:00:00 2001 From: Thomas Dodds Date: Thu, 17 Oct 2024 20:52:04 +0000 Subject: [PATCH 23/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 55 ++++++++++++++++++++++++++++++++--- 1 file changed, 51 insertions(+), 4 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 647a36da..c3d69801 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -67,7 +67,7 @@ XIRIEvent ::= CHOICE -- Tag 16 is reserved because there is no equivalent mDFCellSiteReport in XIRIEvent. - -- MMS events, see clause 7.4.3 + -- MMS events, see clause 7.4.3 see also MMSConverted events ([162-163] below) mMSSend [17] MMSSend, mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget, mMSNotification [19] MMSNotification, @@ -278,7 +278,11 @@ XIRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- IP Packet Report, see clause 6.2.3.9.5 - iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport + iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, + + -- MMS-related events continuted from choice 35 + mMSConvertedFromEmail [162] MMSConvertedFromEmail, + mMSConvertedToEmail [163] MMSConvertedToEmail } -- ============== @@ -331,7 +335,7 @@ IRIEvent ::= CHOICE -- MDF events, see clause 7.3.2.2 mDFCellSiteReport [16] MDFCellSiteReport, - -- MMS events, see clause 7.4.4.1 + -- MMS events, see clause 7.4.4.1 see also MMSConverted events ([162-163] below) mMSSend [17] MMSSend, mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget, mMSNotification [19] MMSNotification, @@ -538,9 +542,13 @@ IRIEvent ::= CHOICE -- UDM events, see clause 7.2.2.3, continued from tag 124 uDMProSeTargetIdentifierDeconcealment [159] UDMProSeTargetIdentifierDeconcealment, - uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication + uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. + + -- MMS-related events continuted from choice 35 + mMSConvertedFromEmail [162] MMSConvertedFromEmail, + mMSConvertedToEmail [163] MMSConvertedToEmail } IRITargetIdentifier ::= SEQUENCE @@ -3574,6 +3582,45 @@ MMBoxDescription ::= SEQUENCE contentType [19] UTF8String OPTIONAL } +MMSConvertedFromEmail ::= SEQUENCE +{ + version [1] MMSVersion, + transactionID [2] UTF8String, + terminatingMMSParty [3] SEQUENCE OF MMSParty, + contentType [4] MMSContentType, + originatingMMSParty [5] MMSParty, + messageClass [6] MMSMessageClass OPTIONAL, + dateTime [7] Timestamp, + expiry [8] MMSExpiry OPTIONAL, + deliveryReport [9] BOOLEAN OPTIONAL, + priority [10] MMSPriority OPTIONAL, + readReport [11] BOOLEAN OPTIONAL, + subject [12] MMSSubject OPTIONAL, + messageID [13] UTF8String OPTIONAL +} + +MMSConvertedToEmail ::= SEQUENCE +{ + version [1] MMSVersion, + transactionID [2] UTF8String, + terminatingMMSParty [3] SEQUENCE OF MMSParty, + contentType [4] MMSContentType, + originatingMMSParty [5] MMSParty, + messageClass [6] MMSMessageClass OPTIONAL, + dateTime [7] Timestamp, + expiry [8] MMSExpiry OPTIONAL, + desiredDeliveryTime [9] Timestamp OPTIONAL, + deliveryReport [10] BOOLEAN OPTIONAL, + priority [11] MMSPriority OPTIONAL, + senderVisibility [12] BOOLEAN OPTIONAL, + store [13] BOOLEAN OPTIONAL, + state [14] MMState OPTIONAL, + flags [15] MMFlags OPTIONAL, + readReport [16] BOOLEAN OPTIONAL, + subject [17] MMSSubject OPTIONAL, + messageID [18] UTF8String OPTIONAL +} + -- ========= -- MMS CCPDU -- ========= -- GitLab From cacdd7732c7ac36b5cb372a9d37dfe60971fbc90 Mon Sep 17 00:00:00 2001 From: Thomas Dodds Date: Fri, 18 Oct 2024 14:00:30 +0000 Subject: [PATCH 24/68] Update file asn_lint_exceptions.json --- testing/asn_lint_exceptions.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/testing/asn_lint_exceptions.json b/testing/asn_lint_exceptions.json index 6960d857..6f8108f7 100644 --- a/testing/asn_lint_exceptions.json +++ b/testing/asn_lint_exceptions.json @@ -85,6 +85,7 @@ "Tag 6 missing in LALSReport", "Tag 8 missing in MMEStartOfInterceptionWithEPSAttachedUE", "Tag 11 missing in MMEStartOfInterceptionWithEPSAttachedUE", - "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent" + "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent", + "Tag 161 missing in IRIEvent" ] } -- GitLab From a28d50a630e77fcded3bb339d5f8aa0dc505bfc1 Mon Sep 17 00:00:00 2001 From: Thomas Dodds Date: Thu, 17 Oct 2024 19:47:37 +0000 Subject: [PATCH 25/68] Initial Changes --- 33128/r18/TS33128Payloads.asn | 55 ++++++++++++++++++++++++++++++++--- 1 file changed, 51 insertions(+), 4 deletions(-) diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index a0658e7d..0e9d9546 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -67,7 +67,7 @@ XIRIEvent ::= CHOICE -- Tag 16 is reserved because there is no equivalent mDFCellSiteReport in XIRIEvent. - -- MMS events, see clause 7.4.3 + -- MMS events, see clause 7.4.3 see also MMSConverted events ([162-163] below) mMSSend [17] MMSSend, mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget, mMSNotification [19] MMSNotification, @@ -278,7 +278,11 @@ XIRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- IP Packet Report, see clause 6.2.3.9.5 - iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport + iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, + + -- MMS-related events continuted from choice 35 + mMSConvertedFromEmail [162] MMSConvertedFromEmail, + mMSConvertedToEmail [163] MMSConvertedToEmail } -- ============== @@ -331,7 +335,7 @@ IRIEvent ::= CHOICE -- MDF events, see clause 7.3.2.2 mDFCellSiteReport [16] MDFCellSiteReport, - -- MMS events, see clause 7.4.4.1 + -- MMS events, see clause 7.4.4.1 see also MMSConverted events ([162-163] below) mMSSend [17] MMSSend, mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget, mMSNotification [19] MMSNotification, @@ -538,9 +542,13 @@ IRIEvent ::= CHOICE -- UDM events, see clause 7.2.2.3, continued from tag 124 uDMProSeTargetIdentifierDeconcealment [159] UDMProSeTargetIdentifierDeconcealment, - uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication + uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. + + -- MMS-related events continuted from choice 35 + mMSConvertedFromEmail [162] MMSConvertedFromEmail, + mMSConvertedToEmail [163] MMSConvertedToEmail } IRITargetIdentifier ::= SEQUENCE @@ -3574,6 +3582,45 @@ MMBoxDescription ::= SEQUENCE contentType [19] UTF8String OPTIONAL } +MMSConvertedFromEmail ::= SEQUENCE +{ + version [1] MMSVersion, + transactionID [2] UTF8String, + terminatingMMSParty [3] SEQUENCE OF MMSParty, + contentType [4] MMSContentType, + originatingMMSParty [5] MMSParty, + messageClass [6] MMSMessageClass OPTIONAL, + dateTime [7] Timestamp, + expiry [8] MMSExpiry OPTIONAL, + deliveryReport [9] BOOLEAN OPTIONAL, + priority [10] MMSPriority OPTIONAL, + readReport [11] BOOLEAN OPTIONAL, + subject [12] MMSSubject OPTIONAL, + messageID [13] UTF8String OPTIONAL +} + +MMSConvertedToEmail ::= SEQUENCE +{ + version [1] MMSVersion, + transactionID [2] UTF8String, + terminatingMMSParty [3] SEQUENCE OF MMSParty, + contentType [4] MMSContentType, + originatingMMSParty [5] MMSParty, + messageClass [6] MMSMessageClass OPTIONAL, + dateTime [7] Timestamp, + expiry [8] MMSExpiry OPTIONAL, + desiredDeliveryTime [9] Timestamp OPTIONAL, + deliveryReport [10] BOOLEAN OPTIONAL, + priority [11] MMSPriority OPTIONAL, + senderVisibility [12] BOOLEAN OPTIONAL, + store [13] BOOLEAN OPTIONAL, + state [14] MMState OPTIONAL, + flags [15] MMFlags OPTIONAL, + readReport [16] BOOLEAN OPTIONAL, + subject [17] MMSSubject OPTIONAL, + messageID [18] UTF8String OPTIONAL +} + -- ========= -- MMS CCPDU -- ========= -- GitLab From 1874b43cd66b90df5c1ba51ac50a4b53cb3d8888 Mon Sep 17 00:00:00 2001 From: Thomas Dodds Date: Thu, 17 Oct 2024 20:03:04 +0000 Subject: [PATCH 26/68] Update file TS33128Payloads.asn --- 33128/r18/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index 0e9d9546..f3af85d7 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -545,7 +545,7 @@ IRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. - + -- MMS-related events continuted from choice 35 mMSConvertedFromEmail [162] MMSConvertedFromEmail, mMSConvertedToEmail [163] MMSConvertedToEmail -- GitLab From 6d3b9997ae6aa49f972518db491baae4b9b0f938 Mon Sep 17 00:00:00 2001 From: Thomas Dodds Date: Fri, 18 Oct 2024 13:55:19 +0000 Subject: [PATCH 27/68] Update file asn_lint_exceptions.json --- testing/asn_lint_exceptions.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/testing/asn_lint_exceptions.json b/testing/asn_lint_exceptions.json index 6960d857..7bafe4ba 100644 --- a/testing/asn_lint_exceptions.json +++ b/testing/asn_lint_exceptions.json @@ -64,7 +64,8 @@ "Tag 6 missing in LALSReport", "Tag 8 missing in MMEStartOfInterceptionWithEPSAttachedUE", "Tag 11 missing in MMEStartOfInterceptionWithEPSAttachedUE", - "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent" + "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent", + "Tag 161 missing in IRIEvent" ], "33128/r19/TS33128Payloads.asn" : [ "Tag 100 XIRIEvent field 'n9HRPDUSessionInfo' is not present in IRIEvent", -- GitLab From 90635a58ccba266b586e0cc2601e973f4ca2f099 Mon Sep 17 00:00:00 2001 From: grahamj Date: Wed, 30 Oct 2024 18:33:17 +0000 Subject: [PATCH 28/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 7f617b0e..48569563 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -1191,12 +1191,6 @@ SCSASID ::= UTF8String SCEFID ::= UTF8String -PeriodicCommunicationIndicator ::= ENUMERATED -{ - periodic(1), - nonPeriodic(2) -} - EPSBearerID ::= INTEGER (0..255) APN ::= UTF8String @@ -1972,12 +1966,6 @@ UECommunicationInfo ::= SEQUENCE batteryIndication [6] SBIType OPTIONAL } -PeriodicCommunicationIndicator ::= ENUMERATED -{ - periodically(1), - ondemand(2) -} - MobileIABAuthorizedIndicator ::= ENUMERATED { authorized(1), @@ -6310,6 +6298,12 @@ NSSAI ::= SEQUENCE OF SNSSAI PagingRestrictionIndicator ::= OCTET STRING (SIZE(1..33)) +PeriodicCommunicationIndicator ::= ENUMERATED +{ + periodic(1), + nonPeriodic(2) +} + PLMNID ::= SEQUENCE { mCC [1] MCC, -- GitLab From 9109dc974b14e095f31f34b3ce39d7bf05be1a2e Mon Sep 17 00:00:00 2001 From: grahamj Date: Wed, 30 Oct 2024 18:45:56 +0000 Subject: [PATCH 29/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 48569563..8e27bae3 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -1956,7 +1956,7 @@ RANDownlinkNASTransport ::= SEQUENCE mobileIABAuthorizedIndicator [11] MobileIABAuthorizedIndicator OPTIONAL } -UECommunicationInfo ::= SEQUENCE +UEDifferentiationInfo ::= SEQUENCE { periodicCommunicationIndicator [1] PeriodicCommunicationIndicator OPTIONAL, periodicTime [2] INTEGER OPTIONAL, -- GitLab From e01965a571474373c3bcc31372e1fdf42d9834a9 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Wed, 30 Oct 2024 22:04:21 +0000 Subject: [PATCH 30/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 4b0b096d..80ce85de 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5916,6 +5916,31 @@ AuthorizationType ::= ENUMERATED deregistration(2) } +SubscriberRecordChangePayload ::= CHOICE +{ + iMEIUpdateInfo [1] IMEIUpdateInfo, + iMEIUpdateResponse [2] IMEIUpdateResponse, + roamingStatusUpdateInfo [3] RoamingStatusUpdateInfo +} + +IMEIUpdateInfo ::= SEQUENCE +{ + iMSI [1] IMSI OPTIONAL, + iMEI [2] IMEI OPTIONAL, + iMEISV [3] IMEISV OPTIONAL +} + +IMEIUpdateResponse ::= SEQUENCE +{ + previousIMEI [1] IMEI OPTIONAL, + previousIMEISV [2] IMEISV OPTIONAL +} + +RoamingStatusUpdateInfo +{ + iMSI [1] IMSI OPTIONAL, + pLMNID [2] PLMNID OPTIONAL +} -- ================= -- Common Parameters -- ================= -- GitLab From 17d1e0bb2ef4026aa4836f413beeae1a5721ae2f Mon Sep 17 00:00:00 2001 From: hawbakert Date: Wed, 30 Oct 2024 22:08:27 +0000 Subject: [PATCH 31/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 80ce85de..7dfeb75b 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5938,7 +5938,7 @@ IMEIUpdateResponse ::= SEQUENCE RoamingStatusUpdateInfo { - iMSI [1] IMSI OPTIONAL, + iMSI [1] IMSI, pLMNID [2] PLMNID OPTIONAL } -- ================= -- GitLab From 0c4698cd323b74f89a207a68715cee1442919a19 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Wed, 30 Oct 2024 22:11:29 +0000 Subject: [PATCH 32/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 7dfeb75b..aa827fbd 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5936,9 +5936,9 @@ IMEIUpdateResponse ::= SEQUENCE previousIMEISV [2] IMEISV OPTIONAL } -RoamingStatusUpdateInfo +RoamingStatusUpdateInfo ::= SEQUENCE { - iMSI [1] IMSI, + iMSI [2] IMSI OPTIONAL, pLMNID [2] PLMNID OPTIONAL } -- ================= -- GitLab From e4af1d25f8496099568d9b23811eee4fe5e3cf6e Mon Sep 17 00:00:00 2001 From: hawbakert Date: Wed, 30 Oct 2024 22:13:27 +0000 Subject: [PATCH 33/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index aa827fbd..45d289ee 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5847,7 +5847,7 @@ EPCHSSSubscriberRecordChange ::= SEQUENCE { userIdentifiers [1] UserIdentifiers, subscriberRecordChangeType [2] SubscriberRecordChangeType, - subscriberRecordChangePayload [3] SBIType + subscriberRecordChangePayload [3] SubscriberRecordChangePayload } HSSIdentities ::= SEQUENCE -- GitLab From c7ca98bd5fb310e0776b0e7599342a7150fe69ad Mon Sep 17 00:00:00 2001 From: hawbakert Date: Wed, 30 Oct 2024 22:18:22 +0000 Subject: [PATCH 34/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 45d289ee..45b602f0 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5916,6 +5916,13 @@ AuthorizationType ::= ENUMERATED deregistration(2) } +SubscriberRecordChangeType ::- ENUMERATED +{ + iMEIUpdateInfo(1), + iMEIUpdateResponse(2), + roamingStatusUpdateInfo(3) +} + SubscriberRecordChangePayload ::= CHOICE { iMEIUpdateInfo [1] IMEIUpdateInfo, -- GitLab From 6033f96ca29b13de73ee45d0aee359d56a83a8d4 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Wed, 30 Oct 2024 22:20:30 +0000 Subject: [PATCH 35/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 45b602f0..937e17e0 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5916,7 +5916,7 @@ AuthorizationType ::= ENUMERATED deregistration(2) } -SubscriberRecordChangeType ::- ENUMERATED +SubscriberRecordChangeType ::= ENUMERATED { iMEIUpdateInfo(1), iMEIUpdateResponse(2), -- GitLab From 5a421e4270baa38a37996a1a4f66320aa1be88b7 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Wed, 30 Oct 2024 22:22:12 +0000 Subject: [PATCH 36/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 937e17e0..65101653 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5945,7 +5945,7 @@ IMEIUpdateResponse ::= SEQUENCE RoamingStatusUpdateInfo ::= SEQUENCE { - iMSI [2] IMSI OPTIONAL, + iMSI [1] IMSI OPTIONAL, pLMNID [2] PLMNID OPTIONAL } -- ================= -- GitLab From 0b301f225a568b062647e8673189833f36b76b80 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 16:06:23 +0000 Subject: [PATCH 37/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 65101653..98360451 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5907,7 +5907,7 @@ AuthorizationRequest ::= SEQUENCE { authorizationType [1] AuthorizationType, iMPI [2] IMPI, - vistitedNetworkIdentifier [3] UTF8String + visitedNetworkIdentifier [3] UTF8String } AuthorizationType ::= ENUMERATED @@ -5916,13 +5916,6 @@ AuthorizationType ::= ENUMERATED deregistration(2) } -SubscriberRecordChangeType ::= ENUMERATED -{ - iMEIUpdateInfo(1), - iMEIUpdateResponse(2), - roamingStatusUpdateInfo(3) -} - SubscriberRecordChangePayload ::= CHOICE { iMEIUpdateInfo [1] IMEIUpdateInfo, -- GitLab From 8faa4cb0b9c12a65a2e0987e03490faa248e5d27 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 16:10:49 +0000 Subject: [PATCH 38/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 98360451..06270469 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5885,7 +5885,7 @@ IMSHSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE IMSHSSSubscriberRecordChange ::= SEQUENCE { hSSIdentities [1] SEQUENCE OF HSSIdentities, - subscriptionDataSets [2] SBIType OPTIONAL, + iMSProfileData [2] SBIType OPTIONAL, mSISDNs [3] SEQUENCE (SIZE(1..MAX)) OF MSISDN OPTIONAL, iMEI [4] IMEI OPTIONAL, previousIMEI [5] IMEI OPTIONAL -- GitLab From d43d9d727340019f6a09e999046ab3a5402ed26c Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 16:16:16 +0000 Subject: [PATCH 39/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 06270469..2c0fe872 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5845,9 +5845,8 @@ HSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE EPCHSSSubscriberRecordChange ::= SEQUENCE { - userIdentifiers [1] UserIdentifiers, - subscriberRecordChangeType [2] SubscriberRecordChangeType, - subscriberRecordChangePayload [3] SubscriberRecordChangePayload + userIdentifiers [1] SEQUENCE (SIZE(1..MAX)) OF UserIdentifiers, + subscriberRecordChangePayload [2] SubscriberRecordChangePayload OPTIONAL } HSSIdentities ::= SEQUENCE -- GitLab From fa9a1c24babbd3b7bbbd93651ca0324b3bf94a18 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 17:28:19 +0000 Subject: [PATCH 40/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 2c0fe872..10704c2b 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5845,7 +5845,7 @@ HSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE EPCHSSSubscriberRecordChange ::= SEQUENCE { - userIdentifiers [1] SEQUENCE (SIZE(1..MAX)) OF UserIdentifiers, + hssIdentities [1] SEQUENCE HSSIdentities, subscriberRecordChangePayload [2] SubscriberRecordChangePayload OPTIONAL } -- GitLab From 98032ba251efd003d3ac6d70c18ec5a01be4ce63 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 17:30:33 +0000 Subject: [PATCH 41/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 10704c2b..f181b228 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5845,7 +5845,7 @@ HSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE EPCHSSSubscriberRecordChange ::= SEQUENCE { - hssIdentities [1] SEQUENCE HSSIdentities, + hSSIdentities [1] SEQUENCE HSSIdentities, subscriberRecordChangePayload [2] SubscriberRecordChangePayload OPTIONAL } -- GitLab From 36b08221146b53ed1a2be77881e8c4a10202f31c Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 17:33:20 +0000 Subject: [PATCH 42/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index f181b228..b76fa0de 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5845,7 +5845,7 @@ HSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE EPCHSSSubscriberRecordChange ::= SEQUENCE { - hSSIdentities [1] SEQUENCE HSSIdentities, + hSSIdentities [1] SEQUENCE OF HSSIdentities, subscriberRecordChangePayload [2] SubscriberRecordChangePayload OPTIONAL } -- GitLab From 767be1af7e8360d61ea7737bbc437b782ed7b2e4 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 18:08:37 +0000 Subject: [PATCH 43/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index b76fa0de..cb29d4c1 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -281,7 +281,7 @@ XIRIEvent ::= CHOICE iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, -- HSS events, see clause 7.2.3.3 - ePCHSSSubscriberRecordChange [162] EPCHSSSubscriberRecordChange, + hSSSubscriberRecordChange [162] HSSSubscriberRecordChange, -- IMS HSS events, see clause 7.2.4.3 iMSHSSServingSystemMessage [163] IMSHSSServingSystemMessage, @@ -551,7 +551,7 @@ IRIEvent ::= CHOICE -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. -- HSS events, see clause 7.2.3.3 - ePCHSSSubscriberRecordChange [162] EPCHSSSubscriberRecordChange, + HSSSubscriberRecordChange [162] EPCHSSSubscriberRecordChange, -- IMS HSS events, see clause 7.2.4.3 iMSHSSServingSystemMessage [163] IMSHSSServingSystemMessage, @@ -5843,7 +5843,7 @@ HSSStartOfInterceptionWithRegisteredTarget ::= SEQUENCE pSUserState [3] SBIType } -EPCHSSSubscriberRecordChange ::= SEQUENCE +HSSSubscriberRecordChange ::= SEQUENCE { hSSIdentities [1] SEQUENCE OF HSSIdentities, subscriberRecordChangePayload [2] SubscriberRecordChangePayload OPTIONAL -- GitLab From 5230c43a7f3cea37caa48fc3585e932105f91a8e Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 18:10:09 +0000 Subject: [PATCH 44/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index cb29d4c1..d08f91b4 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -551,7 +551,7 @@ IRIEvent ::= CHOICE -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. -- HSS events, see clause 7.2.3.3 - HSSSubscriberRecordChange [162] EPCHSSSubscriberRecordChange, + hSSSubscriberRecordChange [162] EPCHSSSubscriberRecordChange, -- IMS HSS events, see clause 7.2.4.3 iMSHSSServingSystemMessage [163] IMSHSSServingSystemMessage, -- GitLab From 651bcaee80af7a4a36d78c6fe20c361c9cac8684 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 18:18:25 +0000 Subject: [PATCH 45/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index d08f91b4..0cbf2ac6 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -551,7 +551,7 @@ IRIEvent ::= CHOICE -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. -- HSS events, see clause 7.2.3.3 - hSSSubscriberRecordChange [162] EPCHSSSubscriberRecordChange, + hSSSubscriberRecordChange [162] HSSSubscriberRecordChange, -- IMS HSS events, see clause 7.2.4.3 iMSHSSServingSystemMessage [163] IMSHSSServingSystemMessage, -- GitLab From 282c9c4fb76a3da12ec043af9a1efd16b66a6b85 Mon Sep 17 00:00:00 2001 From: hawbakert Date: Thu, 31 Oct 2024 18:25:45 +0000 Subject: [PATCH 46/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 1 - 1 file changed, 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 0cbf2ac6..8ada4553 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -5870,7 +5870,6 @@ IMSHSSServingSystemMessage ::= SEQUENCE oldPLMNID [2] PLMNID, authorizationRequest [3] AuthorizationRequest, roamingIndicator [4] RoamingIndicator, - responseCodes [5] UTF8String, deregistrationData [6] SBIType OPTIONAL } -- GitLab From 91d41b1cbba8e022cff8834c46335d30884bcd8b Mon Sep 17 00:00:00 2001 From: Thomas Dodds Date: Thu, 31 Oct 2024 21:02:12 +0000 Subject: [PATCH 47/68] Update file TS33128Payloads.asn --- 33128/r18/TS33128Payloads.asn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index f3af85d7..b78ad330 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -280,7 +280,7 @@ XIRIEvent ::= CHOICE -- IP Packet Report, see clause 6.2.3.9.5 iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, - -- MMS-related events continuted from choice 35 + -- MMS-related events continued from choice 35 mMSConvertedFromEmail [162] MMSConvertedFromEmail, mMSConvertedToEmail [163] MMSConvertedToEmail } @@ -546,7 +546,7 @@ IRIEvent ::= CHOICE -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. - -- MMS-related events continuted from choice 35 + -- MMS-related events continued from choice 35 mMSConvertedFromEmail [162] MMSConvertedFromEmail, mMSConvertedToEmail [163] MMSConvertedToEmail } -- GitLab From 66f38da17dd1827dffdd609bd0719f8f19d15580 Mon Sep 17 00:00:00 2001 From: Thomas Dodds Date: Thu, 31 Oct 2024 22:40:44 +0000 Subject: [PATCH 48/68] Update file TS33128Payloads.asn --- 33128/r19/TS33128Payloads.asn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index c3d69801..d2f62ef2 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -280,7 +280,7 @@ XIRIEvent ::= CHOICE -- IP Packet Report, see clause 6.2.3.9.5 iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, - -- MMS-related events continuted from choice 35 + -- MMS-related events continued from choice 35 mMSConvertedFromEmail [162] MMSConvertedFromEmail, mMSConvertedToEmail [163] MMSConvertedToEmail } @@ -546,7 +546,7 @@ IRIEvent ::= CHOICE -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. - -- MMS-related events continuted from choice 35 + -- MMS-related events continued from choice 35 mMSConvertedFromEmail [162] MMSConvertedFromEmail, mMSConvertedToEmail [163] MMSConvertedToEmail } -- GitLab From 181253db1a6e38ef16eff447fe9057084d74a2ee Mon Sep 17 00:00:00 2001 From: Thomas Dodds Date: Mon, 4 Nov 2024 11:58:43 +0000 Subject: [PATCH 49/68] TS 33.128 CR0684 - Solution for email target identifier in MMS --- 33128/r16/TS33128Payloads.asn | 55 ++++++++++++++++++++++++++++++++--- 1 file changed, 51 insertions(+), 4 deletions(-) diff --git a/33128/r16/TS33128Payloads.asn b/33128/r16/TS33128Payloads.asn index 5efb899f..2e11638b 100644 --- a/33128/r16/TS33128Payloads.asn +++ b/33128/r16/TS33128Payloads.asn @@ -58,7 +58,7 @@ XIRIEvent ::= CHOICE -- tag 16 is reserved because there is no equivalent mDFCellSiteReport in XIRIEvent - -- MMS-related events, see clause 7.4.2 + -- MMS-related events, see clause 7.4.2 see also MMSConverted events ([65-66] below) mMSSend [17] MMSSend, mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget, mMSNotification [19] MMSNotification, @@ -118,7 +118,11 @@ XIRIEvent ::= CHOICE mMEIdentifierAssocation [63] MMEIdentifierAssocation, -- PDU to MA PDU session-related events, see clause 6.2.3.2.8 - sMFPDUtoMAPDUSessionModification [64] SMFPDUtoMAPDUSessionModification + sMFPDUtoMAPDUSessionModification [64] SMFPDUtoMAPDUSessionModification, + + -- MMS-related events continued from choice 35 + mMSConvertedFromEmail [65] MMSConvertedFromEmail, + mMSConvertedToEmail [66] MMSConvertedToEmail } -- ============== @@ -171,7 +175,7 @@ IRIEvent ::= CHOICE -- MDF-related events, see clause 7.3.2 mDFCellSiteReport [16] MDFCellSiteReport, - -- MMS-related events, see clause 7.4.2 + -- MMS-related events, see clause 7.4.2 see also MMSConverted events ([65-66] below) mMSSend [17] MMSSend, mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget, mMSNotification [19] MMSNotification, @@ -231,7 +235,11 @@ IRIEvent ::= CHOICE mMEIdentifierAssocation [63] MMEIdentifierAssocation, -- PDU to MA PDU session-related events, see clause 6.2.3.2.8 - sMFPDUtoMAPDUSessionModification [64] SMFPDUtoMAPDUSessionModification + sMFPDUtoMAPDUSessionModification [64] SMFPDUtoMAPDUSessionModification, + + -- MMS-related events continued from choice 35 + mMSConvertedFromEmail [65] MMSConvertedFromEmail, + mMSConvertedToEmail [66] MMSConvertedToEmail } IRITargetIdentifier ::= SEQUENCE @@ -1258,6 +1266,45 @@ MMBoxDescription ::= SEQUENCE contentType [19] UTF8String OPTIONAL } +MMSConvertedFromEmail ::= SEQUENCE +{ + version [1] MMSVersion, + transactionID [2] UTF8String, + terminatingMMSParty [3] SEQUENCE OF MMSParty, + contentType [4] MMSContentType, + originatingMMSParty [5] MMSParty, + messageClass [6] MMSMessageClass OPTIONAL, + dateTime [7] Timestamp, + expiry [8] MMSExpiry OPTIONAL, + deliveryReport [9] BOOLEAN OPTIONAL, + priority [10] MMSPriority OPTIONAL, + readReport [11] BOOLEAN OPTIONAL, + subject [12] MMSSubject OPTIONAL, + messageID [13] UTF8String OPTIONAL +} + +MMSConvertedToEmail ::= SEQUENCE +{ + version [1] MMSVersion, + transactionID [2] UTF8String, + terminatingMMSParty [3] SEQUENCE OF MMSParty, + contentType [4] MMSContentType, + originatingMMSParty [5] MMSParty, + messageClass [6] MMSMessageClass OPTIONAL, + dateTime [7] Timestamp, + expiry [8] MMSExpiry OPTIONAL, + desiredDeliveryTime [9] Timestamp OPTIONAL, + deliveryReport [10] BOOLEAN OPTIONAL, + priority [11] MMSPriority OPTIONAL, + senderVisibility [12] BOOLEAN OPTIONAL, + store [13] BOOLEAN OPTIONAL, + state [14] MMState OPTIONAL, + flags [15] MMFlags OPTIONAL, + readReport [16] BOOLEAN OPTIONAL, + subject [17] MMSSubject OPTIONAL, + messageID [18] UTF8String OPTIONAL +} + -- ========= -- MMS CCPDU -- ========= -- GitLab From b66061eedf388ad3c14a6d554fd3595cf3209295 Mon Sep 17 00:00:00 2001 From: Thomas Dodds Date: Mon, 4 Nov 2024 12:00:55 +0000 Subject: [PATCH 50/68] TS 33.128 CR0685 - Solution for email target identifier in MMS --- 33128/r17/TS33128Payloads.asn | 55 ++++++++++++++++++++++++++++++++--- 1 file changed, 51 insertions(+), 4 deletions(-) diff --git a/33128/r17/TS33128Payloads.asn b/33128/r17/TS33128Payloads.asn index 743002f9..b23b5291 100644 --- a/33128/r17/TS33128Payloads.asn +++ b/33128/r17/TS33128Payloads.asn @@ -58,7 +58,7 @@ XIRIEvent ::= CHOICE -- tag 16 is reserved because there is no equivalent mDFCellSiteReport in XIRIEvent - -- MMS-related events, see clause 7.4.2 + -- MMS-related events, see clause 7.4.2 see also MMSConverted events ([133-134] below) mMSSend [17] MMSSend, mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget, mMSNotification [19] MMSNotification, @@ -195,7 +195,11 @@ XIRIEvent ::= CHOICE -- Tags 113 to 131 are not used in this version of the specification -- AMF events, see 6.2.2.2.9, continued from tag 111 - aMFUEConfigurationUpdate [132] AMFUEConfigurationUpdate + aMFUEConfigurationUpdate [132] AMFUEConfigurationUpdate, + + -- MMS-related events continued from choice 35 + mMSConvertedFromEmail [133] MMSConvertedFromEmail, + mMSConvertedToEmail [134] MMSConvertedToEmail } -- ============== @@ -248,7 +252,7 @@ IRIEvent ::= CHOICE -- MDF-related events, see clause 7.3.2 mDFCellSiteReport [16] MDFCellSiteReport, - -- MMS-related events, see clause 7.4.2 + -- MMS-related events, see clause 7.4.2 see also MMSConverted events ([133-134] below) mMSSend [17] MMSSend, mMSSendByNonLocalTarget [18] MMSSendByNonLocalTarget, mMSNotification [19] MMSNotification, @@ -384,7 +388,11 @@ IRIEvent ::= CHOICE -- Tags 113 to 131 are not used in this version of the specification -- AMF events, see 6.2.2.3, continued from tag 111 - aMFUEConfigurationUpdate [132] AMFUEConfigurationUpdate + aMFUEConfigurationUpdate [132] AMFUEConfigurationUpdate, + + -- MMS-related events continued from choice 35 + mMSConvertedFromEmail [133] MMSConvertedFromEmail, + mMSConvertedToEmail [134] MMSConvertedToEmail } IRITargetIdentifier ::= SEQUENCE @@ -2905,6 +2913,45 @@ MMBoxDescription ::= SEQUENCE contentType [19] UTF8String OPTIONAL } +MMSConvertedFromEmail ::= SEQUENCE +{ + version [1] MMSVersion, + transactionID [2] UTF8String, + terminatingMMSParty [3] SEQUENCE OF MMSParty, + contentType [4] MMSContentType, + originatingMMSParty [5] MMSParty, + messageClass [6] MMSMessageClass OPTIONAL, + dateTime [7] Timestamp, + expiry [8] MMSExpiry OPTIONAL, + deliveryReport [9] BOOLEAN OPTIONAL, + priority [10] MMSPriority OPTIONAL, + readReport [11] BOOLEAN OPTIONAL, + subject [12] MMSSubject OPTIONAL, + messageID [13] UTF8String OPTIONAL +} + +MMSConvertedToEmail ::= SEQUENCE +{ + version [1] MMSVersion, + transactionID [2] UTF8String, + terminatingMMSParty [3] SEQUENCE OF MMSParty, + contentType [4] MMSContentType, + originatingMMSParty [5] MMSParty, + messageClass [6] MMSMessageClass OPTIONAL, + dateTime [7] Timestamp, + expiry [8] MMSExpiry OPTIONAL, + desiredDeliveryTime [9] Timestamp OPTIONAL, + deliveryReport [10] BOOLEAN OPTIONAL, + priority [11] MMSPriority OPTIONAL, + senderVisibility [12] BOOLEAN OPTIONAL, + store [13] BOOLEAN OPTIONAL, + state [14] MMState OPTIONAL, + flags [15] MMFlags OPTIONAL, + readReport [16] BOOLEAN OPTIONAL, + subject [17] MMSSubject OPTIONAL, + messageID [18] UTF8String OPTIONAL +} + -- ========= -- MMS CCPDU -- ========= -- GitLab From 8874ccb14cfd3650d5ce32d90aa23cad0cac8d3f Mon Sep 17 00:00:00 2001 From: hawbakert Date: Mon, 4 Nov 2024 12:03:16 +0000 Subject: [PATCH 51/68] TS 33.128 CR 0682 - LI for IMS Data Channel Stage 3 --- 33128/r18/TS33128Payloads.asn | 44 ++++++++++++++++++++++++++++++-- testing/asn_lint_exceptions.json | 3 ++- 2 files changed, 44 insertions(+), 3 deletions(-) diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index a0658e7d..48138ea2 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -278,7 +278,12 @@ XIRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- IP Packet Report, see clause 6.2.3.9.5 - iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport + iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, + + -- IMS events, see clause 7.12.4.2, continued from tag 107 + iMSDataChannelSetup [162] IMSDataChannelSetup, + iMSDataChannelModification [163] IMSDataChannelModification, + iMSDataChannelTermination [164] IMSDataChannelTermination } -- ============== @@ -538,9 +543,14 @@ IRIEvent ::= CHOICE -- UDM events, see clause 7.2.2.3, continued from tag 124 uDMProSeTargetIdentifierDeconcealment [159] UDMProSeTargetIdentifierDeconcealment, - uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication + uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. + + -- IMS events, see clause 7.12.4.2, continued from tag 107 + iMSDataChannelSetup [162] IMSDataChannelSetup, + iMSDataChannelModification [163] IMSDataChannelModification, + iMSDataChannelTermination [164] IMSDataChannelTermination } IRITargetIdentifier ::= SEQUENCE @@ -4272,6 +4282,36 @@ IMSCCUnavailable ::= SEQUENCE sDPState [2] OCTET STRING OPTIONAL } +-- See clause 7.12.4.2.X for details of this structure +IMSDataChannelSetup ::= SEQUENCE +{ + targetIdentity [1] IMPU, + callingIdentity [2] IMPU OPTIONAL, + calledIdentity [3] SEQUENCE (SIZE (1..MAX)) OF IMPU OPTIONAL, + sessionEventNotification [4] SBIType OPTIONAL, + mediaInstructionData [5] SBIType OPTIONAL +} + +-- See clause 7.12.4.2.Y for details of this structure +IMSDataChannelModification ::= SEQUENCE +{ + targetIdentity [1] IMPU, + callingIdentity [2] IMPU OPTIONAL, + calledIdentity [3] SEQUENCE (SIZE (1..MAX)) OF IMPU OPTIONAL, + sessionEventNotification [4] SBIType OPTIONAL, + mediaInstructions [5] SBIType OPTIONAL +} + +-- See Clause 7.12.4.2.Z for details of this structure +IMSDataChannelTermination ::= SEQUENCE +{ + targetIdentity [1] IMPU, + callingIdentity [2] IMPU OPTIONAL, + calledIdentity [3] SEQUENCE (SIZE (1..MAX)) OF IMPU OPTIONAL, + sessionEventNotification [4] SBIType OPTIONAL, + mediaInstructionData [5] SBIType OPTIONAL +} + -- ========= -- IMS CCPDU -- ========= diff --git a/testing/asn_lint_exceptions.json b/testing/asn_lint_exceptions.json index 6960d857..7bafe4ba 100644 --- a/testing/asn_lint_exceptions.json +++ b/testing/asn_lint_exceptions.json @@ -64,7 +64,8 @@ "Tag 6 missing in LALSReport", "Tag 8 missing in MMEStartOfInterceptionWithEPSAttachedUE", "Tag 11 missing in MMEStartOfInterceptionWithEPSAttachedUE", - "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent" + "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent", + "Tag 161 missing in IRIEvent" ], "33128/r19/TS33128Payloads.asn" : [ "Tag 100 XIRIEvent field 'n9HRPDUSessionInfo' is not present in IRIEvent", -- GitLab From 1a5042e40c613f4fe503e7fd999043af14560279 Mon Sep 17 00:00:00 2001 From: naslundma Date: Mon, 4 Nov 2024 12:05:37 +0000 Subject: [PATCH 52/68] TS 33.128 CR 702 - Adding TLS 1.3 IRI for AKMA LI --- 33128/r18/TS33128Payloads.asn | 260 +++++++++++++++++++++++++++++++++- 1 file changed, 259 insertions(+), 1 deletion(-) diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index 48138ea2..de4c6515 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -1255,7 +1255,8 @@ AKMAAFID ::= SEQUENCE UAStarParams ::= CHOICE { tls12 [1] TLS12UAStarParams, - generic [2] GenericUAStarParams + generic [2] GenericUAStarParams, + tls13 [3] TLS13UAStarParams } GenericUAStarParams ::= SEQUENCE @@ -1311,6 +1312,263 @@ TLS12UAStarParams ::= SEQUENCE tLSClientExtensions [19] OCTET STRING (SIZE(0..65535)) OPTIONAL } +-- ================================================== +-- Specific UaStarParams for TLS 1.3 (RFC8446) +-- Inline references below are to clauses of RFC8446. +-- ================================================== + +-- RFC8846, clause 4.2: Available handshake extension types. + +TLS13ExtensionType ::= ENUMERATED +{ + serverName(1), + maxFragmentLength(2), + statusRequest(3), + supportedGroups(4), + signatureAlgorithms(5), + useSRTP(6), + heartbeat(7), + applicationLayerProtocolNegotiation(8), + signedCertificateTimestamp(9), + clientCertificateType(10), + serverCertificateType(11), + padding(12), + presharedKey(13), + earlyData(14), + supportedVersions(15), + cookie(16), + pSKKeyExchangeModes(17), + certificateAuthorities(18), + oIDFilters(19), + postHandshakeAuth(20), + signatureAlgorithmsCert(21), + keyShare(22) +} + +-- RFC8846, clause 4.2: Extensions. +-- Carried as extension to the client's and server's +-- Hello, or, in the server's EncryptedExtensions message. +TLS13Extension ::= SEQUENCE +{ + extensionType [1] TLS13ExtensionType, + extensionData [2] OCTET STRING (SIZE(0..65535)) +} + + +-- RFC8446, clauses 4.1, 4.2, 7.1, and B.4: Cryptographic transforms + +-- RFC8446, clauses 4.1.1 and 4.1.2: Ciphersuite +TLS13CipherSuite ::= CHOICE +{ + rfc8446 [1] TLSCipherSuite + -- Extensible for possible future purposes +} + +-- RFC8446, clause 7.1 and B.4: Key derivation function. +TLS13KDFAlgorithm ::= ENUMERATED +{ + rfc5869(1) -- HKDF +} + +-- RFC8846, clause 4.2.11 and B.4: Hash algorithm. +TLS13PSKHashAlgorithm ::= ENUMERATED +{ + sha256(1), + sha384(2), + sha512(3) +} + + +-- RFC8446, clause 4.4.2: Certificates. + +TLS13CertificateType ::= ENUMERATED +{ + x509(1), + rawPublicKey(2) +} + +TLS13CerificateEntry ::= SEQUENCE +{ + tLSCertificateType [1] TLS13CertificateType, + tLSCertificateData [2] OCTET STRING (SIZE(1..16777215)), + extensions [3] SEQUENCE OF TLS13Extension OPTIONAL +} + +-- This will typically correspond to a certificate chain. +TLS13Certificate ::= SEQUENCE +{ + tLSCertificateRequestContext [1] OCTET STRING (SIZE(0..255)), + tLSCertificateList [2] SEQUENCE OF TLS13CerificateEntry +} + + +-- RFC 8446, clause 4.2.9: Preshared key exchange mode. +TLS13PSKKeyExchangeMode ::= ENUMERATED +{ + pSKKE(1), + pSKDHEKE(2) +} + +-- RFC8446, clause 4.2.11: Preshared keys (PSKs). +-- PSKs obtained from AKMA use a specific prefix as part +-- of the identity: 3GPP-AKMA, see TS 33.535 and 33.222. +TLS13PSKIdentity ::= SEQUENCE +{ + identity [1] OCTET STRING (SIZE(1..65535)), + obfuscatedTicketAge [2] INTEGER (0..4294967295) +} + +TLS13OfferedPSK ::= SEQUENCE +{ + identity [1] TLS13PSKIdentity, + binder [2] OCTET STRING (SIZE(32..255)) +} + +-- Actual TLS PSK, either explicitly provisioned or derived from +-- an earlier issued TLS ticket and a resumptionMasterSecret. +-- For AKMA, the PSK is the AKMA key K_AF. +TLS13PSKInfo ::= SEQUENCE +{ + pSKIdentity [1] TLS13PSKIdentity, + pSKValue [2] OCTET STRING, + pSKKeyExchangeMode [3] TLS13PSKKeyExchangeMode, + hashAlgorithm [4] TLS13PSKHashAlgorithm +} + + + +-- RFC 8446, clause 4.6.1: Tickets/resumption info. + +TLS13NewSessionTicket ::= SEQUENCE +{ + ticketLifeTime [1] INTEGER (0..4294967295), + ticketAgeAdd [2] INTEGER (0..4294967295), + ticketNonce [3] OCTET STRING (SIZE(0..255)), + ticket [4] OCTET STRING (SIZE(1..65535)), + extensions [5] SEQUENCE OF TLS13Extension OPTIONAL +} + + + +-- RFC8446, clause 7.1 and 4.2.8: TLS-internal keys +-- These keys/secrets are never directly used to encrypt +-- data, and are therefore optional to provide as part of +-- TLS13UAStarParams. + +-- RFC8446, clause 4.2.8 +-- Shared Diffie-Hellman secret: derived from client's +-- and server's key shares (as included in extensions). +-- Can later be extended by adding PQC-based secrets, +-- see e.g. draft-ietf-tls-hybrid-design-10. +TLS13EstablishedSecrets ::= SEQUENCE +{ + dHE [1] OCTET STRING (SIZE(1..65535)) OPTIONAL +} + + +-- RFC8446, clause 7.1 +-- The actual encryption keys are derived from the respective secret +-- values below and the provided hashed handshake-message-transcript. +TLS13EarlySecretInfo ::= SEQUENCE +{ + earlySecretValue [1] OCTET STRING (SIZE(1..65535)), + transcriptHash [2] OCTET STRING (SIZE(1..65535)) + -- Hash(ClientHello) +} + +TLS13HandshakeSecretInfo ::= SEQUENCE +{ + handshakeSecretValue [1] OCTET STRING (SIZE(1..65535)), + transcriptHash [2] OCTET STRING (SIZE(1..65535)) + -- Hash(ClientHello..ServerHello) +} + +TLS13MasterSecretInfo ::= SEQUENCE +{ + masterSecretValue [1] OCTET STRING (SIZE(1..65535)), + transcriptHashS [2] OCTET STRING (SIZE(1..65535)), + -- Hash(ClientHello..server Finished) + transcriptHashC [3] OCTET STRING (SIZE(1..65535)) + -- Hash(ClientHello..client Finished) +} + + +-- Complete TLS 1.3 cryptographic context. + +TLS13UAStarParams ::= SEQUENCE +{ + -- Basic cryptographic information. + -- + -- The offeredPSKs, offeredPSKModes and selectedPSK + -- parameters are also provided as part of client and + -- server extensions below. + -- + -- PSKs and key exchange modes offered by the client, see + -- clause 4.2.9, 4.2.11. When AKMA (or other CSP-provided) + -- keys are used, at least one offered PSK and key exchange mode + -- will always be present in the client extensions + offeredPSKs [1] SEQUENCE OF TLS13OfferedPSK, + offeredPSKKeyExchangeModes [2] SEQUENCE OF TLS13PSKKeyExchangeMode, + -- The server-selected PSK, clause 4.2.11 + -- selectedPSKIdentity = j means the server selects j:th offered PSK. + selectedPSKIdentity [3] INTEGER (0..65535), + -- The actual TLS PSK. When AKMA is used, this key will typically also + -- be provided as an associated AFKeyInfo IRI, see below. + selectedPSK [4] TLS13PSKInfo, + -- Cryptographic state: transforms and sequence numbers. + kDFAlgorithm [5] TLS13KDFAlgorithm, -- clause 7.1. + clientSupportedCipherSuites [6] SEQUENCE OF TLS13CipherSuite OPTIONAL, + selectedCipherSuite [7] TLS13CipherSuite, -- clause 4.2 and B.4. + clientSequenceNumber [8] INTEGER, -- clause 5.3 + serverSequenceNumber [9] INTEGER, -- clause 5.3 + -- Handshake parameters, clause 4.1.2 and 4.1.3. + clientRandom [10] OCTET STRING (SIZE(32)), + serverRandom [11] OCTET STRING (SIZE(32)), + legacySessionID [12] OCTET STRING (SIZE(0..32)), + -- Complete contents of handshake extensions, clause 4.2. + tLSClientHelloExtensions [13] SEQUENCE OF TLS13Extension, + tLSServerHelloExtensions [14] SEQUENCE OF TLS13Extension, + -- Encrypted server extensions, clause 4.3.1 (here provided in plaintext). + tLSPlaintextEncryptedExtensions [15] SEQUENCE OF TLS13Extension OPTIONAL, + -- Authentication related parameters, clause 4.4 + -- Certificates are encrypted between client and server, + -- these are the unencrypted certificate(s). + tLSPlaintextClientCertificate [16] TLS13Certificate OPTIONAL, + tLSPlaintextServerCertificate [17] TLS13Certificate OPTIONAL, + -- Session key information fields, clause 7.1 + earlySecret [18] TLS13EarlySecretInfo OPTIONAL, + binderKey [19] OCTET STRING (SIZE(1..65535)) OPTIONAL, + -- The key used by the cipher suite to encrypt early data is + -- derived from clientEarlyTrafficSecret as described in clause 7.3. + clientEarlyTrafficSecret [20] OCTET STRING (SIZE(1..65535)), + earlyExporterMasterSecret [21] OCTET STRING (SIZE(1..65535)), + -- Established shared key (from Diffie-Hellman or similar). + sharedKey [22] TLS13EstablishedSecrets OPTIONAL, + handshakeSecret [23] TLS13HandshakeSecretInfo OPTIONAL, + -- The keys used by the cipher suite to encrypt the handshake are + -- derived from client- and serverHandshakeTrafficSecret as + -- described in clause 7.3. + clientHandshakeTrafficSecret [24] OCTET STRING (SIZE(1..65535)), + serverHandshakeTrafficSecret [25] OCTET STRING (SIZE(1..65535)), + masterSecret [26] TLS13MasterSecretInfo OPTIONAL, + -- The client and server application traffic secrets + -- can change value during an ongoing session due to + -- KeyUdpateRequest messages. The values to be provided below + -- refer to the currently valid ones when the IRI message is + -- generated. + -- The keys used by the cipher suite to encrypt the application + -- traffic are derived from client- and serverApplicationTrafficSecret + -- as described in clause 7.3. + clientApplicationTrafficSecret [27] OCTET STRING (SIZE(1..65535)), + serverApplicationTrafficSecret [28] OCTET STRING (SIZE(1..65535)), + -- Other session-specific keys. + exporterMasterSecret [29] OCTET STRING (SIZE(1..65535)), + resumptionMasterSecret [30] OCTET STRING (SIZE(1..65535)), + -- Tickets for resumption (issued during current session), clause 4.6.2. + tLSResumptionTickets [31] SEQUENCE OF TLS13NewSessionTicket OPTIONAL +} + + KAF ::= OCTET STRING KAKMA ::= OCTET STRING -- GitLab From 0313895dccfab33bb05f9b6f3587e9bfc944a824 Mon Sep 17 00:00:00 2001 From: naslundma Date: Mon, 4 Nov 2024 12:22:36 +0000 Subject: [PATCH 53/68] TS 33.128 CR0674 - Adding TLS 1.3 IRI for AKMA LI --- 33128/r19/TS33128Payloads.asn | 261 +++++++++++++++++++++++++++++++++- 1 file changed, 260 insertions(+), 1 deletion(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 647a36da..182730dd 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -1245,7 +1245,8 @@ AKMAAFID ::= SEQUENCE UAStarParams ::= CHOICE { tls12 [1] TLS12UAStarParams, - generic [2] GenericUAStarParams + generic [2] GenericUAStarParams, + tls13 [3] TLS13UAStarParams } GenericUAStarParams ::= SEQUENCE @@ -1301,6 +1302,264 @@ TLS12UAStarParams ::= SEQUENCE tLSClientExtensions [19] OCTET STRING (SIZE(0..65535)) OPTIONAL } +-- ================================================== +-- Specific UaStarParams for TLS 1.3 (RFC8446) +-- Inline references below are to clauses of RFC8446. +-- ================================================== + +-- RFC8846, clause 4.2: Available handshake extension types. + +TLS13ExtensionType ::= ENUMERATED +{ + serverName(1), + maxFragmentLength(2), + statusRequest(3), + supportedGroups(4), + signatureAlgorithms(5), + useSRTP(6), + heartbeat(7), + applicationLayerProtocolNegotiation(8), + signedCertificateTimestamp(9), + clientCertificateType(10), + serverCertificateType(11), + padding(12), + presharedKey(13), + earlyData(14), + supportedVersions(15), + cookie(16), + pSKKeyExchangeModes(17), + certificateAuthorities(18), + oIDFilters(19), + postHandshakeAuth(20), + signatureAlgorithmsCert(21), + keyShare(22) +} + +-- RFC8846, clause 4.2: Extensions. +-- Carried as extension to the client's and server's +-- Hello, or, in the server's EncryptedExtensions message. +TLS13Extension ::= SEQUENCE +{ + extensionType [1] TLS13ExtensionType, + extensionData [2] OCTET STRING (SIZE(0..65535)) +} + + +-- RFC8446, clauses 4.1, 4.2, 7.1, and B.4: Cryptographic transforms + +-- RFC8446, clauses 4.1.1 and 4.1.2: Ciphersuite +TLS13CipherSuite ::= CHOICE +{ + rfc8446 [1] TLSCipherSuite + -- Extensible for possible future purposes +} + +-- RFC8446, clause 7.1 and B.4: Key derivation function. +TLS13KDFAlgorithm ::= ENUMERATED +{ + rfc5869(1) -- HKDF +} + +-- RFC8846, clause 4.2.11 and B.4: Hash algorithm. +TLS13PSKHashAlgorithm ::= ENUMERATED +{ + sha256(1), + sha384(2), + sha512(3) +} + + +-- RFC8446, clause 4.4.2: Certificates. + +TLS13CertificateType ::= ENUMERATED +{ + x509(1), + rawPublicKey(2) +} + +TLS13CerificateEntry ::= SEQUENCE +{ + tLSCertificateType [1] TLS13CertificateType, + tLSCertificateData [2] OCTET STRING (SIZE(1..16777215)), + extensions [3] SEQUENCE OF TLS13Extension OPTIONAL +} + +-- This will typically correspond to a certificate chain. +TLS13Certificate ::= SEQUENCE +{ + tLSCertificateRequestContext [1] OCTET STRING (SIZE(0..255)), + tLSCertificateList [2] SEQUENCE OF TLS13CerificateEntry +} + + +-- RFC 8446, clause 4.2.9: Preshared key exchange mode. +TLS13PSKKeyExchangeMode ::= ENUMERATED +{ + pSKKE(1), + pSKDHEKE(2) +} + +-- RFC8446, clause 4.2.11: Preshared keys (PSKs). +-- PSKs obtained from AKMA use a specific prefix as part +-- of the identity: 3GPP-AKMA, see TS 33.535 and 33.222. +TLS13PSKIdentity ::= SEQUENCE +{ + identity [1] OCTET STRING (SIZE(1..65535)), + obfuscatedTicketAge [2] INTEGER (0..4294967295) +} + +TLS13OfferedPSK ::= SEQUENCE +{ + identity [1] TLS13PSKIdentity, + binder [2] OCTET STRING (SIZE(32..255)) +} + +-- Actual TLS PSK, either explicitly provisioned or derived from +-- an earlier issued TLS ticket and a resumptionMasterSecret. +-- For AKMA, the PSK is the AKMA key K_AF. +TLS13PSKInfo ::= SEQUENCE +{ + pSKIdentity [1] TLS13PSKIdentity, + pSKValue [2] OCTET STRING, + pSKKeyExchangeMode [3] TLS13PSKKeyExchangeMode, + hashAlgorithm [4] TLS13PSKHashAlgorithm +} + + + +-- RFC 8446, clause 4.6.1: Tickets/resumption info. + +TLS13NewSessionTicket ::= SEQUENCE +{ + ticketLifeTime [1] INTEGER (0..4294967295), + ticketAgeAdd [2] INTEGER (0..4294967295), + ticketNonce [3] OCTET STRING (SIZE(0..255)), + ticket [4] OCTET STRING (SIZE(1..65535)), + extensions [5] SEQUENCE OF TLS13Extension OPTIONAL +} + + + +-- RFC8446, clause 7.1 and 4.2.8: TLS-internal keys +-- These keys/secrets are never directly used to encrypt +-- data, and are therefore optional to provide as part of +-- TLS13UAStarParams. + +-- RFC8446, clause 4.2.8 +-- Shared Diffie-Hellman secret: derived from client's +-- and server's key shares (as included in extensions). +-- Can later be extended by adding PQC-based secrets, +-- see e.g. draft-ietf-tls-hybrid-design-10. +TLS13EstablishedSecrets ::= SEQUENCE +{ + dHE [1] OCTET STRING (SIZE(1..65535)) OPTIONAL +} + + +-- RFC8446, clause 7.1 +-- The actual encryption keys are derived from the respective secret +-- values below and the provided hashed handshake-message-transcript. +TLS13EarlySecretInfo ::= SEQUENCE +{ + earlySecretValue [1] OCTET STRING (SIZE(1..65535)), + transcriptHash [2] OCTET STRING (SIZE(1..65535)) + -- Hash(ClientHello) +} + +TLS13HandshakeSecretInfo ::= SEQUENCE +{ + handshakeSecretValue [1] OCTET STRING (SIZE(1..65535)), + transcriptHash [2] OCTET STRING (SIZE(1..65535)) + -- Hash(ClientHello..ServerHello) +} + +TLS13MasterSecretInfo ::= SEQUENCE +{ + masterSecretValue [1] OCTET STRING (SIZE(1..65535)), + transcriptHashS [2] OCTET STRING (SIZE(1..65535)), + -- Hash(ClientHello..server Finished) + transcriptHashC [3] OCTET STRING (SIZE(1..65535)) + -- Hash(ClientHello..client Finished) +} + + +-- Complete TLS 1.3 cryptographic context. + +TLS13UAStarParams ::= SEQUENCE +{ + -- Basic cryptographic information. + -- + -- The offeredPSKs, offeredPSKModes and selectedPSK + -- parameters are also provided as part of client and + -- server extensions below. + -- + -- PSKs and key exchange modes offered by the client, see + -- clause 4.2.9, 4.2.11. When AKMA (or other CSP-provided) + -- keys are used, at least one offered PSK and key exchange mode + -- will always be present in the client extensions + offeredPSKs [1] SEQUENCE OF TLS13OfferedPSK, + offeredPSKKeyExchangeModes [2] SEQUENCE OF TLS13PSKKeyExchangeMode, + -- The server-selected PSK, clause 4.2.11 + -- selectedPSKIdentity = j means the server selects j:th offered PSK. + selectedPSKIdentity [3] INTEGER (0..65535), + -- The actual TLS PSK. When AKMA is used, this key will typically also + -- be provided as an associated AFKeyInfo IRI, see below. + selectedPSK [4] TLS13PSKInfo, + -- Cryptographic state: transforms and sequence numbers. + kDFAlgorithm [5] TLS13KDFAlgorithm, -- clause 7.1. + clientSupportedCipherSuites [6] SEQUENCE OF TLS13CipherSuite OPTIONAL, + selectedCipherSuite [7] TLS13CipherSuite, -- clause 4.2 and B.4. + clientSequenceNumber [8] INTEGER, -- clause 5.3 + serverSequenceNumber [9] INTEGER, -- clause 5.3 + -- Handshake parameters, clause 4.1.2 and 4.1.3. + clientRandom [10] OCTET STRING (SIZE(32)), + serverRandom [11] OCTET STRING (SIZE(32)), + legacySessionID [12] OCTET STRING (SIZE(0..32)), + -- Complete contents of handshake extensions, clause 4.2. + tLSClientHelloExtensions [13] SEQUENCE OF TLS13Extension, + tLSServerHelloExtensions [14] SEQUENCE OF TLS13Extension, + -- Encrypted server extensions, clause 4.3.1 (here provided in plaintext). + tLSPlaintextEncryptedExtensions [15] SEQUENCE OF TLS13Extension OPTIONAL, + -- Authentication related parameters, clause 4.4 + -- Certificates are encrypted between client and server, + -- these are the unencrypted certificate(s). + tLSPlaintextClientCertificate [16] TLS13Certificate OPTIONAL, + tLSPlaintextServerCertificate [17] TLS13Certificate OPTIONAL, + -- Session key information fields, clause 7.1 + earlySecret [18] TLS13EarlySecretInfo OPTIONAL, + binderKey [19] OCTET STRING (SIZE(1..65535)) OPTIONAL, + -- The key used by the cipher suite to encrypt early data is + -- derived from clientEarlyTrafficSecret as described in clause 7.3. + clientEarlyTrafficSecret [20] OCTET STRING (SIZE(1..65535)), + earlyExporterMasterSecret [21] OCTET STRING (SIZE(1..65535)), + -- Established shared key (from Diffie-Hellman or similar). + sharedKey [22] TLS13EstablishedSecrets OPTIONAL, + handshakeSecret [23] TLS13HandshakeSecretInfo OPTIONAL, + -- The keys used by the cipher suite to encrypt the handshake are + -- derived from client- and serverHandshakeTrafficSecret as + -- described in clause 7.3. + clientHandshakeTrafficSecret [24] OCTET STRING (SIZE(1..65535)), + serverHandshakeTrafficSecret [25] OCTET STRING (SIZE(1..65535)), + masterSecret [26] TLS13MasterSecretInfo OPTIONAL, + -- The client and server application traffic secrets + -- can change value during an ongoing session due to + -- KeyUdpateRequest messages. The values to be provided below + -- refer to the currently valid ones when the IRI message is + -- generated. + -- The keys used by the cipher suite to encrypt the application + -- traffic are derived from client- and serverApplicationTrafficSecret + -- as described in clause 7.3. + clientApplicationTrafficSecret [27] OCTET STRING (SIZE(1..65535)), + serverApplicationTrafficSecret [28] OCTET STRING (SIZE(1..65535)), + -- Other session-specific keys. + exporterMasterSecret [29] OCTET STRING (SIZE(1..65535)), + resumptionMasterSecret [30] OCTET STRING (SIZE(1..65535)), + -- Tickets for resumption (issued during current session), clause 4.6.2. + tLSResumptionTickets [31] SEQUENCE OF TLS13NewSessionTicket OPTIONAL +} + + + KAF ::= OCTET STRING KAKMA ::= OCTET STRING -- GitLab From 1a4ebeac184653037477ab62144bdcec41828b3a Mon Sep 17 00:00:00 2001 From: hawbakert Date: Mon, 4 Nov 2024 12:23:29 +0000 Subject: [PATCH 54/68] TS 33.128 CR0692 - LI for IMS Data Channel Stage 3 --- 33128/r19/TS33128Payloads.asn | 44 ++++++++++++++++++++++++++++++-- testing/asn_lint_exceptions.json | 3 ++- 2 files changed, 44 insertions(+), 3 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 182730dd..d4e5927f 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -278,7 +278,12 @@ XIRIEvent ::= CHOICE uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- IP Packet Report, see clause 6.2.3.9.5 - iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport + iPIRIPacketReport [161] IPAccessPDU.IPIRIPacketReport, + + -- IMS events, see clause 7.12.4.2, continued from tag 107 + iMSDataChannelSetup [162] IMSDataChannelSetup, + iMSDataChannelModification [163] IMSDataChannelModification, + iMSDataChannelTermination [164] IMSDataChannelTermination } -- ============== @@ -538,9 +543,14 @@ IRIEvent ::= CHOICE -- UDM events, see clause 7.2.2.3, continued from tag 124 uDMProSeTargetIdentifierDeconcealment [159] UDMProSeTargetIdentifierDeconcealment, - uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication + uDMProSeTargetAuthentication [160] UDMProSeTargetAuthentication, -- Tag 161 is reserved because there is no equivalent IP Packet Report in IRIEvent. + + -- IMS events, see clause 7.12.7, continued from tag 107 + iMSDataChannelSetup [162] IMSDataChannelSetup, + iMSDataChannelModification [163] IMSDataChannelModification, + iMSDataChannelTermination [164] IMSDataChannelTermination } IRITargetIdentifier ::= SEQUENCE @@ -4532,6 +4542,36 @@ IMSCCUnavailable ::= SEQUENCE sDPState [2] OCTET STRING OPTIONAL } +-- See clause 7.12.4.2.X for details of this structure +IMSDataChannelSetup ::= SEQUENCE +{ + targetIdentity [1] IMPU, + callingIdentity [2] IMPU OPTIONAL, + calledIdentity [3] SEQUENCE (SIZE (1..MAX)) OF IMPU OPTIONAL, + sessionEventNotification [4] SBIType OPTIONAL, + mediaInstructionData [5] SBIType OPTIONAL +} + +-- See clause 7.12.4.2.Y for details of this structure +IMSDataChannelModification ::= SEQUENCE +{ + targetIdentity [1] IMPU, + callingIdentity [2] IMPU OPTIONAL, + calledIdentity [3] SEQUENCE (SIZE (1..MAX)) OF IMPU OPTIONAL, + sessionEventNotification [4] SBIType OPTIONAL, + mediaInstructions [5] SBIType OPTIONAL +} + +-- See Clause 7.12.4.2.Z for details of this structure +IMSDataChannelTermination ::= SEQUENCE +{ + targetIdentity [1] IMPU, + callingIdentity [2] IMPU OPTIONAL, + calledIdentity [3] SEQUENCE (SIZE (1..MAX)) OF IMPU OPTIONAL, + sessionEventNotification [4] SBIType OPTIONAL, + mediaInstructionData [5] SBIType OPTIONAL +} + -- ========= -- IMS CCPDU -- ========= diff --git a/testing/asn_lint_exceptions.json b/testing/asn_lint_exceptions.json index 7bafe4ba..300225ca 100644 --- a/testing/asn_lint_exceptions.json +++ b/testing/asn_lint_exceptions.json @@ -86,6 +86,7 @@ "Tag 6 missing in LALSReport", "Tag 8 missing in MMEStartOfInterceptionWithEPSAttachedUE", "Tag 11 missing in MMEStartOfInterceptionWithEPSAttachedUE", - "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent" + "Tag 161 XIRIEvent field 'iPIRIPacketReport' is not present in IRIEvent", + "Tag 161 missing in IRIEvent" ] } -- GitLab From f4d4b4faa67a453242045f82d3aeea0840e4cf5d Mon Sep 17 00:00:00 2001 From: grahamj Date: Mon, 4 Nov 2024 12:26:00 +0000 Subject: [PATCH 55/68] TS 33.128 CR 0701 - Addition of Cell Radio Information to location structures --- 33128/r19/TS33128Payloads.asn | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index d4e5927f..9930b745 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -6873,7 +6873,8 @@ EUTRALocation ::= SEQUENCE cellSiteInformation [8] CellSiteInformation OPTIONAL, globalENbID [9] GlobalRANNodeID OPTIONAL, ignoreTAI [10] BOOLEAN OPTIONAL, - ignoreECGI [11] BOOLEAN OPTIONAL + ignoreECGI [11] BOOLEAN OPTIONAL, + cellRadioRelatedInformation [12] SEQUENCE OF CellRadioRelatedInformation OPTIONAL } -- TS 29.571 [17], clause 5.4.4.9 @@ -6889,7 +6890,8 @@ NRLocation ::= SEQUENCE cellSiteInformation [8] CellSiteInformation OPTIONAL, ignoreNCGI [9] BOOLEAN OPTIONAL, nRNTNTAIInfo [10] NRNTNTAIInfo OPTIONAL, - iABMTUserLocation [11] IABMTUserLocation OPTIONAL + iABMTUserLocation [11] IABMTUserLocation OPTIONAL, + cellRadioRelatedInformation [12] SEQUENCE OF CellRadioRelatedInformation OPTIONAL } -- TS 29.571 [17], clause 5.4.4.10 @@ -7057,7 +7059,8 @@ CellInformation ::= SEQUENCE CellRadioRelatedInformation ::= CHOICE { nGInformation [1] NGInformation, - f1Information [2] F1Information + f1Information [2] F1Information, + s1Information [3] S1Information } RFBand ::= UTF8String -- GitLab From 5d15920bdf6978c4aa3f9d9c16b1a201bb1dfe26 Mon Sep 17 00:00:00 2001 From: grahamj Date: Mon, 4 Nov 2024 12:26:32 +0000 Subject: [PATCH 56/68] TS 33.128 CR 0700 - Clarification on location in RAN Information --- 33128/r19/TS33128Payloads.asn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 9930b745..d5c9a86d 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -1677,7 +1677,7 @@ AMFRegistration ::= SEQUENCE pagingRestrictionIndicator [17] PagingRestrictionIndicator OPTIONAL, rATType [18] RATType OPTIONAL, rRCEstablishmentCause [19] RRCEstablishmentCause OPTIONAL, - nGInformation [20] NGInformation OPTIONAL, + deprecatedNGInformation [20] NGInformation OPTIONAL, nASTransportInitialInformation [21] NASTransportInitialInformation OPTIONAL, sORTransparentContainer [22] SORTransparentContainer OPTIONAL, equivalentPLMNList [23] PLMNList OPTIONAL, @@ -5717,7 +5717,7 @@ MMEAttach ::= SEQUENCE pagingRestrictionIndicator [12] PagingRestrictionIndicator OPTIONAL, rATType [13] RATType OPTIONAL, rRCEstablishmentCause [14] RRCEstablishmentCause OPTIONAL, - s1Information [15] S1Information OPTIONAL, + deprecatedS1Information [15] S1Information OPTIONAL, nASTransportInitialInformation [16] EPSNASTransportInitialInformation OPTIONAL, equivalentPLMNList [17] PLMNList OPTIONAL, ePSUENetworkCapability [18] EPSUENetworkCapability OPTIONAL, @@ -5780,7 +5780,7 @@ MMEStartOfInterceptionWithEPSAttachedUE ::= SEQUENCE pagingRestrictionIndicator [13] PagingRestrictionIndicator OPTIONAL, rATType [14] RATType OPTIONAL, rRCEstablishmentCause [15] RRCEstablishmentCause OPTIONAL, - s1Information [16] S1Information OPTIONAL, + deprecatedS1Information [16] S1Information OPTIONAL, nASTransportInitialInformation [17] EPSNASTransportInitialInformation OPTIONAL, equivalentPLMNList [18] PLMNList OPTIONAL, ePSUENetworkCapability [19] EPSUENetworkCapability OPTIONAL, -- GitLab From 1f3053aa86cb7da7c18d2f45c34cce93e76750f1 Mon Sep 17 00:00:00 2001 From: znaty Date: Mon, 4 Nov 2024 12:28:58 +0000 Subject: [PATCH 57/68] TS33128 CR0678 - Mobile IAB Authorized Indicator and UE differentiation information --- 33128/r19/TS33128Payloads.asn | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index d5c9a86d..9767a22e 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -2022,7 +2022,8 @@ NASTransportInitialInformation ::= SEQUENCE eDTSession [3] BOOLEAN OPTIONAL, authenticatedIndication [4] BOOLEAN OPTIONAL, nPNAccessInformation [5] CellCAGList OPTIONAL, - rEDCAPIndication [6] REDCAPIndication OPTIONAL + rEDCAPIndication [6] REDCAPIndication OPTIONAL, + mobileIABNodeIndication [7] BOOLEAN OPTIONAL } NGInformation ::= SEQUENCE @@ -2102,7 +2103,9 @@ InitialRANUEContextSetup ::= SEQUENCE rGLevelWirelineAccessCharacteristics [13] OCTET STRING OPTIONAL, uERadioCapabilityID [14] OCTET STRING OPTIONAL, targetNSSAIInfo [15] TargetNSSAIInfo OPTIONAL, - fiveGProSeAuthorizationIndication [16] FiveGProSeAuthorizationIndication OPTIONAL + fiveGProSeAuthorizationIndication [16] FiveGProSeAuthorizationIndication OPTIONAL, + uEDifferentiationInfo [17] UEDifferentiationInfo OPTIONAL, + mobileIABAuthorizedIndicator [18] MobileIABAuthorizedIndicator OPTIONAL } PDUSessionSetupRequestItem ::= SEQUENCE @@ -2186,6 +2189,23 @@ FiveGSUpdateType ::= OCTET STRING (SIZE(1)) UnavailabilityPeriodDuration ::= OCTET STRING (SIZE(1)) +UEDifferentiationInfo ::= SEQUENCE +{ + periodicCommunicationIndicator [1] PeriodicCommunicationIndicator OPTIONAL, + periodicTime [2] INTEGER OPTIONAL, + scheduledCommunicationTime [3] SBIType OPTIONAL, + stationaryIndication [4] SBIType OPTIONAL, + trafficProfile [5] SBIType OPTIONAL, + batteryIndication [6] SBIType OPTIONAL +} + + +MobileIABAuthorizedIndicator ::= ENUMERATED +{ + authorized(1), + notAuthorized(2) +} + -- ================== -- 5G SMF definitions -- ================== -- GitLab From 7bd35c379bfc3232d53067a8d5838623e170754a Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 4 Nov 2024 12:49:45 +0000 Subject: [PATCH 58/68] Reordering IRI/xIRI tags to be consistent across R18 and R19 --- 33128/r19/TS33128Payloads.asn | 47 ++++++++++++++++++----------------- 1 file changed, 24 insertions(+), 23 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 40ea9bb5..e8270299 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -285,23 +285,23 @@ XIRIEvent ::= CHOICE iMSDataChannelModification [163] IMSDataChannelModification, iMSDataChannelTermination [164] IMSDataChannelTermination, + -- MMS-related events continued from choice 35 + mMSConvertedFromEmail [165] MMSConvertedFromEmail, + mMSConvertedToEmail [166] MMSConvertedToEmail, + -- NEF events, see clause 7.7.X.1 - nEF5GVNGroupCreation [165] NEF5GVNGroupCreation, - nEF5GVNGroupUpdate [166] NEF5GVNGroupUpdate, - nEF5GVNGroupDeletion [167] NEF5GVNGroupDeletion, - nEF5GVNGroupQuery [168] NEF5GVNGroupQuery, + nEF5GVNGroupCreation [167] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [168] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [169] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [170] NEF5GVNGroupQuery, -- HSS events, see clause 7.2.3.3 - hSSSubscriberRecordChange [169] HSSSubscriberRecordChange, + hSSSubscriberRecordChange [171] HSSSubscriberRecordChange, -- IMS HSS events, see clause 7.2.4.3 - iMSHSSServingSystemMessage [170] IMSHSSServingSystemMessage, - iMSHSSStartOfInterceptionWithRegisteredTarget [171] IMSHSSStartOfInterceptionWithRegisteredTarget, - iMSHSSSubscriberRecordChange [172] IMSHSSSubscriberRecordChange, - - -- MMS-related events continued from choice 35 - mMSConvertedFromEmail [173] MMSConvertedFromEmail, - mMSConvertedToEmail [174] MMSConvertedToEmail, + iMSHSSServingSystemMessage [172] IMSHSSServingSystemMessage, + iMSHSSStartOfInterceptionWithRegisteredTarget [173] IMSHSSStartOfInterceptionWithRegisteredTarget, + iMSHSSSubscriberRecordChange [174] IMSHSSSubscriberRecordChange, -- AMF events, see clause 6.2.2.2.14, continued from tag 147 aMFUEContextUpdate [175] AMFUEContextUpdate @@ -573,23 +573,24 @@ IRIEvent ::= CHOICE iMSDataChannelModification [163] IMSDataChannelModification, iMSDataChannelTermination [164] IMSDataChannelTermination, + -- MMS-related events continued from choice 35 + mMSConvertedFromEmail [165] MMSConvertedFromEmail, + mMSConvertedToEmail [166] MMSConvertedToEmail, + -- NEF events, see clause 7.7.X.2 - nEF5GVNGroupCreation [165] NEF5GVNGroupCreation, - nEF5GVNGroupUpdate [166] NEF5GVNGroupUpdate, - nEF5GVNGroupDeletion [167] NEF5GVNGroupDeletion, - nEF5GVNGroupQuery [168] NEF5GVNGroupQuery, + nEF5GVNGroupCreation [167] NEF5GVNGroupCreation, + nEF5GVNGroupUpdate [168] NEF5GVNGroupUpdate, + nEF5GVNGroupDeletion [169] NEF5GVNGroupDeletion, + nEF5GVNGroupQuery [170] NEF5GVNGroupQuery, -- HSS events, see clause 7.2.3.3 - hSSSubscriberRecordChange [169] HSSSubscriberRecordChange, + hSSSubscriberRecordChange [171] HSSSubscriberRecordChange, -- IMS HSS events, see clause 7.2.4.3 - iMSHSSServingSystemMessage [170] IMSHSSServingSystemMessage, - iMSHSSStartOfInterceptionWithRegisteredTarget [171] IMSHSSStartOfInterceptionWithRegisteredTarget, - iMSHSSSubscriberRecordChange [172] IMSHSSSubscriberRecordChange, + iMSHSSServingSystemMessage [172] IMSHSSServingSystemMessage, + iMSHSSStartOfInterceptionWithRegisteredTarget [173] IMSHSSStartOfInterceptionWithRegisteredTarget, + iMSHSSSubscriberRecordChange [174] IMSHSSSubscriberRecordChange, - -- MMS-related events continued from choice 35 - mMSConvertedFromEmail [173] MMSConvertedFromEmail, - mMSConvertedToEmail [174] MMSConvertedToEmail, -- AMF events, see clause 6.2.2.3, continued from tag 147 aMFUEContextUpdate [175] AMFUEContextUpdate } -- GitLab From eba80620db96880d46350f4d70734f904cb6de91 Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 4 Nov 2024 12:50:59 +0000 Subject: [PATCH 59/68] Adding TS33128IdentityAssociation.asn to testing targets --- testing/asn_compile_targets.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/testing/asn_compile_targets.json b/testing/asn_compile_targets.json index f8667509..6ffd3fdd 100644 --- a/testing/asn_compile_targets.json +++ b/testing/asn_compile_targets.json @@ -14,5 +14,6 @@ "./33128/r19/TS33128Payloads.asn", "./testing/dependencies/asn/IPAccessPDU.asn", "./testing/dependencies/asn/stubs/LI-PS-PDU.asn" - ] + ], + ["./33128/r19/TS33128IdentityAssociation.asn"] ] -- GitLab From 25c6faf19b9c1ba70fac73ec3810cc980bff88e3 Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 4 Nov 2024 12:53:48 +0000 Subject: [PATCH 60/68] Fixing import of IPIRIPacketReport to correct version of IPAccessPDU --- 33128/r18/TS33128Payloads.asn | 2 +- 33128/r19/TS33128Payloads.asn | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index 9b5585b8..f2264a1c 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -10,7 +10,7 @@ IMPORTS -- from ETSI TS 102 232-3 [6] IPIRIPacketReport FROM IPAccessPDU - {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) iPAccess(3) version17(17)}; + {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) iPAccess(3) version18(18)}; -- end of IMPORTS diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index e8270299..078bb961 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -10,7 +10,7 @@ IMPORTS -- from ETSI TS 102 232-3 [6] IPIRIPacketReport FROM IPAccessPDU - {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) iPAccess(3) version17(17)}; + {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) iPAccess(3) version18(18)}; -- end of IMPORTS -- GitLab From 84477434f514898066e41dceeaf990929019ee25 Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 4 Nov 2024 12:56:44 +0000 Subject: [PATCH 61/68] Updating OIDs --- 33128/r16/TS33128Payloads.asn | 4 ++-- 33128/r17/TS33128Payloads.asn | 4 ++-- 33128/r18/TS33128Payloads.asn | 4 ++-- 33128/r19/TS33128Payloads.asn | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/33128/r16/TS33128Payloads.asn b/33128/r16/TS33128Payloads.asn index 2e11638b..357171a3 100644 --- a/33128/r16/TS33128Payloads.asn +++ b/33128/r16/TS33128Payloads.asn @@ -1,5 +1,5 @@ TS33128Payloads -{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r16(16) version15(15)} +{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r16(16) version16(16)} DEFINITIONS IMPLICIT TAGS EXTENSIBILITY IMPLIED ::= @@ -9,7 +9,7 @@ BEGIN -- Relative OIDs -- ============= -tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r16(16) version15(15)} +tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r16(16) version16(16)} xIRIPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xIRI(1)} xCCPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xCC(2)} diff --git a/33128/r17/TS33128Payloads.asn b/33128/r17/TS33128Payloads.asn index b23b5291..d6a8abb5 100644 --- a/33128/r17/TS33128Payloads.asn +++ b/33128/r17/TS33128Payloads.asn @@ -1,5 +1,5 @@ TS33128Payloads -{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r17(17) version11(11)} +{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r17(17) version12(12)} DEFINITIONS IMPLICIT TAGS EXTENSIBILITY IMPLIED ::= @@ -9,7 +9,7 @@ BEGIN -- Relative OIDs -- ============= -tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r17(17) version11(11)} +tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r17(17) version12(12)} xIRIPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xIRI(1)} xCCPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xCC(2)} diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index f2264a1c..89783b61 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -1,5 +1,5 @@ TS33128Payloads -{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r18(18) version9(9)} +{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r18(18) version11(11)} DEFINITIONS IMPLICIT TAGS EXTENSIBILITY IMPLIED ::= @@ -18,7 +18,7 @@ IMPORTS -- Relative OIDs -- ============= -tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r18(18) version9(9)} +tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r18(18) version11(11)} xIRIPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xIRI(1)} xCCPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xCC(2)} diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 078bb961..eac76602 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -1,5 +1,5 @@ TS33128Payloads -{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r19(19) version0(0)} +{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r19(19) version1(1)} DEFINITIONS IMPLICIT TAGS EXTENSIBILITY IMPLIED ::= @@ -18,7 +18,7 @@ IMPORTS -- Relative OIDs -- ============= -tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r19(19) version0(0)} +tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r19(19) version1(1)} xIRIPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xIRI(1)} xCCPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xCC(2)} -- GitLab From 1312f9ff52abd10db8dab8a6fcd50649494a75ca Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 4 Nov 2024 12:57:35 +0000 Subject: [PATCH 62/68] Moving CI/CD for artefact generation back to Forge container registry --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 60e3e16b..56c28f47 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -43,7 +43,7 @@ editorconfig_check: generate_artefacts: - image: "mcanterb/forgelib" + image: "forge.3gpp.org:5050/sa3/li/forgelib" stage: build interruptible: true rules: -- GitLab From a4fda77fd644bb433f3f5cb6703110f03f96f31e Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 4 Nov 2024 12:59:36 +0000 Subject: [PATCH 63/68] Reverting accidental change to asn_process.py --- testing/asn_process.py | 29 +---------------------------- 1 file changed, 1 insertion(+), 28 deletions(-) diff --git a/testing/asn_process.py b/testing/asn_process.py index 6e775f86..6a56e21b 100755 --- a/testing/asn_process.py +++ b/testing/asn_process.py @@ -68,28 +68,6 @@ def syntaxCheckASN (fileList): } return results - -duplicateObjects = { - '102232-1/LI-PS-PDU.asn' : [ - 'CCPayload', - 'IRIPayload', - 'Location' - ], - 'testing/mod1.asn' : [ - 'ClashField' - ] -} -def fixDuplicateObjects(filename): - stringContent = filename.read_text() - for object in duplicateObjects[filename.as_posix()]: - stringContent = stringContent.replace(f'{object} ::=', f'Native{object} ::=') - stringContent = stringContent.replace(f'SEQUENCE OF {object}', f'SEQUENCE OF Native{object}') - #stringContent = sub(f"]\\w{object}", f"] Native{object}", stringContent) - - Path('temp.asn').write_text(stringContent) - return 'temp.asn' - - def compileAllTargets (compileTargets): """ Attempts to compile a set of compile targets using the pycrate ASN1 tools @@ -118,12 +96,7 @@ def compileAllTargets (compileTargets): GLOBAL.clear() for filename in target: pFile = Path(filename) - if pFile.as_posix() in duplicateObjects: - tmpFile = Path(fixDuplicateObjects(pFile)) - fileTexts.append(tmpFile.read_text()) - #tmpFile.unlink() - else: - fileTexts.append(pFile.read_text()) + fileTexts.append(pFile.read_text()) fileNames.append(filename) logging.debug (f" Loading {filename}") compile_text(fileTexts, filenames = fileNames) -- GitLab From ff4868c96bff702de82355281f07f4c28aa0896e Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 4 Nov 2024 13:01:50 +0000 Subject: [PATCH 64/68] Removing whitespace for ec compliance --- 33128/r19/TS33128Payloads.asn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index eac76602..1610bd9f 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -582,7 +582,7 @@ IRIEvent ::= CHOICE nEF5GVNGroupUpdate [168] NEF5GVNGroupUpdate, nEF5GVNGroupDeletion [169] NEF5GVNGroupDeletion, nEF5GVNGroupQuery [170] NEF5GVNGroupQuery, - + -- HSS events, see clause 7.2.3.3 hSSSubscriberRecordChange [171] HSSSubscriberRecordChange, @@ -590,7 +590,7 @@ IRIEvent ::= CHOICE iMSHSSServingSystemMessage [172] IMSHSSServingSystemMessage, iMSHSSStartOfInterceptionWithRegisteredTarget [173] IMSHSSStartOfInterceptionWithRegisteredTarget, iMSHSSSubscriberRecordChange [174] IMSHSSSubscriberRecordChange, - + -- AMF events, see clause 6.2.2.3, continued from tag 147 aMFUEContextUpdate [175] AMFUEContextUpdate } -- GitLab From 81a2b4206203c380c945489d61397881ec4b2542 Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 2 Dec 2024 09:57:43 +0000 Subject: [PATCH 65/68] Updated references from Lino --- 33128/r19/TS33128Payloads.asn | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/33128/r19/TS33128Payloads.asn b/33128/r19/TS33128Payloads.asn index 1610bd9f..8b2f1c09 100644 --- a/33128/r19/TS33128Payloads.asn +++ b/33128/r19/TS33128Payloads.asn @@ -289,7 +289,7 @@ XIRIEvent ::= CHOICE mMSConvertedFromEmail [165] MMSConvertedFromEmail, mMSConvertedToEmail [166] MMSConvertedToEmail, - -- NEF events, see clause 7.7.X.1 + -- NEF events, see clause 7.7.7.1 nEF5GVNGroupCreation [167] NEF5GVNGroupCreation, nEF5GVNGroupUpdate [168] NEF5GVNGroupUpdate, nEF5GVNGroupDeletion [169] NEF5GVNGroupDeletion, @@ -577,7 +577,7 @@ IRIEvent ::= CHOICE mMSConvertedFromEmail [165] MMSConvertedFromEmail, mMSConvertedToEmail [166] MMSConvertedToEmail, - -- NEF events, see clause 7.7.X.2 + -- NEF events, see clause 7.7.7.2 nEF5GVNGroupCreation [167] NEF5GVNGroupCreation, nEF5GVNGroupUpdate [168] NEF5GVNGroupUpdate, nEF5GVNGroupDeletion [169] NEF5GVNGroupDeletion, @@ -870,7 +870,7 @@ NEFAFSessionWithQoSNotification ::= SEQUENCE aForASSessionWithQoSResponseCode [4] AForASSessionWithQoSResponseCode } --- See clause 7.7.X.1.2 for details of this structure +-- See clause 7.7.7.1.2 for details of this structure NEF5GVNGroupCreation ::= SEQUENCE { aFID [1] AFID, @@ -878,7 +878,7 @@ NEF5GVNGroupCreation ::= SEQUENCE fiveGLanParametersProvision [3] SBIType } --- See clause 7.7.X.1.3 for details of this structure +-- See clause 7.7.7.1.3 for details of this structure NEF5GVNGroupUpdate ::= SEQUENCE { aFID [1] AFID, @@ -887,7 +887,7 @@ NEF5GVNGroupUpdate ::= SEQUENCE fiveGLanParametersProvisionPatch [4] SBIType OPTIONAL } --- See clause 7.7.X.1.4 for details of this structure +-- See clause 7.7.7.1.4 for details of this structure NEF5GVNGroupDeletion ::= SEQUENCE { aFID [1] AFID, @@ -895,7 +895,7 @@ NEF5GVNGroupDeletion ::= SEQUENCE externalGroupID [3] OCTET STRING } --- See clause 7.7.X.1.5 for details of this structure +-- See clause 7.7.7.1.5 for details of this structure NEF5GVNGroupQuery ::= SEQUENCE { aFID [1] AFID, @@ -4708,7 +4708,7 @@ IMSCCUnavailable ::= SEQUENCE sDPState [2] OCTET STRING OPTIONAL } --- See clause 7.12.4.2.X for details of this structure +-- See clause 7.12.4.2.4 for details of this structure IMSDataChannelSetup ::= SEQUENCE { targetIdentity [1] IMPU, @@ -4718,7 +4718,7 @@ IMSDataChannelSetup ::= SEQUENCE mediaInstructionData [5] SBIType OPTIONAL } --- See clause 7.12.4.2.Y for details of this structure +-- See clause 7.12.4.2.5 for details of this structure IMSDataChannelModification ::= SEQUENCE { targetIdentity [1] IMPU, @@ -4728,7 +4728,7 @@ IMSDataChannelModification ::= SEQUENCE mediaInstructions [5] SBIType OPTIONAL } --- See Clause 7.12.4.2.Z for details of this structure +-- See Clause 7.12.4.2.6 for details of this structure IMSDataChannelTermination ::= SEQUENCE { targetIdentity [1] IMPU, -- GitLab From c839f003769c880dee3e8d9d0c07d4966a3e5e39 Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 2 Dec 2024 09:58:02 +0000 Subject: [PATCH 66/68] Updated references from Lino --- 33128/r18/TS33128Payloads.asn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index 89783b61..3742b4a3 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -4587,7 +4587,7 @@ IMSCCUnavailable ::= SEQUENCE sDPState [2] OCTET STRING OPTIONAL } --- See clause 7.12.4.2.X for details of this structure +-- See clause 7.12.4.2.4 for details of this structure IMSDataChannelSetup ::= SEQUENCE { targetIdentity [1] IMPU, @@ -4597,7 +4597,7 @@ IMSDataChannelSetup ::= SEQUENCE mediaInstructionData [5] SBIType OPTIONAL } --- See clause 7.12.4.2.Y for details of this structure +-- See clause 7.12.4.2.5 for details of this structure IMSDataChannelModification ::= SEQUENCE { targetIdentity [1] IMPU, @@ -4607,7 +4607,7 @@ IMSDataChannelModification ::= SEQUENCE mediaInstructions [5] SBIType OPTIONAL } --- See Clause 7.12.4.2.Z for details of this structure +-- See Clause 7.12.4.2.6 for details of this structure IMSDataChannelTermination ::= SEQUENCE { targetIdentity [1] IMPU, -- GitLab From 655b3bd6e3384e91a6fc7dc0c0cad1630aa70808 Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 2 Dec 2024 13:06:27 +0000 Subject: [PATCH 67/68] Correcting R18 OID --- 33128/r18/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index 3742b4a3..244ba984 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -1,5 +1,5 @@ TS33128Payloads -{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r18(18) version11(11)} +{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19) r18(18) version10(10)} DEFINITIONS IMPLICIT TAGS EXTENSIBILITY IMPLIED ::= -- GitLab From 519d74c80991daca30d21bc7ce4dd231892961ab Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 16 Dec 2024 09:26:02 +0000 Subject: [PATCH 68/68] Correctiong R18 OID --- 33128/r18/TS33128Payloads.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/33128/r18/TS33128Payloads.asn b/33128/r18/TS33128Payloads.asn index 244ba984..9a987b2b 100644 --- a/33128/r18/TS33128Payloads.asn +++ b/33128/r18/TS33128Payloads.asn @@ -18,7 +18,7 @@ IMPORTS -- Relative OIDs -- ============= -tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r18(18) version11(11)} +tS33128PayloadsOID RELATIVE-OID ::= {threeGPP(4) ts33128(19) r18(18) version10(10)} xIRIPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xIRI(1)} xCCPayloadOID RELATIVE-OID ::= {tS33128PayloadsOID xCC(2)} -- GitLab