forked from osmocom/wireshark
1044 lines
32 KiB
Groff
1044 lines
32 KiB
Groff
-- Module IPMSInformationObjects (X.420:06/1999)
|
|
IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
information-objects(2) version-1999(1)} DEFINITIONS IMPLICIT TAGS ::=
|
|
BEGIN
|
|
|
|
-- Prologue
|
|
-- Exports everything.
|
|
IMPORTS
|
|
-- IPMS Extended Body Parts
|
|
-- bilaterally-defined-body-part, encrypted-body-part, g3-facsimile-body-part,
|
|
-- g4-class1-body-part, ia5-text-body-part, message-body-part,
|
|
-- mixed-mode-body-part, nationally-defined-body-part, teletex-body-part,
|
|
-- videotex-body-part
|
|
--==
|
|
-- FROM IPMSExtendedBodyPartTypes {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- extended-body-part-types(7) version-1994(0)}
|
|
-- general-text-body-part
|
|
--==
|
|
-- FROM IPMSExtendedBodyPartTypes2 {iso standard mhs(10021) ipms(7)
|
|
-- modules(0) extended-body-part-types-2(1)}
|
|
-- file-transfer-body-part
|
|
--==
|
|
-- FROM IPMSFileTransferBodyPartType {joint-iso-itu-t mhs(6) ipms(1)
|
|
-- modules(0) file-transfer-body-part-type(9)}
|
|
-- voice-body-part
|
|
--==
|
|
-- FROM IPMSExtendedVoiceBodyPartType {joint-iso-itu-t mhs(6) ipms(1)
|
|
-- modules(0) extended-voice-body-part-type(11)}
|
|
-- notification-body-part, report-body-part
|
|
--==
|
|
-- FROM IPMSForwardedReportBodyPartType {joint-iso-itu-t mhs(6) ipms(1)
|
|
-- modules(0) forwarded-report-body-part-type(12)}
|
|
-- content-body-part{}
|
|
--==
|
|
-- FROM IPMSForwardedContentBodyPartType {joint-iso-itu-t mhs(6) ipms(1)
|
|
-- modules(0) forwarded-content-body-part-type(15)}
|
|
-- pkcs7-body-part
|
|
--==
|
|
-- FROM PKCS7BodyPartType {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- pkcs7-body-part-type(16)}
|
|
-- IPMS Heading Extensions
|
|
-- authorization-time, auto-submitted, body-part-signatures,
|
|
-- circulation-list-indicator, circulation-list-recipients,
|
|
-- distribution-codes, extended-subject, incomplete-copy,
|
|
-- information-category, ipm-security-label, languages,
|
|
-- manual-handling-instructions, originators-reference, precedence,
|
|
-- precedence-policy-identifier
|
|
--==
|
|
-- FROM IPMSHeadingExtensions {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- heading-extensions(6) version-1999(1)}
|
|
-- IPMS Security Extensions
|
|
-- body-part-encryption-token, BodyPartTokens, forwarded-content-token,
|
|
-- ForwardedContentToken, ipn-security-response, recipient-security-request
|
|
--==
|
|
-- FROM IPMSSecurityExtensions {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- ipm-security-extensions(14) version-1999(1)}
|
|
-- IPMS Upper bounds
|
|
-- ub-auto-forward-comment, ub-free-form-name, ub-local-ipm-identifier,
|
|
-- ub-subject-field, ub-telephone-number
|
|
--==
|
|
-- FROM IPMSUpperBounds {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- upper-bounds(10) version-1999(1)}
|
|
-- ODIF
|
|
-- Interchange-Data-Element
|
|
--==
|
|
-- FROM Interchange-Data-Elements {2 8 1 5 5}
|
|
-- MTS Abstract Service
|
|
EncodedInformationTypes, ExtendedCertificates, EXTENSION,
|
|
G3FacsimileNonBasicParameters, MessageDeliveryTime, ORName,
|
|
OtherMessageDeliveryFields, SupplementaryInformation,
|
|
TeletexNonBasicParameters, UniversalOrBMPString, SecurityLabel,
|
|
MessageDeliveryIdentifier, ProofOfSubmission, OriginatingMTACertificate,
|
|
MessageSubmissionEnvelope
|
|
--==
|
|
FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
|
|
mts-abstract-service(1) version-1999(1)}
|
|
-- MS Abstract Service
|
|
-- MS-EXTENSION, SequenceNumber
|
|
--==
|
|
-- FROM MSAbstractService {joint-iso-itu-t mhs(6) ms(4) modules(0)
|
|
-- abstract-service(1) version-1999(1)}
|
|
-- Directory Authentication Framework
|
|
AlgorithmIdentifier, ENCRYPTED{}
|
|
--==
|
|
FROM AuthenticationFramework {joint-iso-itu-t ds(5) module(1)
|
|
authenticationFramework(7) 3}
|
|
-- IPMS Object Identifiers
|
|
-- id-mst-assembly-capability, id-mst-assembly-instructions,
|
|
-- id-mst-invalid-assembly-instructions, id-mst-invalid-ipn,
|
|
-- id-mst-originator-body-part-encryption-token,
|
|
-- id-mst-originator-forwarded-content-token,
|
|
-- id-mst-suspend-auto-acknowledgement, id-mst-prevent-nrn-generation,
|
|
-- id-on-absence-advice, id-on-change-of-address-advice
|
|
--==
|
|
-- FROM IPMSObjectIdentifiers {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- object-identifiers(0) version-1999(1)} ; --
|
|
EXTERNAL
|
|
FROM ACSE-1
|
|
CertificateAssertion
|
|
--==
|
|
FROM CertificateExtensions {joint-iso-itu-t ds(5) module(1)
|
|
certificateExtensions(26) 0};
|
|
|
|
|
|
Time ::= UTCTime
|
|
|
|
-- Information object
|
|
InformationObject ::= CHOICE {ipm [0] IPM,
|
|
ipn [1] IPN
|
|
}
|
|
|
|
-- IPM
|
|
IPM ::= SEQUENCE {heading Heading,
|
|
body Body
|
|
}
|
|
|
|
-- MTS Extensions
|
|
--IPMPerRecipientEnvelopeExtensions EXTENSION ::=
|
|
-- {blind-copy-recipients | body-part-encryption-token |
|
|
-- forwarded-content-token, ...}
|
|
|
|
-- IPMS Extensions
|
|
IPMSExtension --{IPMS-EXTENSION:ChosenFrom}-- ::= SEQUENCE {
|
|
type OBJECT IDENTIFIER, --IPMS-EXTENSION.&id({ChosenFrom}),
|
|
value ANY --IPMS-EXTENSION.&Type({ChosenFrom}{@type}) DEFAULT NULL:NULL
|
|
}
|
|
|
|
--IPMS-EXTENSION ::= CLASS {&id OBJECT IDENTIFIER UNIQUE,
|
|
-- &Type DEFAULT NULL
|
|
--}WITH SYNTAX {[VALUE &Type,]
|
|
-- IDENTIFIED BY &id
|
|
--}
|
|
|
|
--PrivateIPMSExtensions IPMS-EXTENSION ::=
|
|
-- {...}
|
|
|
|
-- Heading
|
|
Heading ::= SET {
|
|
this-IPM ThisIPMField,
|
|
originator [0] OriginatorField OPTIONAL,
|
|
authorizing-users [1] AuthorizingUsersField OPTIONAL,
|
|
primary-recipients [2] PrimaryRecipientsField DEFAULT {},
|
|
copy-recipients [3] CopyRecipientsField DEFAULT {},
|
|
blind-copy-recipients [4] BlindCopyRecipientsField OPTIONAL,
|
|
replied-to-IPM [5] RepliedToIPMField OPTIONAL,
|
|
obsoleted-IPMs [6] ObsoletedIPMsField DEFAULT {},
|
|
related-IPMs [7] RelatedIPMsField DEFAULT {},
|
|
subject [8] EXPLICIT SubjectField OPTIONAL,
|
|
expiry-time [9] ExpiryTimeField OPTIONAL,
|
|
reply-time [10] ReplyTimeField OPTIONAL,
|
|
reply-recipients [11] ReplyRecipientsField OPTIONAL,
|
|
importance [12] ImportanceField DEFAULT normal,
|
|
sensitivity [13] SensitivityField OPTIONAL,
|
|
auto-forwarded [14] AutoForwardedField DEFAULT FALSE,
|
|
extensions [15] ExtensionsField DEFAULT {}
|
|
}
|
|
|
|
-- Heading component types
|
|
IPMIdentifier ::= [APPLICATION 11] SET {
|
|
user ORName OPTIONAL,
|
|
user-relative-identifier LocalIPMIdentifier
|
|
}
|
|
|
|
LocalIPMIdentifier ::= PrintableString(SIZE (0..ub-local-ipm-identifier))
|
|
|
|
RecipientSpecifier ::= SET {
|
|
recipient [0] ORDescriptor,
|
|
notification-requests [1] NotificationRequests DEFAULT {},
|
|
reply-requested [2] BOOLEAN DEFAULT FALSE,
|
|
recipient-extensions [3] RecipientExtensionsField OPTIONAL
|
|
}
|
|
|
|
ORDescriptor ::= SET {
|
|
formal-name ORName OPTIONAL,
|
|
free-form-name [0] FreeFormName OPTIONAL,
|
|
telephone-number [1] TelephoneNumber OPTIONAL
|
|
}
|
|
|
|
FreeFormName ::= TeletexString(SIZE (0..ub-free-form-name))
|
|
|
|
TelephoneNumber ::= PrintableString(SIZE (0..ub-telephone-number))
|
|
|
|
NotificationRequests ::= BIT STRING {
|
|
rn(0), nrn(1), ipm-return(2), an-supported(3), suppress-an(4)}
|
|
|
|
RecipientExtensionsField ::= SET OF IPMSExtension --{{RecipientExtensions}}
|
|
|
|
--RecipientExtensions IPMS-EXTENSION ::=
|
|
-- {circulation-list-indicator | precedence | recipient-security-request |
|
|
-- PrivateIPMSExtensions, ...}
|
|
|
|
-- This IPM heading field
|
|
ThisIPMField ::= IPMIdentifier
|
|
|
|
-- Originator heading field
|
|
OriginatorField ::= ORDescriptor
|
|
|
|
-- Authorizing Users heading field
|
|
AuthorizingUsersField ::= SEQUENCE OF AuthorizingUsersSubfield
|
|
|
|
AuthorizingUsersSubfield ::= ORDescriptor
|
|
|
|
-- Primary Recipients heading field
|
|
PrimaryRecipientsField ::= SEQUENCE OF PrimaryRecipientsSubfield
|
|
|
|
PrimaryRecipientsSubfield ::= RecipientSpecifier
|
|
|
|
-- Copy Recipients heading field
|
|
CopyRecipientsField ::= SEQUENCE OF CopyRecipientsSubfield
|
|
|
|
CopyRecipientsSubfield ::= RecipientSpecifier
|
|
|
|
-- Blind Copy Recipients heading field
|
|
BlindCopyRecipientsField ::= SEQUENCE OF BlindCopyRecipientsSubfield
|
|
|
|
BlindCopyRecipientsSubfield ::= RecipientSpecifier
|
|
|
|
-- Blind Copy Recipients envelope field
|
|
--blind-copy-recipients EXTENSION ::= {
|
|
-- BlindCopyRecipientsField,
|
|
-- IDENTIFIED BY standard-extension:41
|
|
--}
|
|
|
|
-- Replied-to IPM heading field
|
|
RepliedToIPMField ::= IPMIdentifier
|
|
|
|
-- Obsoleted IPMs heading field
|
|
ObsoletedIPMsField ::= SEQUENCE OF ObsoletedIPMsSubfield
|
|
|
|
ObsoletedIPMsSubfield ::= IPMIdentifier
|
|
|
|
-- Related IPMs heading field
|
|
RelatedIPMsField ::= SEQUENCE OF RelatedIPMsSubfield
|
|
|
|
RelatedIPMsSubfield ::= IPMIdentifier
|
|
|
|
-- Subject heading field
|
|
SubjectField ::= TeletexString(SIZE (0..ub-subject-field))
|
|
|
|
-- Expiry Time heading field
|
|
ExpiryTimeField ::= Time
|
|
|
|
-- Reply Time heading field
|
|
ReplyTimeField ::= Time
|
|
|
|
-- Reply Recipients heading field
|
|
ReplyRecipientsField ::= SEQUENCE OF ReplyRecipientsSubfield
|
|
|
|
ReplyRecipientsSubfield ::=
|
|
ORDescriptor --(WITH COMPONENTS {
|
|
-- ...,
|
|
-- formal-name PRESENT
|
|
-- })
|
|
|
|
-- Importance heading field
|
|
ImportanceField ::= ENUMERATED {low(0), normal(1), high(2)}
|
|
|
|
-- Sensitivity heading field
|
|
SensitivityField ::= ENUMERATED {
|
|
personal(1), private(2), company-confidential(3)}
|
|
|
|
-- Auto-forwarded heading field
|
|
AutoForwardedField ::= BOOLEAN
|
|
|
|
-- Extensions heading field
|
|
ExtensionsField ::= SET OF IPMSExtension --{{HeadingExtensions}}
|
|
|
|
--HeadingExtensions IPMS-EXTENSION ::=
|
|
-- {authorization-time | auto-submitted | body-part-signatures |
|
|
-- circulation-list-recipients | distribution-codes | extended-subject |
|
|
-- incomplete-copy | information-category | ipm-security-label | languages |
|
|
-- manual-handling-instructions | originators-reference |
|
|
-- precedence-policy-identifier | PrivateIPMSExtensions, ...}
|
|
|
|
-- Body
|
|
Body ::= SEQUENCE OF BodyPart
|
|
|
|
-- asn2eth seems to have problems with this CHOICE CHOICE
|
|
BodyPart ::= CHOICE {
|
|
-- basic
|
|
-- CHOICE { -- ia5-text [0] IA5TextBodyPart,
|
|
g3-facsimile [3] G3FacsimileBodyPart,
|
|
g4-class1 [4] G4Class1BodyPart,
|
|
teletex [5] TeletexBodyPart,
|
|
videotex [6] VideotexBodyPart,
|
|
encrypted [8] EncryptedBodyPart,
|
|
message [9] MessageBodyPart,
|
|
mixed-mode [11] MixedModeBodyPart,
|
|
bilaterally-defined [14] BilaterallyDefinedBodyPart,
|
|
nationally-defined [7] NationallyDefinedBodyPart --} --,
|
|
extended [15] ExtendedBodyPart --{{IPMBodyPartTable}}
|
|
}
|
|
|
|
|
|
-- Extended body part
|
|
ExtendedBodyPart --{EXTENDED-BODY-PART-TYPE:IPMBodyPartTable}-- ::= SEQUENCE {
|
|
parameters [0] EXTERNAL, --INSTANCE OF TYPE-IDENTIFIER OPTIONAL,
|
|
data EXTERNAL -- INSTANCE OF TYPE-IDENTIFIER
|
|
}
|
|
--(CONSTRAINED BY { - - must correspond to the ¶meters field and &data field of a member of --
|
|
-- IPMBodyPartTable})
|
|
|
|
--IPMBodyPartTable EXTENDED-BODY-PART-TYPE ::=
|
|
-- {StandardBodyParts | ApplicationSpecificBodyParts}
|
|
|
|
--StandardBodyParts EXTENDED-BODY-PART-TYPE ::=
|
|
-- {ia5-text-body-part | g3-facsimile-body-part | g4-class1-body-part |
|
|
-- teletex-body-part | videotex-body-part | encrypted-body-part |
|
|
-- message-body-part | mixed-mode-body-part | bilaterally-defined-body-part |
|
|
-- nationally-defined-body-part | general-text-body-part |
|
|
-- file-transfer-body-part | voice-body-part | report-body-part |
|
|
-- notification-body-part |
|
|
-- content-body-part{{1 2 3 - - RELATIVE-OID to be provided - -}} |
|
|
-- pkcs7-body-part, ...}
|
|
|
|
--ApplicationSpecificBodyParts EXTENDED-BODY-PART-TYPE ::=
|
|
-- {- -any body part defined in other Specifications, or for proprietary or private use
|
|
-- ...}
|
|
|
|
--EXTENDED-BODY-PART-TYPE ::= CLASS {
|
|
-- ¶meters TYPE-IDENTIFIER OPTIONAL,
|
|
-- &data TYPE-IDENTIFIER
|
|
--}WITH SYNTAX {[PARAMETERS ¶meters,]
|
|
-- DATA &data
|
|
--}
|
|
|
|
-- IA5 Text body part
|
|
IA5TextBodyPart ::= SEQUENCE {
|
|
parameters IA5TextParameters,
|
|
data IA5TextData
|
|
}
|
|
|
|
IA5TextParameters ::= SET {repertoire [0] Repertoire DEFAULT ia5
|
|
}
|
|
|
|
IA5TextData ::= IA5String
|
|
|
|
Repertoire ::= ENUMERATED {ita2(2), ia5(5)}
|
|
|
|
-- G3 Facsimile body part
|
|
G3FacsimileBodyPart ::= SEQUENCE {
|
|
parameters G3FacsimileParameters,
|
|
data G3FacsimileData
|
|
}
|
|
|
|
G3FacsimileParameters ::= SET {
|
|
number-of-pages [0] INTEGER OPTIONAL,
|
|
non-basic-parameters [1] G3FacsimileNonBasicParameters OPTIONAL
|
|
}
|
|
|
|
G3FacsimileData ::= SEQUENCE OF BIT STRING
|
|
|
|
-- G4 Class 1 and Mixed-mode body parts
|
|
G4Class1BodyPart ::= G4Class1Data
|
|
|
|
G4Class1Data ::= SEQUENCE OF Interchange-Data-Element
|
|
|
|
MixedModeBodyPart ::= MixedModeData
|
|
|
|
MixedModeData ::= SEQUENCE OF Interchange-Data-Element
|
|
|
|
-- Teletex body part
|
|
TeletexBodyPart ::= SEQUENCE {
|
|
parameters TeletexParameters,
|
|
data TeletexData
|
|
}
|
|
|
|
TeletexParameters ::= SET {
|
|
number-of-pages [0] INTEGER OPTIONAL,
|
|
telex-compatible [1] BOOLEAN DEFAULT FALSE,
|
|
non-basic-parameters [2] TeletexNonBasicParameters OPTIONAL
|
|
}
|
|
|
|
TeletexData ::= SEQUENCE OF TeletexString
|
|
|
|
-- Videotex body part
|
|
VideotexBodyPart ::= SEQUENCE {
|
|
parameters VideotexParameters,
|
|
data VideotexData
|
|
}
|
|
|
|
VideotexParameters ::= SET {syntax [0] VideotexSyntax OPTIONAL
|
|
}
|
|
|
|
VideotexSyntax ::= INTEGER {
|
|
ids(0), data-syntax1(1), data-syntax2(2), data-syntax3(3)}
|
|
|
|
VideotexData ::= VideotexString
|
|
|
|
-- Encrypted body part
|
|
EncryptedBodyPart ::= SEQUENCE {
|
|
parameters EncryptedParameters,
|
|
data EncryptedData
|
|
}
|
|
|
|
EncryptedParameters ::= SET {
|
|
algorithm-identifier AlgorithmIdentifier,
|
|
originator-certificates ExtendedCertificates OPTIONAL,
|
|
...
|
|
}
|
|
|
|
EncryptedData ::= BIT STRING --(CONSTRAINED BY {BodyPart})
|
|
|
|
-- Message body part
|
|
MessageBodyPart ::= SEQUENCE {
|
|
parameters MessageParameters,
|
|
data MessageData
|
|
}
|
|
|
|
MessageParameters ::= SET {
|
|
delivery-time [0] MessageDeliveryTime OPTIONAL,
|
|
delivery-envelope [1] OtherMessageDeliveryFields OPTIONAL
|
|
}
|
|
|
|
MessageData ::= IPM
|
|
|
|
-- Bilaterally Defined body part
|
|
BilaterallyDefinedBodyPart ::= OCTET STRING
|
|
|
|
-- Nationally Defined body part
|
|
--NATIONAL-BODY-PARTS ::= CLASS {&Type
|
|
--}
|
|
|
|
--NationallyDefinedBodyPart ::= NATIONAL-BODY-PARTS.&Type
|
|
|
|
-- Provided for Historic reasons. Use is strongly deprecated.
|
|
-- IPN
|
|
IPN ::= SET {
|
|
-- common-fields - -COMPONENTS OF CommonFields,
|
|
subject-ipm SubjectIPMField,
|
|
ipn-originator [1] IPNOriginatorField OPTIONAL,
|
|
ipm-intended-recipient [2] IPMIntendedRecipientField OPTIONAL,
|
|
conversion-eits ConversionEITsField OPTIONAL,
|
|
notification-extensions [3] NotificationExtensionsField OPTIONAL,
|
|
choice
|
|
[0] CHOICE {non-receipt-fields [0] NonReceiptFields,
|
|
receipt-fields [1] ReceiptFields,
|
|
other-notification-type-fields
|
|
[2] OtherNotificationTypeFields}
|
|
}
|
|
|
|
--RN ::=
|
|
-- IPN
|
|
-- (WITH COMPONENTS {
|
|
-- ...,
|
|
-- choice (WITH COMPONENTS {
|
|
-- receipt-fields PRESENT
|
|
-- })
|
|
-- })
|
|
|
|
--NRN ::=
|
|
-- IPN
|
|
-- (WITH COMPONENTS {
|
|
-- ...,
|
|
-- choice (WITH COMPONENTS {
|
|
-- non-receipt-fields PRESENT
|
|
-- })
|
|
-- })
|
|
|
|
--ON ::=
|
|
-- IPN
|
|
-- (WITH COMPONENTS {
|
|
-- ...,
|
|
-- choice (WITH COMPONENTS {
|
|
-- other-notification-type-fields PRESENT
|
|
-- })
|
|
-- })
|
|
|
|
-- CommonFields are always used with WITH COMPONENTS - which are manually expanded
|
|
--CommonFields ::= SET {
|
|
-- subject-ipm SubjectIPMField,
|
|
-- ipn-originator [1] IPNOriginatorField OPTIONAL,
|
|
-- ipm-intended-recipient [2] IPMIntendedRecipientField OPTIONAL,
|
|
-- conversion-eits ConversionEITsField OPTIONAL,
|
|
-- notification-extensions [3] NotificationExtensionsField OPTIONAL
|
|
--}
|
|
|
|
NonReceiptFields ::= SET {
|
|
non-receipt-reason [0] NonReceiptReasonField,
|
|
discard-reason [1] DiscardReasonField OPTIONAL,
|
|
auto-forward-comment [2] AutoForwardCommentField OPTIONAL,
|
|
returned-ipm [3] ReturnedIPMField OPTIONAL,
|
|
nrn-extensions [4] NRNExtensionsField OPTIONAL
|
|
}
|
|
|
|
ReceiptFields ::= SET {
|
|
receipt-time [0] ReceiptTimeField,
|
|
acknowledgment-mode [1] AcknowledgmentModeField DEFAULT manual,
|
|
suppl-receipt-info [2] SupplReceiptInfoField OPTIONAL,
|
|
rn-extensions [3] RNExtensionsField OPTIONAL
|
|
}
|
|
|
|
-- Common fields
|
|
SubjectIPMField ::= IPMIdentifier
|
|
|
|
IPNOriginatorField ::= ORDescriptor
|
|
|
|
IPMIntendedRecipientField ::= ORDescriptor
|
|
|
|
ConversionEITsField ::= EncodedInformationTypes
|
|
|
|
NotificationExtensionsField ::= SET OF IPMSExtension --{{NotificationExtensions}}
|
|
|
|
--NotificationExtensions IPMS-EXTENSION ::=
|
|
-- {ipn-security-response | PrivateIPMSExtensions, ...}
|
|
|
|
-- Non-receipt fields
|
|
NonReceiptReasonField ::= ENUMERATED {
|
|
ipm-discarded(0), ipm-auto-forwarded(1), ...
|
|
}
|
|
|
|
-- ITU-T version:
|
|
DiscardReasonField ::= ENUMERATED {
|
|
ipm-expired(0), ipm-obsoleted(1), user-subscription-terminated(2),
|
|
not-used(3)}
|
|
|
|
-- ISO/IEC version:
|
|
--DiscardReasonField ::= ENUMERATED {
|
|
-- ipm-expired (0),
|
|
-- ipm-obsoleted (1),
|
|
-- user-subscription-terminated (2),
|
|
-- The following value may not be supported by implementations of earlier versions of this Specification
|
|
-- ipm-deleted (3),
|
|
-- ... }
|
|
AutoForwardCommentField ::=
|
|
AutoForwardComment
|
|
|
|
AutoForwardComment ::= PrintableString(SIZE (0..ub-auto-forward-comment))
|
|
|
|
ReturnedIPMField ::= IPM
|
|
|
|
NRNExtensionsField ::= SET OF IPMSExtension --{{NRNExtensions}}
|
|
|
|
--NRNExtensions IPMS-EXTENSION ::= {PrivateIPMSExtensions, ...}
|
|
|
|
-- Receipt fields
|
|
ReceiptTimeField ::= Time
|
|
|
|
AcknowledgmentModeField ::= ENUMERATED {manual(0), automatic(1)}
|
|
|
|
SupplReceiptInfoField ::= SupplementaryInformation
|
|
|
|
RNExtensionsField ::= SET OF IPMSExtension --{{RNExtensions}}
|
|
|
|
--RNExtensions IPMS-EXTENSION ::= {PrivateIPMSExtensions, ...}
|
|
|
|
-- Other Notification Type fields
|
|
OtherNotificationTypeFields ::= SET OF IPMSExtension --{{OtherNotifications}}
|
|
|
|
--OtherNotifications IPMS-EXTENSION ::=
|
|
-- {AdviceNotifications | PrivateIPMSExtensions, ...}
|
|
|
|
--AdviceNotifications IPMS-EXTENSION ::=
|
|
-- {absence-advice | change-of-address-advice, ...}
|
|
|
|
-- Advice Notification fields
|
|
--absence-advice IPMS-EXTENSION ::= {
|
|
-- VALUE AbsenceAdvice,
|
|
-- IDENTIFIED BY id-on-absence-advice
|
|
--}
|
|
|
|
AbsenceAdvice ::= SEQUENCE {
|
|
advice BodyPart OPTIONAL,
|
|
next-available Time OPTIONAL
|
|
}
|
|
|
|
-- at least one component shall be present
|
|
--change-of-address-advice IPMS-EXTENSION ::= {
|
|
-- VALUE ChangeOfAddressAdvice,
|
|
-- IDENTIFIED BY id-on-change-of-address-advice
|
|
--}
|
|
|
|
ChangeOfAddressAdvice ::= SEQUENCE {
|
|
new-address
|
|
[0] ORDescriptor --(WITH COMPONENTS {
|
|
-- ...,
|
|
-- formal-name PRESENT
|
|
-- }) --,
|
|
effective-from [1] Time OPTIONAL
|
|
}
|
|
|
|
-- Message Store Realization
|
|
--prevent-nrn-generation MS-EXTENSION ::= {
|
|
-- NULL
|
|
-- IDENTIFIED BY id-mst-prevent-nrn-generation
|
|
--}
|
|
|
|
--suspend-auto-acknowledgement MS-EXTENSION ::= {
|
|
-- NULL
|
|
-- IDENTIFIED BY id-mst-suspend-auto-acknowledgement
|
|
--}
|
|
|
|
--assembly-capability MS-EXTENSION ::= {
|
|
-- NULL
|
|
-- IDENTIFIED BY id-mst-assembly-capability
|
|
--}
|
|
|
|
--IPMSubmissionOptions MS-EXTENSION ::=
|
|
-- {ipm-assembly-instructions | originator-body-part-encryption-token |
|
|
-- originator-forwarded-content-token, ...} - - For future extension additions
|
|
|
|
--ipm-assembly-instructions MS-EXTENSION ::= {
|
|
-- IPMAssemblyInstructions
|
|
-- IDENTIFIED BY id-mst-assembly-instructions
|
|
--}
|
|
|
|
IPMAssemblyInstructions ::= SET {assembly-instructions [0] BodyPartReferences
|
|
}
|
|
|
|
BodyPartReferences ::= SEQUENCE OF BodyPartReference
|
|
|
|
BodyPartReference ::= CHOICE {
|
|
stored-entry [0] SequenceNumber,
|
|
stored-content [1] SequenceNumber,
|
|
submitted-body-part [2] INTEGER--(1..MAX)--,
|
|
stored-body-part
|
|
[3] SEQUENCE {message-entry SequenceNumber,
|
|
body-part-number --INTEGER(1..MAX)-- BodyPartNumber}
|
|
}
|
|
|
|
--originator-body-part-encryption-token MS-EXTENSION ::= {
|
|
-- BodyPartTokens
|
|
-- IDENTIFIED BY id-mst-originator-body-part-encryption-token
|
|
--}
|
|
|
|
--originator-forwarded-content-token MS-EXTENSION ::= {
|
|
-- ForwardedContentToken
|
|
-- IDENTIFIED BY id-mst-originator-forwarded-content-token
|
|
--}
|
|
|
|
--IPMSubmissionErrors MS-EXTENSION ::=
|
|
-- {invalid-assembly-instructions | invalid-ipn, ...
|
|
-- } - - For future extension additions
|
|
|
|
--invalid-assembly-instructions MS-EXTENSION ::= {
|
|
-- BodyPartReferences
|
|
-- IDENTIFIED BY id-mst-invalid-assembly-instructions
|
|
--}
|
|
|
|
--invalid-ipn MS-EXTENSION ::= {NULL
|
|
-- IDENTIFIED BY id-mst-invalid-ipn
|
|
--}
|
|
|
|
SequenceNumber ::= INTEGER
|
|
Interchange-Data-Element ::= ANY
|
|
NationallyDefinedBodyPart ::= ANY
|
|
|
|
-- cannot refer to basic types in .cnf .#REGISTER - so we create an intermediate type
|
|
OriginatingUA ::= IA5String
|
|
|
|
-- END - - of IPMSInformationObjects
|
|
|
|
|
|
-- Module IPMSHeadingExtensions (X.420:06/1999)
|
|
--IPMSHeadingExtensions {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- heading-extensions(6) version-1999(1)} DEFINITIONS IMPLICIT TAGS ::=
|
|
--BEGIN
|
|
|
|
-- Prologue
|
|
-- Exports everything.
|
|
--IMPORTS
|
|
-- IPMS Information Objects
|
|
-- IPMS-EXTENSION, ORDescriptor, RecipientSpecifier, ThisIPMField, BodyPart
|
|
--==
|
|
-- FROM IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- information-objects(2) version-1999(1)}
|
|
-- MTS Abstract Service
|
|
-- ExtendedCertificates, SecurityLabel, UniversalOrBMPString{}
|
|
--==
|
|
-- FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
|
|
-- mts-abstract-service(1) version-1999(1)}
|
|
-- Directory Authentication Framework
|
|
-- AlgorithmIdentifier, SIGNATURE{}, SIGNED{}
|
|
--==
|
|
-- FROM AuthenticationFramework {joint-iso-itu-t ds(5) module(1)
|
|
-- authenticationFramework(7) 3}
|
|
-- Directory Certificate Extensions
|
|
-- CertificateAssertion
|
|
--==
|
|
-- FROM CertificateExtensions {joint-iso-itu-t ds(5) module(1)
|
|
-- certificateExtensions(26) 0}
|
|
-- IPMS upper bounds
|
|
-- ub-alpha-code-length, ub-circulation-list-members, ub-distribution-codes,
|
|
-- ub-extended-subject-length, ub-information-categories,
|
|
-- ub-information-category-length, ub-manual-handling-instruction-length,
|
|
-- ub-manual-handling-instructions, ub-originators-reference-length,
|
|
-- ub-precedence
|
|
--==
|
|
-- FROM IPMSUpperBounds {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- upper-bounds(10) version-1999(1)}
|
|
-- IPMS Object Identifiers
|
|
-- id-hex-authorization-time, id-hex-auto-submitted,
|
|
-- id-hex-body-part-signatures, id-hex-circulation-list-recipients,
|
|
-- id-hex-distribution-codes, id-hex-extended-subject, id-hex-incomplete-copy,
|
|
-- id-hex-information-category, id-hex-ipm-security-label, id-hex-languages,
|
|
-- id-hex-manual-handling-instructions, id-hex-originators-reference,
|
|
-- id-hex-precedence-policy-id, id-rex-circulation-list-indicator,
|
|
-- id-rex-precedence
|
|
--==
|
|
-- FROM IPMSObjectIdentifiers {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- object-identifiers(0) version-1999(1)};
|
|
|
|
-- Incomplete Copy
|
|
--incomplete-copy IPMS-EXTENSION ::= {
|
|
-- VALUE IncompleteCopy,
|
|
-- IDENTIFIED BY id-hex-incomplete-copy
|
|
--}
|
|
|
|
IncompleteCopy ::= NULL
|
|
|
|
-- Languages
|
|
--languages IPMS-EXTENSION ::= {
|
|
-- VALUE SET OF Language,
|
|
-- IDENTIFIED BY id-hex-languages
|
|
--}
|
|
|
|
Languages ::= SET OF Language
|
|
|
|
Language ::= PrintableString --(SIZE (2 | 5))
|
|
|
|
-- Auto-submitted
|
|
--auto-submitted IPMS-EXTENSION ::= {
|
|
-- VALUE AutoSubmitted,
|
|
-- IDENTIFIED BY id-hex-auto-submitted
|
|
--}
|
|
|
|
AutoSubmitted ::= ENUMERATED {
|
|
not-auto-submitted(0), auto-generated(1), auto-replied(2)}
|
|
|
|
--body-part-signatures IPMS-EXTENSION ::= {
|
|
-- VALUE BodyPartSignatures,
|
|
-- IDENTIFIED BY id-hex-body-part-signatures
|
|
--}
|
|
|
|
Signature ::= SEQUENCE {
|
|
algorithmIdentifier AlgorithmIdentifier,
|
|
encrypted BIT STRING
|
|
}
|
|
|
|
|
|
BodyPartSignatures ::=
|
|
SET OF
|
|
SET {body-part-number BodyPartNumber,
|
|
body-part-signature BodyPartSignature,
|
|
originator-certificate-selector [1] CertificateAssertion OPTIONAL,
|
|
originator-certificates [0] ExtendedCertificates OPTIONAL --,
|
|
-- ... --}
|
|
|
|
BodyPartNumber ::= INTEGER --(1..MAX)
|
|
|
|
BodyPartSignature ::= Signature
|
|
-- SIGNATURE
|
|
-- {SEQUENCE {signature-algorithm-identifier AlgorithmIdentifier,
|
|
-- body-part BodyPart,
|
|
-- body-part-security-label SecurityLabel OPTIONAL
|
|
-- }}
|
|
|
|
--ipm-security-label IPMS-EXTENSION ::= {
|
|
-- VALUE IPMSecurityLabel,
|
|
-- IDENTIFIED BY id-hex-ipm-security-label
|
|
--}
|
|
|
|
IPMSecurityLabel ::= SEQUENCE {
|
|
content-security-label [0] SecurityLabel,
|
|
heading-security-label [1] SecurityLabel OPTIONAL,
|
|
body-part-security-labels [2] SEQUENCE OF BodyPartSecurityLabel OPTIONAL
|
|
}
|
|
|
|
BodyPartSecurityLabel ::= CHOICE {
|
|
body-part-unlabelled [0] NULL,
|
|
body-part-security-label [1] SecurityLabel
|
|
}
|
|
|
|
-- Authorization Time
|
|
--authorization-time IPMS-EXTENSION ::= {
|
|
-- VALUE AuthorizationTime,
|
|
-- IDENTIFIED BY id-hex-authorization-time
|
|
--}
|
|
|
|
AuthorizationTime ::= GeneralizedTime
|
|
|
|
-- Circulation List
|
|
--circulation-list-recipients IPMS-EXTENSION ::= {
|
|
-- VALUE CirculationList,
|
|
-- IDENTIFIED BY id-hex-circulation-list-recipients
|
|
--}
|
|
|
|
CirculationList ::=
|
|
SEQUENCE (SIZE (2..ub-circulation-list-members)) OF CirculationMember
|
|
|
|
CirculationMember ::= SET {
|
|
circulation-recipient
|
|
RecipientSpecifier
|
|
-- (WITH COMPONENTS {
|
|
-- ...,
|
|
-- recipient (WITH COMPONENTS {
|
|
-- ...,
|
|
-- formal-name PRESENT
|
|
-- })
|
|
-- })--,
|
|
checked Checkmark OPTIONAL
|
|
}
|
|
|
|
Checkmark ::= CHOICE {
|
|
simple NULL,
|
|
timestamped CirculationTime,
|
|
signed CirculationSignature
|
|
}
|
|
|
|
CirculationTime ::= GeneralizedTime
|
|
|
|
CirculationSignatureData ::=
|
|
-- SIGNED
|
|
-- { --SEQUENCE {algorithm-identifier CirculationSignatureAlgorithmIdentifier,
|
|
this-IPM ThisIPMField,
|
|
timestamp CirculationTime} --}
|
|
|
|
-- expand SIGNED macro
|
|
|
|
CirculationSignature ::= SEQUENCE {
|
|
circulation-signature-data CirculationSignatureData,
|
|
algorithm-identifier AlgorithmIdentifier,
|
|
encrypted BIT STRING
|
|
}
|
|
|
|
|
|
|
|
CirculationSignatureAlgorithmIdentifier ::= AlgorithmIdentifier
|
|
|
|
-- Circulation List Indicator
|
|
--circulation-list-indicator IPMS-EXTENSION ::= {
|
|
-- VALUE NULL,
|
|
-- IDENTIFIED BY id-rex-circulation-list-indicator
|
|
--}
|
|
|
|
CirculationListIndicator ::= NULL
|
|
|
|
-- Distribution Codes
|
|
--distribution-codes IPMS-EXTENSION ::= {
|
|
-- VALUE DistributionCodes,
|
|
-- IDENTIFIED BY id-hex-distribution-codes
|
|
--}
|
|
|
|
DistributionCodes ::=
|
|
SEQUENCE --(SIZE (1..ub-distribution-codes))-- OF DistributionCode
|
|
|
|
DistributionCode ::= SEQUENCE {
|
|
oid-code OBJECT IDENTIFIER OPTIONAL,
|
|
alphanumeric-code AlphaCode OPTIONAL,
|
|
or-descriptor [0] ORDescriptor OPTIONAL
|
|
}
|
|
|
|
AlphaCode ::= UniversalOrBMPString --{ub-alpha-code-length}
|
|
|
|
-- Extended Subject
|
|
--extended-subject IPMS-EXTENSION ::= {
|
|
-- VALUE ExtendedSubject,
|
|
-- IDENTIFIED BY id-hex-extended-subject
|
|
--}
|
|
|
|
ExtendedSubject ::= UniversalOrBMPString--{ub-extended-subject-length}
|
|
|
|
-- Information category
|
|
--information-category IPMS-EXTENSION ::= {
|
|
-- VALUE InformationCategories,
|
|
-- IDENTIFIED BY id-hex-information-category
|
|
--}
|
|
|
|
InformationCategories ::=
|
|
SEQUENCE --(SIZE (1..ub-information-categories))-- OF InformationCategory
|
|
|
|
InformationCategory ::= SEQUENCE {
|
|
reference [0] OBJECT IDENTIFIER OPTIONAL,
|
|
description [1] DescriptionString OPTIONAL
|
|
}
|
|
|
|
DescriptionString ::= UniversalOrBMPString --{ub-information-category-length}
|
|
|
|
-- Manual handling Instructions
|
|
--manual-handling-instructions IPMS-EXTENSION ::= {
|
|
-- VALUE ManualHandlingInstructions,
|
|
-- IDENTIFIED BY id-hex-manual-handling-instructions
|
|
--}
|
|
|
|
ManualHandlingInstructions ::=
|
|
SEQUENCE --(SIZE (1..ub-manual-handling-instructions))-- OF
|
|
ManualHandlingInstruction
|
|
|
|
ManualHandlingInstruction ::=
|
|
UniversalOrBMPString --{ub-manual-handling-instruction-length}
|
|
|
|
-- Originator's Reference
|
|
--originators-reference IPMS-EXTENSION ::= {
|
|
-- VALUE OriginatorsReference,
|
|
-- IDENTIFIED BY id-hex-originators-reference
|
|
--}
|
|
|
|
OriginatorsReference ::= UniversalOrBMPString--{ub-originators-reference-length}
|
|
|
|
-- Precedence Policy Identifier
|
|
--precedence-policy-identifier IPMS-EXTENSION ::= {
|
|
-- VALUE PrecedencePolicyIdentifier,
|
|
-- IDENTIFIED BY id-hex-precedence-policy-id
|
|
--}
|
|
|
|
PrecedencePolicyIdentifier ::= OBJECT IDENTIFIER
|
|
|
|
-- Precedence
|
|
--precedence IPMS-EXTENSION ::= {
|
|
-- VALUE Precedence,
|
|
-- IDENTIFIED BY id-rex-precedence
|
|
--}
|
|
|
|
Precedence ::= INTEGER(0..ub-precedence)
|
|
|
|
-- END - - of IPMSHeadingExtensions
|
|
|
|
-- Module IPMSExtendedBodyPartTypes2 (X.420:06/1999)
|
|
-- IPMSExtendedBodyPartTypes2 {iso standard mhs(10021) ipms(7) modules(0)
|
|
-- extended-body-part-types-2(1)} DEFINITIONS IMPLICIT TAGS ::=
|
|
--BEGIN
|
|
|
|
-- Prologue
|
|
-- Exports everything.
|
|
--IMPORTS
|
|
-- IPMS Information Objects
|
|
-- EXTENDED-BODY-PART-TYPE
|
|
--==
|
|
-- FROM IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- information-objects(2) version-1999(1)}
|
|
-- IPMS Object Identifiers
|
|
-- id-ep-general-text, id-et-general-text
|
|
--==
|
|
-- FROM IPMSObjectIdentifiers {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- object-identifiers(0) version-1999(1)};
|
|
|
|
-- General Text body part
|
|
--general-text-body-part EXTENDED-BODY-PART-TYPE ::= {
|
|
-- PARAMETERS {GeneralTextParameters
|
|
-- IDENTIFIED BY id-ep-general-text},
|
|
-- DATA {GeneralTextData
|
|
-- IDENTIFIED BY id-et-general-text}
|
|
--}
|
|
|
|
GeneralTextParameters ::= SET OF CharacterSetRegistration
|
|
|
|
GeneralTextData ::= GeneralString
|
|
|
|
CharacterSetRegistration ::= INTEGER(1..32767)
|
|
|
|
--END - - of IPMSExtendedBodyPartTypes2
|
|
|
|
-- Module IPMSExtendedVoiceBodyPartType (X.420:06/1999)
|
|
--IPMSExtendedVoiceBodyPartType {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- extended-voice-body-part-type(11)} DEFINITIONS IMPLICIT TAGS ::=
|
|
--BEGIN
|
|
|
|
-- Prologue
|
|
-- Exports everything.
|
|
--IMPORTS
|
|
-- IPMS Information Objects
|
|
-- EXTENDED-BODY-PART-TYPE
|
|
--==
|
|
-- FROM IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- information-objects(2) version-1999(1)}
|
|
-- IPMS Object Identifiers
|
|
-- id-ep-voice, id-et-voice
|
|
--==
|
|
-- FROM IPMSObjectIdentifiers {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- object-identifiers(0) version-1999(1)};
|
|
|
|
-- Extended Voice body part
|
|
--voice-body-part EXTENDED-BODY-PART-TYPE ::= {
|
|
-- PARAMETERS {VoiceParameters
|
|
-- IDENTIFIED BY id-ep-voice},
|
|
-- DATA {VoiceData
|
|
-- IDENTIFIED BY id-et-voice}
|
|
--}
|
|
|
|
VoiceParameters ::= SEQUENCE {
|
|
voice-message-duration [0] INTEGER OPTIONAL, -- In seconds
|
|
voice-encoding-type [1] OBJECT IDENTIFIER,
|
|
supplementary-information [2] IA5String OPTIONAL
|
|
}
|
|
|
|
VoiceData ::= OCTET STRING
|
|
|
|
--END - - of IPMSExtendedVoiceBodyPartType
|
|
|
|
-- Module IPMSForwardedContentBodyPartType (X.420:06/1999)
|
|
--IPMSForwardedContentBodyPartType {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- forwarded-content-body-part-type(15)} DEFINITIONS IMPLICIT TAGS ::=
|
|
--BEGIN
|
|
|
|
-- Prologue
|
|
-- Exports everything.
|
|
--IMPORTS
|
|
-- MTS Abstract Service
|
|
-- Content, ExtendedContentType, MessageDeliveryIdentifier, MessageDeliveryTime,
|
|
-- MessageSubmissionEnvelope, OriginatingMTACertificate,
|
|
-- OtherMessageDeliveryFields, ProofOfSubmission
|
|
--==
|
|
-- FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
|
|
-- mts-abstract-service(1) version-1999(1)}
|
|
-- IPMS Information Objects
|
|
-- EXTENDED-BODY-PART-TYPE
|
|
--==
|
|
-- FROM IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- information-objects(2) version-1999(1)}
|
|
-- IPMS Object Identifiers
|
|
-- id-ep-content, id-et-content
|
|
--==
|
|
-- FROM IPMSObjectIdentifiers {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
-- object-identifiers(0) version-1999(1)};
|
|
|
|
-- Forwarded Content body part
|
|
--content-body-part{ExtendedContentType:content-type} EXTENDED-BODY-PART-TYPE ::=
|
|
-- {
|
|
-- PARAMETERS
|
|
-- {ForwardedContentParameters
|
|
-- IDENTIFIED BY {id-ep-content content-type}},
|
|
-- DATA {Content
|
|
-- IDENTIFIED BY {id-et-content content-type}}
|
|
--}
|
|
|
|
ForwardedContentParameters ::= SET {
|
|
delivery-time [0] MessageDeliveryTime OPTIONAL,
|
|
delivery-envelope [1] OtherMessageDeliveryFields OPTIONAL,
|
|
mts-identifier [2] MessageDeliveryIdentifier OPTIONAL,
|
|
submission-proof [3] SubmissionProof OPTIONAL
|
|
}
|
|
|
|
SubmissionProof ::= SET {
|
|
proof-of-submission [0] ProofOfSubmission,
|
|
originating-MTA-certificate [1] OriginatingMTACertificate,
|
|
message-submission-envelope MessageSubmissionEnvelope
|
|
}
|
|
|
|
END -- of IPMSForwardedContentBodyPartType
|
|
|
|
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
|
|
|
|
|