From 4a2fb42dee6b44c35e0a211a335356e8dc9e471b Mon Sep 17 00:00:00 2001 From: vanschelts Date: Mon, 10 Jun 2024 14:11:39 +0200 Subject: [PATCH 1/8] Added IRI packet report sequence --- 102232-3/IPAccessPDU.asn | 57 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) diff --git a/102232-3/IPAccessPDU.asn b/102232-3/IPAccessPDU.asn index f418ce5..312feef 100644 --- a/102232-3/IPAccessPDU.asn +++ b/102232-3/IPAccessPDU.asn @@ -20,6 +20,7 @@ iPAccessPDUObjId RELATIVE-OID ::= {li-ps(5) iPAccess(3) version17( iPIRIObjId RELATIVE-OID ::= {iPAccessPDUObjId iRI(1)} iPCCObjId RELATIVE-OID ::= {iPAccessPDUObjId cC(2)} iPIRIOnlyObjId RELATIVE-OID ::= {iPAccessPDUObjId iRIOnly(3)} +iPIRIPacketReportObjId RELATIVE-OID ::= {iPAccessPDUObjId iRIPacketReport(4)} -- definitions are relative to -- {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2)} @@ -270,11 +271,14 @@ FramedRoute ::= CHOICE ... } - -- ===================================================== -- Intercept-related information for IRI-Only intercepts -- ===================================================== +-- This module is included for legacy/migration purposes +-- only, new implementations are encouraged to implement +-- IRI Packet Reports + IPIRIOnly ::= SEQUENCE { iPIRIOnlyObjId [0] RELATIVE-OID, @@ -371,5 +375,56 @@ PDSRSummaryTrigger ::= ENUMERATED ... } +-- ==================================================== +-- Intercept-related information for IRI Packet Reports +-- ==================================================== + +IPIRIPacketReport ::= SEQUENCE +{ + iPIRIPacketReportObjId [0] RELATIVE-OID, + trigger [1] PacketReportTrigger, + packet [2] OCTET STRING, + indications [3] PacketReportIndications, + bidirectional [4] BOOLEAN OPTIONAL, + packetCount [5] INTEGER OPTIONAL, + packetCountReverse [6] INTEGER OPTIONAL, + byteCount [7] INTEGER OPTIONAL, + byteCountReverse [8] INTEGER OPTIONAL, + firstTimestamp [9] GeneralizedTime OPTIONAL, + lastTimestamp [10] GeneralizedTime OPTIONAL, + ... +} + +PacketReportTrigger ::= ENUMERATED +{ + startOfFlow(0), + endOfFlow(1), + entireFlow(2), + flowTimeout(3), + flowTimerExpiration(4), + flowPacketCount(5), + flowByteCount(6), + headerReport(7), + endOfReport(8), + ... +} + +PacketReportIndications ::= BIT STRING +{ + zeroedIPv4TotalLength(0), + zeroedIPv4Flags(1), + zeroedIPv4TimeToLive(2), + zeroedIPv4HeaderChecksum(3), + zeroedIPv6PayloadLength(4), + removedIPv6ExtensionHeaders(5), + zeroedTCPSequenceNumber(6), + zeroedTCPAcknowledgementNumber(7), + zeroedTCPFlags(8), + zeroedTCPWindowSize(9), + zeroedTCPChecksum(10), + zeroedUDPLength(11), + zeroedUDPChecksum(12), + ... +} END -- end of IPAccessPDU -- GitLab From 2b3fbbfe6f5cfd10c0153fe643f86649c200fc72 Mon Sep 17 00:00:00 2001 From: vanschelts Date: Tue, 11 Jun 2024 11:45:57 +0200 Subject: [PATCH 2/8] Removed extension marker from BIT STRING (not required) --- 102232-3/IPAccessPDU.asn | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/102232-3/IPAccessPDU.asn b/102232-3/IPAccessPDU.asn index 312feef..83fe43c 100644 --- a/102232-3/IPAccessPDU.asn +++ b/102232-3/IPAccessPDU.asn @@ -423,8 +423,7 @@ PacketReportIndications ::= BIT STRING zeroedTCPWindowSize(9), zeroedTCPChecksum(10), zeroedUDPLength(11), - zeroedUDPChecksum(12), - ... + zeroedUDPChecksum(12) } END -- end of IPAccessPDU -- GitLab From 44c13b0fbb3771020e99e88a891026c5b37d72b9 Mon Sep 17 00:00:00 2001 From: vanschelts Date: Thu, 20 Jun 2024 10:53:06 +0200 Subject: [PATCH 3/8] Revision 1 of the ASN.1 based on various comments --- 102232-3/IPAccessPDU.asn | 80 ++++++++++++++++++++++++---------------- 1 file changed, 49 insertions(+), 31 deletions(-) diff --git a/102232-3/IPAccessPDU.asn b/102232-3/IPAccessPDU.asn index 83fe43c..8a9f005 100644 --- a/102232-3/IPAccessPDU.asn +++ b/102232-3/IPAccessPDU.asn @@ -375,55 +375,73 @@ PDSRSummaryTrigger ::= ENUMERATED ... } --- ==================================================== --- Intercept-related information for IRI Packet Reports --- ==================================================== +-- =================================================== +-- Intercept-related information for IP Packet Reports +-- =================================================== IPIRIPacketReport ::= SEQUENCE { iPIRIPacketReportObjId [0] RELATIVE-OID, - trigger [1] PacketReportTrigger, - packet [2] OCTET STRING, - indications [3] PacketReportIndications, - bidirectional [4] BOOLEAN OPTIONAL, - packetCount [5] INTEGER OPTIONAL, - packetCountReverse [6] INTEGER OPTIONAL, - byteCount [7] INTEGER OPTIONAL, - byteCountReverse [8] INTEGER OPTIONAL, - firstTimestamp [9] GeneralizedTime OPTIONAL, - lastTimestamp [10] GeneralizedTime OPTIONAL, + report [1] PacketReport, + ... +} + +PacketReport ::= CHOICE +{ + header [1] PacketReportHeader, + summary [2] PacketReportSummary, + ... +} + +PacketReportHeader ::= SEQUENCE +{ + header [1] OCTET STRING, + indications [2] PacketReportIndications, + ... +} + +PacketReportSummary ::= SEQUENCE +{ + header [1] OCTET STRING, + indications [2] PacketReportIndications, + trigger [3] PacketReportTrigger, + packetCount [4] INTEGER OPTIONAL, + byteCount [5] INTEGER OPTIONAL, + firstTimestamp [6] GeneralizedTime OPTIONAL, + lastTimestamp [7] GeneralizedTime OPTIONAL, ... } PacketReportTrigger ::= ENUMERATED { - startOfFlow(0), - endOfFlow(1), - entireFlow(2), + flowStart(1), + flowEnd(2), flowTimeout(3), flowTimerExpiration(4), flowPacketCount(5), flowByteCount(6), - headerReport(7), - endOfReport(8), + sessionTimerExpiration(7), + sessionPacketCount(8), + sessionByteCount(9), + reportEnd(10), ... } PacketReportIndications ::= BIT STRING { - zeroedIPv4TotalLength(0), - zeroedIPv4Flags(1), - zeroedIPv4TimeToLive(2), - zeroedIPv4HeaderChecksum(3), - zeroedIPv6PayloadLength(4), - removedIPv6ExtensionHeaders(5), - zeroedTCPSequenceNumber(6), - zeroedTCPAcknowledgementNumber(7), - zeroedTCPFlags(8), - zeroedTCPWindowSize(9), - zeroedTCPChecksum(10), - zeroedUDPLength(11), - zeroedUDPChecksum(12) + zeroedIPv4TotalLength(1), + zeroedIPv4Flags(2), + zeroedIPv4TimeToLive(3), + zeroedIPv4HeaderChecksum(4), + zeroedIPv6PayloadLength(5), + removedIPv6ExtensionHeaders(6), + zeroedTCPSequenceNumber(7), + zeroedTCPAcknowledgementNumber(8), + zeroedTCPFlags(9), + zeroedTCPWindowSize(10), + zeroedTCPChecksum(11), + zeroedUDPLength(12), + zeroedUDPChecksum(13) } END -- end of IPAccessPDU -- GitLab From da2f88668a4c70d0b560449eb517bdf18e076f2e Mon Sep 17 00:00:00 2001 From: vanschelts Date: Thu, 20 Jun 2024 10:57:55 +0200 Subject: [PATCH 4/8] Align note with spec text --- 102232-3/IPAccessPDU.asn | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/102232-3/IPAccessPDU.asn b/102232-3/IPAccessPDU.asn index 8a9f005..46722c2 100644 --- a/102232-3/IPAccessPDU.asn +++ b/102232-3/IPAccessPDU.asn @@ -275,9 +275,9 @@ FramedRoute ::= CHOICE -- Intercept-related information for IRI-Only intercepts -- ===================================================== --- This module is included for legacy/migration purposes --- only, new implementations are encouraged to implement --- IRI Packet Reports +-- The PDHR and PDSR mechanisms have been superseded by +-- the IPPR mechanism which is defined in clause 6.2.5. +-- New implementations should use the IPPR mechanism. IPIRIOnly ::= SEQUENCE { -- GitLab From 327611bd2e63ddb3ce2eff5912bbf5cf168b4567 Mon Sep 17 00:00:00 2001 From: vanschelts Date: Thu, 20 Jun 2024 10:59:57 +0200 Subject: [PATCH 5/8] ASN.1 formatting --- 102232-3/IPAccessPDU.asn | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/102232-3/IPAccessPDU.asn b/102232-3/IPAccessPDU.asn index 46722c2..2213800 100644 --- a/102232-3/IPAccessPDU.asn +++ b/102232-3/IPAccessPDU.asn @@ -395,20 +395,20 @@ PacketReport ::= CHOICE PacketReportHeader ::= SEQUENCE { - header [1] OCTET STRING, - indications [2] PacketReportIndications, + header [1] OCTET STRING, + indications [2] PacketReportIndications, ... } PacketReportSummary ::= SEQUENCE { - header [1] OCTET STRING, - indications [2] PacketReportIndications, - trigger [3] PacketReportTrigger, - packetCount [4] INTEGER OPTIONAL, - byteCount [5] INTEGER OPTIONAL, - firstTimestamp [6] GeneralizedTime OPTIONAL, - lastTimestamp [7] GeneralizedTime OPTIONAL, + header [1] OCTET STRING, + indications [2] PacketReportIndications, + trigger [3] PacketReportTrigger, + packetCount [4] INTEGER OPTIONAL, + byteCount [5] INTEGER OPTIONAL, + firstTimestamp [6] GeneralizedTime OPTIONAL, + lastTimestamp [7] GeneralizedTime OPTIONAL, ... } -- GitLab From b82c16933fa77f4f21e4fb57961ad94897fa1024 Mon Sep 17 00:00:00 2001 From: vanschelts Date: Thu, 20 Jun 2024 11:12:36 +0200 Subject: [PATCH 6/8] Start BIT STRING at 0 --- 102232-3/IPAccessPDU.asn | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/102232-3/IPAccessPDU.asn b/102232-3/IPAccessPDU.asn index 2213800..5298568 100644 --- a/102232-3/IPAccessPDU.asn +++ b/102232-3/IPAccessPDU.asn @@ -429,19 +429,19 @@ PacketReportTrigger ::= ENUMERATED PacketReportIndications ::= BIT STRING { - zeroedIPv4TotalLength(1), - zeroedIPv4Flags(2), - zeroedIPv4TimeToLive(3), - zeroedIPv4HeaderChecksum(4), - zeroedIPv6PayloadLength(5), - removedIPv6ExtensionHeaders(6), - zeroedTCPSequenceNumber(7), - zeroedTCPAcknowledgementNumber(8), - zeroedTCPFlags(9), - zeroedTCPWindowSize(10), - zeroedTCPChecksum(11), - zeroedUDPLength(12), - zeroedUDPChecksum(13) + zeroedIPv4TotalLength(0), + zeroedIPv4Flags(1), + zeroedIPv4TimeToLive(2), + zeroedIPv4HeaderChecksum(3), + zeroedIPv6PayloadLength(4), + removedIPv6ExtensionHeaders(5), + zeroedTCPSequenceNumber(6), + zeroedTCPAcknowledgementNumber(7), + zeroedTCPFlags(8), + zeroedTCPWindowSize(9), + zeroedTCPChecksum(10), + zeroedUDPLength(11), + zeroedUDPChecksum(12) } END -- end of IPAccessPDU -- GitLab From 1c430cbb39b6e2835d0028a45f454bc80ca4d1b4 Mon Sep 17 00:00:00 2001 From: vanschelts Date: Thu, 20 Jun 2024 14:56:30 +0200 Subject: [PATCH 7/8] Removed indications parameter from header --- 102232-3/IPAccessPDU.asn | 1 - 1 file changed, 1 deletion(-) diff --git a/102232-3/IPAccessPDU.asn b/102232-3/IPAccessPDU.asn index 5298568..c1f700d 100644 --- a/102232-3/IPAccessPDU.asn +++ b/102232-3/IPAccessPDU.asn @@ -396,7 +396,6 @@ PacketReport ::= CHOICE PacketReportHeader ::= SEQUENCE { header [1] OCTET STRING, - indications [2] PacketReportIndications, ... } -- GitLab From baecde1b8c061f634a48e2179c1b1210553405ee Mon Sep 17 00:00:00 2001 From: vanschelts Date: Thu, 20 Jun 2024 15:01:05 +0200 Subject: [PATCH 8/8] ASN.1 formatting --- 102232-3/IPAccessPDU.asn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/102232-3/IPAccessPDU.asn b/102232-3/IPAccessPDU.asn index c1f700d..88bee7e 100644 --- a/102232-3/IPAccessPDU.asn +++ b/102232-3/IPAccessPDU.asn @@ -395,7 +395,7 @@ PacketReport ::= CHOICE PacketReportHeader ::= SEQUENCE { - header [1] OCTET STRING, + header [1] OCTET STRING, ... } -- GitLab