LI-PS-PDU {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) genHeader(1) version32(32)} DEFINITIONS IMPLICIT TAGS ::= BEGIN IMPORTS -- Any of the IMPORTs may be commented out if they are not used (see clause A.3) -- from ETSI TS 103 280 [44] LIID FROM Common-Parameters {itu-t(0) identified-organization(4) etsi(0) common-parameters(3280) version231(231)} -- from ETSI TS 101 671 [4] IRI-Parameters, IRIsContent, Location, Network-Element-Identifier FROM HI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) hi2(1) version18(18)} -- from ETSI TS 101 671 [4] HI1-Operation FROM HI1NotificationOperations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) hi1(0) notificationOperations(1) version7(7)} -- from ETSI TS 102 232-2 [5] EmailCC, EmailIRI, MessagingCC, MessagingMMCC, MessagingIRI FROM EmailPDU {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) email(2) version18(18)} -- from ETSI TS 102 232-3 [6] IPCC, IPIRI, IPIRIOnly FROM IPAccessPDU {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) iPAccess(3) version14(14)} -- from ETSI TS 102 232-4 [32] L2CC, L2IRI, L2IRIOnly FROM L2AccessPDU {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) l2Access(4) version7(7)} -- from ETSI TS 102 232-5 [37] IPMMCC, IPMMIRI FROM IPMultimediaPDU {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) iPMultimedia(5) version13(13)} -- from ETSI TS 102 232-6 [36] PstnIsdnCC, PstnIsdnIRI FROM PstnIsdnPDU {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) pstnIsdn(6) version5(5)} -- from 3GPP TS 33.108 [9] IRI-Parameters, UmtsIRIsContent, CorrelationValues, Location FROM UmtsHI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) hi2(1)} -- The relevant module (including the 3GPP release and version number) needs -- to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] IRI-Parameters, UmtsCS-IRIsContent FROM UmtsCS-HI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) hi2CS(3)} -- The relevant module (including the 3GPP release and version number) needs -- to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] IRI-Parameters, EpsIRIsContent, EPSLocation FROM EpsHI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) hi2eps(8)} -- The relevant module (including the 3GPP release and version number) needs -- to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] IRI-Parameters, ConfIRIsContent FROM CONFHI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) hi2conf(10)} -- The relevant module (including the 3GPP release and version number) needs -- to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] IRI-Parameters, ProSeIRIsContent FROM ProSeHI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) hi2prose (15)} -- The relevant module (including the 3GPP release and version number) needs -- to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] IRI-Parameters, GcseIRIsContent FROM GCSEHI2Operations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) hi2gcse(13)} -- The relevant module (including the 3GPP release and version number) needs -- to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] CC-PDU FROM Umts-HI3-PS {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2) threeGPP(4) hi3(2)} -- The relevant module (including the 3GPP release and version number) -- needs to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] CC-PDU FROM Eps-HI3-PS {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2) threeGPP(4) hi3eps(9)} -- The relevant module (including the 3GPP release and version number) -- needs to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] Conf-CC-PDU FROM CONF-HI3-IMS {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2) threeGPP(4) hi3conf(11)} -- The relevant module (including the 3GPP release and version number) -- needs to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] Voip-CC-PDU FROM VoIP-HI3-IMS {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2) threeGPP(4) hi3voip(12)} -- The relevant module (including the 3GPP release and version number) -- needs to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] Gcse-CC-PDU FROM GCSE-HI3 {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2) threeGPP(4) hi3gcse(14)} -- The relevant module (including the 3GPP release and version number) -- needs to be chosen when compiling the application. -- from 3GPP TS 33.108 [9] ThreeGPP-HI1-Operation FROM ThreeGPP-HI1NotificationOperations {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) hi1(0) notificationOperations(1)} -- The relevant module (including the 3GPP release and version number) -- needs to be chosen when compiling the application. -- TS 101 671 HI1 and 3GPP HI1 are related to the same functionality but are -- corresponding to different implementations and exclusive usage each other. -- The implementation depends of national regulations or LEA/CSP negotiations. -- 3GPP HI1 may be used with other services/networks than 3GPP's one. -- from 3GPP TS 33.108 [9] CSvoice-CC-PDU FROM CSvoice-HI3-IP {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) hi3CSvoice(18)} -- The relevant module (including the 3GPP release and version number) -- needs to be chosen when compiling the application. -- The implementation of the CS domain delivery in IP have to be based on 3GPP TS 33.108 [9]. -- from ETSI TS 101 909-20-1 [33] TARGETACTIVITYMONITOR-1, TTRAFFIC, CTTRAFFIC FROM TS101909201 {itu-t(0) identified-organization(4) etsi(0) ts101909(1909) part20(20) subpart1(1) interceptVersion(0)} -- from ETSI TS 101 909-20-2 [34] TARGETACTIVITYMONITOR, TTRAFFIC, CTTRAFFIC FROM TS101909202 {itu-t(0) identified-organization(4) etsi(0) ts101909(1909) part20(20) subpart2(2) interceptVersion(0)} -- from ETSI TS 103 462 [45] ILHIPayload FROM ILHIPDU {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) informationHandover(4) ilhi(0) ilhiPdu(0) version2(2)} -- This import is only used for the handover between LEMFs. -- from 3GPP TS 33.128 [46] LINotificationPayload, IRIPayload, CCPayload FROM TS33128Payloads {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) threeGPP(4) ts33128(19)}; -- The relevant module (including the 3GPP release and version number) -- needs to be chosen when compiling the application. -- end of IMPORTS -- ============================= -- Object Identifier Definitions -- ============================= lawfulInterceptDomainId OBJECT IDENTIFIER ::= {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2)} li-psDomainId OBJECT IDENTIFIER ::= {lawfulInterceptDomainId li-ps(5) genHeader(1) version32(32)} -- ==================== -- Top-level definition -- ==================== PS-PDU ::= SEQUENCE { pSHeader [1] PSHeader, payload [2] Payload } PSHeader ::= SEQUENCE { li-psDomainId [0] OBJECT IDENTIFIER, lawfulInterceptionIdentifier [1] LawfulInterceptionIdentifier, -- As of ASN.1 version 26 this parameter is included from ETSI TS 103 280 [44] authorizationCountryCode [2] PrintableString (SIZE (2)) OPTIONAL, -- see clause 5.2.3 communicationIdentifier [3] CommunicationIdentifier, sequenceNumber [4] INTEGER (0..4294967295), timeStamp [5] GeneralizedTime OPTIONAL, -- see clause 5.2.6 ..., interceptionPointID [6] PrintableString (SIZE (1..8)) OPTIONAL, -- see clause 5.2.11 microSecondTimeStamp [7] MicroSecondTimeStamp OPTIONAL, timeStampQualifier [8] TimeStampQualifier OPTIONAL, extendedInterceptionPointID [9] OCTET STRING (SIZE (1..65535)) OPTIONAL, -- see clause 5.2.13 networkFunctionIdentifier [10] OCTET STRING (SIZE (1..65535)) OPTIONAL -- see clause 5.2.14 } Payload ::= CHOICE { iRIPayloadSequence [0] SEQUENCE OF IRIPayload, cCPayloadSequence [1] SEQUENCE OF CCPayload, -- Clause 6.2.3 explains how to include more than one payload in the same PDU tRIPayload [2] TRIPayload, ..., hI1-Operation [3] HI1-Operation, encryptionContainer [4] EncryptionContainer, threeGPP-HI1-Operation [5] ThreeGPP-HI1-Operation, -- This structure may be functionally redundant with hI1-Operation from ETSI TS 101 671 [4] iLHIPayload [6] SEQUENCE OF ILHIPayload, -- For typical use cases see ETSI TS 103 462 [45] hI4Payload [7] SEQUENCE OF HI4Payload } TimeStampQualifier ::= ENUMERATED { unknown(0), timeOfInterception(1), timeOfMediation(2), ..., timeOfAggregation(3) } HI4Payload ::= CHOICE { threeGPP-LI-Notification [1] TS33128Payloads.LINotificationPayload, ... } -- ==================================== -- Items contained within the PS-Header -- ==================================== CommunicationIdentifier ::= SEQUENCE { networkIdentifier [0] NetworkIdentifier, communicationIdentityNumber [1] INTEGER (0..4294967295) OPTIONAL, -- in case of transport of HI1 messages not required -- Mandatory for CC and IRI, with certain exceptions (see clause 5.2.4) deliveryCountryCode [2] PrintableString (SIZE (2)) OPTIONAL, -- see clause 5.2.4 ..., cINExtension [3] CorrelationValues OPTIONAL -- To be used when a single INTEGER is not sufficient to identify -- a particular session (see clause 5.2.4) } NetworkIdentifier ::= SEQUENCE { operatorIdentifier [0] OCTET STRING (SIZE(1..16)), networkElementIdentifier [1] OCTET STRING (SIZE(1..16)) OPTIONAL, ..., eTSI671NEID [2] Network-Element-Identifier OPTIONAL -- For network element identifier, use either networkElementIdentifier or eTSI671NEID } -- ========================== -- Definitions for CC Payload -- ========================== CCPayload ::= SEQUENCE { payloadDirection [0] PayloadDirection OPTIONAL, timeStamp [1] GeneralizedTime OPTIONAL, -- For aggregated payloads (see clause 6.2.3) cCContents [2] CCContents, ..., microSecondTimeStamp [3] MicroSecondTimeStamp OPTIONAL, -- For aggregated payloads (see clause 6.2.3) timeStampQualifier [4] TimeStampQualifier OPTIONAL } PayloadDirection ::= ENUMERATED { fromTarget(0), toTarget(1), ..., indeterminate(2), -- Indication that the direction was indeterminate combined(3), -- Indication applicable to some services that the traffic is actually a combination -- of To and From notapplicable(4) -- Indication that direction of interceptable service does not make sense } CCContents ::= CHOICE -- Any of these choices may be commented out if they are not being used, see clause A.3 { -- tag [0] deprecated in version15, ETSI TS 102 232-1 V3.3.1 (2013-02) emailCC [1] EmailCC, iPCC [2] IPCC, -- tag [3] not used uMTSCC [4] OCTET STRING, ..., -- tag [5] deprecated in version15, ETSI TS 102 232-1 V3.3.1 (2013-02) l2CC [6] L2CC, tTRAFFIC-1 [7] TS101909201.TTRAFFIC, cTTRAFFIC-1 [8] TS101909201.CTTRAFFIC, tTRAFFIC-2 [9] TS101909202.TTRAFFIC, cTTRAFFIC-2 [10] TS101909202.CTTRAFFIC, pstnIsdnCC [11] PstnIsdnCC, iPMMCC [12] IPMMCC, -- tag [13] deprecated in version32, ETSI TS 102 232-1 V3.24.1 (2021-07) messagingCC [14] MessagingCC, ePSCC [15] OCTET STRING, uMTSCC-CC-PDU [16] Umts-HI3-PS.CC-PDU, ePSCC-CC-PDU [17] Eps-HI3-PS.CC-PDU, messagingMMCC [18] MessagingMMCC, confCC-CC-PDU [19] CONF-HI3-IMS.Conf-CC-PDU, voipCC-CC-PDU [20] VoIP-HI3-IMS.Voip-CC-PDU, gcseCC-CC-PDU [21] GCSE-HI3.Gcse-CC-PDU, cSvoice-CC-PDU [22] CSvoice-HI3-IP.CSvoice-CC-PDU, threeGPP33128DefinedCC [23] OCTET STRING (CONTAINING TS33128Payloads.CCPayload) } MicroSecondTimeStamp ::= SEQUENCE { seconds [0] INTEGER (0..18446744073709551615), -- number of seconds since 1970-1-1 00:00Z also known as unix time epoch microSeconds [1] INTEGER (0..999999), ... } -- =========================== -- Definitions for IRI Payload -- =========================== IRIPayload ::= SEQUENCE { iRIType [0] IRIType OPTIONAL, -- See clause 5.2.10 timeStamp [1] GeneralizedTime OPTIONAL, -- For aggregated payloads (see clause 6.2.3) iRIContents [2] IRIContents, ..., microSecondTimeStamp [3] MicroSecondTimeStamp OPTIONAL, -- For aggregated payloads (see clause 6.2.3) timeStampQualifier [4] TimeStampQualifier OPTIONAL, sessionDirection [5] PayloadDirection OPTIONAL, -- If the sessionDirection field is to be used for a given service then -- the exact meaning and use of the field will be described in the -- relevant service-specific details payloadDirection [6] PayloadDirection OPTIONAL -- If the payloadDirection field is to be used for a given service then -- the exact meaning and use of the field will be described in the -- relevant service-specific details } IRIType ::= ENUMERATED { iRI-Begin(1), iRI-End(2), iRI-Continue(3), iRI-Report(4) } IRIContents ::= CHOICE -- Any of these choices may be commented out if they are not being used (see clause A.3) { -- tag [0] deprecated in version15, ETSI TS 102 232-1 V3.3.1 (2013-02) emailIRI [1] EmailIRI, iPIRI [2] IPIRI, iPIRIOnly [3] IPIRIOnly, uMTSIRI [4] UMTSIRI, eTSI671IRI [5] ETSI671IRI, ..., l2IRI [6] L2IRI, l2IRIOnly [7] L2IRIOnly, tARGETACTIVITYMONITOR-1 [8] TS101909201.TARGETACTIVITYMONITOR-1, tARGETACTIVITYMONITOR-2 [9] TS101909202.TARGETACTIVITYMONITOR, pstnIsdnIRI [10] PstnIsdnIRI, iPMMIRI [11] IPMMIRI, -- tag [12] deprecated in version32, ETSI TS 102 232-1 V3.24.1 (2021-07) -- tag [13] deprecated in version32, ETSI TS 102 232-1 V3.24.1 (2021-07) messagingIRI [14] MessagingIRI, ePSIRI [15] EPSIRI, confIRI [16] ConfIRI, proseIRI [17] ProSeIRI, gcseIRI [18] GcseIRI, threeGPP33128DefinedIRI [19] OCTET STRING (CONTAINING TS33128Payloads.IRIPayload) } UMTSIRI ::= CHOICE -- This structure may be commented out if not used { iRI-Parameters [0] UmtsHI2Operations.IRI-Parameters, umtsIRIsContent [1] UmtsIRIsContent, ..., iRI-CS-Parameters [2] UmtsCS-HI2Operations.IRI-Parameters, umtsCS-IRIsContent [3] UmtsCS-IRIsContent } ETSI671IRI ::= CHOICE -- This structure may be commented out if not used { iRI-Parameters [0] HI2Operations.IRI-Parameters, iRIsContent [1] IRIsContent, ... } EPSIRI ::= CHOICE -- This structure may be commented out if not used { iRI-EPS-Parameters [0] EpsHI2Operations.IRI-Parameters, epsIRIsContent [1] EpsIRIsContent, ... } ConfIRI ::= CHOICE -- This structure may be commented out if not used { iRI-Conf-Parameters [0] CONFHI2Operations.IRI-Parameters, confIRIsContent [1] ConfIRIsContent, ... } ProSeIRI ::= CHOICE -- This structure may be commented out if not used { iRI-ProSe-Parameters [0] ProSeHI2Operations.IRI-Parameters, proseIRIsContent [1] ProSeIRIsContent, ... } GcseIRI ::= CHOICE -- This structure may be commented out if not used { iRI-Gcse-Parameters [0] GCSEHI2Operations.IRI-Parameters, gcseIRIsContent [1] GcseIRIsContent, ... } -- =========================== -- Definitions for TRI Payload -- =========================== TRIPayload ::= CHOICE { integrityCheck [0] IntegrityCheck, testPDU [1] NULL, paddingPDU [2] OCTET STRING, -- Undefined contents (will be discarded) keep-alive [3] NULL, keep-aliveResponse [4] NULL, firstSegmentFlag [5] NULL, lastSegmentFlag [6] NULL, ..., cINReset [7] NULL, operatorLeaMessage [8] OperatorLeaMessage, optionRequest [9] OptionRequest, optionResponse [10] OptionResponse, optionComplete [11] NULL, pDUAcknowledgementRequest [12] NULL, pDUAcknowledgementResponse [13] NULL } IntegrityCheck ::= SEQUENCE { includedSequenceNumbers [0] SEQUENCE OF INTEGER (0..4294967295), -- gives the order the PDUs were processed checkType [1] CheckType, dataType [2] DataType OPTIONAL, -- From version5(5) the dataType is mandatory for hashes and for signatures -- (see clause 7.2.3) checkValue [3] OCTET STRING, -- Network byte order -- If checkValue contains a signature, the octet string field space may be -- used to insert the appropriate ASN.1 DER or BER encoded structure for the -- DSS/DSA signature as described in IETF RFC 3279 [43], clause 2.2.2. ..., hashAlgorithm [4] HashAlgorithm OPTIONAL -- Clarifies the hash function if checkType is hash(1). -- If used, it shall be present for each checkType hash(1). } CheckType ::= ENUMERATED { hash(1), -- hash value signature(2), -- DSS/DSA signature ... } DataType ::= ENUMERATED { iRI(1), cC(2), ..., iLHI(3) } HashAlgorithm ::= ENUMERATED { sHA-1(1), -- Included for legacy/migration purposes only, not to be used for new implementations sHA-256(2), sHA-384(3), sHA-512(4), ... } Option ::= CHOICE { pDUAcknowledgement [0] NULL, ... } OptionRequest ::= SEQUENCE { requestedOptions [0] SEQUENCE OF Option, ... } OptionResponse ::= SEQUENCE { acceptedOptions [0] SEQUENCE OF Option, declinedOptions [1] SEQUENCE OF Option, ... } -- ================================== -- Definitions for OperatorLeaMessage -- ================================== OperatorLeaMessage ::= SEQUENCE { messagePriority [0] OperatorLeaMessagePriority, message [1] OCTET STRING (SIZE(1..255)), ... } OperatorLeaMessagePriority ::= ENUMERATED { error(1), -- reporting of error conditions that have impact on the quality of the -- intercepted data informational(2), -- reporting of conditions that will not have direct impact on the quality of -- the intercepted data ... } -- =================================== -- Definitions for EncryptionContainer -- =================================== EncryptionContainer ::= SEQUENCE { encryptionType [0] EncryptionType, encryptedPayload [1] OCTET STRING, -- once decrypted, it can be interpreted as EncryptedPayload ..., encryptedPayloadType [2] EncryptedPayloadType OPTIONAL } EncryptionType ::= ENUMERATED { none(1), -- No encryption is applied. national-option(2), -- Use this option when an encryption scheme is negotiated on a national level aES-192-CBC(3), -- The Advanced Encryption Standard using a 192 bit key in CBC mode aES-256-CBC(4), -- The Advanced Encryption Standard using a 256 bit key in CBC mode blowfish-192-CBC(5), -- Blowfish (www.schneier.com/blowfish.html) using a 192 bit key in CBC mode blowfish-256-CBC(6), -- Blowfish using a 256 bit key in CBC mode threedes-cbc(7), -- Triple-DES using a 192 bit key in CBC mode ... } EncryptedPayload ::= SEQUENCE { byteCounter [0] INTEGER (0..18446744073709551615), -- The sum of the sizes of all PDUs before this PDU. -- It is initialized with the unixTime (number of seconds since 01-01-1970) -- multiplied by 2^32 at first use. -- Where N is sequencenumber of the n-th PDU in transfer, and size(PDU(N)) -- as defined in annex G: -- IF N > 0 THEN -- PDU[N].byteCounter = PDU[N-1].byteCounter + size(PDU[N-1]) -- ELSE -- PDU[N].byteCounter = ( unixTime(now) << 32 ) -- ENDIF payload [1] Payload, ... } EncryptedPayloadType ::= ENUMERATED { unknown(1), part2(2), -- encrypted payload is ETSI TS 102 232-2 [5] part3(3), -- encrypted payload is ETSI TS 102 232-3 [6] part4(4), -- encrypted payload is ETSI TS 102 232-4 [32] part5(5), -- encrypted payload is ETSI TS 102 232-5 [37] part6(6), -- encrypted payload is ETSI TS 102 232-6 [36] part7(7), -- encrypted payload is ETSI TS 102 232-7 [38] ..., part1(8) -- encrypted payload is ETSI TS 102 232-1 (the present document) } -- =================================== -- Common Parameters -- =================================== Location ::= SEQUENCE -- This is a common parameter, the use of this parameter is described in clause 4.5 { umtsHI2Location [0] UmtsHI2Operations.Location OPTIONAL, epsLocation [1] EpsHI2Operations.EPSLocation OPTIONAL, ..., wlanLocationAttributes [2] WlanLocationAttributes OPTIONAL, eTSI671HI2Location [3] HI2Operations.Location OPTIONAL } WlanLocationAttributes ::= SEQUENCE { wlanAPMACAddress [0] OCTET STRING (SIZE(6)) OPTIONAL, -- 48-bit (6 octet) MAC address of the WLAN access point derived from the BSSID ... } IPAddress ::= SEQUENCE -- This parameter was previously imported from ETSI TS 101 671 [4] but has been copied -- to ETSI TS 102 232-1 (the present document). It is not recommended to use this parameter in -- future change requests. Suggested approach is to use a parameter from ETSI TS 103 280 [44] -- instead. { iP-type [1] ENUMERATED { iPV4(0), iPV6(1), ... }, iP-value [2] IP-value, iP-assignment [3] ENUMERATED { static(1), -- The static coding shall be used to report a static address. dynamic(2), -- The dynamic coding shall be used to report a dynamically allocated address. notKnown(3), -- The notKnown coding shall be used to report other than static or dynamically -- allocated IP addresses. ... } OPTIONAL, ..., iPv6PrefixLength [4] INTEGER (1..128) OPTIONAL, -- Indicates the length of the prefix delegated by the CSP to the subscriber -- example: 60 if IP address is "2001:db8:0:85a3::ac1f:8001/60" -- Mandatory in case where the iP-value contains an IPv6 binary value iPv4SubnetMask [5] OCTET STRING (SIZE(4)) OPTIONAL -- For IPv4 addresses, this indicates the subnet mask to be applied to the iP-value field. -- The subnet mask is intended to be presented as a binary value, e.g. "ff ff ff f8" to -- represent the dotted-decimal subnet mask of "255.255.255.248" corresponding to -- a /29 CIDR-format subnet mask } IP-value ::= CHOICE { iPBinaryAddress [1] OCTET STRING (SIZE(4..16)), -- In case of IPv6, the Prefix Length is provided by the "iPv6PrefixLength" -- In case of IPv4, the netmask is provided by the "iPv4SubnetMask" iPTextAddress [2] IA5String (SIZE(7..45)), -- In case of IPv6, the delivered iPTextAddress field could include a complete -- single IPv6-Address or an IPv6-Prefix for a subnetwork on the target side. -- In case of IPv4, the delivered iPTextAddress field could include a single -- IPv4 address or an IPv4address/netmask, for example "192.168.1.1" or "192.168.1.1/24" ... } LawfulInterceptionIdentifier ::= LIID -- LIID is a common parameter imported from ETSI TS 103 280 [44]. -- It is redefined as LawfulInterceptionIdentifier in this -- module to preserve the original type name during the -- removal of imports from ETSI TS 101 671 [4]. END --end of LI-PS-PDU