Commit 7105ee3e authored by canterburym's avatar canterburym
Browse files

TS 102 232-2 v3.9.1 (2016-03-15) agreed at LI#41 (Sophia-Antipolis, 2016-02-10)

parent e97719de
Pipeline #4089 passed with stage
in 6 seconds
EmailPDU EmailPDU
{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) email(2) version14(14)} {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) email(2) version15(15)}
DEFINITIONS IMPLICIT TAGS ::= DEFINITIONS IMPLICIT TAGS ::=
BEGIN BEGIN
IMPORTS IMPORTS
-- from TS 101 671 [4] -- from TS 101 671 [4]
IPAddress IPAddress
FROM HI2Operations FROM HI2Operations
{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) hi2(1) version18(18)} {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) hi2(1) version18(18)}
-- from TS 102 232-5 [38] -- from TS 102 232-5 [38]
IPMMCC IPMMCC
FROM IPMultimediaPDU FROM IPMultimediaPDU
{itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) iPMultimedia(5) version6(6)}; {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulIntercept(2) li-ps(5) iPMultimedia(5) version6(6)};
-- ============================ -- ============================
-- Object Identifier Definition -- Object Identifier Definition
-- ============================ -- ============================
emailIRIObjId RELATIVE-OID ::= {li-ps(5) email(2) version14(14) iRI(1)} emailIRIObjId RELATIVE-OID ::= {li-ps(5) email(2) version15(15) iRI(1)}
emailCCObjId RELATIVE-OID ::= {li-ps(5) email(2) version14(14) cC(2)} emailCCObjId RELATIVE-OID ::= {li-ps(5) email(2) version15(15) cC(2)}
messagingIRIObjId RELATIVE-OID ::= {li-ps(5) email(2) version14(14) messagingIRI(3)} messagingIRIObjId RELATIVE-OID ::= {li-ps(5) email(2) version15(15) messagingIRI(3)}
messagingCCObjId RELATIVE-OID ::= {li-ps(5) email(2) version14(14) messagingCC(4)} messagingCCObjId RELATIVE-OID ::= {li-ps(5) email(2) version15(15) messagingCC(4)}
messagingMMCCObjId RELATIVE-OID ::= {li-ps(5) email(2) version14(14) messagingMMCC(5)} messagingMMCCObjId RELATIVE-OID ::= {li-ps(5) email(2) version15(15) messagingMMCC(5)}
-- definitions are relative to -- definitions are relative to
-- {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2)} -- {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) lawfulintercept(2)}
-- ============================= -- =============================
-- Email Communications Contents -- Email Communications Contents
-- ============================= -- =============================
EmailCC ::= SEQUENCE EmailCC ::= SEQUENCE
-- EmailCC is the PDU sent for each "piece" of E-mail captured content -- EmailCC is the PDU sent for each "piece" of E-mail captured content
{ {
emailCCObjId [0] RELATIVE-OID, emailCCObjId [0] RELATIVE-OID,
email-Format [1] Email-Format, email-Format [1] Email-Format,
content [2] OCTET STRING content [2] OCTET STRING
-- Network byte order -- Network byte order
} }
Email-Format ::= ENUMERATED Email-Format ::= ENUMERATED
{ {
ip-packet(1), ip-packet(1),
-- When this is the email format, the content will contain the bytes of the IP packet from -- When this is the email format, the content will contain the bytes of the IP packet from
-- the IP header through to the end of the IP packet -- the IP header through to the end of the IP packet
-- Meets requirement E.2.7 -- Meets requirement E.2.7
application(2) application(2)
-- Only the IP stack Layer 4 payload, (i.e. no IP or TCP headers) -- Only the IP stack Layer 4 payload, (i.e. no IP or TCP headers)
-- Meets requirement E.2.8 -- Meets requirement E.2.8
} }
-- ======================================= -- =======================================
-- Intercept-related information for Email -- Intercept-related information for Email
-- ======================================= -- =======================================
EmailIRI ::= SEQUENCE EmailIRI ::= SEQUENCE
-- EmailIRI is the PDU sent for each "piece" of E-mail IRI -- EmailIRI is the PDU sent for each "piece" of E-mail IRI
{ {
emailIRIObjId [0] RELATIVE-OID, emailIRIObjId [0] RELATIVE-OID,
eventType [1] E-mail-Event, eventType [1] E-mail-Event,
client-Address [2] IPAddress OPTIONAL, client-Address [2] IPAddress OPTIONAL,
-- Provided if available -- Provided if available
server-Address [3] IPAddress OPTIONAL, server-Address [3] IPAddress OPTIONAL,
-- Provided if available -- Provided if available
client-Port [4] INTEGER OPTIONAL, client-Port [4] INTEGER OPTIONAL,
-- Provided if available -- Provided if available
server-Port [5] INTEGER OPTIONAL, server-Port [5] INTEGER OPTIONAL,
-- Provided if available -- Provided if available
server-Octets-Sent [6] INTEGER, server-Octets-Sent [6] INTEGER,
client-Octets-Sent [7] INTEGER, client-Octets-Sent [7] INTEGER,
protocol-ID [8] E-mail-Protocol, protocol-ID [8] E-mail-Protocol,
e-mail-Sender [9] UTF8String (SIZE (0..255)) OPTIONAL, e-mail-Sender [9] UTF8String (SIZE (0..255)) OPTIONAL,
-- Not available in some cases; if a value is available, it must be provided -- Not available in some cases; if a value is available, it must be provided
e-mail-Recipients [10] E-mail-Address-List OPTIONAL, e-mail-Recipients [10] E-mail-Address-List OPTIONAL,
-- Not available in some cases; if a value is available, it must be provided -- Not available in some cases; if a value is available, it must be provided
status [11] E-mail-Status, status [11] E-mail-Status,
total-Recipient-Count [12] INTEGER (0..4294967295) OPTIONAL, total-Recipient-Count [12] INTEGER (0..4294967295) OPTIONAL,
message-ID [13] OCTET STRING OPTIONAL, message-ID [13] OCTET STRING OPTIONAL,
-- Network byte order -- Network byte order
nationalParameter [14] OCTET STRING OPTIONAL, nationalParameter [14] OCTET STRING OPTIONAL,
-- Completely defined on a national basis, including byte ordering -- Completely defined on a national basis, including byte ordering
..., ...,
national-EM-ASN1parameters [15] National-EM-ASN1parameters OPTIONAL, national-EM-ASN1parameters [15] National-EM-ASN1parameters OPTIONAL,
-- Completely defined on a national basis -- Completely defined on a national basis
aAAInformation [16] AAAInformation OPTIONAL, aAAInformation [16] AAAInformation OPTIONAL,
e-mail-Sender-Validity [17] ENUMERATED e-mail-Sender-Validity [17] ENUMERATED
{ {
validated(0), validated(0),
-- The operator has assured the e-mail-sender -- The operator has assured the e-mail-sender
nonvalidated(1), nonvalidated(1),
-- The operator does not assure the e-mail-sender -- The operator does not assure the e-mail-sender
... ...
} OPTIONAL } OPTIONAL
} }
E-mail-Status ::= ENUMERATED E-mail-Status ::= ENUMERATED
{ {
status-unknown(1), status-unknown(1),
operation-failed(2), operation-failed(2),
operation-succeeded(3) operation-succeeded(3)
} }
E-mail-Event ::= ENUMERATED E-mail-Event ::= ENUMERATED
{ {
e-mail-send(1), e-mail-send(1),
e-mail-receive(2), e-mail-receive(2),
e-mail-download(3), e-mail-download(3),
..., ...,
e-mail-logon-attempt(4), e-mail-logon-attempt(4),
e-mail-logon(5), e-mail-logon(5),
e-mail-logon-failure(6), e-mail-logon-failure(6),
e-mail-logoff(7), e-mail-logoff(7),
e-mail-partial-download(8), e-mail-partial-download(8),
e-mail-upload(9) e-mail-upload(9)
} }
E-mail-Protocol ::= ENUMERATED E-mail-Protocol ::= ENUMERATED
{ {
smtp(1), smtp(1),
pop3(2), pop3(2),
imap4(3), imap4(3),
webmail(4), webmail(4),
-- See Annex H for more information -- See Annex H for more information
undefined(255), undefined(255),
-- The protocol is not known or not representable by the current enumeration -- The protocol is not known or not representable by the current enumeration
... ...
} }
E-mail-Address-List ::= SEQUENCE (SIZE (0..1023)) OF UTF8String(SIZE (0..255)) E-mail-Address-List ::= SEQUENCE (SIZE (0..1023)) OF UTF8String(SIZE (0..255))
National-EM-ASN1parameters ::= SEQUENCE National-EM-ASN1parameters ::= SEQUENCE
{ {
countryCode [1] PrintableString (SIZE (2)), countryCode [1] PrintableString (SIZE (2)),
-- Country Code according to ISO 3166-1 [12], -- Country Code according to ISO 3166-1 [12],
-- the country to which the parameters inserted after the extension marker apply -- the country to which the parameters inserted after the extension marker apply
... ...
-- In case a given country wants to use additional national parameters according to its law, -- In case a given country wants to use additional national parameters according to its law,
-- these national parameters should be defined using the ASN.1 syntax and added after the -- these national parameters should be defined using the ASN.1 syntax and added after the
-- extension marker (...) -- extension marker (...)
} }
AAAInformation ::= CHOICE AAAInformation ::= CHOICE
-- The AAAInformation field allows for POP3 and authenticated SMTP AAA information -- The AAAInformation field allows for POP3 and authenticated SMTP AAA information
{ {
pOP3AAAInformation [0] POP3AAAInformation, pOP3AAAInformation [0] POP3AAAInformation,
aSMTPAAAInformation [1] ASMTPAAAInformation, aSMTPAAAInformation [1] ASMTPAAAInformation,
..., ...,
iMAPAAAInformation [2] IMAPAAAInformation iMAPAAAInformation [2] IMAPAAAInformation
} }
POP3AAAInformation ::= SEQUENCE POP3AAAInformation ::= SEQUENCE
-- The POP3AAAInformation field contains the POP3 username & optionally the password -- The POP3AAAInformation field contains the POP3 username & optionally the password
{ {
username [0] UTF8String (SIZE (0..64)), username [0] UTF8String (SIZE (0..64)),
password [1] UTF8String (SIZE (0..64)) OPTIONAL, password [1] UTF8String (SIZE (0..64)) OPTIONAL,
aAAResult [2] AAAResult OPTIONAL, aAAResult [2] AAAResult OPTIONAL,
... ...
} }
ASMTPAAAInformation ::= SEQUENCE ASMTPAAAInformation ::= SEQUENCE
-- The ASMTPAAAInformation field contains the SMTP username and -- The ASMTPAAAInformation field contains the SMTP username and
-- optionally the authentication fields -- optionally the authentication fields
{ {
username [0] UTF8String (SIZE (0..64)), username [0] UTF8String (SIZE (0..64)),
authMethod [1] AAAauthMethod OPTIONAL, authMethod [1] AAAauthMethod OPTIONAL,
-- The hashing method used, i.e. CRAM-MD5, DIGEST-MD5, etc -- The hashing method used, i.e. CRAM-MD5, DIGEST-MD5, etc
challenge [2] OCTET STRING OPTIONAL, challenge [2] OCTET STRING OPTIONAL,
-- A BASE64 encoded challenge send by the SMTP server -- A BASE64 encoded challenge send by the SMTP server
response [3] OCTET STRING OPTIONAL, response [3] OCTET STRING OPTIONAL,
-- A BASE64 encoded hashed response returned by the client -- A BASE64 encoded hashed response returned by the client
aAAResult [4] AAAResult OPTIONAL, aAAResult [4] AAAResult OPTIONAL,
... ...
} }
IMAPAAAInformation ::= SEQUENCE IMAPAAAInformation ::= SEQUENCE
-- The iMAPAAAInformation field contains the IMAP username & optionally the password -- The iMAPAAAInformation field contains the IMAP username & optionally the password
{ {
username [0] UTF8String (SIZE (0..64)), username [0] UTF8String (SIZE (0..64)),
password [1] UTF8String (SIZE (0..64)) OPTIONAL, password [1] UTF8String (SIZE (0..64)) OPTIONAL,
aAAResult [2] AAAResult OPTIONAL, aAAResult [2] AAAResult OPTIONAL,
... ...
} }
AAAResult ::= ENUMERATED AAAResult ::= ENUMERATED
{ {
resultUnknown(1), resultUnknown(1),
aAAFailed(2), aAAFailed(2),
aAASucceeded(3), aAASucceeded(3),
... ...
} }
AAAauthMethod ::= ENUMERATED AAAauthMethod ::= ENUMERATED
{ {
undefinedAuthMethod(1), undefinedAuthMethod(1),
cramMD5(2), cramMD5(2),
digestMD5(3), digestMD5(3),
... ...
} }
-- ================================= -- =================================
-- Messaging Communications Contents -- Messaging Communications Contents
-- ================================= -- =================================
MessagingCC ::= SEQUENCE MessagingCC ::= SEQUENCE
-- MessagingCC is the PDU sent for the captured content -- MessagingCC is the PDU sent for the captured content
{ {
messaging-cc-obj-id [0] RELATIVE-OID, messaging-cc-obj-id [0] RELATIVE-OID,
event-identifier [1] INTEGER (0..4294967295), event-identifier [1] INTEGER (0..4294967295),
-- Used to correlate to MessagingIRI within the same CIN -- Used to correlate to MessagingIRI within the same CIN
content-identifier [2] INTEGER (0..4294967295) OPTIONAL, content-identifier [2] INTEGER (0..4294967295) OPTIONAL,
sequence-number [3] INTEGER (0..4294967295) OPTIONAL, sequence-number [3] INTEGER (0..4294967295) OPTIONAL,
end-of-sequence [4] BOOLEAN DEFAULT FALSE, end-of-sequence [4] BOOLEAN DEFAULT FALSE,
content-type [5] OCTET STRING, content-type [5] OCTET STRING,
-- MIME content type, i.e.: image/png, text/plain;charset=utf8, audio/PCMA -- MIME content type, i.e.: image/png, text/plain;charset=utf8, audio/PCMA
content [6] OCTET STRING, content [6] OCTET STRING,
..., ...,
content-transfer-encoding [7] OCTET STRING OPTIONAL content-transfer-encoding [7] OCTET STRING OPTIONAL
-- MIME Content-Transfer-Encoding mechanism. -- MIME Content-Transfer-Encoding mechanism.
-- Refer to IETF RFC 2045 [20] -- Refer to IETF RFC 2045 [20]
} }
MessagingMMCC ::= SEQUENCE MessagingMMCC ::= SEQUENCE
-- MessagingMMCC is the PDU sent for the captured IPMMCC content -- MessagingMMCC is the PDU sent for the captured IPMMCC content
{ {
messaging-mm-cc-obj-id [0] RELATIVE-OID, messaging-mm-cc-obj-id [0] RELATIVE-OID,
event-identifier [1] INTEGER (0..4294967295), event-identifier [1] INTEGER (0..4294967295),
-- Used to correlate to MessagingIRI within the same CIN -- Used to correlate to MessagingIRI within the same CIN
content-identifier [2] INTEGER (0..4294967295) OPTIONAL, content-identifier [2] INTEGER (0..4294967295) OPTIONAL,
content [3] IPMMCC, content [3] IPMMCC,
... ...
} }
-- =========================================== -- ===========================================
-- Intercept-related information for Messaging -- Intercept-related information for Messaging
-- =========================================== -- ===========================================
MessagingIRI ::= SEQUENCE MessagingIRI ::= SEQUENCE
{ {
messaging-iri-obj-id [0] RELATIVE-OID, messaging-iri-obj-id [0] RELATIVE-OID,
system-type [1] Messaging-System-Type, system-type [1] Messaging-System-Type,
system-identifier [2] OCTET STRING OPTIONAL, system-identifier [2] OCTET STRING OPTIONAL,
-- Identifier up to national agreement, uniquely identifies a certain messaging system -- Identifier up to national agreement, uniquely identifies a certain messaging system
category [3] Messaging-Event-Category OPTIONAL, category [3] Messaging-Event-Category OPTIONAL,
status [4] Messaging-Status, status [4] Messaging-Status,
party-information [5] SET OF Messaging-Party-Information OPTIONAL, party-information [5] SET OF Messaging-Party-Information OPTIONAL,
trigger [6] Messaging-Trigger, trigger [6] Messaging-Trigger,
properties [7] SEQUENCE OF Messaging-Property OPTIONAL, properties [7] SEQUENCE OF Messaging-Property OPTIONAL,
event-identifier [8] INTEGER (0..4294967295) OPTIONAL, event-identifier [8] INTEGER (0..4294967295) OPTIONAL,
-- Used to correlate to MessagingCC or MessagingMMCC within the same CIN. Mandatory when CC is also sent -- Used to correlate to MessagingCC or MessagingMMCC within the same CIN. Mandatory when CC is also sent
original-message [9] OCTET STRING OPTIONAL, original-message [9] OCTET STRING OPTIONAL,
..., ...,
box-identifier [10] OCTET STRING OPTIONAL box-identifier [10] OCTET STRING OPTIONAL
} }
Messaging-System-Type ::= ENUMERATED Messaging-System-Type ::= ENUMERATED
{ {
unified-messaging(1), unified-messaging(1),
... ...
} }
Messaging-Event-Category ::= CHOICE Messaging-Event-Category ::= CHOICE
{ {
message [0] Messaging-Event, message [0] Messaging-Event,
message-box [1] Messaging-Box-Event, message-box [1] Messaging-Box-Event,
message-notification [2] Messaging-Notification-Event, message-notification [2] Messaging-Notification-Event,
call [3] Messaging-Call-Event, call [3] Messaging-Call-Event,
... ...
} }
Messaging-Event ::= ENUMERATED Messaging-Event ::= ENUMERATED
{ {
deposit(1), deposit(1),
retrieve(2), retrieve(2),
delete(3), delete(3),
save(4), save(4),
slamdown(5), slamdown(5),
... ...,
} calendar(6),
contact(7)
Messaging-Box-Event ::= ENUMERATED }
{
login(1), Messaging-Box-Event ::= ENUMERATED
logout(2), {
lock(3), login(1),
unlock(4), logout(2),
activate(5), lock(3),
deactivate(6), unlock(4),
delete(7), activate(5),
pin-change(8), deactivate(6),
greeting-record(9), delete(7),
greeting-change(10), pin-change(8),
greeting-delete(11), greeting-record(9),
greeting-enable(12), greeting-change(10),
greeting-disable(13), greeting-delete(11),
notification-enable(14), greeting-enable(12),
notification-disable(15), greeting-disable(13),
disconnect(16), notification-enable(14),
connect(17), notification-disable(15),
..., disconnect(16),
unknown(0), connect(17),
...,
greeting-play(18), unknown(0),
language-change(19),
pin-security-enable(20), greeting-play(18),
pin-security-disable(21), language-change(19),
personal-operator-add(22), pin-security-enable(20),
personal-operator-change(23), pin-security-disable(21),
personal-operator-remove(24), personal-operator-add(22),
additional-destination-add(25), personal-operator-change(23),
additional-destination-change(26), personal-operator-remove(24),
additional-destination-remove(27) additional-destination-add(25),
} additional-destination-change(26),
additional-destination-remove(27)
Messaging-Notification-Event ::= ENUMERATED }
{
sms(1), Messaging-Notification-Event ::= ENUMERATED
sms-deposit(2), {
sms-slamdown(3), sms(1),
sms-pin-reminder(4), sms-deposit(2),
email(5), sms-slamdown(3),
fax-to-email(6), sms-pin-reminder(4),
..., email(5),
mms(7), fax-to-email(6),
generic(8) ...,
} mms(7),
generic(8)
Messaging-Call-Event ::= ENUMERATED }
{
callout(1), Messaging-Call-Event ::= ENUMERATED
... {
} callout(1),
...
Messaging-Status ::= ENUMERATED }
{
unknown(0), Messaging-Status ::= ENUMERATED
not-applicable(1), {
operation-failed(2), unknown(0),
operation-succeeded(3), not-applicable(1),
operation-cancelled(4), operation-failed(2),
operation-started(5), operation-succeeded(3),
..., operation-cancelled(4),
operation-lost(6) operation-started(5),
} ...,
operation-lost(6)
Messaging-Party-Information ::= SEQUENCE }
{
party-qualifier [0] Messaging-Party-Qualifier, Messaging-Party-Information ::= SEQUENCE
party-identity [1] Messaging-Party-Identity, {
..., party-qualifier [0] Messaging-Party-Qualifier,
party-validity [2] Messaging-Party-Validity OPTIONAL, party-identity [1] Messaging-Party-Identity,
copy-qualifier [3] Messaging-Copy-Qualifier OPTIONAL ...,
} party-validity [2] Messaging-Party-Validity OPTIONAL,
copy-qualifier [3] Messaging-Copy-Qualifier OPTIONAL
Messaging-Party-Qualifier ::= ENUMERATED }
{
unknown-party(0), Messaging-Party-Qualifier ::= ENUMERATED
-- In this case the party cannot be classified as either originating or terminating {
originating-party(1), unknown-party(0),
-- In this case, the partyInformation parameter provides the identities related to