aboutsummaryrefslogtreecommitdiffstats
path: root/asn1
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2008-09-03 20:26:35 +0000
committerAnders Broman <anders.broman@ericsson.com>2008-09-03 20:26:35 +0000
commit24e791f9ba34080b3fa16efa3d24f3cb154a66bc (patch)
treec5984c13b7ccb60b64c311bfdf6c4f7d87e9e8ae /asn1
parent9d1b5335ac1f48f57712f2937391c7a7b9ce6c19 (diff)
Split the asn1 file in two.
svn path=/trunk/; revision=26132
Diffstat (limited to 'asn1')
-rw-r--r--asn1/x411/MTAAbstractService.asn2533
-rw-r--r--asn1/x411/MTSAbstractService.asn2531
-rw-r--r--asn1/x411/Makefile.common3
3 files changed, 2535 insertions, 2532 deletions
diff --git a/asn1/x411/MTAAbstractService.asn b/asn1/x411/MTAAbstractService.asn
index a6a5812037..5c5802d5f2 100644
--- a/asn1/x411/MTAAbstractService.asn
+++ b/asn1/x411/MTAAbstractService.asn
@@ -1,3 +1,4 @@
+-- $Id:$
-- Module MTAAbstractService (X.411:06/1999)
MTAAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
mta-abstract-service(2) version-1999(1)} DEFINITIONS IMPLICIT TAGS ::=
@@ -516,2537 +517,7 @@ ArrivalTime ::= Time
OtherActions ::= BIT STRING {redirected(0), dl-operation(1)
}--(SIZE (0..ub-bit-options))--
--- END - - of MTA Abstract Service
-
--- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
-
--- Module MTSAbstractService (X.411:06/1999)
---MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
--- mts-abstract-service(1) version-1999(1)} DEFINITIONS IMPLICIT TAGS ::=
---BEGIN
-
--- Prologue
--- Exports everything
---IMPORTS
- -- Remote Operations
--- CONNECTION-PACKAGE, CONTRACT, ERROR, OPERATION, OPERATION-PACKAGE,
--- ROS-OBJECT-CLASS
- --==
--- FROM Remote-Operations-Information-Objects {joint-iso-itu-t
--- remote-operations(4) informationObjects(5) version1(0)}
--- emptyUnbind
- --==
--- FROM Remote-Operations-Useful-Definitions {joint-iso-itu-t
--- remote-operations(4) useful-definitions(7) version1(0)}
- -- MTA Abstract Service
--- internal-trace-information, trace-information
- --==
--- FROM MTAAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
--- mta-abstract-service(2) version-1999(1)}
- -- MS Abstract Service Extension
--- forwarding-request
- --==
--- FROM MSAbstractService {joint-iso-itu-t mhs(6) ms(4) modules(0)
--- abstract-service(1) version-1999(1)}
- -- IPM Information Objects
--- IPMPerRecipientEnvelopeExtensions
- --==
--- FROM IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0)
--- information-objects(2) version-1999(1)}
- -- Object Identifiers
--- id-att-physicalRendition-basic, id-cp-mts-connect, id-ct-mts-access,
--- id-ct-mts-forced-access, id-ot-mts, id-ot-mts-user, id-pt-administration,
--- id-pt-delivery, id-pt-submission, id-tok-asymmetricToken
- --==
--- FROM MTSObjectIdentifiers {joint-iso-itu-t mhs(6) mts(3) modules(0)
--- object-identifiers(0) version-1999(1)}
- -- Operation and Error Codes
--- err-control-violates-registration,
--- err-deferred-delivery-cancellation-rejected, err-delivery-control-violated,
--- err-element-of-service-not-subscribed, err-inconsistent-request,
--- err-message-submission-identifier-invalid,
--- err-new-credentials-unacceptable,
--- err-old-credentials-incorrectly-specified, err-operation-refused,
--- err-originator-invalid, err-recipient-improperly-specified,
--- err-register-rejected, err-remote-bind-error, err-security-error,
--- err-submission-control-violated, err-unsupported-critical-function,
--- op-cancel-deferred-delivery, op-change-credentials, op-delivery-control,
--- op-message-delivery, op-message-submission, op-probe-submission,
--- op-register, op-report-delivery, op-submission-control
- --==
--- FROM MTSAccessProtocol {joint-iso-itu-t mhs(6) protocols(0) modules(0)
--- mts-access-protocol(1) version-1999(1)}
- -- Directory Definitions
--- Name
- --==
--- FROM InformationFramework {joint-iso-itu-t ds(5) module(1)
--- informationFramework(1) 3}
--- PresentationAddress
- --==
--- FROM SelectedAttributeTypes {joint-iso-itu-t ds(5) module(1)
--- selectedAttributeTypes(5) 3}
--- ALGORITHM, AlgorithmIdentifier, Certificates, ENCRYPTED{}, SIGNATURE{},
--- SIGNED{}
- --==
--- FROM AuthenticationFramework {joint-iso-itu-t ds(5) module(1)
--- authenticationFramework(7) 3}
- -- Certificate Extensions
--- CertificateAssertion
- --==
--- FROM CertificateExtensions {joint-iso-itu-t ds(5) module(1)
--- certificateExtensions(26) 0}
- -- Upper Bounds
--- ub-bit-options, ub-built-in-content-type,
--- ub-built-in-encoded-information-types, ub-certificates,
--- ub-common-name-length, ub-content-id-length, ub-content-length,
--- ub-content-types, ub-country-name-alpha-length,
--- ub-country-name-numeric-length, ub-deliverable-class, ub-diagnostic-codes,
--- ub-dl-expansions, ub-domain-defined-attributes,
--- ub-domain-defined-attribute-type-length,
--- ub-domain-defined-attribute-value-length, ub-domain-name-length,
--- ub-encoded-information-types, ub-extension-attributes, ub-extension-types,
--- ub-e163-4-number-length, ub-e163-4-sub-address-length,
--- ub-generation-qualifier-length, ub-given-name-length, ub-initials-length,
--- ub-integer-options, ub-local-id-length, ub-mta-name-length,
--- ub-mts-user-types, ub-numeric-user-id-length, ub-organization-name-length,
--- ub-organizational-units, ub-organizational-unit-name-length,
--- ub-orig-and-dl-expansions, ub-password-length, ub-pds-name-length,
--- ub-pds-parameter-length, ub-pds-physical-address-lines,
--- ub-postal-code-length, ub-privacy-mark-length, ub-queue-size,
--- ub-reason-codes, ub-recipients, ub-recipient-number-for-advice-length,
--- ub-redirections, ub-redirection-classes, ub-restrictions,
--- ub-security-categories, ub-security-labels, ub-security-problems,
--- ub-supplementary-info-length, ub-surname-length, ub-terminal-id-length,
--- ub-tsap-id-length, ub-unformatted-address-length,
--- ub-universal-generation-qualifier-length, ub-universal-given-name-length,
--- ub-universal-initials-length, ub-universal-surname-length,
--- ub-x121-address-length
- --==
--- FROM MTSUpperBounds {joint-iso-itu-t mhs(6) mts(3) modules(0)
--- upper-bounds(3) version-1999(1)};
-
---operationObject1 OPERATION ::= {LINKED {operationObject2}
---}
-
---operationObject2 OPERATION ::= {LINKED {operationObject3}
---}
-
---operationObject3 OPERATION ::= {LINKED {operationObject4}
---}
-
---operationObject4 OPERATION ::= {LINKED {...}
---}
-
--- Objects
---MHS-OBJECT ::= ROS-OBJECT-CLASS
-
---mts MHS-OBJECT ::= {
--- INITIATES {mts-forced-access-contract}
--- RESPONDS {mts-access-contract}
--- ID id-ot-mts
---}
-
---mts-user MHS-OBJECT ::= {
--- INITIATES {mts-access-contract}
--- RESPONDS {mts-forced-access-contract}
--- ID id-ot-mts-user
---}
-
--- Contracts
---mts-access-contract CONTRACT ::= {
--- CONNECTION mts-connect
--- INITIATOR CONSUMER OF {submission | delivery | administration}
--- ID id-ct-mts-access
---}
-
---mts-forced-access-contract CONTRACT ::= {
--- CONNECTION mts-connect
--- RESPONDER CONSUMER OF {submission | delivery | administration}
--- ID id-ct-mts-forced-access
---}
-
--- Connection package
---mts-connect CONNECTION-PACKAGE ::= {
--- BIND mts-bind
--- UNBIND mts-unbind
--- ID id-cp-mts-connect
---}
-
--- Ports
---PORT ::= OPERATION-PACKAGE
-
---submission PORT ::= {
--- OPERATIONS {operationObject1, ...}
--- CONSUMER INVOKES
--- {message-submission | probe-submission | cancel-deferred-delivery, ...}
--- SUPPLIER INVOKES {submission-control, ...}
--- ID id-pt-submission
---}
-
---delivery PORT ::= {
--- OPERATIONS {operationObject1, ...}
--- CONSUMER INVOKES {delivery-control, ...}
--- SUPPLIER INVOKES {message-delivery | report-delivery, ...}
--- ID id-pt-delivery
---}
-
---administration PORT ::= {
--- OPERATIONS {change-credentials, ...}
--- CONSUMER INVOKES {register, ...}
--- SUPPLIER INVOKES {operationObject1, ...}
--- ID id-pt-administration
---}
-
--- MTS-bind and MTS-unbind
---ABSTRACT-OPERATION ::= OPERATION
-
---ABSTRACT-ERROR ::= ERROR
-
---mts-bind ABSTRACT-OPERATION ::= {
--- ARGUMENT MTSBindArgument
--- RESULT MTSBindResult
--- ERRORS {mts-bind-error}
---}
-
-MTSBindArgument ::= SET {
- initiator-name ObjectName,
- messages-waiting [1] EXPLICIT MessagesWaiting OPTIONAL,
- initiator-credentials [2] InitiatorCredentials,
- security-context [3] SecurityContext OPTIONAL,
--- ...,
- extensions
- [5] SET OF ExtensionField --{{MTSBindExtensions}}-- DEFAULT {}
-}
-
---MTSBindExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions
-MTSBindResult ::= SET {
- responder-name ObjectName,
- messages-waiting [1] EXPLICIT MessagesWaiting OPTIONAL,
- responder-credentials [2] ResponderCredentials,
- ...,
- extensions
- [5] SET OF ExtensionField --{{MTSBindResultExtensions}}-- DEFAULT {}
-}
-
---MTSBindResultExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions
-MTSBindError --mts-bind-error ABSTRACT-ERROR-- ::= --{
--- PARAMETER
- INTEGER {busy(0), authentication-error(2), unacceptable-dialogue-mode(3),
- unacceptable-security-context(4),
- inadequate-association-confidentiality(5)}--(0..ub-integer-options)
---}
-
---mts-unbind ABSTRACT-OPERATION ::= emptyUnbind
-
--- Association Control Parameters
-ObjectName ::= CHOICE {
- user-agent ORAddressAndOptionalDirectoryName,
- mTA [0] MTAName,
- message-store [4] ORAddressAndOptionalDirectoryName
-}
-
-MessagesWaiting ::= SET {
- urgent [0] DeliveryQueue,
- normal [1] DeliveryQueue,
- non-urgent [2] DeliveryQueue
-}
-
-DeliveryQueue ::= SET {
- messages [0] INTEGER --(0..ub-queue-size)--,
- octets [1] INTEGER --(0..ub-content-length)-- OPTIONAL
-}
-
-InitiatorCredentials ::= Credentials
-
-ResponderCredentials ::= Credentials
-
-Credentials ::= CHOICE {
- simple Password,
- strong [0] StrongCredentials,
--- ...,
- protected [1] ProtectedPassword
-}
-
-Password ::= CHOICE {
- ia5-string IA5String --(SIZE (0..ub-password-length))--,
- octet-string OCTET STRING --(SIZE (0..ub-password-length))
-}
-
-StrongCredentials ::= SET {
- bind-token [0] Token OPTIONAL,
- certificate [1] Certificates OPTIONAL,
--- ...,
- certificate-selector [2] CertificateAssertion OPTIONAL
-}
-
-ProtectedPassword ::= SET {
- signature
--- SIGNATURE{SET {password Password,
--- time1 [0] UTCTime OPTIONAL,
--- time2 [1] UTCTime OPTIONAL,
--- random1 [2] BIT STRING OPTIONAL,
--- random2 [3] BIT STRING OPTIONAL}},
- Signature,
- time1 [0] UTCTime OPTIONAL,
- time2 [1] UTCTime OPTIONAL,
- random1 [2] BIT STRING OPTIONAL,
- random2 [3] BIT STRING OPTIONAL
-}
-
-Signature ::= SEQUENCE {
- algorithmIdentifier AlgorithmIdentifier,
- encrypted BIT STRING
-}
-
-SecurityContext ::= SET --SIZE (1..ub-security-labels)-- OF SecurityLabel
-
--- Submission Port
---message-submission ABSTRACT-OPERATION ::= {
--- ARGUMENT MessageSubmissionArgument
--- RESULT MessageSubmissionResult
--- ERRORS
--- {submission-control-violated | element-of-service-not-subscribed |
--- originator-invalid | recipient-improperly-specified |
--- inconsistent-request | security-error | unsupported-critical-function |
--- remote-bind-error}
--- LINKED {operationObject1, ...}
--- INVOKE PRIORITY {4 | 6 | 7}
--- CODE op-message-submission
---}
-
-MessageSubmissionArgument ::= SEQUENCE {
- envelope MessageSubmissionEnvelope,
- content Content
-}
-
-MessageSubmissionResult ::= SET {
- message-submission-identifier MessageSubmissionIdentifier,
- message-submission-time [0] MessageSubmissionTime,
- content-identifier ContentIdentifier OPTIONAL,
- extensions
- [1] SET OF ExtensionField --{{MessageSubmissionResultExtensions}}-- DEFAULT {}
-}
-
---MessageSubmissionResultExtensions EXTENSION ::=
--- {- - May contain the following extensions, private extensions, and future standardised extensions,
--- - - at most one instance of each extension type:
--- originating-MTA-certificate | proof-of-submission | PrivateExtensions,
--- ...}
-
---probe-submission ABSTRACT-OPERATION ::= {
--- ARGUMENT ProbeSubmissionArgument
--- RESULT ProbeSubmissionResult
--- ERRORS
--- {submission-control-violated | element-of-service-not-subscribed |
--- originator-invalid | recipient-improperly-specified |
--- inconsistent-request | security-error | unsupported-critical-function |
--- remote-bind-error}
--- LINKED {operationObject1, ...}
--- INVOKE PRIORITY {5}
--- CODE op-probe-submission
---}
-
-ProbeSubmissionArgument ::= ProbeSubmissionEnvelope
-
-ProbeSubmissionResult ::= SET {
- probe-submission-identifier ProbeSubmissionIdentifier,
- probe-submission-time [0] ProbeSubmissionTime,
- content-identifier ContentIdentifier OPTIONAL,
- extensions
- [1] SET OF ExtensionField --{{ProbeResultExtensions}}-- DEFAULT {}
-}
-
---ProbeResultExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions,
--- at most one instance of each extension type
---cancel-deferred-delivery ABSTRACT-OPERATION ::= {
--- ARGUMENT CancelDeferredDeliveryArgument
--- RESULT CancelDeferredDeliveryResult
--- ERRORS
--- {deferred-delivery-cancellation-rejected |
--- message-submission-identifier-invalid | remote-bind-error}
--- LINKED {operationObject1, ...}
--- INVOKE PRIORITY {3}
--- CODE op-cancel-deferred-delivery
---}
-
-CancelDeferredDeliveryArgument ::= MessageSubmissionIdentifier
-
-CancelDeferredDeliveryResult ::= NULL
-
---submission-control ABSTRACT-OPERATION ::= {
--- ARGUMENT SubmissionControlArgument
--- RESULT SubmissionControlResult
--- ERRORS {security-error | remote-bind-error}
--- LINKED {operationObject1, ...}
--- INVOKE PRIORITY {3}
--- CODE op-submission-control
---}
-
-SubmissionControlArgument ::= SubmissionControls
-
-SubmissionControlResult ::= Waiting
-
---submission-control-violated ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-submission-control-violated
---}
-
---element-of-service-not-subscribed ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-element-of-service-not-subscribed
---}
-
---deferred-delivery-cancellation-rejected ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-deferred-delivery-cancellation-rejected
---}
-
---originator-invalid ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-originator-invalid
---}
-
---recipient-improperly-specified ABSTRACT-ERROR ::= {
--- PARAMETER ImproperlySpecifiedRecipients
--- CODE err-recipient-improperly-specified
---}
-
-ImproperlySpecifiedRecipients ::=
- SEQUENCE --SIZE (1..ub-recipients)-- OF MTSRecipientName
-
---message-submission-identifier-invalid ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-message-submission-identifier-invalid
---}
-
---inconsistent-request ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-inconsistent-request
---}
-
---security-error ABSTRACT-ERROR ::= {
--- PARAMETER SecurityProblem
--- CODE err-security-error
---}
-
-SecurityProblem ::= INTEGER {
- assemby-instructions-conflict-with-security-services(0),
- authentication-problem(1), authentication-failure-on-subject-message(2),
- confidentiality-association-problem(3), decryption-failed(4),
- decryption-key-unobtainable(5), failure-of-proof-of-message(6),
- forbidden-user-security-label-register(7),
- incompatible-change-with-original-security-context(8),
- integrity-failure-on-subject-message(9), invalid-security-label(10),
- invalid-security-label-update(11), key-failure(12),
- mandatory-parameter-absence(13), operation-security-failure(14),
- redirection-prohibited(15), refused-alternate-recipient-name(16),
- repudiation-failure-of-message(17),
- responder-credentials-checking-problem(18), security-context-failure(19),
- security-context-problem(20), security-policy-violation(21),
- security-services-refusal(22), token-decryption-failed(23), token-error(24),
- unable-to-aggregate-security-labels(25), unauthorised-dl-name(26),
- unauthorised-entry-class(27),
- unauthorised-originally-intended-recipient-name(28),
- unauthorised-originator-name(29), unauthorised-recipient-name(30),
- unauthorised-security-label-update(31), unauthorised-user-name(32),
- unknown-security-label(33), unsupported-algorithm-identifier(34),
- unsupported-security-policy(35)}(0..ub-security-problems)
-
---unsupported-critical-function ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-unsupported-critical-function
---}
-
---remote-bind-error ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-remote-bind-error
---}
-
--- Submission Port Parameters
-MessageSubmissionIdentifier ::= MTSIdentifier
-
-MessageSubmissionTime ::= Time
-
-ProbeSubmissionIdentifier ::= MTSIdentifier
-
-ProbeSubmissionTime ::= Time
-
-SubmissionControls ::=
- Controls
- (WITH COMPONENTS {
- ...,
- permissible-content-types ABSENT,
- permissible-encoded-information-types ABSENT
- })
-
-Waiting ::= SET {
- waiting-operations [0] Operations DEFAULT {},
- waiting-messages [1] WaitingMessages DEFAULT {},
- waiting-content-types
- [2] SET --SIZE (0..ub-content-types)-- OF ContentType DEFAULT {},
- waiting-encoded-information-types EncodedInformationTypes OPTIONAL
-}
-
-Operations ::= BIT STRING {
- probe-submission-or-report-delivery(0),
- message-submission-or-message-delivery(1)}(SIZE (0..ub-bit-options))
-
--- holding 'one', not-holding 'zero'
-WaitingMessages ::= BIT STRING {
- long-content(0), low-priority(1), other-security-labels(2)
-}(SIZE (0..ub-bit-options))
-
--- Delivery Port
---message-delivery ABSTRACT-OPERATION ::= {
--- ARGUMENT MessageDeliveryArgument
--- RESULT MessageDeliveryResult
--- ERRORS
--- {delivery-control-violated | security-error |
--- unsupported-critical-function}
--- LINKED {operationObject1, ...}
--- INVOKE PRIORITY {4 | 6 | 7}
--- CODE op-message-delivery
---}
-
-MessageDeliveryArgument ::= SEQUENCE {
--- COMPONENTS OF MessageDeliveryEnvelope,
- message-delivery-identifier MessageDeliveryIdentifier,
- message-delivery-time MessageDeliveryTime,
- other-fields OtherMessageDeliveryFields,
- content Content
-}
-
-MessageDeliveryResult ::= SET {
- recipient-certificate [0] RecipientCertificate OPTIONAL,
- proof-of-delivery [1] IMPLICIT ProofOfDelivery OPTIONAL,
- ...,
- extensions
- [2] SET OF ExtensionField --{{MessageDeliveryResultExtensions}}-- DEFAULT {}
-}
-
---MessageDeliveryResultExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions
---report-delivery ABSTRACT-OPERATION ::= {
--- ARGUMENT ReportDeliveryArgument
--- RESULT ReportDeliveryResult
--- ERRORS
--- {delivery-control-violated | security-error |
--- unsupported-critical-function}
--- LINKED {operationObject1, ...}
--- INVOKE PRIORITY {5}
--- CODE op-report-delivery
---}
-
-ReportDeliveryArgument ::= SET {
--- COMPONENTS OF ReportDeliveryEnvelope
- subject-submission-identifier SubjectSubmissionIdentifier,
- content-identifier ContentIdentifier OPTIONAL,
- content-type ContentType OPTIONAL,
- original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL,
- extensions
- [1] SET OF ExtensionField --{{ReportDeliveryExtensions}}-- DEFAULT {},
- per-recipient-fields
- SEQUENCE --SIZE (1..ub-recipients)-- OF PerRecipientReportDeliveryFields,
- returned-content [0] Content OPTIONAL
-}
-
-ReportDeliveryResult ::= CHOICE {
- empty-result NULL,
- ...,
- extensions
- SET --SIZE (1..MAX)-- OF ExtensionField --{{ReportDeliveryResultExtensions}}--
-}
-
---ReportDeliveryResultExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions
---delivery-control ABSTRACT-OPERATION ::= {
--- ARGUMENT DeliveryControlArgument
--- RESULT DeliveryControlResult
--- ERRORS
--- {control-violates-registration | security-error | operation-refused}
--- LINKED {operationObject1, ...}
--- INVOKE PRIORITY {3}
--- CODE op-delivery-control
---}
-
-DeliveryControlArgument ::= SET {
--- COMPONENTS OF DeliveryControls,
- restrict [0] BOOLEAN DEFAULT TRUE,
- -- update 'TRUE', remove 'FALSE'
- permissible-operations [1] Operations OPTIONAL,
- permissible-maximum-content-length [2] ContentLength OPTIONAL,
- permissible-lowest-priority Priority OPTIONAL,
- permissible-content-types [4] ContentTypes OPTIONAL,
- permissible-encoded-information-types
- PermissibleEncodedInformationTypes OPTIONAL,
- permissible-security-context [5] SecurityContext OPTIONAL,
- extensions
- [6] SET OF ExtensionField --{{DeliveryControlExtensions}}-- DEFAULT {}
-}
-
---DeliveryControlExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions
-DeliveryControlResult ::= SET {
--- COMPONENTS OF Waiting,
- waiting-operations [0] Operations DEFAULT {},
- waiting-messages [1] WaitingMessages DEFAULT {},
- waiting-content-types
- [2] SET --SIZE (0..ub-content-types)-- OF ContentType DEFAULT {},
- waiting-encoded-information-types EncodedInformationTypes OPTIONAL,
- extensions
- [6] SET OF ExtensionField --{{DeliveryControlResultExtensions}}-- DEFAULT {}
-}
-
---DeliveryControlResultExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions
---delivery-control-violated ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-delivery-control-violated
---}
-
---control-violates-registration ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-control-violates-registration
---}
-
---operation-refused ABSTRACT-ERROR ::= {
--- PARAMETER RefusedOperation
--- CODE err-operation-refused
---}
-
-RefusedOperation ::= SET {
- refused-argument
- CHOICE {built-in-argument [1] RefusedArgument,
- refused-extension ANY --EXTENSION.&id --},
- refusal-reason [2] RefusalReason
-}
-
-RefusedArgument ::= INTEGER {
- user-name(0), user-address(1), deliverable-content-types(2),
- deliverable-maximum-content-length(3),
- deliverable-encoded-information-types-constraints(4),
- deliverable-security-labels(5), recipient-assigned-redirections(6),
- restricted-delivery(7),
- retrieve-registrations(8), -- value 9 reserved for possible future extension to Register arguments
- restrict(10), permissible-operations(11), permissible-lowest-priority(12),
- permissible-encoded-information-types(13), permissible-content-types(14),
- permissible-maximum-content-length(15), permissible-security-context(16)
-}(0..ub-integer-options)
-
-RefusalReason ::= INTEGER {
- facility-unavailable(0), facility-not-subscribed(1),
- parameter-unacceptable(2)}(0..ub-integer-options)
-
--- Delivery Port Parameters
-RecipientCertificate ::= Certificates
-
-ProofOfDelivery ::= Signature
--- SIGNATURE
--- {SEQUENCE {algorithm-identifier
--- ProofOfDeliveryAlgorithmIdentifier,
--- delivery-time MessageDeliveryTime,
--- this-recipient-name ThisRecipientName,
--- originally-intended-recipient-name
--- MTSOriginallyIntendedRecipientName OPTIONAL,
--- content Content,
--- content-identifier ContentIdentifier OPTIONAL,
--- message-security-label
--- MessageSecurityLabel OPTIONAL}}
-
-ProofOfDeliveryAlgorithmIdentifier ::= AlgorithmIdentifier
-
-DeliveryControls ::= Controls
-
-Controls ::= SET {
- restrict [0] BOOLEAN DEFAULT TRUE,
- -- update 'TRUE', remove 'FALSE'
- permissible-operations [1] Operations OPTIONAL,
- permissible-maximum-content-length [2] ContentLength OPTIONAL,
- permissible-lowest-priority Priority OPTIONAL,
- permissible-content-types [4] ContentTypes OPTIONAL,
- permissible-encoded-information-types
- PermissibleEncodedInformationTypes OPTIONAL,
- permissible-security-context [5] SecurityContext OPTIONAL
-}
-
--- Note - The Tags [0], [1] and [2] are altered for the Register operation only.
-PermissibleEncodedInformationTypes ::=
- EncodedInformationTypesConstraints
-
--- Administration Port
---register ABSTRACT-OPERATION ::= {
--- ARGUMENT RegisterArgument
--- RESULT RegisterResult
--- ERRORS
--- {register-rejected | remote-bind-error | operation-refused |
--- security-error}
--- LINKED {operationObject1, ...}
--- INVOKE PRIORITY {5}
--- CODE op-register
---}
-
-RegisterArgument ::= SET {
- user-name UserName OPTIONAL,
- user-address [0] UserAddress OPTIONAL,
- deliverable-class
- SET --SIZE (1..ub-deliverable-class)-- OF DeliverableClass OPTIONAL,
- default-delivery-controls [2] EXPLICIT DefaultDeliveryControls OPTIONAL,
- redirections [3] Redirections OPTIONAL,
- restricted-delivery [4] RestrictedDelivery OPTIONAL,
- retrieve-registrations [5] RegistrationTypes OPTIONAL,
- extensions
- [6] SET OF ExtensionField --{{RegisterExtensions}}-- DEFAULT {}
-}
-
---RegisterExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions
-RegisterResult ::= CHOICE {
- empty-result NULL,
- non-empty-result
- SET {registered-information
- [0] RegisterArgument
--- (WITH COMPONENTS {
--- ...,
--- retrieve-registrations ABSENT
--- }) OPTIONAL--,
- extensions
- [1] SET OF ExtensionField --{{RegisterResultExtensions}}-- DEFAULT {}
- }
-}
-
---RegisterResultExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions
---change-credentials ABSTRACT-OPERATION ::= {
--- ARGUMENT ChangeCredentialsArgument
--- RESULT NULL
--- ERRORS
--- {new-credentials-unacceptable | old-credentials-incorrectly-specified |
--- remote-bind-error | security-error}
--- LINKED {operationObject1, ...}
--- INVOKE PRIORITY {5}
--- CODE op-change-credentials
---}
-
-ChangeCredentialsArgument ::= SET {
- old-credentials [0] Credentials(WITH COMPONENTS {
- simple
- }),
- new-credentials [1] Credentials(WITH COMPONENTS {
- simple
- })
-}
-
---register-rejected ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-register-rejected
---}
-
---new-credentials-unacceptable ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-new-credentials-unacceptable
---}
-
---old-credentials-incorrectly-specified ABSTRACT-ERROR ::= {
--- PARAMETER NULL
--- CODE err-old-credentials-incorrectly-specified
---}
-
--- Administration Port Parameters
-UserName ::= ORAddressAndOptionalDirectoryName
-
-UserAddress ::= CHOICE {
- x121
- [0] SEQUENCE {x121-address
- NumericString --(SIZE (1..ub-x121-address-length))-- OPTIONAL,
- tsap-id
- PrintableString --(SIZE (1..ub-tsap-id-length))-- OPTIONAL
- },
- presentation [1] PSAPAddress
-}
-
-PSAPAddress ::= PresentationAddress
-
-DeliverableClass ::=
- MessageClass
- (WITH COMPONENTS {
- ...,
- priority ABSENT,
- -- The 'objects' component shall always be defaulted.
- -- objects ABSENT,
- -- A component with a DEFAULT clause cannot be ABSENT
- applies-only-to ABSENT
- })
-
-DefaultDeliveryControls ::=
- Controls
- (WITH COMPONENTS {
- ...,
-
- -- The 'restrict' component shall always be defaulted.
- -- restrict ABSENT,
- -- A component with a DEFAULT clause cannot be ABSENT
- permissible-security-context ABSENT
- })
-
-Redirections ::= SEQUENCE SIZE (1..ub-redirections) OF RecipientRedirection
-
-RecipientRedirection ::= SET {
- redirection-classes
- [0] SET --SIZE (1..ub-redirection-classes)-- OF RedirectionClass OPTIONAL,
- recipient-assigned-alternate-recipient
- [1] RecipientAssignedAlternateRecipient OPTIONAL
-}
-
-RedirectionClass ::= MessageClass
-
-MessageClass ::= SET {
- content-types [0] ContentTypes OPTIONAL,
- maximum-content-length [1] ContentLength OPTIONAL,
- encoded-information-types-constraints
- [2] EncodedInformationTypesConstraints OPTIONAL,
- security-labels [3] SecurityContext OPTIONAL,
- priority [4] SET OF Priority OPTIONAL,
- objects
- [5] ENUMERATED {messages(0), reports(1), both(2), ...
- } DEFAULT both,
- applies-only-to [6] SEQUENCE OF Restriction OPTIONAL, -- Not considered in the case of Reports
- extensions
- [7] SET OF ExtensionField --{{MessageClassExtensions}}-- DEFAULT {}
-}
-
-EncodedInformationTypesConstraints ::= SEQUENCE {
- unacceptable-eits [0] ExtendedEncodedInformationTypes OPTIONAL,
- acceptable-eits [1] ExtendedEncodedInformationTypes OPTIONAL,
- exclusively-acceptable-eits [2] ExtendedEncodedInformationTypes OPTIONAL
-}
-
---MessageClassExtensions EXTENSION ::= {PrivateExtensions, ...}
-
--- May contain private extensions and future standardised extensions
-RecipientAssignedAlternateRecipient ::=
- ORAddressAndOrDirectoryName
-
-RestrictedDelivery ::= SEQUENCE SIZE (1..ub-restrictions) OF Restriction
-
-Restriction ::= SET {
- permitted BOOLEAN DEFAULT TRUE,
- source-type
- BIT STRING {originated-by(0), redirected-by(1), dl-expanded-by(2)}
--- DEFAULT {originated-by, redirected-by, dl-expanded-by}--,
- source-name ExactOrPattern OPTIONAL
-}
-
-ExactOrPattern ::= CHOICE {
- exact-match [0] ORName,
- pattern-match [1] ORName
-}
-
-RegistrationTypes ::= SEQUENCE {
- standard-parameters
- [0] BIT STRING {user-name(0), user-address(1), deliverable-class(2),
- default-delivery-controls(3), redirections(4),
- restricted-delivery(5)} OPTIONAL,
- extensions [1] SET OF ANY --EXTENSION.&id({RegisterExtensions})-- OPTIONAL
-}
-
--- Message Submission Envelope
-MessageSubmissionEnvelope ::= SET {
--- COMPONENTS OF PerMessageSubmissionFields,
--- per-recipient-fields
--- [1] SEQUENCE SIZE (1..ub-recipients) OF
--- PerRecipientMessageSubmissionFields
---}
-
---PerMessageSubmissionFields ::= SET {
- originator-name MTSOriginatorName,
- original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL,
- content-type ContentType,
- content-identifier ContentIdentifier OPTIONAL,
- priority Priority DEFAULT normal,
- per-message-indicators PerMessageIndicators DEFAULT {},
- deferred-delivery-time [0] DeferredDeliveryTime OPTIONAL,
- extensions
- [2] SET OF ExtensionField --{{PerMessageSubmissionExtensions}}-- DEFAULT {}
- ,per-recipient-fields
- [1] SEQUENCE --SIZE (1..ub-recipients)-- OF
- PerRecipientMessageSubmissionFields
-
-}
-
---PerMessageSubmissionExtensions EXTENSION ::=
--- {- - May contain the following extensions, private extensions, and future standardised extensions,
- -- at most one instance of each extension type:
--- recipient-reassignment-prohibited | dl-expansion-prohibited |
--- conversion-with-loss-prohibited | latest-delivery-time |
--- originator-return-address | originator-certificate |
--- content-confidentiality-algorithm-identifier |
--- message-origin-authentication-check | message-security-label |
--- proof-of-submission-request | content-correlator | dl-exempted-recipients |
--- certificate-selectors | multiple-originator-certificates |
--- forwarding-request - - for MS Abstract Service only - - | PrivateExtensions,
--- ...}
-
-PerRecipientMessageSubmissionFields ::= SET {
- recipient-name MTSRecipientName,
- originator-report-request [0] OriginatorReportRequest,
- explicit-conversion [1] ExplicitConversion OPTIONAL,
- extensions
- [2] SET OF ExtensionField --{{PerRecipientMessageSubmissionExtensions}}--
- DEFAULT {}
-}
-
---PerRecipientMessageSubmissionExtensions EXTENSION ::=
--- {- - May contain the following extensions, private extensions, and future standardised extensions,
- -- at most one instance of each extension type:
--- originator-requested-alternate-recipient | requested-delivery-method |
--- physical-forwarding-prohibited | physical-forwarding-address-request |
--- physical-delivery-modes | registered-mail-type | recipient-number-for-advice
--- | physical-rendition-attributes | physical-delivery-report-request |
--- message-token | content-integrity-check | proof-of-delivery-request |
--- certificate-selectors-override | recipient-certificate |
--- IPMPerRecipientEnvelopeExtensions | PrivateExtensions, ...}
-
--- Probe Submission Envelope
-ProbeSubmissionEnvelope ::= SET {
--- COMPONENTS OF PerProbeSubmissionFields,
--- per-recipient-fields
--- [3] SEQUENCE SIZE (1..ub-recipients) OF PerRecipientProbeSubmissionFields
---}
-
---PerProbeSubmissionFields ::= SET {
- originator-name MTSOriginatorName,
- original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL,
- content-type ContentType,
- content-identifier ContentIdentifier OPTIONAL,
- content-length [0] ContentLength OPTIONAL,
- per-message-indicators PerMessageIndicators DEFAULT {},
- extensions
- [2] SET OF ExtensionField --{{PerProbeSubmissionExtensions}}-- DEFAULT {}
- ,per-recipient-fields
- [3] SEQUENCE --SIZE (1..ub-recipients)-- OF PerRecipientProbeSubmissionFields
-
-}
-
---PerProbeSubmissionExtensions EXTENSION ::=
--- {- - May contain the following extensions, private extensions, and future standardised extensions,
- -- at most one instance of each extension type:
--- recipient-reassignment-prohibited | dl-expansion-prohibited |
--- conversion-with-loss-prohibited | originator-certificate |
--- message-security-label | content-correlator |
--- probe-origin-authentication-check | PrivateExtensions, ...}
-
-PerRecipientProbeSubmissionFields ::= SET {
- recipient-name MTSRecipientName,
- originator-report-request [0] OriginatorReportRequest,
- explicit-conversion [1] ExplicitConversion OPTIONAL,
- extensions
- [2] SET OF ExtensionField --{{PerRecipientProbeSubmissionExtensions}}
- DEFAULT {}
-}
-
---PerRecipientProbeSubmissionExtensions EXTENSION ::=
--- {- - May contain the following extensions, private extensions, and future standardised extensions,
- -- at most one instance of each extension type:
--- originator-requested-alternate-recipient | requested-delivery-method |
--- physical-rendition-attributes | PrivateExtensions, ...}
-
--- Message Delivery Envelope
-MessageDeliveryEnvelope ::= SEQUENCE {
- message-delivery-identifier MessageDeliveryIdentifier,
- message-delivery-time MessageDeliveryTime,
- other-fields OtherMessageDeliveryFields
-}
-
-OtherMessageDeliveryFields ::= SET {
- content-type DeliveredContentType,
- originator-name DeliveredOriginatorName,
- original-encoded-information-types
- [1] OriginalEncodedInformationTypes OPTIONAL,
- priority Priority DEFAULT normal,
- delivery-flags [2] DeliveryFlags OPTIONAL,
- other-recipient-names [3] OtherRecipientNames OPTIONAL,
- this-recipient-name [4] ThisRecipientName,
- originally-intended-recipient-name
- [5] MTSOriginallyIntendedRecipientName OPTIONAL,
- converted-encoded-information-types
- [6] ConvertedEncodedInformationTypes OPTIONAL,
- message-submission-time [7] MessageSubmissionTime,
- content-identifier [8] ContentIdentifier OPTIONAL,
- extensions
- [9] SET OF ExtensionField --{{MessageDeliveryExtensions}}-- DEFAULT {}
-}
-
---MessageDeliveryExtensions EXTENSION ::=
--- {- - May contain the following extensions, private extensions, and future standardised extensions,
- -- at most one instance of each extension type:
--- conversion-with-loss-prohibited | requested-delivery-method |
--- physical-forwarding-prohibited | physical-forwarding-address-request |
--- physical-delivery-modes | registered-mail-type | recipient-number-for-advice
--- | physical-rendition-attributes | originator-return-address |
--- physical-delivery-report-request | originator-certificate | message-token |
--- content-confidentiality-algorithm-identifier | content-integrity-check |
--- message-origin-authentication-check | message-security-label |
--- proof-of-delivery-request | dl-exempted-recipients | certificate-selectors |
--- certificate-selectors-override | multiple-originator-certificates |
--- recipient-certificate | IPMPerRecipientEnvelopeExtensions |
--- redirection-history | dl-expansion-history | trace-information |
--- internal-trace-information | PrivateExtensions, ...}
-
--- Report Delivery Envelope
-ReportDeliveryEnvelope ::= SET {
--- COMPONENTS OF PerReportDeliveryFields,
--- per-recipient-fields
--- SEQUENCE SIZE (1..ub-recipients) OF PerRecipientReportDeliveryFields
---}
-
---PerReportDeliveryFields ::= SET {
- subject-submission-identifier SubjectSubmissionIdentifier,
- content-identifier ContentIdentifier OPTIONAL,
- content-type ContentType OPTIONAL,
- original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL,
- extensions
- [1] SET OF ExtensionField --{{ReportDeliveryExtensions}}-- DEFAULT {}
- ,per-recipient-fields
- SEQUENCE --SIZE (1..ub-recipients)-- OF PerRecipientReportDeliveryFields
-
-}
-
---ReportDeliveryExtensions EXTENSION ::=
--- {- - May contain the following extensions, private extensions, and future standardised extensions,
- -- at most one instance of each extension type:
--- message-security-label | content-correlator | redirection-history |
--- originator-and-DL-expansion-history | reporting-DL-name |
--- reporting-MTA-certificate | report-origin-authentication-check |
--- trace-information | internal-trace-information | reporting-MTA-name |
--- PrivateExtensions, ...}
-
-PerRecipientReportDeliveryFields ::= SET {
- actual-recipient-name [0] MTSActualRecipientName,
- report-type [1] ReportType,
- converted-encoded-information-types
- ConvertedEncodedInformationTypes OPTIONAL,
- originally-intended-recipient-name
- [2] MTSOriginallyIntendedRecipientName OPTIONAL,
- supplementary-information [3] SupplementaryInformation OPTIONAL,
- extensions
- [4] SET OF ExtensionField --{{PerRecipientReportDeliveryExtensions}}--
- DEFAULT {}
-}
-
---PerRecipientReportDeliveryExtensions EXTENSION ::=
--- {- - May contain the following extensions, private extensions, and future standardised extensions,
- -- at most one instance of each extension type:
--- redirection-history | physical-forwarding-address | recipient-certificate |
--- proof-of-delivery | PrivateExtensions, ...}
-
-ReportType ::= CHOICE {
- delivery [0] DeliveryReport,
- non-delivery [1] NonDeliveryReport
-}
-
-DeliveryReport ::= SET {
- message-delivery-time [0] MessageDeliveryTime,
- type-of-MTS-user [1] TypeOfMTSUser DEFAULT public
-}
-
-NonDeliveryReport ::= SET {
- non-delivery-reason-code [0] NonDeliveryReasonCode,
- non-delivery-diagnostic-code [1] NonDeliveryDiagnosticCode OPTIONAL
-}
-
--- Envelope Fields
-MTSOriginatorName ::= ORAddressAndOrDirectoryName
-
-DeliveredOriginatorName ::= ORAddressAndOptionalDirectoryName
-
-OriginalEncodedInformationTypes ::= EncodedInformationTypes
-
-ContentTypes ::= SET --SIZE (1..ub-content-types)-- OF ContentType
-
-ContentType ::= CHOICE {
- built-in BuiltInContentType,
- extended ExtendedContentType
-}
-
-BuiltInContentType ::= [APPLICATION 6] INTEGER {
- unidentified(0),
- external(1), -- identified by the object-identifier of the EXTERNAL content
- interpersonal-messaging-1984(2), interpersonal-messaging-1988(22),
- edi-messaging(35), voice-messaging(40)} --(0..ub-built-in-content-type)
-
-ExtendedContentType ::= OBJECT IDENTIFIER -- RELATIVE-OID
-
-DeliveredContentType ::= CHOICE {
- built-in [0] BuiltInContentType,
- extended ExtendedContentType
-}
-
-ContentIdentifier ::=
- [APPLICATION 10] PrintableString --(SIZE (1..ub-content-id-length))
-
-PerMessageIndicators ::= [APPLICATION 8] BIT STRING {
- disclosure-of-other-recipients(0), -- disclosure-of-other-recipients-requested 'one',
-
- -- disclosure-of-other-recipients-prohibited 'zero';
- -- ignored for Probe-submission
- implicit-conversion-prohibited(1), -- implicit-conversion-prohibited 'one',
-
- -- implicit-conversion-allowed 'zero'
- alternate-recipient-allowed(2), -- alternate-recipient-allowed 'one',
-
- -- alternate-recipient-prohibited 'zero'
- content-return-request(3), -- content-return-requested 'one',
-
- -- content-return-not-requested 'zero';
- -- ignored for Probe-submission
- reserved(4), -- bit reserved by MOTIS 1986
- bit-5(5),
- bit-6(6), -- notification type-1 : bit 5 'zero' and bit 6 'one'
-
- -- notification type-2 : bit 5 'one' and bit 6 'zero'
- -- notification type-3 : bit 5 'one' and bit 6 'one'
- -- the mapping between notification type 1, 2, 3
- -- and the content specific notification types are defined
- -- in relevant content specifications
- service-message(7) -- the message content is for service purposes;
-
-
--- it may be a notification related to a service message;
--- used only by bilateral agreement --}(SIZE (0..ub-bit-options))
-
-MTSRecipientName ::= ORAddressAndOrDirectoryName
-
-OriginatorReportRequest ::= BIT STRING {report(3), non-delivery-report(4)
-
--- at most one bit shall be 'one':
--- report bit 'one' requests a 'report';
--- non-delivery-report bit 'one' requests a 'non-delivery-report';
--- both bits 'zero' requests 'no-report' --}(SIZE (0..ub-bit-options))
-
-ExplicitConversion ::= INTEGER {
- ia5-text-to-teletex(0),
- -- values 1 to 7 are no longer defined
- ia5-text-to-g3-facsimile(8), ia5-text-to-g4-class-1(9),
- ia5-text-to-videotex(10), teletex-to-ia5-text(11),
- teletex-to-g3-facsimile(12), teletex-to-g4-class-1(13),
- teletex-to-videotex(14),
- -- value 15 is no longer defined
- videotex-to-ia5-text(16), videotex-to-teletex(17)}(0..ub-integer-options)
-
-DeferredDeliveryTime ::= Time
-
-Priority ::= [APPLICATION 7] ENUMERATED {normal(0), non-urgent(1), urgent(2)}
-
-ContentLength ::= INTEGER(0..ub-content-length)
-
-MessageDeliveryIdentifier ::= MTSIdentifier
-
-MessageDeliveryTime ::= Time
-
-DeliveryFlags ::= BIT STRING {
- implicit-conversion-prohibited(1) -- implicit-conversion-prohibited 'one',
-
- -- implicit-conversion-allowed 'zero' --}(SIZE (0..ub-bit-options))
-
-OtherRecipientNames ::= SEQUENCE --SIZE (1..ub-recipients)-- OF OtherRecipientName
-
-OtherRecipientName ::= ORAddressAndOptionalDirectoryName
-
-ThisRecipientName ::= ORAddressAndOptionalDirectoryName
-
-MTSOriginallyIntendedRecipientName ::= ORAddressAndOptionalDirectoryName
-
-ConvertedEncodedInformationTypes ::= EncodedInformationTypes
-
-SubjectSubmissionIdentifier ::= MTSIdentifier
-
-MTSActualRecipientName ::= ORAddressAndOrDirectoryName
-
-TypeOfMTSUser ::= INTEGER {
- public(0), private(1), ms(2), dl(3), pdau(4), physical-recipient(5), other(6)
-}(0..ub-mts-user-types)
-
-NonDeliveryReasonCode ::= INTEGER {
- transfer-failure(0), unable-to-transfer(1), conversion-not-performed(2),
- physical-rendition-not-performed(3), physical-delivery-not-performed(4),
- restricted-delivery(5), directory-operation-unsuccessful(6),
- deferred-delivery-not-performed(7), transfer-failure-for-security-reason(8)
-}(0..ub-reason-codes)
-
-NonDeliveryDiagnosticCode ::= INTEGER {
- unrecognised-OR-name(0), ambiguous-OR-name(1), mts-congestion(2),
- loop-detected(3), recipient-unavailable(4), maximum-time-expired(5),
- encoded-information-types-unsupported(6), content-too-long(7),
- conversion-impractical(8), implicit-conversion-prohibited(9),
- implicit-conversion-not-subscribed(10), invalid-arguments(11),
- content-syntax-error(12), size-constraint-violation(13),
- protocol-violation(14), content-type-not-supported(15),
- too-many-recipients(16), no-bilateral-agreement(17),
- unsupported-critical-function(18), conversion-with-loss-prohibited(19),
- line-too-long(20), page-split(21), pictorial-symbol-loss(22),
- punctuation-symbol-loss(23), alphabetic-character-loss(24),
- multiple-information-loss(25), recipient-reassignment-prohibited(26),
- redirection-loop-detected(27), dl-expansion-prohibited(28),
- no-dl-submit-permission(29), dl-expansion-failure(30),
- physical-rendition-attributes-not-supported(31),
- undeliverable-mail-physical-delivery-address-incorrect(32),
- undeliverable-mail-physical-delivery-office-incorrect-or-invalid(33),
- undeliverable-mail-physical-delivery-address-incomplete(34),
- undeliverable-mail-recipient-unknown(35),
- undeliverable-mail-recipient-deceased(36),
- undeliverable-mail-organization-expired(37),
- undeliverable-mail-recipient-refused-to-accept(38),
- undeliverable-mail-recipient-did-not-claim(39),
- undeliverable-mail-recipient-changed-address-permanently(40),
- undeliverable-mail-recipient-changed-address-temporarily(41),
- undeliverable-mail-recipient-changed-temporary-address(42),
- undeliverable-mail-new-address-unknown(43),
- undeliverable-mail-recipient-did-not-want-forwarding(44),
- undeliverable-mail-originator-prohibited-forwarding(45),
- secure-messaging-error(46), unable-to-downgrade(47),
- unable-to-complete-transfer(48), transfer-attempts-limit-reached(49),
- incorrect-notification-type(50),
- dl-expansion-prohibited-by-security-policy(51),
- forbidden-alternate-recipient(52), security-policy-violation(53),
- security-services-refusal(54), unauthorised-dl-member(55),
- unauthorised-dl-name(56),
- unauthorised-originally-intended-recipient-name(57),
- unauthorised-originator-name(58), unauthorised-recipient-name(59),
- unreliable-system(60), authentication-failure-on-subject-message(61),
- decryption-failed(62), decryption-key-unobtainable(63),
- double-envelope-creation-failure(64),
- double-enveloping-message-restoring-failure(65),
- failure-of-proof-of-message(66), integrity-failure-on-subject-message(67),
- invalid-security-label(68), key-failure(69), mandatory-parameter-absence(70),
- operation-security-failure(71), repudiation-failure-of-message(72),
- security-context-failure(73), token-decryption-failed(74), token-error(75),
- unknown-security-label(76), unsupported-algorithm-identifier(77),
- unsupported-security-policy(78)}(0..ub-diagnostic-codes)
-
-SupplementaryInformation ::=
- PrintableString(SIZE (1..ub-supplementary-info-length))
-
--- Extension Fields
-EXTENSION ::= CLASS {
- &id ExtensionType UNIQUE,
- &Type OPTIONAL,
- &absent &Type OPTIONAL,
- &recommended Criticality DEFAULT {}
-}
-WITH SYNTAX {
- [&Type
- [IF ABSENT &absent],]
- [RECOMMENDED CRITICALITY &recommended,]
- IDENTIFIED BY &id
-}
-
-ExtensionType ::= CHOICE {
- standard-extension [0] StandardExtension --(0..ub-extension-types)--,
- private-extension [3] OBJECT IDENTIFIER
-}
-
-StandardExtension ::= INTEGER {
- recipient-reassignment-prohibited (1),
- originator-requested-alternate-recipient (2),
- dl-expansion-prohibited (3),
- conversion-with-loss-prohibited (4),
- latest-delivery-time (5),
- requested-delivery-method (6),
- physical-forwarding-prohibited (7),
- physical-forwarding-address-request (8),
- physical-delivery-modes (9),
- registered-mail-type (10),
- recipient-number-for-advice (11),
- physical-rendition-attributes (12),
- originator-return-address (13),
- physical-delivery-report-request (14),
- originator-certificate (15),
- message-token (16),
- content-confidentiality-algorithm-identifier (17),
- content-integrity-check (18),
- message-origin-authentication-check (19),
- message-security-label (20),
- proof-of-submission-request (21),
- proof-of-delivery-request (22),
- content-correlator (23),
- probe-origin-authentication-check (24),
- redirection-history (25),
- dl-expansion-history (26),
- physical-forwarding-address (27),
- recipient-certificate (28),
- proof-of-delivery (29),
- originator-and-DL-expansion-history (30),
- reporting-DL-name (31),
- reporting-MTA-certificate (32),
- report-origin-authentication-check (33),
- originating-MTA-certificate (34),
- proof-of-submission (35),
- forwarding-request (36),
- trace-information (37),
- internal-trace-information (38),
- reporting-MTA-name (39),
- multiple-originator-certificates (40),
- blind-copy-recipients (41),
- dl-exempted-recipients (42),
- body-part-encryption-token (43),
- forwarded-content-token (44),
- certificate-selectors (45)
-}
-
-Criticality ::= BIT STRING {for-submission(0), for-transfer(1), for-delivery(2)
-} -- (SIZE (0..ub-bit-options)) - - critical 'one', non-critical 'zero'
-
-
-ExtensionField --{EXTENSION:ChosenFrom}-- ::= SEQUENCE {
- type ExtensionType --EXTENSION.&id({ChosenFrom})--,
- criticality [1] Criticality DEFAULT {},
- value [2] ANY --EXTENSION.&Type({ChosenFrom}{@type}) DEFAULT NULL:NULL
-}
-
---PrivateExtensions EXTENSION ::=
--- {- - Any value shall be relayed and delivered if not Critical (see Table 27)
- -- except those values whose semantics the MTA obeys which are defined to be removed when obeyed.
--- - - Shall be IDENTIFIED BY ExtensionType.private-extension - -...}
-
---recipient-reassignment-prohibited EXTENSION ::= {
--- RecipientReassignmentProhibited
--- IF ABSENT recipient-reassignment-allowed,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:1
---}
-
-RecipientReassignmentProhibited ::= ENUMERATED {
- recipient-reassignment-allowed(0), recipient-reassignment-prohibited(1)
-}
-
---originator-requested-alternate-recipient EXTENSION ::= {
--- OriginatorRequestedAlternateRecipient,
--- RECOMMENDED CRITICALITY {for-submission},
--- IDENTIFIED BY standard-extension:2
---}
-
-MTSOriginatorRequestedAlternateRecipient ::= ORAddressAndOrDirectoryName
-
--- OriginatorRequestedAlternateRecipient as defined here differs from the field of the same name
--- defined in Figure 4, since on submission the OR-address need not be present, but on
--- transfer the OR-address must be present.
---dl-expansion-prohibited EXTENSION ::= {
--- DLExpansionProhibited
--- IF ABSENT dl-expansion-allowed,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:3
---}
-
-DLExpansionProhibited ::= ENUMERATED {
- dl-expansion-allowed(0), dl-expansion-prohibited(1)}
-
---conversion-with-loss-prohibited EXTENSION ::= {
--- ConversionWithLossProhibited
--- IF ABSENT conversion-with-loss-allowed,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:4
---}
-
-ConversionWithLossProhibited ::= ENUMERATED {
- conversion-with-loss-allowed(0), conversion-with-loss-prohibited(1)
-}
-
---latest-delivery-time EXTENSION ::= {
--- LatestDeliveryTime,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:5
---}
-
-LatestDeliveryTime ::= Time
-
---requested-delivery-method EXTENSION ::= {
--- RequestedDeliveryMethod
--- IF ABSENT {any-delivery-method},
--- IDENTIFIED BY standard-extension:6
---}
-
-RequestedDeliveryMethod ::=
- SEQUENCE OF INTEGER { -- each different in order of preference,
- -- most preferred first
- any-delivery-method(0), mhs-delivery(1), physical-delivery(2),
- telex-delivery(3), teletex-delivery(4), g3-facsimile-delivery(5),
-
- g4-facsimile-delivery(6), ia5-terminal-delivery(7), videotex-delivery(8),
- telephone-delivery(9)}(0..ub-integer-options)
-
---physical-forwarding-prohibited EXTENSION ::= {
--- PhysicalForwardingProhibited
--- IF ABSENT physical-forwarding-allowed,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:7
---}
-
-PhysicalForwardingProhibited ::= ENUMERATED {
- physical-forwarding-allowed(0), physical-forwarding-prohibited(1)}
-
---physical-forwarding-address-request EXTENSION ::= {
--- PhysicalForwardingAddressRequest
--- IF ABSENT physical-forwarding-address-not-requested,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:8
---}
-
-PhysicalForwardingAddressRequest ::= ENUMERATED {
- physical-forwarding-address-not-requested(0),
- physical-forwarding-address-requested(1)}
-
---physical-delivery-modes EXTENSION ::= {
--- PhysicalDeliveryModes
--- IF ABSENT {ordinary-mail},
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:9
---}
-
-PhysicalDeliveryModes ::= BIT STRING {
- ordinary-mail(0), special-delivery(1), express-mail(2),
- counter-collection(3), counter-collection-with-telephone-advice(4),
- counter-collection-with-telex-advice(5),
- counter-collection-with-teletex-advice(6), bureau-fax-delivery(7)
-
--- bits 0 to 6 are mutually exclusive
--- bit 7 can be set independently of any of bits 0 to 6 --}
---(SIZE (0..ub-bit-options))
-
---registered-mail-type EXTENSION ::= {
--- RegisteredMailType
--- IF ABSENT non-registered-mail,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:10
---}
-
-RegisteredMailType ::= INTEGER {
- non-registered-mail(0), registered-mail(1),
- registered-mail-to-addressee-in-person(2)}(0..ub-integer-options)
-
---recipient-number-for-advice EXTENSION ::= {
--- RecipientNumberForAdvice,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:11
---}
-
-RecipientNumberForAdvice ::=
- TeletexString --(SIZE (1..ub-recipient-number-for-advice-length))
-
---physical-rendition-attributes EXTENSION ::= {
--- PhysicalRenditionAttributes
--- IF ABSENT id-att-physicalRendition-basic,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:12
---}
-
-PhysicalRenditionAttributes ::= OBJECT IDENTIFIER
-
---originator-return-address EXTENSION ::= {
--- OriginatorReturnAddress,
--- IDENTIFIED BY standard-extension:13
---}
-
-OriginatorReturnAddress ::= ORAddress
-
---physical-delivery-report-request EXTENSION ::= {
--- PhysicalDeliveryReportRequest
--- IF ABSENT return-of-undeliverable-mail-by-PDS,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:14
---}
-
-PhysicalDeliveryReportRequest ::= INTEGER {
- return-of-undeliverable-mail-by-PDS(0), return-of-notification-by-PDS(1),
- return-of-notification-by-MHS(2), return-of-notification-by-MHS-and-PDS(3)
-} -- (0..ub-integer-options)
-
---originator-certificate EXTENSION ::= {
--- OriginatorCertificate,
--- IDENTIFIED BY standard-extension:15
---}
-
-OriginatorCertificate ::= Certificates
-
---message-token EXTENSION ::= {
--- MessageToken,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:16
---}
-
-MessageToken ::= Token
-
---content-confidentiality-algorithm-identifier EXTENSION ::= {
--- ContentConfidentialityAlgorithmIdentifier,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:17
---}
-
-ContentConfidentialityAlgorithmIdentifier ::= AlgorithmIdentifier
-
---content-integrity-check EXTENSION ::= {
--- ContentIntegrityCheck,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:18
---}
-
-ContentIntegrityCheck ::= Signature
--- SIGNATURE
--- {SEQUENCE {algorithm-identifier
--- ContentIntegrityAlgorithmIdentifier OPTIONAL,
--- content Content}}
-
-ContentIntegrityAlgorithmIdentifier ::= AlgorithmIdentifier
-
---message-origin-authentication-check EXTENSION ::= {
--- MessageOriginAuthenticationCheck,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:19
---}
-
-MessageOriginAuthenticationCheck ::= Signature
--- SIGNATURE
--- {SEQUENCE {algorithm-identifier
--- MessageOriginAuthenticationAlgorithmIdentifier,
--- content Content,
--- content-identifier ContentIdentifier OPTIONAL,
--- message-security-label MessageSecurityLabel OPTIONAL}}
-
-MessageOriginAuthenticationAlgorithmIdentifier ::= AlgorithmIdentifier
-
---message-security-label EXTENSION ::= {
--- MessageSecurityLabel,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:20
---}
-
-MessageSecurityLabel ::= SecurityLabel
-
---proof-of-submission-request EXTENSION ::= {
--- ProofOfSubmissionRequest
--- IF ABSENT proof-of-submission-not-requested,
--- RECOMMENDED CRITICALITY {for-submission},
--- IDENTIFIED BY standard-extension:21
---}
-
-ProofOfSubmissionRequest ::= ENUMERATED {
- proof-of-submission-not-requested(0), proof-of-submission-requested(1)
-}
-
---proof-of-delivery-request EXTENSION ::= {
--- ProofOfDeliveryRequest
--- IF ABSENT proof-of-delivery-not-requested,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:22
---}
-
-ProofOfDeliveryRequest ::= ENUMERATED {
- proof-of-delivery-not-requested(0), proof-of-delivery-requested(1)}
-
---content-correlator EXTENSION ::= {
--- ContentCorrelator,
--- IDENTIFIED BY standard-extension:23
---}
-
-ContentCorrelator ::= CHOICE {ia5text IA5String,
- octets OCTET STRING
-}
-
---probe-origin-authentication-check EXTENSION ::= {
--- ProbeOriginAuthenticationCheck,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:24
---}
-
-ProbeOriginAuthenticationCheck ::= Signature
--- SIGNATURE
--- {SEQUENCE {algorithm-identifier
--- ProbeOriginAuthenticationAlgorithmIdentifier,
--- content-identifier ContentIdentifier OPTIONAL,
--- message-security-label MessageSecurityLabel OPTIONAL}}
-
-ProbeOriginAuthenticationAlgorithmIdentifier ::= AlgorithmIdentifier
-
---redirection-history EXTENSION ::= {
--- RedirectionHistory,
--- IDENTIFIED BY standard-extension:25
---}
-
-RedirectionHistory ::= SEQUENCE SIZE (1..ub-redirections) OF Redirection
-
-Redirection ::= SEQUENCE {
- intended-recipient-name IntendedRecipientName,
- redirection-reason RedirectionReason
-}
-
-IntendedRecipientName ::= SEQUENCE {
- intended-recipient ORAddressAndOptionalDirectoryName,
- redirection-time Time
-}
-
-RedirectionReason ::= ENUMERATED {
- recipient-assigned-alternate-recipient(0),
- originator-requested-alternate-recipient(1),
- recipient-MD-assigned-alternate-recipient(2),
- -- The following values may not be supported by implementations of earlier versions of this Service Definition
- directory-look-up(3), alias(4), ...
- }
-
---dl-expansion-history EXTENSION ::= {
--- DLExpansionHistory,
--- IDENTIFIED BY standard-extension:26
---}
-
-DLExpansionHistory ::= SEQUENCE -- SIZE (1..ub-dl-expansions)-- OF DLExpansion
-
-DLExpansion ::= SEQUENCE {
- dl ORAddressAndOptionalDirectoryName,
- dl-expansion-time Time
-}
-
---physical-forwarding-address EXTENSION ::= {
--- PhysicalForwardingAddress,
--- IDENTIFIED BY standard-extension:27
---}
-
-PhysicalForwardingAddress ::= ORAddressAndOptionalDirectoryName
-
---recipient-certificate EXTENSION ::= {
--- RecipientCertificate,
--- IDENTIFIED BY standard-extension:28
---}
-
---proof-of-delivery EXTENSION ::= {
--- ProofOfDelivery,
--- IDENTIFIED BY standard-extension:29
---}
-
---originator-and-DL-expansion-history EXTENSION ::= {
--- OriginatorAndDLExpansionHistory,
--- IDENTIFIED BY standard-extension:30
---}
-
-OriginatorAndDLExpansionHistory ::=
- SEQUENCE --SIZE (2..ub-orig-and-dl-expansions)-- OF OriginatorAndDLExpansion
-
-OriginatorAndDLExpansion ::= SEQUENCE {
- originator-or-dl-name ORAddressAndOptionalDirectoryName,
- origination-or-expansion-time Time
-}
-
---reporting-DL-name EXTENSION ::= {
--- ReportingDLName,
--- IDENTIFIED BY standard-extension:31
---}
-
-ReportingDLName ::= ORAddressAndOptionalDirectoryName
-
---reporting-MTA-certificate EXTENSION ::= {
--- ReportingMTACertificate,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:32
---}
-
-ReportingMTACertificate ::= Certificates
-
---report-origin-authentication-check EXTENSION ::= {
--- ReportOriginAuthenticationCheck,
--- RECOMMENDED CRITICALITY {for-delivery},
--- IDENTIFIED BY standard-extension:33
---}
-
-ReportOriginAuthenticationCheck ::= Signature
--- SIGNATURE
--- {SEQUENCE {algorithm-identifier
--- ReportOriginAuthenticationAlgorithmIdentifier,
--- content-identifier ContentIdentifier OPTIONAL,
--- message-security-label MessageSecurityLabel OPTIONAL,
--- per-recipient
--- SEQUENCE SIZE (1..ub-recipients) OF PerRecipientReportFields
--- }}
-
-ReportOriginAuthenticationAlgorithmIdentifier ::= AlgorithmIdentifier
-
-PerRecipientReportFields ::= SEQUENCE {
- actual-recipient-name MTSActualRecipientName,
- originally-intended-recipient-name MTSOriginallyIntendedRecipientName OPTIONAL,
- report-type
- CHOICE {delivery [0] PerRecipientDeliveryReportFields,
- non-delivery [1] PerRecipientNonDeliveryReportFields}
-}
-
-PerRecipientDeliveryReportFields ::= SEQUENCE {
- message-delivery-time MessageDeliveryTime,
- type-of-MTS-user TypeOfMTSUser,
- recipient-certificate [0] RecipientCertificate OPTIONAL
--- proof-of-delivery [1] ProofOfDelivery OPTIONAL
-}
-
-PerRecipientNonDeliveryReportFields ::= SEQUENCE {
- non-delivery-reason-code NonDeliveryReasonCode,
- non-delivery-diagnostic-code NonDeliveryDiagnosticCode OPTIONAL
-}
-
---originating-MTA-certificate EXTENSION ::= {
--- OriginatingMTACertificate,
--- IDENTIFIED BY standard-extension:34
---}
-
-OriginatingMTACertificate ::= Certificates
-
---proof-of-submission EXTENSION ::= {
--- ProofOfSubmission,
--- IDENTIFIED BY standard-extension:35
---}
-
-ProofOfSubmission ::= Signature
--- SIGNATURE
--- {SEQUENCE {algorithm-identifier
--- ProofOfSubmissionAlgorithmIdentifier,
--- message-submission-envelope MessageSubmissionEnvelope,
--- content Content,
--- message-submission-identifier MessageSubmissionIdentifier,
--- message-submission-time MessageSubmissionTime}}
-
---ProofOfSubmissionAlgorithmIdentifier ::= AlgorithmIdentifier
-
---reporting-MTA-name EXTENSION ::= {
--- ReportingMTAName,
--- IDENTIFIED BY standard-extension:39
---}
-
-ReportingMTAName ::= SEQUENCE {
- domain GlobalDomainIdentifier,
- mta-name MTAName,
- mta-directory-name [0] Name OPTIONAL
-}
-
---multiple-originator-certificates EXTENSION ::= {
--- ExtendedCertificates,
--- IDENTIFIED BY standard-extension:40
---}
-
-ExtendedCertificates ::= SET --SIZE (1..ub-certificates)-- OF ExtendedCertificate
-
-ExtendedCertificate ::= CHOICE {
- directory-entry [0] Name, -- Name of a Directory entry where the certificate can be found
- certificate [1] Certificates
-}
-
---dl-exempted-recipients EXTENSION ::= {
--- DLExemptedRecipients,
--- IDENTIFIED BY standard-extension:42
---}
-
-DLExemptedRecipients ::= SET OF ORAddressAndOrDirectoryName
-
---certificate-selectors EXTENSION ::= {
--- CertificateSelectors,
--- IDENTIFIED BY standard-extension:45
---}
-
-CertificateSelectors ::= SET {
- encryption-recipient [0] CertificateAssertion OPTIONAL,
- encryption-originator [1] CertificateAssertion OPTIONAL,
- content-integrity-check [2] CertificateAssertion OPTIONAL,
- token-signature [3] CertificateAssertion OPTIONAL,
- message-origin-authentication [4] CertificateAssertion OPTIONAL
-}
-
---certificate-selectors-override EXTENSION ::= {
--- CertificateSelectors
--- (WITH COMPONENTS {
--- ...,
--- message-origin-authentication ABSENT
--- }),
--- IDENTIFIED BY standard-extension:46
---}
-
--- Some standard-extensions are defined elsewhere:
--- 36 (forwarding-request) in ITU-T Rec. X.413 | ISO/IEC 10021-5;
--- 37 (trace-information), and 38 (internal-trace-information) in Figure 4;
--- 41 (blind-copy-recipients), 43 (body-part-encryption-token), and 44 (forwarded-content-token) in
--- ITU-T Rec. X.420 | ISO/IEC 10021-7
--- Common Parameter Types
-Content ::=
- OCTET
- STRING -- when the content-type has the integer value external, the value of the
-
--- content octet string is the ASN.1 encoding of the external-content;
--- an external-content is a data type EXTERNAL
-MTSIdentifier ::= [APPLICATION 4] SEQUENCE {
- global-domain-identifier GlobalDomainIdentifier,
- local-identifier LocalIdentifier
-}
-
-LocalIdentifier ::= IA5String --(SIZE (1..ub-local-id-length))
-
-GlobalDomainIdentifier ::= [APPLICATION 3] SEQUENCE {
- country-name CountryName,
- administration-domain-name AdministrationDomainName,
- private-domain-identifier PrivateDomainIdentifier OPTIONAL
-}
-
-PrivateDomainIdentifier ::= CHOICE {
- numeric NumericString --(SIZE (1..ub-domain-name-length))--,
- printable PrintableString --(SIZE (1..ub-domain-name-length))
-}
-
-MTAName ::= IA5String --(SIZE (1..ub-mta-name-length))
-
-Time ::= UTCTime
-
-
--- OR Names
-ORAddressAndOrDirectoryName ::= ORName
-
-ORAddressAndOptionalDirectoryName ::= ORName
-
-ORName ::= [APPLICATION 0] SEQUENCE {
- -- address - -COMPONENTS OF ORAddress,
- built-in-standard-attributes BuiltInStandardAttributes,
- built-in-domain-defined-attributes BuiltInDomainDefinedAttributes OPTIONAL,
- -- see also teletex-domain-defined-attributes
- extension-attributes ExtensionAttributes OPTIONAL,
- directory-name [0] Name OPTIONAL
-}
-
-ORAddress ::= SEQUENCE {
- built-in-standard-attributes BuiltInStandardAttributes,
- built-in-domain-defined-attributes BuiltInDomainDefinedAttributes OPTIONAL,
- -- see also teletex-domain-defined-attributes
- extension-attributes ExtensionAttributes OPTIONAL
-}
-
--- The OR-address is semantically absent from the OR-name if the built-in-standard-attribute
--- sequence is empty and the built-in-domain-defined-attributes and extension-attributes are both omitted.
--- Built-in Standard Attributes
-BuiltInStandardAttributes ::= SEQUENCE {
- country-name CountryName OPTIONAL,
- administration-domain-name AdministrationDomainName OPTIONAL,
- network-address [0] NetworkAddress OPTIONAL,
- -- see also extended-network-address
- terminal-identifier [1] TerminalIdentifier OPTIONAL,
- private-domain-name [2] PrivateDomainName OPTIONAL,
- organization-name [3] OrganizationName OPTIONAL,
- -- see also teletex-organization-name
- numeric-user-identifier [4] NumericUserIdentifier OPTIONAL,
- personal-name [5] PersonalName OPTIONAL,
- -- see also teletex-personal-name
- organizational-unit-names [6] OrganizationalUnitNames OPTIONAL
- -- see also teletex-organizational-unit-names
-}
-
-CountryName ::= [APPLICATION 1] CHOICE {
- x121-dcc-code NumericString --(SIZE (ub-country-name-numeric-length))--,
- iso-3166-alpha2-code PrintableString --(SIZE (ub-country-name-alpha-length))
-}
-
-AdministrationDomainName ::= [APPLICATION 2] CHOICE {
- numeric NumericString --(SIZE (0..ub-domain-name-length))--,
- printable PrintableString --(SIZE (0..ub-domain-name-length))
-}
-
-NetworkAddress ::= X121Address
-
--- see also extended-network-address
-X121Address ::= NumericString --(SIZE (1..ub-x121-address-length))
-
-TerminalIdentifier ::= PrintableString --(SIZE (1..ub-terminal-id-length))
-
-PrivateDomainName ::= CHOICE {
- numeric NumericString --(SIZE (1..ub-domain-name-length))--,
- printable PrintableString --(SIZE (1..ub-domain-name-length))
-}
-
-OrganizationName ::= PrintableString --(SIZE (1..ub-organization-name-length))
-
--- see also teletex-organization-name
-NumericUserIdentifier ::= NumericString --(SIZE (1..ub-numeric-user-id-length))
-
-PersonalName ::= SET {
- surname [0] PrintableString --(SIZE (1..ub-surname-length)) --,
- given-name
- [1] PrintableString --(SIZE (1..ub-given-name-length))-- OPTIONAL,
- initials
- [2] PrintableString --(SIZE (1..ub-initials-length))-- OPTIONAL,
- generation-qualifier
- [3] PrintableString --(SIZE (1..ub-generation-qualifier-length))-- OPTIONAL
-}
-
--- see also teletex-personal-name
-OrganizationalUnitNames ::=
- SEQUENCE --SIZE (1..ub-organizational-units)-- OF OrganizationalUnitName
-
--- see also teletex-organizational-unit-names
-OrganizationalUnitName ::=
- PrintableString --(SIZE (1..ub-organizational-unit-name-length))
-
--- Built-in Domain-defined Attributes
-BuiltInDomainDefinedAttributes ::=
- SEQUENCE --SIZE (1..ub-domain-defined-attributes)-- OF
- BuiltInDomainDefinedAttribute
-
-BuiltInDomainDefinedAttribute ::= SEQUENCE {
- type PrintableString--(SIZE (1..ub-domain-defined-attribute-type-length))--,
- value PrintableString --(SIZE (1..ub-domain-defined-attribute-value-length))
-}
-
--- Extension Attributes
-ExtensionAttributes ::=
- SET --SIZE (1..ub-extension-attributes)-- OF ExtensionAttribute
-
-ExtensionAttribute ::= SEQUENCE {
- extension-attribute-type
- [0] ExtensionAttributeType --EXTENSION-ATTRIBUTE.&id({ExtensionAttributeTable}) --,
- extension-attribute-value
- [1] ANY --EXTENSION-ATTRIBUTE.&Type
--- ({ExtensionAttributeTable}{@extension-attribute-type})
-}
-
-
-
-ExtensionAttributeType ::= INTEGER {
- common-name (1),
- teletex-common-name (2),
- teletex-organization-name (3),
- teletex-personal-name (4),
- teletex-organizational-unit-names (5),
- teletex-domain-defined-attributes (6),
- pds-name (7),
- physical-delivery-country-name (8),
- postal-code (9),
- physical-delivery-office-name (10),
- physical-delivery-office-number (11),
- extension-OR-address-components (12),
- physical-delivery-personal-name (13),
- physical-delivery-organization-name (14),
- extension-physical-delivery-address-components (15),
- unformatted-postal-address (16),
- street-address (17),
- post-office-box-address (18),
- poste-restante-address (19),
- unique-postal-name (20),
- local-postal-attributes (21),
- extended-network-address (22),
- terminal-type (23),
- universal-common-name (24),
- universal-organization-name (25),
- universal-personal-name (26),
- universal-organizational-unit-names (27),
- universal-domain-defined-attributes (28),
- universal-physical-delivery-office-name (29),
- universal-physical-delivery-office-number (30),
- universal-extension-OR-address-components (31),
- universal-physical-delivery-personal-name (32),
- universal-physical-delivery-organization-name (33),
- universal-extension-physical-delivery-address-components (34),
- universal-unformatted-postal-address (35),
- universal-street-address (36),
- universal-post-office-box-address (37),
- universal-poste-restante-address (38),
- universal-unique-postal-name (39),
- universal-local-postal-attributes (40)
-}
-
---EXTENSION-ATTRIBUTE ::= CLASS {
--- &id INTEGER(0..ub-extension-attributes) UNIQUE,
--- &Type
---}WITH SYNTAX {&Type
--- IDENTIFIED BY &id
---}
-
---ExtensionAttributeTable EXTENSION-ATTRIBUTE ::=
--- {common-name | teletex-common-name | universal-common-name |
--- teletex-organization-name | universal-organization-name |
--- teletex-personal-name | universal-personal-name |
--- teletex-organizational-unit-names | universal-organizational-unit-names |
--- teletex-domain-defined-attributes | universal-domain-defined-attributes |
--- pds-name | physical-delivery-country-name | postal-code |
--- physical-delivery-office-name | universal-physical-delivery-office-name |
--- physical-delivery-office-number | universal-physical-delivery-office-number
--- | extension-OR-address-components |
--- universal-extension-OR-address-components | physical-delivery-personal-name
--- | universal-physical-delivery-personal-name |
--- physical-delivery-organization-name |
--- universal-physical-delivery-organization-name |
--- extension-physical-delivery-address-components |
--- universal-extension-physical-delivery-address-components |
--- unformatted-postal-address | universal-unformatted-postal-address |
--- street-address | universal-street-address | post-office-box-address |
--- universal-post-office-box-address | poste-restante-address |
--- universal-poste-restante-address | unique-postal-name |
--- universal-unique-postal-name | local-postal-attributes |
--- universal-local-postal-attributes | extended-network-address | terminal-type
--- }
-
--- Extension Standard Attributes
---common-name EXTENSION-ATTRIBUTE ::= {CommonName
--- IDENTIFIED BY 1
---}
-
-CommonName ::= PrintableString --(SIZE (1..ub-common-name-length))
-
---teletex-common-name EXTENSION-ATTRIBUTE ::= {TeletexCommonName
--- IDENTIFIED BY 2
---}
-
-TeletexCommonName ::= TeletexString --(SIZE (1..ub-common-name-length))
-
---universal-common-name EXTENSION-ATTRIBUTE ::= {
--- UniversalCommonName
--- IDENTIFIED BY 24
---}
-
-UniversalCommonName ::= UniversalOrBMPString --{ub-common-name-length}
-
---teletex-organization-name EXTENSION-ATTRIBUTE ::= {
--- TeletexOrganizationName
--- IDENTIFIED BY 3
---}
-
-TeletexOrganizationName ::=
- TeletexString --(SIZE (1..ub-organization-name-length))
-
---universal-organization-name EXTENSION-ATTRIBUTE ::= {
--- UniversalOrganizationName
--- IDENTIFIED BY 25
---}
-
-UniversalOrganizationName ::= UniversalOrBMPString --{ub-organization-name-length}
-
---teletex-personal-name EXTENSION-ATTRIBUTE ::= {
--- TeletexPersonalName
--- IDENTIFIED BY 4
---}
-
-TeletexPersonalName ::= SET {
- surname [0] TeletexString --(SIZE (1..ub-surname-length))--,
- given-name
- [1] TeletexString --(SIZE (1..ub-given-name-length))-- OPTIONAL,
- initials
- [2] TeletexString --(SIZE (1..ub-initials-length))-- OPTIONAL,
- generation-qualifier
- [3] TeletexString --(SIZE (1..ub-generation-qualifier-length))-- OPTIONAL
-}
-
---universal-personal-name EXTENSION-ATTRIBUTE ::= {
--- UniversalPersonalName
--- IDENTIFIED BY 26
---}
-
-UniversalPersonalName ::= SET {
- surname [0] UniversalOrBMPString --{ub-universal-surname-length}--,
- -- If a language is specified within surname, then that language applies to each of the following
- -- optional components unless the component specifies another language.
- given-name
- [1] UniversalOrBMPString --{ub-universal-given-name-length}-- OPTIONAL,
- initials
- [2] UniversalOrBMPString --{ub-universal-initials-length}-- OPTIONAL,
- generation-qualifier
- [3] UniversalOrBMPString --{ub-universal-generation-qualifier-length}
- OPTIONAL
-}
-
---teletex-organizational-unit-names EXTENSION-ATTRIBUTE ::= {
--- TeletexOrganizationalUnitNames
--- IDENTIFIED BY 5
---}
-
-TeletexOrganizationalUnitNames ::=
- SEQUENCE --SIZE (1..ub-organizational-units)-- OF TeletexOrganizationalUnitName
-
-TeletexOrganizationalUnitName ::=
- TeletexString --(SIZE (1..ub-organizational-unit-name-length))
-
---universal-organizational-unit-names EXTENSION-ATTRIBUTE ::= {
--- UniversalOrganizationalUnitNames
--- IDENTIFIED BY 27
---}
-
-UniversalOrganizationalUnitNames ::=
- SEQUENCE --SIZE (1..ub-organizational-units)-- OF UniversalOrganizationalUnitName
-
--- If a unit name specifies a language, then that language applies to subordinate unit names unless
--- the subordinate specifies another language.
-UniversalOrganizationalUnitName ::=
- UniversalOrBMPString --{ub-organizational-unit-name-length}
-
-UniversalOrBMPString --{INTEGER:ub-string-length}-- ::= SET {
- character-encoding
- CHOICE {two-octets BMPString --(SIZE (1..ub-string-length))--,
- four-octets UniversalString --(SIZE (1..ub-string-length))-- },
- iso-639-language-code PrintableString --(SIZE (2 | 5))-- OPTIONAL
-}
-
---pds-name EXTENSION-ATTRIBUTE ::= {PDSName
--- IDENTIFIED BY 7
---}
-
-PDSName ::= PrintableString --(SIZE (1..ub-pds-name-length))
-
---physical-delivery-country-name EXTENSION-ATTRIBUTE ::= {
--- PhysicalDeliveryCountryName
--- IDENTIFIED BY 8
---}
-
-PhysicalDeliveryCountryName ::= CHOICE {
- x121-dcc-code NumericString --(SIZE (ub-country-name-numeric-length)) --,
- iso-3166-alpha2-code PrintableString --(SIZE (ub-country-name-alpha-length))
-}
-
---postal-code EXTENSION-ATTRIBUTE ::= {PostalCode
--- IDENTIFIED BY 9
---}
-
-PostalCode ::= CHOICE {
- numeric-code NumericString --(SIZE (1..ub-postal-code-length))--,
- printable-code PrintableString --(SIZE (1..ub-postal-code-length))
-}
-
---physical-delivery-office-name EXTENSION-ATTRIBUTE ::= {
--- PhysicalDeliveryOfficeName
--- IDENTIFIED BY 10
---}
-
-PhysicalDeliveryOfficeName ::= PDSParameter
-
---universal-physical-delivery-office-name EXTENSION-ATTRIBUTE ::= {
--- UniversalPhysicalDeliveryOfficeName
--- IDENTIFIED BY 29
---}
-
-UniversalPhysicalDeliveryOfficeName ::= UniversalPDSParameter
-
---physical-delivery-office-number EXTENSION-ATTRIBUTE ::= {
--- PhysicalDeliveryOfficeNumber
--- IDENTIFIED BY 11
---}
-
-PhysicalDeliveryOfficeNumber ::= PDSParameter
-
---universal-physical-delivery-office-number EXTENSION-ATTRIBUTE ::= {
--- UniversalPhysicalDeliveryOfficeNumber
--- IDENTIFIED BY 30
---}
-
-UniversalPhysicalDeliveryOfficeNumber ::= UniversalPDSParameter
-
---extension-OR-address-components EXTENSION-ATTRIBUTE ::= {
--- ExtensionORAddressComponents
--- IDENTIFIED BY 12
---}
-
-ExtensionORAddressComponents ::= PDSParameter
-
---universal-extension-OR-address-components EXTENSION-ATTRIBUTE ::= {
--- UniversalExtensionORAddressComponents
--- IDENTIFIED BY 31
---}
-
-UniversalExtensionORAddressComponents ::= UniversalPDSParameter
-
---physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= {
--- PhysicalDeliveryPersonalName
--- IDENTIFIED BY 13
---}
-
-PhysicalDeliveryPersonalName ::= PDSParameter
-
---universal-physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= {
--- UniversalPhysicalDeliveryPersonalName
--- IDENTIFIED BY 32
---}
-
-UniversalPhysicalDeliveryPersonalName ::= UniversalPDSParameter
-
---physical-delivery-organization-name EXTENSION-ATTRIBUTE ::= {
--- PhysicalDeliveryOrganizationName
--- IDENTIFIED BY 14
---}
-
-PhysicalDeliveryOrganizationName ::= PDSParameter
-
---universal-physical-delivery-organization-name EXTENSION-ATTRIBUTE ::=
---{UniversalPhysicalDeliveryOrganizationName
--- IDENTIFIED BY 33
---}
-
-UniversalPhysicalDeliveryOrganizationName ::= UniversalPDSParameter
-
---extension-physical-delivery-address-components EXTENSION-ATTRIBUTE ::=
---{ExtensionPhysicalDeliveryAddressComponents
--- IDENTIFIED BY 15
---}
-
-ExtensionPhysicalDeliveryAddressComponents ::= PDSParameter
-
---universal-extension-physical-delivery-address-components EXTENSION-ATTRIBUTE
--- ::= {UniversalExtensionPhysicalDeliveryAddressComponents
--- IDENTIFIED BY 34
---}
-
-UniversalExtensionPhysicalDeliveryAddressComponents ::= UniversalPDSParameter
-
---unformatted-postal-address EXTENSION-ATTRIBUTE ::= {
--- UnformattedPostalAddress
--- IDENTIFIED BY 16
---}
-
-UnformattedPostalAddress ::= SET {
- printable-address
- SEQUENCE --SIZE (1..ub-pds-physical-address-lines)-- OF
- PrintableString --(SIZE (1..ub-pds-parameter-length))-- OPTIONAL,
- teletex-string
- TeletexString --(SIZE (1..ub-unformatted-address-length))-- OPTIONAL
-}
-
---universal-unformatted-postal-address EXTENSION-ATTRIBUTE ::= {
--- UniversalUnformattedPostalAddress
--- IDENTIFIED BY 35
---}
-
-UniversalUnformattedPostalAddress ::=
- UniversalOrBMPString --{ub-unformatted-address-length}
-
---street-address EXTENSION-ATTRIBUTE ::= {StreetAddress
--- IDENTIFIED BY 17
---}
-
-StreetAddress ::= PDSParameter
-
---universal-street-address EXTENSION-ATTRIBUTE ::= {
--- UniversalStreetAddress
--- IDENTIFIED BY 36
---}
-
-UniversalStreetAddress ::= UniversalPDSParameter
-
---post-office-box-address EXTENSION-ATTRIBUTE ::= {
--- PostOfficeBoxAddress
--- IDENTIFIED BY 18
---}
-
-PostOfficeBoxAddress ::= PDSParameter
-
---universal-post-office-box-address EXTENSION-ATTRIBUTE ::= {
--- UniversalPostOfficeBoxAddress
--- IDENTIFIED BY 37
---}
-
-UniversalPostOfficeBoxAddress ::= UniversalPDSParameter
-
---poste-restante-address EXTENSION-ATTRIBUTE ::= {
--- PosteRestanteAddress
--- IDENTIFIED BY 19
---}
-
-PosteRestanteAddress ::= PDSParameter
-
---universal-poste-restante-address EXTENSION-ATTRIBUTE ::= {
--- UniversalPosteRestanteAddress
--- IDENTIFIED BY 38
---}
-
-UniversalPosteRestanteAddress ::= UniversalPDSParameter
-
---unique-postal-name EXTENSION-ATTRIBUTE ::= {UniquePostalName
--- IDENTIFIED BY 20
---}
-
-UniquePostalName ::= PDSParameter
-
---universal-unique-postal-name EXTENSION-ATTRIBUTE ::= {
--- UniversalUniquePostalName
--- IDENTIFIED BY 39
---}
-
-UniversalUniquePostalName ::= UniversalPDSParameter
-
---local-postal-attributes EXTENSION-ATTRIBUTE ::= {
--- LocalPostalAttributes
--- IDENTIFIED BY 21
---}
-
-LocalPostalAttributes ::= PDSParameter
-
---universal-local-postal-attributes EXTENSION-ATTRIBUTE ::= {
--- UniversalLocalPostalAttributes
--- IDENTIFIED BY 40
---}
-
-UniversalLocalPostalAttributes ::= UniversalPDSParameter
-
-PDSParameter ::= SET {
- printable-string PrintableString --(SIZE (1..ub-pds-parameter-length))-- OPTIONAL,
- teletex-string TeletexString --(SIZE (1..ub-pds-parameter-length))-- OPTIONAL
-}
-
-UniversalPDSParameter ::= UniversalOrBMPString --{ub-pds-parameter-length}
-
---extended-network-address EXTENSION-ATTRIBUTE ::= {
--- ExtendedNetworkAddress
--- IDENTIFIED BY 22
---}
-
-ExtendedNetworkAddress ::= CHOICE {
- e163-4-address
- SEQUENCE {number
- [0] NumericString --(SIZE (1..ub-e163-4-number-length))--,
- sub-address
- [1] NumericString --(SIZE (1..ub-e163-4-sub-address-length))--
- OPTIONAL},
- psap-address [0] PresentationAddress
-}
-
---terminal-type EXTENSION-ATTRIBUTE ::= {TerminalType
--- IDENTIFIED BY 23
---}
-
-TerminalType ::= INTEGER {
- telex(3), teletex(4), g3-facsimile(5), g4-facsimile(6), ia5-terminal(7),
- videotex(8)} --(0..ub-integer-options)
-
--- Extension Domain-defined Attributes
---teletex-domain-defined-attributes EXTENSION-ATTRIBUTE ::= {
--- TeletexDomainDefinedAttributes
--- IDENTIFIED BY 6
---}
-
-TeletexDomainDefinedAttributes ::=
- SEQUENCE --SIZE (1..ub-domain-defined-attributes)-- OF
- TeletexDomainDefinedAttribute
-
-TeletexDomainDefinedAttribute ::= SEQUENCE {
- type TeletexString --(SIZE (1..ub-domain-defined-attribute-type-length))--,
- value TeletexString --(SIZE (1..ub-domain-defined-attribute-value-length))
-
-}
-
---universal-domain-defined-attributes EXTENSION-ATTRIBUTE ::= {
--- UniversalDomainDefinedAttributes
--- IDENTIFIED BY 28
---}
-
-UniversalDomainDefinedAttributes ::=
- SEQUENCE --SIZE (1..ub-domain-defined-attributes)-- OF
- UniversalDomainDefinedAttribute
-
-UniversalDomainDefinedAttribute ::= SEQUENCE {
- type UniversalOrBMPString --{ub-domain-defined-attribute-type-length}--,
- value UniversalOrBMPString --{ub-domain-defined-attribute-value-length}
-}
-
--- Encoded Information Types
-EncodedInformationTypes ::= [APPLICATION 5] SET {
- built-in-encoded-information-types [0] BuiltInEncodedInformationTypes,
- -- non-basic-parameters - -COMPONENTS OF NonBasicParameters,
- g3-facsimile [1] G3FacsimileNonBasicParameters DEFAULT {},
- teletex [2] TeletexNonBasicParameters DEFAULT {},
- extended-encoded-information-types
- [4] ExtendedEncodedInformationTypes OPTIONAL
-}
-
--- Built-in Encoded Information Types
-BuiltInEncodedInformationTypes ::= BIT STRING {
- unknown(0), ia5-text(2), g3-facsimile(3), g4-class-1(4), teletex(5),
- videotex(6), voice(7), sfd(8), mixed-mode(9)
-} --(SIZE (0..ub-built-in-encoded-information-types))
-
--- Extended Encoded Information Types
-ExtendedEncodedInformationTypes ::=
- SET --SIZE (1..ub-encoded-information-types)-- OF ExtendedEncodedInformationType
-
-ExtendedEncodedInformationType ::= OBJECT IDENTIFIER
-
--- Non-basic Parameters
-NonBasicParameters ::= SET {
- g3-facsimile [1] G3FacsimileNonBasicParameters DEFAULT {},
- teletex [2] TeletexNonBasicParameters DEFAULT {}
-}
-
-G3FacsimileNonBasicParameters ::= BIT STRING {
- two-dimensional(8), -- As defined in ITU-T Recommendation T.30
- fine-resolution(9), --
- unlimited-length(20), -- These bit values are chosen such that when
- b4-length(21), -- encoded using ASN.1 Basic Encoding Rules
- a3-width(22), -- the resulting octets have the same values
- b4-width(23), -- as for T.30 encoding
- t6-coding(25), --
- uncompressed(30), -- Trailing zero bits are not significant.
- width-middle-864-of-1728(37), -- It is recommended that implementations
- width-middle-1216-of-1728(38), -- should not encode more than 32 bits unless
- resolution-type(44), -- higher numbered bits are non-zero.
- resolution-400x400(45), resolution-300x300(46), resolution-8x15(47),
- edi(49), dtm(50), bft(51), mixed-mode(58), character-mode(60),
- twelve-bits(65), preferred-huffmann(66), full-colour(67), jpeg(68),
- processable-mode-26(71)}
-
-TeletexNonBasicParameters ::= SET {
- graphic-character-sets [0] TeletexString OPTIONAL,
- control-character-sets [1] TeletexString OPTIONAL,
- page-formats [2] OCTET STRING OPTIONAL,
- miscellaneous-terminal-capabilities [3] TeletexString OPTIONAL,
- private-use
- [4] OCTET STRING
- OPTIONAL -- maximum ub-teletex-private-use-length octets --
-}
-
--- as defined in CCITT Recommendation T.62
--- Token
-Token ::= SEQUENCE {
- token-type-identifier [0] -- TOKEN.&id({TokensTable})-- TokenTypeIdentifier,
- token
- [1] --TOKEN.&Type({TokensTable}{@token-type-identifier})-- TokenTypeData
-}
-
---TOKEN ::= TYPE-IDENTIFIER
-TokenTypeIdentifier ::= OBJECT IDENTIFIER
-TokenTypeData ::= ANY
-
---TokensTable TOKEN ::= {asymmetric-token, ...}
-
---asymmetric-token TOKEN ::= {
--- AsymmetricToken
--- IDENTIFIED BY id-tok-asymmetricToken
---}
-
-AsymmetricTokenData ::=
--- SIGNED
--- {--SEQUENCE {signature-algorithm-identifier AlgorithmIdentifier,
- name
- CHOICE {recipient-name MTSRecipientName,
- mta [3] MTANameAndOptionalGDI },
- time Time,
- signed-data [0] TokenData OPTIONAL,
- encryption-algorithm-identifier
- [1] AlgorithmIdentifier OPTIONAL,
- encrypted-data
- [2] -- ENCRYPTED{TokenData}-- BIT STRING OPTIONAL} --}
-
-MTANameAndOptionalGDI ::= SEQUENCE {
- global-domain-identifier GlobalDomainIdentifier OPTIONAL,
- mta-name MTAName
-}
-
-AsymmetricToken ::= SEQUENCE {
- asymmetric-token-data AsymmetricTokenData,
- algorithm-identifier AlgorithmIdentifier,
- encrypted BIT STRING
-}
-
-TokenData ::= SEQUENCE {
- type [0] TokenDataType -- TOKEN-DATA.&id({TokenDataTable}) --,
- value [1] ANY -- TOKEN-DATA.&Type({TokenDataTable}{@type})
-}
-
-TokenDataType ::= INTEGER {
- bind-token-signed-data (1),
- message-token-signed-data (2),
- message-token-encrypted-data (3),
- bind-token-encrypted-data (4)
-}
-
---TOKEN-DATA ::= CLASS {&id INTEGER UNIQUE,
--- &Type
---}WITH SYNTAX {&Type
--- IDENTIFIED BY &id
---}
-
---TokenDataTable TOKEN-DATA ::=
--- {bind-token-signed-data | message-token-signed-data |
--- message-token-encrypted-data | bind-token-encrypted-data, ...}
-
---bind-token-signed-data TOKEN-DATA ::= {BindTokenSignedData
--- IDENTIFIED BY 1
---}
-
--- This is the only Token Data we know
---TokenData ::= BindTokenSignedData
-
-BindTokenSignedData ::= RandomNumber
-
-RandomNumber ::= BIT STRING
-
---message-token-signed-data TOKEN-DATA ::= {
--- MessageTokenSignedData
--- IDENTIFIED BY 2
---}
-
-MessageTokenSignedData ::= SEQUENCE {
- content-confidentiality-algorithm-identifier
- [0] ContentConfidentialityAlgorithmIdentifier OPTIONAL,
- content-integrity-check
- [1] ContentIntegrityCheck OPTIONAL,
- message-security-label
- [2] MessageSecurityLabel OPTIONAL,
- proof-of-delivery-request
- [3] ProofOfDeliveryRequest OPTIONAL,
- message-sequence-number [4] INTEGER OPTIONAL
-}
-
---message-token-encrypted-data TOKEN-DATA ::= {
--- MessageTokenEncryptedData
--- IDENTIFIED BY 3
---}
-
-MessageTokenEncryptedData ::= SEQUENCE {
- content-confidentiality-key [0] EncryptionKey OPTIONAL,
- content-integrity-check [1] ContentIntegrityCheck OPTIONAL,
- message-security-label [2] MessageSecurityLabel OPTIONAL,
- content-integrity-key [3] EncryptionKey OPTIONAL,
- message-sequence-number [4] INTEGER OPTIONAL
-}
-
-EncryptionKey ::= BIT STRING
-
---bind-token-encrypted-data TOKEN-DATA ::= {
--- BindTokenEncryptedData
--- IDENTIFIED BY 4
---}
-
-BindTokenEncryptedData ::= EXTERNAL
-
--- Security Label
-SecurityLabel ::= SET {
- security-policy-identifier SecurityPolicyIdentifier OPTIONAL,
- security-classification SecurityClassification OPTIONAL,
- privacy-mark PrivacyMark OPTIONAL,
- security-categories SecurityCategories OPTIONAL
-}
-
-SecurityPolicyIdentifier ::= OBJECT IDENTIFIER
-
-SecurityClassification ::= INTEGER {
- unmarked(0), unclassified(1), restricted(2), confidential(3), secret(4),
- top-secret(5)}(0..ub-integer-options)
-
-PrivacyMark ::= PrintableString(SIZE (1..ub-privacy-mark-length))
-
-SecurityCategories ::= SET SIZE (1..ub-security-categories) OF SecurityCategory
-
-SecurityCategory ::= SEQUENCE {
- type [0] OBJECT IDENTIFIER --SECURITY-CATEGORY.&id({SecurityCategoriesTable})--,
- value [1] ANY -- SECURITY-CATEGORY.&Type({SecurityCategoriesTable}{@type})
-}
-
---SECURITY-CATEGORY ::= TYPE-IDENTIFIER
-
---SecurityCategoriesTable SECURITY-CATEGORY ::=
--- {...}
-
-END -- of MTSAbstractService
+END
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
diff --git a/asn1/x411/MTSAbstractService.asn b/asn1/x411/MTSAbstractService.asn
new file mode 100644
index 0000000000..b8c23ba2a5
--- /dev/null
+++ b/asn1/x411/MTSAbstractService.asn
@@ -0,0 +1,2531 @@
+-- $Id:$
+-- Module MTSAbstractService (X.411:06/1999)
+MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
+ mts-abstract-service(1) version-1999(1)} DEFINITIONS IMPLICIT TAGS ::=
+BEGIN
+
+-- Prologue
+-- Exports everything
+--IMPORTS
+ -- Remote Operations
+-- CONNECTION-PACKAGE, CONTRACT, ERROR, OPERATION, OPERATION-PACKAGE,
+-- ROS-OBJECT-CLASS
+ --==
+-- FROM Remote-Operations-Information-Objects {joint-iso-itu-t
+-- remote-operations(4) informationObjects(5) version1(0)}
+-- emptyUnbind
+ --==
+-- FROM Remote-Operations-Useful-Definitions {joint-iso-itu-t
+-- remote-operations(4) useful-definitions(7) version1(0)}
+ -- MTA Abstract Service
+-- internal-trace-information, trace-information
+ --==
+-- FROM MTAAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
+-- mta-abstract-service(2) version-1999(1)}
+ -- MS Abstract Service Extension
+-- forwarding-request
+ --==
+-- FROM MSAbstractService {joint-iso-itu-t mhs(6) ms(4) modules(0)
+-- abstract-service(1) version-1999(1)}
+ -- IPM Information Objects
+-- IPMPerRecipientEnvelopeExtensions
+ --==
+-- FROM IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0)
+-- information-objects(2) version-1999(1)}
+ -- Object Identifiers
+-- id-att-physicalRendition-basic, id-cp-mts-connect, id-ct-mts-access,
+-- id-ct-mts-forced-access, id-ot-mts, id-ot-mts-user, id-pt-administration,
+-- id-pt-delivery, id-pt-submission, id-tok-asymmetricToken
+ --==
+-- FROM MTSObjectIdentifiers {joint-iso-itu-t mhs(6) mts(3) modules(0)
+-- object-identifiers(0) version-1999(1)}
+ -- Operation and Error Codes
+-- err-control-violates-registration,
+-- err-deferred-delivery-cancellation-rejected, err-delivery-control-violated,
+-- err-element-of-service-not-subscribed, err-inconsistent-request,
+-- err-message-submission-identifier-invalid,
+-- err-new-credentials-unacceptable,
+-- err-old-credentials-incorrectly-specified, err-operation-refused,
+-- err-originator-invalid, err-recipient-improperly-specified,
+-- err-register-rejected, err-remote-bind-error, err-security-error,
+-- err-submission-control-violated, err-unsupported-critical-function,
+-- op-cancel-deferred-delivery, op-change-credentials, op-delivery-control,
+-- op-message-delivery, op-message-submission, op-probe-submission,
+-- op-register, op-report-delivery, op-submission-control
+ --==
+-- FROM MTSAccessProtocol {joint-iso-itu-t mhs(6) protocols(0) modules(0)
+-- mts-access-protocol(1) version-1999(1)}
+ -- Directory Definitions
+-- Name
+ --==
+-- FROM InformationFramework {joint-iso-itu-t ds(5) module(1)
+-- informationFramework(1) 3}
+-- PresentationAddress
+ --==
+-- FROM SelectedAttributeTypes {joint-iso-itu-t ds(5) module(1)
+-- selectedAttributeTypes(5) 3}
+-- ALGORITHM, AlgorithmIdentifier, Certificates, ENCRYPTED{}, SIGNATURE{},
+-- SIGNED{}
+ --==
+-- FROM AuthenticationFramework {joint-iso-itu-t ds(5) module(1)
+-- authenticationFramework(7) 3}
+ -- Certificate Extensions
+-- CertificateAssertion
+ --==
+-- FROM CertificateExtensions {joint-iso-itu-t ds(5) module(1)
+-- certificateExtensions(26) 0}
+ -- Upper Bounds
+-- ub-bit-options, ub-built-in-content-type,
+-- ub-built-in-encoded-information-types, ub-certificates,
+-- ub-common-name-length, ub-content-id-length, ub-content-length,
+-- ub-content-types, ub-country-name-alpha-length,
+-- ub-country-name-numeric-length, ub-deliverable-class, ub-diagnostic-codes,
+-- ub-dl-expansions, ub-domain-defined-attributes,
+-- ub-domain-defined-attribute-type-length,
+-- ub-domain-defined-attribute-value-length, ub-domain-name-length,
+-- ub-encoded-information-types, ub-extension-attributes, ub-extension-types,
+-- ub-e163-4-number-length, ub-e163-4-sub-address-length,
+-- ub-generation-qualifier-length, ub-given-name-length, ub-initials-length,
+-- ub-integer-options, ub-local-id-length, ub-mta-name-length,
+-- ub-mts-user-types, ub-numeric-user-id-length, ub-organization-name-length,
+-- ub-organizational-units, ub-organizational-unit-name-length,
+-- ub-orig-and-dl-expansions, ub-password-length, ub-pds-name-length,
+-- ub-pds-parameter-length, ub-pds-physical-address-lines,
+-- ub-postal-code-length, ub-privacy-mark-length, ub-queue-size,
+-- ub-reason-codes, ub-recipients, ub-recipient-number-for-advice-length,
+-- ub-redirections, ub-redirection-classes, ub-restrictions,
+-- ub-security-categories, ub-security-labels, ub-security-problems,
+-- ub-supplementary-info-length, ub-surname-length, ub-terminal-id-length,
+-- ub-tsap-id-length, ub-unformatted-address-length,
+-- ub-universal-generation-qualifier-length, ub-universal-given-name-length,
+-- ub-universal-initials-length, ub-universal-surname-length,
+-- ub-x121-address-length
+ --==
+-- FROM MTSUpperBounds {joint-iso-itu-t mhs(6) mts(3) modules(0)
+-- upper-bounds(3) version-1999(1)};
+
+--operationObject1 OPERATION ::= {LINKED {operationObject2}
+--}
+
+--operationObject2 OPERATION ::= {LINKED {operationObject3}
+--}
+
+--operationObject3 OPERATION ::= {LINKED {operationObject4}
+--}
+
+--operationObject4 OPERATION ::= {LINKED {...}
+--}
+
+-- Objects
+--MHS-OBJECT ::= ROS-OBJECT-CLASS
+
+--mts MHS-OBJECT ::= {
+-- INITIATES {mts-forced-access-contract}
+-- RESPONDS {mts-access-contract}
+-- ID id-ot-mts
+--}
+
+--mts-user MHS-OBJECT ::= {
+-- INITIATES {mts-access-contract}
+-- RESPONDS {mts-forced-access-contract}
+-- ID id-ot-mts-user
+--}
+
+-- Contracts
+--mts-access-contract CONTRACT ::= {
+-- CONNECTION mts-connect
+-- INITIATOR CONSUMER OF {submission | delivery | administration}
+-- ID id-ct-mts-access
+--}
+
+--mts-forced-access-contract CONTRACT ::= {
+-- CONNECTION mts-connect
+-- RESPONDER CONSUMER OF {submission | delivery | administration}
+-- ID id-ct-mts-forced-access
+--}
+
+-- Connection package
+--mts-connect CONNECTION-PACKAGE ::= {
+-- BIND mts-bind
+-- UNBIND mts-unbind
+-- ID id-cp-mts-connect
+--}
+
+-- Ports
+--PORT ::= OPERATION-PACKAGE
+
+--submission PORT ::= {
+-- OPERATIONS {operationObject1, ...}
+-- CONSUMER INVOKES
+-- {message-submission | probe-submission | cancel-deferred-delivery, ...}
+-- SUPPLIER INVOKES {submission-control, ...}
+-- ID id-pt-submission
+--}
+
+--delivery PORT ::= {
+-- OPERATIONS {operationObject1, ...}
+-- CONSUMER INVOKES {delivery-control, ...}
+-- SUPPLIER INVOKES {message-delivery | report-delivery, ...}
+-- ID id-pt-delivery
+--}
+
+--administration PORT ::= {
+-- OPERATIONS {change-credentials, ...}
+-- CONSUMER INVOKES {register, ...}
+-- SUPPLIER INVOKES {operationObject1, ...}
+-- ID id-pt-administration
+--}
+
+-- MTS-bind and MTS-unbind
+--ABSTRACT-OPERATION ::= OPERATION
+
+--ABSTRACT-ERROR ::= ERROR
+
+--mts-bind ABSTRACT-OPERATION ::= {
+-- ARGUMENT MTSBindArgument
+-- RESULT MTSBindResult
+-- ERRORS {mts-bind-error}
+--}
+
+MTSBindArgument ::= SET {
+ initiator-name ObjectName,
+ messages-waiting [1] EXPLICIT MessagesWaiting OPTIONAL,
+ initiator-credentials [2] InitiatorCredentials,
+ security-context [3] SecurityContext OPTIONAL,
+-- ...,
+ extensions
+ [5] SET OF ExtensionField --{{MTSBindExtensions}}-- DEFAULT {}
+}
+
+--MTSBindExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions
+MTSBindResult ::= SET {
+ responder-name ObjectName,
+ messages-waiting [1] EXPLICIT MessagesWaiting OPTIONAL,
+ responder-credentials [2] ResponderCredentials,
+ ...,
+ extensions
+ [5] SET OF ExtensionField --{{MTSBindResultExtensions}}-- DEFAULT {}
+}
+
+--MTSBindResultExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions
+MTSBindError --mts-bind-error ABSTRACT-ERROR-- ::= --{
+-- PARAMETER
+ INTEGER {busy(0), authentication-error(2), unacceptable-dialogue-mode(3),
+ unacceptable-security-context(4),
+ inadequate-association-confidentiality(5)}--(0..ub-integer-options)
+--}
+
+--mts-unbind ABSTRACT-OPERATION ::= emptyUnbind
+
+-- Association Control Parameters
+ObjectName ::= CHOICE {
+ user-agent ORAddressAndOptionalDirectoryName,
+ mTA [0] MTAName,
+ message-store [4] ORAddressAndOptionalDirectoryName
+}
+
+MessagesWaiting ::= SET {
+ urgent [0] DeliveryQueue,
+ normal [1] DeliveryQueue,
+ non-urgent [2] DeliveryQueue
+}
+
+DeliveryQueue ::= SET {
+ messages [0] INTEGER --(0..ub-queue-size)--,
+ octets [1] INTEGER --(0..ub-content-length)-- OPTIONAL
+}
+
+InitiatorCredentials ::= Credentials
+
+ResponderCredentials ::= Credentials
+
+Credentials ::= CHOICE {
+ simple Password,
+ strong [0] StrongCredentials,
+-- ...,
+ protected [1] ProtectedPassword
+}
+
+Password ::= CHOICE {
+ ia5-string IA5String --(SIZE (0..ub-password-length))--,
+ octet-string OCTET STRING --(SIZE (0..ub-password-length))
+}
+
+StrongCredentials ::= SET {
+ bind-token [0] Token OPTIONAL,
+ certificate [1] Certificates OPTIONAL,
+-- ...,
+ certificate-selector [2] CertificateAssertion OPTIONAL
+}
+
+ProtectedPassword ::= SET {
+ signature
+-- SIGNATURE{SET {password Password,
+-- time1 [0] UTCTime OPTIONAL,
+-- time2 [1] UTCTime OPTIONAL,
+-- random1 [2] BIT STRING OPTIONAL,
+-- random2 [3] BIT STRING OPTIONAL}},
+ Signature,
+ time1 [0] UTCTime OPTIONAL,
+ time2 [1] UTCTime OPTIONAL,
+ random1 [2] BIT STRING OPTIONAL,
+ random2 [3] BIT STRING OPTIONAL
+}
+
+Signature ::= SEQUENCE {
+ algorithmIdentifier AlgorithmIdentifier,
+ encrypted BIT STRING
+}
+
+SecurityContext ::= SET --SIZE (1..ub-security-labels)-- OF SecurityLabel
+
+-- Submission Port
+--message-submission ABSTRACT-OPERATION ::= {
+-- ARGUMENT MessageSubmissionArgument
+-- RESULT MessageSubmissionResult
+-- ERRORS
+-- {submission-control-violated | element-of-service-not-subscribed |
+-- originator-invalid | recipient-improperly-specified |
+-- inconsistent-request | security-error | unsupported-critical-function |
+-- remote-bind-error}
+-- LINKED {operationObject1, ...}
+-- INVOKE PRIORITY {4 | 6 | 7}
+-- CODE op-message-submission
+--}
+
+MessageSubmissionArgument ::= SEQUENCE {
+ envelope MessageSubmissionEnvelope,
+ content Content
+}
+
+MessageSubmissionResult ::= SET {
+ message-submission-identifier MessageSubmissionIdentifier,
+ message-submission-time [0] MessageSubmissionTime,
+ content-identifier ContentIdentifier OPTIONAL,
+ extensions
+ [1] SET OF ExtensionField --{{MessageSubmissionResultExtensions}}-- DEFAULT {}
+}
+
+--MessageSubmissionResultExtensions EXTENSION ::=
+-- {- - May contain the following extensions, private extensions, and future standardised extensions,
+-- - - at most one instance of each extension type:
+-- originating-MTA-certificate | proof-of-submission | PrivateExtensions,
+-- ...}
+
+--probe-submission ABSTRACT-OPERATION ::= {
+-- ARGUMENT ProbeSubmissionArgument
+-- RESULT ProbeSubmissionResult
+-- ERRORS
+-- {submission-control-violated | element-of-service-not-subscribed |
+-- originator-invalid | recipient-improperly-specified |
+-- inconsistent-request | security-error | unsupported-critical-function |
+-- remote-bind-error}
+-- LINKED {operationObject1, ...}
+-- INVOKE PRIORITY {5}
+-- CODE op-probe-submission
+--}
+
+ProbeSubmissionArgument ::= ProbeSubmissionEnvelope
+
+ProbeSubmissionResult ::= SET {
+ probe-submission-identifier ProbeSubmissionIdentifier,
+ probe-submission-time [0] ProbeSubmissionTime,
+ content-identifier ContentIdentifier OPTIONAL,
+ extensions
+ [1] SET OF ExtensionField --{{ProbeResultExtensions}}-- DEFAULT {}
+}
+
+--ProbeResultExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions,
+-- at most one instance of each extension type
+--cancel-deferred-delivery ABSTRACT-OPERATION ::= {
+-- ARGUMENT CancelDeferredDeliveryArgument
+-- RESULT CancelDeferredDeliveryResult
+-- ERRORS
+-- {deferred-delivery-cancellation-rejected |
+-- message-submission-identifier-invalid | remote-bind-error}
+-- LINKED {operationObject1, ...}
+-- INVOKE PRIORITY {3}
+-- CODE op-cancel-deferred-delivery
+--}
+
+CancelDeferredDeliveryArgument ::= MessageSubmissionIdentifier
+
+CancelDeferredDeliveryResult ::= NULL
+
+--submission-control ABSTRACT-OPERATION ::= {
+-- ARGUMENT SubmissionControlArgument
+-- RESULT SubmissionControlResult
+-- ERRORS {security-error | remote-bind-error}
+-- LINKED {operationObject1, ...}
+-- INVOKE PRIORITY {3}
+-- CODE op-submission-control
+--}
+
+SubmissionControlArgument ::= SubmissionControls
+
+SubmissionControlResult ::= Waiting
+
+--submission-control-violated ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-submission-control-violated
+--}
+
+--element-of-service-not-subscribed ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-element-of-service-not-subscribed
+--}
+
+--deferred-delivery-cancellation-rejected ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-deferred-delivery-cancellation-rejected
+--}
+
+--originator-invalid ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-originator-invalid
+--}
+
+--recipient-improperly-specified ABSTRACT-ERROR ::= {
+-- PARAMETER ImproperlySpecifiedRecipients
+-- CODE err-recipient-improperly-specified
+--}
+
+ImproperlySpecifiedRecipients ::=
+ SEQUENCE --SIZE (1..ub-recipients)-- OF MTSRecipientName
+
+--message-submission-identifier-invalid ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-message-submission-identifier-invalid
+--}
+
+--inconsistent-request ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-inconsistent-request
+--}
+
+--security-error ABSTRACT-ERROR ::= {
+-- PARAMETER SecurityProblem
+-- CODE err-security-error
+--}
+
+SecurityProblem ::= INTEGER {
+ assemby-instructions-conflict-with-security-services(0),
+ authentication-problem(1), authentication-failure-on-subject-message(2),
+ confidentiality-association-problem(3), decryption-failed(4),
+ decryption-key-unobtainable(5), failure-of-proof-of-message(6),
+ forbidden-user-security-label-register(7),
+ incompatible-change-with-original-security-context(8),
+ integrity-failure-on-subject-message(9), invalid-security-label(10),
+ invalid-security-label-update(11), key-failure(12),
+ mandatory-parameter-absence(13), operation-security-failure(14),
+ redirection-prohibited(15), refused-alternate-recipient-name(16),
+ repudiation-failure-of-message(17),
+ responder-credentials-checking-problem(18), security-context-failure(19),
+ security-context-problem(20), security-policy-violation(21),
+ security-services-refusal(22), token-decryption-failed(23), token-error(24),
+ unable-to-aggregate-security-labels(25), unauthorised-dl-name(26),
+ unauthorised-entry-class(27),
+ unauthorised-originally-intended-recipient-name(28),
+ unauthorised-originator-name(29), unauthorised-recipient-name(30),
+ unauthorised-security-label-update(31), unauthorised-user-name(32),
+ unknown-security-label(33), unsupported-algorithm-identifier(34),
+ unsupported-security-policy(35)}(0..ub-security-problems)
+
+--unsupported-critical-function ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-unsupported-critical-function
+--}
+
+--remote-bind-error ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-remote-bind-error
+--}
+
+-- Submission Port Parameters
+MessageSubmissionIdentifier ::= MTSIdentifier
+
+MessageSubmissionTime ::= Time
+
+ProbeSubmissionIdentifier ::= MTSIdentifier
+
+ProbeSubmissionTime ::= Time
+
+SubmissionControls ::=
+ Controls
+ (WITH COMPONENTS {
+ ...,
+ permissible-content-types ABSENT,
+ permissible-encoded-information-types ABSENT
+ })
+
+Waiting ::= SET {
+ waiting-operations [0] Operations DEFAULT {},
+ waiting-messages [1] WaitingMessages DEFAULT {},
+ waiting-content-types
+ [2] SET --SIZE (0..ub-content-types)-- OF ContentType DEFAULT {},
+ waiting-encoded-information-types EncodedInformationTypes OPTIONAL
+}
+
+Operations ::= BIT STRING {
+ probe-submission-or-report-delivery(0),
+ message-submission-or-message-delivery(1)}(SIZE (0..ub-bit-options))
+
+-- holding 'one', not-holding 'zero'
+WaitingMessages ::= BIT STRING {
+ long-content(0), low-priority(1), other-security-labels(2)
+}(SIZE (0..ub-bit-options))
+
+-- Delivery Port
+--message-delivery ABSTRACT-OPERATION ::= {
+-- ARGUMENT MessageDeliveryArgument
+-- RESULT MessageDeliveryResult
+-- ERRORS
+-- {delivery-control-violated | security-error |
+-- unsupported-critical-function}
+-- LINKED {operationObject1, ...}
+-- INVOKE PRIORITY {4 | 6 | 7}
+-- CODE op-message-delivery
+--}
+
+MessageDeliveryArgument ::= SEQUENCE {
+-- COMPONENTS OF MessageDeliveryEnvelope,
+ message-delivery-identifier MessageDeliveryIdentifier,
+ message-delivery-time MessageDeliveryTime,
+ other-fields OtherMessageDeliveryFields,
+ content Content
+}
+
+MessageDeliveryResult ::= SET {
+ recipient-certificate [0] RecipientCertificate OPTIONAL,
+ proof-of-delivery [1] IMPLICIT ProofOfDelivery OPTIONAL,
+ ...,
+ extensions
+ [2] SET OF ExtensionField --{{MessageDeliveryResultExtensions}}-- DEFAULT {}
+}
+
+--MessageDeliveryResultExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions
+--report-delivery ABSTRACT-OPERATION ::= {
+-- ARGUMENT ReportDeliveryArgument
+-- RESULT ReportDeliveryResult
+-- ERRORS
+-- {delivery-control-violated | security-error |
+-- unsupported-critical-function}
+-- LINKED {operationObject1, ...}
+-- INVOKE PRIORITY {5}
+-- CODE op-report-delivery
+--}
+
+ReportDeliveryArgument ::= SET {
+-- COMPONENTS OF ReportDeliveryEnvelope
+ subject-submission-identifier SubjectSubmissionIdentifier,
+ content-identifier ContentIdentifier OPTIONAL,
+ content-type ContentType OPTIONAL,
+ original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL,
+ extensions
+ [1] SET OF ExtensionField --{{ReportDeliveryExtensions}}-- DEFAULT {},
+ per-recipient-fields
+ SEQUENCE --SIZE (1..ub-recipients)-- OF PerRecipientReportDeliveryFields,
+ returned-content [0] Content OPTIONAL
+}
+
+ReportDeliveryResult ::= CHOICE {
+ empty-result NULL,
+ ...,
+ extensions
+ SET --SIZE (1..MAX)-- OF ExtensionField --{{ReportDeliveryResultExtensions}}--
+}
+
+--ReportDeliveryResultExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions
+--delivery-control ABSTRACT-OPERATION ::= {
+-- ARGUMENT DeliveryControlArgument
+-- RESULT DeliveryControlResult
+-- ERRORS
+-- {control-violates-registration | security-error | operation-refused}
+-- LINKED {operationObject1, ...}
+-- INVOKE PRIORITY {3}
+-- CODE op-delivery-control
+--}
+
+DeliveryControlArgument ::= SET {
+-- COMPONENTS OF DeliveryControls,
+ restrict [0] BOOLEAN DEFAULT TRUE,
+ -- update 'TRUE', remove 'FALSE'
+ permissible-operations [1] Operations OPTIONAL,
+ permissible-maximum-content-length [2] ContentLength OPTIONAL,
+ permissible-lowest-priority Priority OPTIONAL,
+ permissible-content-types [4] ContentTypes OPTIONAL,
+ permissible-encoded-information-types
+ PermissibleEncodedInformationTypes OPTIONAL,
+ permissible-security-context [5] SecurityContext OPTIONAL,
+ extensions
+ [6] SET OF ExtensionField --{{DeliveryControlExtensions}}-- DEFAULT {}
+}
+
+--DeliveryControlExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions
+DeliveryControlResult ::= SET {
+-- COMPONENTS OF Waiting,
+ waiting-operations [0] Operations DEFAULT {},
+ waiting-messages [1] WaitingMessages DEFAULT {},
+ waiting-content-types
+ [2] SET --SIZE (0..ub-content-types)-- OF ContentType DEFAULT {},
+ waiting-encoded-information-types EncodedInformationTypes OPTIONAL,
+ extensions
+ [6] SET OF ExtensionField --{{DeliveryControlResultExtensions}}-- DEFAULT {}
+}
+
+--DeliveryControlResultExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions
+--delivery-control-violated ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-delivery-control-violated
+--}
+
+--control-violates-registration ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-control-violates-registration
+--}
+
+--operation-refused ABSTRACT-ERROR ::= {
+-- PARAMETER RefusedOperation
+-- CODE err-operation-refused
+--}
+
+RefusedOperation ::= SET {
+ refused-argument
+ CHOICE {built-in-argument [1] RefusedArgument,
+ refused-extension ANY --EXTENSION.&id --},
+ refusal-reason [2] RefusalReason
+}
+
+RefusedArgument ::= INTEGER {
+ user-name(0), user-address(1), deliverable-content-types(2),
+ deliverable-maximum-content-length(3),
+ deliverable-encoded-information-types-constraints(4),
+ deliverable-security-labels(5), recipient-assigned-redirections(6),
+ restricted-delivery(7),
+ retrieve-registrations(8), -- value 9 reserved for possible future extension to Register arguments
+ restrict(10), permissible-operations(11), permissible-lowest-priority(12),
+ permissible-encoded-information-types(13), permissible-content-types(14),
+ permissible-maximum-content-length(15), permissible-security-context(16)
+}(0..ub-integer-options)
+
+RefusalReason ::= INTEGER {
+ facility-unavailable(0), facility-not-subscribed(1),
+ parameter-unacceptable(2)}(0..ub-integer-options)
+
+-- Delivery Port Parameters
+RecipientCertificate ::= Certificates
+
+ProofOfDelivery ::= Signature
+-- SIGNATURE
+-- {SEQUENCE {algorithm-identifier
+-- ProofOfDeliveryAlgorithmIdentifier,
+-- delivery-time MessageDeliveryTime,
+-- this-recipient-name ThisRecipientName,
+-- originally-intended-recipient-name
+-- MTSOriginallyIntendedRecipientName OPTIONAL,
+-- content Content,
+-- content-identifier ContentIdentifier OPTIONAL,
+-- message-security-label
+-- MessageSecurityLabel OPTIONAL}}
+
+ProofOfDeliveryAlgorithmIdentifier ::= AlgorithmIdentifier
+
+DeliveryControls ::= Controls
+
+Controls ::= SET {
+ restrict [0] BOOLEAN DEFAULT TRUE,
+ -- update 'TRUE', remove 'FALSE'
+ permissible-operations [1] Operations OPTIONAL,
+ permissible-maximum-content-length [2] ContentLength OPTIONAL,
+ permissible-lowest-priority Priority OPTIONAL,
+ permissible-content-types [4] ContentTypes OPTIONAL,
+ permissible-encoded-information-types
+ PermissibleEncodedInformationTypes OPTIONAL,
+ permissible-security-context [5] SecurityContext OPTIONAL
+}
+
+-- Note - The Tags [0], [1] and [2] are altered for the Register operation only.
+PermissibleEncodedInformationTypes ::=
+ EncodedInformationTypesConstraints
+
+-- Administration Port
+--register ABSTRACT-OPERATION ::= {
+-- ARGUMENT RegisterArgument
+-- RESULT RegisterResult
+-- ERRORS
+-- {register-rejected | remote-bind-error | operation-refused |
+-- security-error}
+-- LINKED {operationObject1, ...}
+-- INVOKE PRIORITY {5}
+-- CODE op-register
+--}
+
+RegisterArgument ::= SET {
+ user-name UserName OPTIONAL,
+ user-address [0] UserAddress OPTIONAL,
+ deliverable-class
+ SET --SIZE (1..ub-deliverable-class)-- OF DeliverableClass OPTIONAL,
+ default-delivery-controls [2] EXPLICIT DefaultDeliveryControls OPTIONAL,
+ redirections [3] Redirections OPTIONAL,
+ restricted-delivery [4] RestrictedDelivery OPTIONAL,
+ retrieve-registrations [5] RegistrationTypes OPTIONAL,
+ extensions
+ [6] SET OF ExtensionField --{{RegisterExtensions}}-- DEFAULT {}
+}
+
+--RegisterExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions
+RegisterResult ::= CHOICE {
+ empty-result NULL,
+ non-empty-result
+ SET {registered-information
+ [0] RegisterArgument
+-- (WITH COMPONENTS {
+-- ...,
+-- retrieve-registrations ABSENT
+-- }) OPTIONAL--,
+ extensions
+ [1] SET OF ExtensionField --{{RegisterResultExtensions}}-- DEFAULT {}
+ }
+}
+
+--RegisterResultExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions
+--change-credentials ABSTRACT-OPERATION ::= {
+-- ARGUMENT ChangeCredentialsArgument
+-- RESULT NULL
+-- ERRORS
+-- {new-credentials-unacceptable | old-credentials-incorrectly-specified |
+-- remote-bind-error | security-error}
+-- LINKED {operationObject1, ...}
+-- INVOKE PRIORITY {5}
+-- CODE op-change-credentials
+--}
+
+ChangeCredentialsArgument ::= SET {
+ old-credentials [0] Credentials(WITH COMPONENTS {
+ simple
+ }),
+ new-credentials [1] Credentials(WITH COMPONENTS {
+ simple
+ })
+}
+
+--register-rejected ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-register-rejected
+--}
+
+--new-credentials-unacceptable ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-new-credentials-unacceptable
+--}
+
+--old-credentials-incorrectly-specified ABSTRACT-ERROR ::= {
+-- PARAMETER NULL
+-- CODE err-old-credentials-incorrectly-specified
+--}
+
+-- Administration Port Parameters
+UserName ::= ORAddressAndOptionalDirectoryName
+
+UserAddress ::= CHOICE {
+ x121
+ [0] SEQUENCE {x121-address
+ NumericString --(SIZE (1..ub-x121-address-length))-- OPTIONAL,
+ tsap-id
+ PrintableString --(SIZE (1..ub-tsap-id-length))-- OPTIONAL
+ },
+ presentation [1] PSAPAddress
+}
+
+PSAPAddress ::= PresentationAddress
+
+DeliverableClass ::=
+ MessageClass
+ (WITH COMPONENTS {
+ ...,
+ priority ABSENT,
+ -- The 'objects' component shall always be defaulted.
+ -- objects ABSENT,
+ -- A component with a DEFAULT clause cannot be ABSENT
+ applies-only-to ABSENT
+ })
+
+DefaultDeliveryControls ::=
+ Controls
+ (WITH COMPONENTS {
+ ...,
+
+ -- The 'restrict' component shall always be defaulted.
+ -- restrict ABSENT,
+ -- A component with a DEFAULT clause cannot be ABSENT
+ permissible-security-context ABSENT
+ })
+
+Redirections ::= SEQUENCE SIZE (1..ub-redirections) OF RecipientRedirection
+
+RecipientRedirection ::= SET {
+ redirection-classes
+ [0] SET --SIZE (1..ub-redirection-classes)-- OF RedirectionClass OPTIONAL,
+ recipient-assigned-alternate-recipient
+ [1] RecipientAssignedAlternateRecipient OPTIONAL
+}
+
+RedirectionClass ::= MessageClass
+
+MessageClass ::= SET {
+ content-types [0] ContentTypes OPTIONAL,
+ maximum-content-length [1] ContentLength OPTIONAL,
+ encoded-information-types-constraints
+ [2] EncodedInformationTypesConstraints OPTIONAL,
+ security-labels [3] SecurityContext OPTIONAL,
+ priority [4] SET OF Priority OPTIONAL,
+ objects
+ [5] ENUMERATED {messages(0), reports(1), both(2), ...
+ } DEFAULT both,
+ applies-only-to [6] SEQUENCE OF Restriction OPTIONAL, -- Not considered in the case of Reports
+ extensions
+ [7] SET OF ExtensionField --{{MessageClassExtensions}}-- DEFAULT {}
+}
+
+EncodedInformationTypesConstraints ::= SEQUENCE {
+ unacceptable-eits [0] ExtendedEncodedInformationTypes OPTIONAL,
+ acceptable-eits [1] ExtendedEncodedInformationTypes OPTIONAL,
+ exclusively-acceptable-eits [2] ExtendedEncodedInformationTypes OPTIONAL
+}
+
+--MessageClassExtensions EXTENSION ::= {PrivateExtensions, ...}
+
+-- May contain private extensions and future standardised extensions
+RecipientAssignedAlternateRecipient ::=
+ ORAddressAndOrDirectoryName
+
+RestrictedDelivery ::= SEQUENCE SIZE (1..ub-restrictions) OF Restriction
+
+Restriction ::= SET {
+ permitted BOOLEAN DEFAULT TRUE,
+ source-type
+ BIT STRING {originated-by(0), redirected-by(1), dl-expanded-by(2)}
+-- DEFAULT {originated-by, redirected-by, dl-expanded-by}--,
+ source-name ExactOrPattern OPTIONAL
+}
+
+ExactOrPattern ::= CHOICE {
+ exact-match [0] ORName,
+ pattern-match [1] ORName
+}
+
+RegistrationTypes ::= SEQUENCE {
+ standard-parameters
+ [0] BIT STRING {user-name(0), user-address(1), deliverable-class(2),
+ default-delivery-controls(3), redirections(4),
+ restricted-delivery(5)} OPTIONAL,
+ extensions [1] SET OF ANY --EXTENSION.&id({RegisterExtensions})-- OPTIONAL
+}
+
+-- Message Submission Envelope
+MessageSubmissionEnvelope ::= SET {
+-- COMPONENTS OF PerMessageSubmissionFields,
+-- per-recipient-fields
+-- [1] SEQUENCE SIZE (1..ub-recipients) OF
+-- PerRecipientMessageSubmissionFields
+--}
+
+--PerMessageSubmissionFields ::= SET {
+ originator-name MTSOriginatorName,
+ original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL,
+ content-type ContentType,
+ content-identifier ContentIdentifier OPTIONAL,
+ priority Priority DEFAULT normal,
+ per-message-indicators PerMessageIndicators DEFAULT {},
+ deferred-delivery-time [0] DeferredDeliveryTime OPTIONAL,
+ extensions
+ [2] SET OF ExtensionField --{{PerMessageSubmissionExtensions}}-- DEFAULT {}
+ ,per-recipient-fields
+ [1] SEQUENCE --SIZE (1..ub-recipients)-- OF
+ PerRecipientMessageSubmissionFields
+
+}
+
+--PerMessageSubmissionExtensions EXTENSION ::=
+-- {- - May contain the following extensions, private extensions, and future standardised extensions,
+ -- at most one instance of each extension type:
+-- recipient-reassignment-prohibited | dl-expansion-prohibited |
+-- conversion-with-loss-prohibited | latest-delivery-time |
+-- originator-return-address | originator-certificate |
+-- content-confidentiality-algorithm-identifier |
+-- message-origin-authentication-check | message-security-label |
+-- proof-of-submission-request | content-correlator | dl-exempted-recipients |
+-- certificate-selectors | multiple-originator-certificates |
+-- forwarding-request - - for MS Abstract Service only - - | PrivateExtensions,
+-- ...}
+
+PerRecipientMessageSubmissionFields ::= SET {
+ recipient-name MTSRecipientName,
+ originator-report-request [0] OriginatorReportRequest,
+ explicit-conversion [1] ExplicitConversion OPTIONAL,
+ extensions
+ [2] SET OF ExtensionField --{{PerRecipientMessageSubmissionExtensions}}--
+ DEFAULT {}
+}
+
+--PerRecipientMessageSubmissionExtensions EXTENSION ::=
+-- {- - May contain the following extensions, private extensions, and future standardised extensions,
+ -- at most one instance of each extension type:
+-- originator-requested-alternate-recipient | requested-delivery-method |
+-- physical-forwarding-prohibited | physical-forwarding-address-request |
+-- physical-delivery-modes | registered-mail-type | recipient-number-for-advice
+-- | physical-rendition-attributes | physical-delivery-report-request |
+-- message-token | content-integrity-check | proof-of-delivery-request |
+-- certificate-selectors-override | recipient-certificate |
+-- IPMPerRecipientEnvelopeExtensions | PrivateExtensions, ...}
+
+-- Probe Submission Envelope
+ProbeSubmissionEnvelope ::= SET {
+-- COMPONENTS OF PerProbeSubmissionFields,
+-- per-recipient-fields
+-- [3] SEQUENCE SIZE (1..ub-recipients) OF PerRecipientProbeSubmissionFields
+--}
+
+--PerProbeSubmissionFields ::= SET {
+ originator-name MTSOriginatorName,
+ original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL,
+ content-type ContentType,
+ content-identifier ContentIdentifier OPTIONAL,
+ content-length [0] ContentLength OPTIONAL,
+ per-message-indicators PerMessageIndicators DEFAULT {},
+ extensions
+ [2] SET OF ExtensionField --{{PerProbeSubmissionExtensions}}-- DEFAULT {}
+ ,per-recipient-fields
+ [3] SEQUENCE --SIZE (1..ub-recipients)-- OF PerRecipientProbeSubmissionFields
+
+}
+
+--PerProbeSubmissionExtensions EXTENSION ::=
+-- {- - May contain the following extensions, private extensions, and future standardised extensions,
+ -- at most one instance of each extension type:
+-- recipient-reassignment-prohibited | dl-expansion-prohibited |
+-- conversion-with-loss-prohibited | originator-certificate |
+-- message-security-label | content-correlator |
+-- probe-origin-authentication-check | PrivateExtensions, ...}
+
+PerRecipientProbeSubmissionFields ::= SET {
+ recipient-name MTSRecipientName,
+ originator-report-request [0] OriginatorReportRequest,
+ explicit-conversion [1] ExplicitConversion OPTIONAL,
+ extensions
+ [2] SET OF ExtensionField --{{PerRecipientProbeSubmissionExtensions}}
+ DEFAULT {}
+}
+
+--PerRecipientProbeSubmissionExtensions EXTENSION ::=
+-- {- - May contain the following extensions, private extensions, and future standardised extensions,
+ -- at most one instance of each extension type:
+-- originator-requested-alternate-recipient | requested-delivery-method |
+-- physical-rendition-attributes | PrivateExtensions, ...}
+
+-- Message Delivery Envelope
+MessageDeliveryEnvelope ::= SEQUENCE {
+ message-delivery-identifier MessageDeliveryIdentifier,
+ message-delivery-time MessageDeliveryTime,
+ other-fields OtherMessageDeliveryFields
+}
+
+OtherMessageDeliveryFields ::= SET {
+ content-type DeliveredContentType,
+ originator-name DeliveredOriginatorName,
+ original-encoded-information-types
+ [1] OriginalEncodedInformationTypes OPTIONAL,
+ priority Priority DEFAULT normal,
+ delivery-flags [2] DeliveryFlags OPTIONAL,
+ other-recipient-names [3] OtherRecipientNames OPTIONAL,
+ this-recipient-name [4] ThisRecipientName,
+ originally-intended-recipient-name
+ [5] MTSOriginallyIntendedRecipientName OPTIONAL,
+ converted-encoded-information-types
+ [6] ConvertedEncodedInformationTypes OPTIONAL,
+ message-submission-time [7] MessageSubmissionTime,
+ content-identifier [8] ContentIdentifier OPTIONAL,
+ extensions
+ [9] SET OF ExtensionField --{{MessageDeliveryExtensions}}-- DEFAULT {}
+}
+
+--MessageDeliveryExtensions EXTENSION ::=
+-- {- - May contain the following extensions, private extensions, and future standardised extensions,
+ -- at most one instance of each extension type:
+-- conversion-with-loss-prohibited | requested-delivery-method |
+-- physical-forwarding-prohibited | physical-forwarding-address-request |
+-- physical-delivery-modes | registered-mail-type | recipient-number-for-advice
+-- | physical-rendition-attributes | originator-return-address |
+-- physical-delivery-report-request | originator-certificate | message-token |
+-- content-confidentiality-algorithm-identifier | content-integrity-check |
+-- message-origin-authentication-check | message-security-label |
+-- proof-of-delivery-request | dl-exempted-recipients | certificate-selectors |
+-- certificate-selectors-override | multiple-originator-certificates |
+-- recipient-certificate | IPMPerRecipientEnvelopeExtensions |
+-- redirection-history | dl-expansion-history | trace-information |
+-- internal-trace-information | PrivateExtensions, ...}
+
+-- Report Delivery Envelope
+ReportDeliveryEnvelope ::= SET {
+-- COMPONENTS OF PerReportDeliveryFields,
+-- per-recipient-fields
+-- SEQUENCE SIZE (1..ub-recipients) OF PerRecipientReportDeliveryFields
+--}
+
+--PerReportDeliveryFields ::= SET {
+ subject-submission-identifier SubjectSubmissionIdentifier,
+ content-identifier ContentIdentifier OPTIONAL,
+ content-type ContentType OPTIONAL,
+ original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL,
+ extensions
+ [1] SET OF ExtensionField --{{ReportDeliveryExtensions}}-- DEFAULT {}
+ ,per-recipient-fields
+ SEQUENCE --SIZE (1..ub-recipients)-- OF PerRecipientReportDeliveryFields
+
+}
+
+--ReportDeliveryExtensions EXTENSION ::=
+-- {- - May contain the following extensions, private extensions, and future standardised extensions,
+ -- at most one instance of each extension type:
+-- message-security-label | content-correlator | redirection-history |
+-- originator-and-DL-expansion-history | reporting-DL-name |
+-- reporting-MTA-certificate | report-origin-authentication-check |
+-- trace-information | internal-trace-information | reporting-MTA-name |
+-- PrivateExtensions, ...}
+
+PerRecipientReportDeliveryFields ::= SET {
+ actual-recipient-name [0] MTSActualRecipientName,
+ report-type [1] ReportType,
+ converted-encoded-information-types
+ ConvertedEncodedInformationTypes OPTIONAL,
+ originally-intended-recipient-name
+ [2] MTSOriginallyIntendedRecipientName OPTIONAL,
+ supplementary-information [3] SupplementaryInformation OPTIONAL,
+ extensions
+ [4] SET OF ExtensionField --{{PerRecipientReportDeliveryExtensions}}--
+ DEFAULT {}
+}
+
+--PerRecipientReportDeliveryExtensions EXTENSION ::=
+-- {- - May contain the following extensions, private extensions, and future standardised extensions,
+ -- at most one instance of each extension type:
+-- redirection-history | physical-forwarding-address | recipient-certificate |
+-- proof-of-delivery | PrivateExtensions, ...}
+
+ReportType ::= CHOICE {
+ delivery [0] DeliveryReport,
+ non-delivery [1] NonDeliveryReport
+}
+
+DeliveryReport ::= SET {
+ message-delivery-time [0] MessageDeliveryTime,
+ type-of-MTS-user [1] TypeOfMTSUser DEFAULT public
+}
+
+NonDeliveryReport ::= SET {
+ non-delivery-reason-code [0] NonDeliveryReasonCode,
+ non-delivery-diagnostic-code [1] NonDeliveryDiagnosticCode OPTIONAL
+}
+
+-- Envelope Fields
+MTSOriginatorName ::= ORAddressAndOrDirectoryName
+
+DeliveredOriginatorName ::= ORAddressAndOptionalDirectoryName
+
+OriginalEncodedInformationTypes ::= EncodedInformationTypes
+
+ContentTypes ::= SET --SIZE (1..ub-content-types)-- OF ContentType
+
+ContentType ::= CHOICE {
+ built-in BuiltInContentType,
+ extended ExtendedContentType
+}
+
+BuiltInContentType ::= [APPLICATION 6] INTEGER {
+ unidentified(0),
+ external(1), -- identified by the object-identifier of the EXTERNAL content
+ interpersonal-messaging-1984(2), interpersonal-messaging-1988(22),
+ edi-messaging(35), voice-messaging(40)} --(0..ub-built-in-content-type)
+
+ExtendedContentType ::= OBJECT IDENTIFIER -- RELATIVE-OID
+
+DeliveredContentType ::= CHOICE {
+ built-in [0] BuiltInContentType,
+ extended ExtendedContentType
+}
+
+ContentIdentifier ::=
+ [APPLICATION 10] PrintableString --(SIZE (1..ub-content-id-length))
+
+PerMessageIndicators ::= [APPLICATION 8] BIT STRING {
+ disclosure-of-other-recipients(0), -- disclosure-of-other-recipients-requested 'one',
+
+ -- disclosure-of-other-recipients-prohibited 'zero';
+ -- ignored for Probe-submission
+ implicit-conversion-prohibited(1), -- implicit-conversion-prohibited 'one',
+
+ -- implicit-conversion-allowed 'zero'
+ alternate-recipient-allowed(2), -- alternate-recipient-allowed 'one',
+
+ -- alternate-recipient-prohibited 'zero'
+ content-return-request(3), -- content-return-requested 'one',
+
+ -- content-return-not-requested 'zero';
+ -- ignored for Probe-submission
+ reserved(4), -- bit reserved by MOTIS 1986
+ bit-5(5),
+ bit-6(6), -- notification type-1 : bit 5 'zero' and bit 6 'one'
+
+ -- notification type-2 : bit 5 'one' and bit 6 'zero'
+ -- notification type-3 : bit 5 'one' and bit 6 'one'
+ -- the mapping between notification type 1, 2, 3
+ -- and the content specific notification types are defined
+ -- in relevant content specifications
+ service-message(7) -- the message content is for service purposes;
+
+
+-- it may be a notification related to a service message;
+-- used only by bilateral agreement --}(SIZE (0..ub-bit-options))
+
+MTSRecipientName ::= ORAddressAndOrDirectoryName
+
+OriginatorReportRequest ::= BIT STRING {report(3), non-delivery-report(4)
+
+-- at most one bit shall be 'one':
+-- report bit 'one' requests a 'report';
+-- non-delivery-report bit 'one' requests a 'non-delivery-report';
+-- both bits 'zero' requests 'no-report' --}(SIZE (0..ub-bit-options))
+
+ExplicitConversion ::= INTEGER {
+ ia5-text-to-teletex(0),
+ -- values 1 to 7 are no longer defined
+ ia5-text-to-g3-facsimile(8), ia5-text-to-g4-class-1(9),
+ ia5-text-to-videotex(10), teletex-to-ia5-text(11),
+ teletex-to-g3-facsimile(12), teletex-to-g4-class-1(13),
+ teletex-to-videotex(14),
+ -- value 15 is no longer defined
+ videotex-to-ia5-text(16), videotex-to-teletex(17)}(0..ub-integer-options)
+
+DeferredDeliveryTime ::= Time
+
+Priority ::= [APPLICATION 7] ENUMERATED {normal(0), non-urgent(1), urgent(2)}
+
+ContentLength ::= INTEGER(0..ub-content-length)
+
+MessageDeliveryIdentifier ::= MTSIdentifier
+
+MessageDeliveryTime ::= Time
+
+DeliveryFlags ::= BIT STRING {
+ implicit-conversion-prohibited(1) -- implicit-conversion-prohibited 'one',
+
+ -- implicit-conversion-allowed 'zero' --}(SIZE (0..ub-bit-options))
+
+OtherRecipientNames ::= SEQUENCE --SIZE (1..ub-recipients)-- OF OtherRecipientName
+
+OtherRecipientName ::= ORAddressAndOptionalDirectoryName
+
+ThisRecipientName ::= ORAddressAndOptionalDirectoryName
+
+MTSOriginallyIntendedRecipientName ::= ORAddressAndOptionalDirectoryName
+
+ConvertedEncodedInformationTypes ::= EncodedInformationTypes
+
+SubjectSubmissionIdentifier ::= MTSIdentifier
+
+MTSActualRecipientName ::= ORAddressAndOrDirectoryName
+
+TypeOfMTSUser ::= INTEGER {
+ public(0), private(1), ms(2), dl(3), pdau(4), physical-recipient(5), other(6)
+}(0..ub-mts-user-types)
+
+NonDeliveryReasonCode ::= INTEGER {
+ transfer-failure(0), unable-to-transfer(1), conversion-not-performed(2),
+ physical-rendition-not-performed(3), physical-delivery-not-performed(4),
+ restricted-delivery(5), directory-operation-unsuccessful(6),
+ deferred-delivery-not-performed(7), transfer-failure-for-security-reason(8)
+}(0..ub-reason-codes)
+
+NonDeliveryDiagnosticCode ::= INTEGER {
+ unrecognised-OR-name(0), ambiguous-OR-name(1), mts-congestion(2),
+ loop-detected(3), recipient-unavailable(4), maximum-time-expired(5),
+ encoded-information-types-unsupported(6), content-too-long(7),
+ conversion-impractical(8), implicit-conversion-prohibited(9),
+ implicit-conversion-not-subscribed(10), invalid-arguments(11),
+ content-syntax-error(12), size-constraint-violation(13),
+ protocol-violation(14), content-type-not-supported(15),
+ too-many-recipients(16), no-bilateral-agreement(17),
+ unsupported-critical-function(18), conversion-with-loss-prohibited(19),
+ line-too-long(20), page-split(21), pictorial-symbol-loss(22),
+ punctuation-symbol-loss(23), alphabetic-character-loss(24),
+ multiple-information-loss(25), recipient-reassignment-prohibited(26),
+ redirection-loop-detected(27), dl-expansion-prohibited(28),
+ no-dl-submit-permission(29), dl-expansion-failure(30),
+ physical-rendition-attributes-not-supported(31),
+ undeliverable-mail-physical-delivery-address-incorrect(32),
+ undeliverable-mail-physical-delivery-office-incorrect-or-invalid(33),
+ undeliverable-mail-physical-delivery-address-incomplete(34),
+ undeliverable-mail-recipient-unknown(35),
+ undeliverable-mail-recipient-deceased(36),
+ undeliverable-mail-organization-expired(37),
+ undeliverable-mail-recipient-refused-to-accept(38),
+ undeliverable-mail-recipient-did-not-claim(39),
+ undeliverable-mail-recipient-changed-address-permanently(40),
+ undeliverable-mail-recipient-changed-address-temporarily(41),
+ undeliverable-mail-recipient-changed-temporary-address(42),
+ undeliverable-mail-new-address-unknown(43),
+ undeliverable-mail-recipient-did-not-want-forwarding(44),
+ undeliverable-mail-originator-prohibited-forwarding(45),
+ secure-messaging-error(46), unable-to-downgrade(47),
+ unable-to-complete-transfer(48), transfer-attempts-limit-reached(49),
+ incorrect-notification-type(50),
+ dl-expansion-prohibited-by-security-policy(51),
+ forbidden-alternate-recipient(52), security-policy-violation(53),
+ security-services-refusal(54), unauthorised-dl-member(55),
+ unauthorised-dl-name(56),
+ unauthorised-originally-intended-recipient-name(57),
+ unauthorised-originator-name(58), unauthorised-recipient-name(59),
+ unreliable-system(60), authentication-failure-on-subject-message(61),
+ decryption-failed(62), decryption-key-unobtainable(63),
+ double-envelope-creation-failure(64),
+ double-enveloping-message-restoring-failure(65),
+ failure-of-proof-of-message(66), integrity-failure-on-subject-message(67),
+ invalid-security-label(68), key-failure(69), mandatory-parameter-absence(70),
+ operation-security-failure(71), repudiation-failure-of-message(72),
+ security-context-failure(73), token-decryption-failed(74), token-error(75),
+ unknown-security-label(76), unsupported-algorithm-identifier(77),
+ unsupported-security-policy(78)}(0..ub-diagnostic-codes)
+
+SupplementaryInformation ::=
+ PrintableString(SIZE (1..ub-supplementary-info-length))
+
+-- Extension Fields
+EXTENSION ::= CLASS {
+ &id ExtensionType UNIQUE,
+ &Type OPTIONAL,
+ &absent &Type OPTIONAL,
+ &recommended Criticality DEFAULT {}
+}
+WITH SYNTAX {
+ [&Type
+ [IF ABSENT &absent],]
+ [RECOMMENDED CRITICALITY &recommended,]
+ IDENTIFIED BY &id
+}
+
+ExtensionType ::= CHOICE {
+ standard-extension [0] StandardExtension --(0..ub-extension-types)--,
+ private-extension [3] OBJECT IDENTIFIER
+}
+
+StandardExtension ::= INTEGER {
+ recipient-reassignment-prohibited (1),
+ originator-requested-alternate-recipient (2),
+ dl-expansion-prohibited (3),
+ conversion-with-loss-prohibited (4),
+ latest-delivery-time (5),
+ requested-delivery-method (6),
+ physical-forwarding-prohibited (7),
+ physical-forwarding-address-request (8),
+ physical-delivery-modes (9),
+ registered-mail-type (10),
+ recipient-number-for-advice (11),
+ physical-rendition-attributes (12),
+ originator-return-address (13),
+ physical-delivery-report-request (14),
+ originator-certificate (15),
+ message-token (16),
+ content-confidentiality-algorithm-identifier (17),
+ content-integrity-check (18),
+ message-origin-authentication-check (19),
+ message-security-label (20),
+ proof-of-submission-request (21),
+ proof-of-delivery-request (22),
+ content-correlator (23),
+ probe-origin-authentication-check (24),
+ redirection-history (25),
+ dl-expansion-history (26),
+ physical-forwarding-address (27),
+ recipient-certificate (28),
+ proof-of-delivery (29),
+ originator-and-DL-expansion-history (30),
+ reporting-DL-name (31),
+ reporting-MTA-certificate (32),
+ report-origin-authentication-check (33),
+ originating-MTA-certificate (34),
+ proof-of-submission (35),
+ forwarding-request (36),
+ trace-information (37),
+ internal-trace-information (38),
+ reporting-MTA-name (39),
+ multiple-originator-certificates (40),
+ blind-copy-recipients (41),
+ dl-exempted-recipients (42),
+ body-part-encryption-token (43),
+ forwarded-content-token (44),
+ certificate-selectors (45)
+}
+
+Criticality ::= BIT STRING {for-submission(0), for-transfer(1), for-delivery(2)
+} -- (SIZE (0..ub-bit-options)) - - critical 'one', non-critical 'zero'
+
+
+ExtensionField --{EXTENSION:ChosenFrom}-- ::= SEQUENCE {
+ type ExtensionType --EXTENSION.&id({ChosenFrom})--,
+ criticality [1] Criticality DEFAULT {},
+ value [2] ANY --EXTENSION.&Type({ChosenFrom}{@type}) DEFAULT NULL:NULL
+}
+
+--PrivateExtensions EXTENSION ::=
+-- {- - Any value shall be relayed and delivered if not Critical (see Table 27)
+ -- except those values whose semantics the MTA obeys which are defined to be removed when obeyed.
+-- - - Shall be IDENTIFIED BY ExtensionType.private-extension - -...}
+
+--recipient-reassignment-prohibited EXTENSION ::= {
+-- RecipientReassignmentProhibited
+-- IF ABSENT recipient-reassignment-allowed,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:1
+--}
+
+RecipientReassignmentProhibited ::= ENUMERATED {
+ recipient-reassignment-allowed(0), recipient-reassignment-prohibited(1)
+}
+
+--originator-requested-alternate-recipient EXTENSION ::= {
+-- OriginatorRequestedAlternateRecipient,
+-- RECOMMENDED CRITICALITY {for-submission},
+-- IDENTIFIED BY standard-extension:2
+--}
+
+MTSOriginatorRequestedAlternateRecipient ::= ORAddressAndOrDirectoryName
+
+-- OriginatorRequestedAlternateRecipient as defined here differs from the field of the same name
+-- defined in Figure 4, since on submission the OR-address need not be present, but on
+-- transfer the OR-address must be present.
+--dl-expansion-prohibited EXTENSION ::= {
+-- DLExpansionProhibited
+-- IF ABSENT dl-expansion-allowed,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:3
+--}
+
+DLExpansionProhibited ::= ENUMERATED {
+ dl-expansion-allowed(0), dl-expansion-prohibited(1)}
+
+--conversion-with-loss-prohibited EXTENSION ::= {
+-- ConversionWithLossProhibited
+-- IF ABSENT conversion-with-loss-allowed,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:4
+--}
+
+ConversionWithLossProhibited ::= ENUMERATED {
+ conversion-with-loss-allowed(0), conversion-with-loss-prohibited(1)
+}
+
+--latest-delivery-time EXTENSION ::= {
+-- LatestDeliveryTime,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:5
+--}
+
+LatestDeliveryTime ::= Time
+
+--requested-delivery-method EXTENSION ::= {
+-- RequestedDeliveryMethod
+-- IF ABSENT {any-delivery-method},
+-- IDENTIFIED BY standard-extension:6
+--}
+
+RequestedDeliveryMethod ::=
+ SEQUENCE OF INTEGER { -- each different in order of preference,
+ -- most preferred first
+ any-delivery-method(0), mhs-delivery(1), physical-delivery(2),
+ telex-delivery(3), teletex-delivery(4), g3-facsimile-delivery(5),
+
+ g4-facsimile-delivery(6), ia5-terminal-delivery(7), videotex-delivery(8),
+ telephone-delivery(9)}(0..ub-integer-options)
+
+--physical-forwarding-prohibited EXTENSION ::= {
+-- PhysicalForwardingProhibited
+-- IF ABSENT physical-forwarding-allowed,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:7
+--}
+
+PhysicalForwardingProhibited ::= ENUMERATED {
+ physical-forwarding-allowed(0), physical-forwarding-prohibited(1)}
+
+--physical-forwarding-address-request EXTENSION ::= {
+-- PhysicalForwardingAddressRequest
+-- IF ABSENT physical-forwarding-address-not-requested,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:8
+--}
+
+PhysicalForwardingAddressRequest ::= ENUMERATED {
+ physical-forwarding-address-not-requested(0),
+ physical-forwarding-address-requested(1)}
+
+--physical-delivery-modes EXTENSION ::= {
+-- PhysicalDeliveryModes
+-- IF ABSENT {ordinary-mail},
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:9
+--}
+
+PhysicalDeliveryModes ::= BIT STRING {
+ ordinary-mail(0), special-delivery(1), express-mail(2),
+ counter-collection(3), counter-collection-with-telephone-advice(4),
+ counter-collection-with-telex-advice(5),
+ counter-collection-with-teletex-advice(6), bureau-fax-delivery(7)
+
+-- bits 0 to 6 are mutually exclusive
+-- bit 7 can be set independently of any of bits 0 to 6 --}
+--(SIZE (0..ub-bit-options))
+
+--registered-mail-type EXTENSION ::= {
+-- RegisteredMailType
+-- IF ABSENT non-registered-mail,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:10
+--}
+
+RegisteredMailType ::= INTEGER {
+ non-registered-mail(0), registered-mail(1),
+ registered-mail-to-addressee-in-person(2)}(0..ub-integer-options)
+
+--recipient-number-for-advice EXTENSION ::= {
+-- RecipientNumberForAdvice,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:11
+--}
+
+RecipientNumberForAdvice ::=
+ TeletexString --(SIZE (1..ub-recipient-number-for-advice-length))
+
+--physical-rendition-attributes EXTENSION ::= {
+-- PhysicalRenditionAttributes
+-- IF ABSENT id-att-physicalRendition-basic,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:12
+--}
+
+PhysicalRenditionAttributes ::= OBJECT IDENTIFIER
+
+--originator-return-address EXTENSION ::= {
+-- OriginatorReturnAddress,
+-- IDENTIFIED BY standard-extension:13
+--}
+
+OriginatorReturnAddress ::= ORAddress
+
+--physical-delivery-report-request EXTENSION ::= {
+-- PhysicalDeliveryReportRequest
+-- IF ABSENT return-of-undeliverable-mail-by-PDS,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:14
+--}
+
+PhysicalDeliveryReportRequest ::= INTEGER {
+ return-of-undeliverable-mail-by-PDS(0), return-of-notification-by-PDS(1),
+ return-of-notification-by-MHS(2), return-of-notification-by-MHS-and-PDS(3)
+} -- (0..ub-integer-options)
+
+--originator-certificate EXTENSION ::= {
+-- OriginatorCertificate,
+-- IDENTIFIED BY standard-extension:15
+--}
+
+OriginatorCertificate ::= Certificates
+
+--message-token EXTENSION ::= {
+-- MessageToken,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:16
+--}
+
+MessageToken ::= Token
+
+--content-confidentiality-algorithm-identifier EXTENSION ::= {
+-- ContentConfidentialityAlgorithmIdentifier,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:17
+--}
+
+ContentConfidentialityAlgorithmIdentifier ::= AlgorithmIdentifier
+
+--content-integrity-check EXTENSION ::= {
+-- ContentIntegrityCheck,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:18
+--}
+
+ContentIntegrityCheck ::= Signature
+-- SIGNATURE
+-- {SEQUENCE {algorithm-identifier
+-- ContentIntegrityAlgorithmIdentifier OPTIONAL,
+-- content Content}}
+
+ContentIntegrityAlgorithmIdentifier ::= AlgorithmIdentifier
+
+--message-origin-authentication-check EXTENSION ::= {
+-- MessageOriginAuthenticationCheck,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:19
+--}
+
+MessageOriginAuthenticationCheck ::= Signature
+-- SIGNATURE
+-- {SEQUENCE {algorithm-identifier
+-- MessageOriginAuthenticationAlgorithmIdentifier,
+-- content Content,
+-- content-identifier ContentIdentifier OPTIONAL,
+-- message-security-label MessageSecurityLabel OPTIONAL}}
+
+MessageOriginAuthenticationAlgorithmIdentifier ::= AlgorithmIdentifier
+
+--message-security-label EXTENSION ::= {
+-- MessageSecurityLabel,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:20
+--}
+
+MessageSecurityLabel ::= SecurityLabel
+
+--proof-of-submission-request EXTENSION ::= {
+-- ProofOfSubmissionRequest
+-- IF ABSENT proof-of-submission-not-requested,
+-- RECOMMENDED CRITICALITY {for-submission},
+-- IDENTIFIED BY standard-extension:21
+--}
+
+ProofOfSubmissionRequest ::= ENUMERATED {
+ proof-of-submission-not-requested(0), proof-of-submission-requested(1)
+}
+
+--proof-of-delivery-request EXTENSION ::= {
+-- ProofOfDeliveryRequest
+-- IF ABSENT proof-of-delivery-not-requested,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:22
+--}
+
+ProofOfDeliveryRequest ::= ENUMERATED {
+ proof-of-delivery-not-requested(0), proof-of-delivery-requested(1)}
+
+--content-correlator EXTENSION ::= {
+-- ContentCorrelator,
+-- IDENTIFIED BY standard-extension:23
+--}
+
+ContentCorrelator ::= CHOICE {ia5text IA5String,
+ octets OCTET STRING
+}
+
+--probe-origin-authentication-check EXTENSION ::= {
+-- ProbeOriginAuthenticationCheck,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:24
+--}
+
+ProbeOriginAuthenticationCheck ::= Signature
+-- SIGNATURE
+-- {SEQUENCE {algorithm-identifier
+-- ProbeOriginAuthenticationAlgorithmIdentifier,
+-- content-identifier ContentIdentifier OPTIONAL,
+-- message-security-label MessageSecurityLabel OPTIONAL}}
+
+ProbeOriginAuthenticationAlgorithmIdentifier ::= AlgorithmIdentifier
+
+--redirection-history EXTENSION ::= {
+-- RedirectionHistory,
+-- IDENTIFIED BY standard-extension:25
+--}
+
+RedirectionHistory ::= SEQUENCE SIZE (1..ub-redirections) OF Redirection
+
+Redirection ::= SEQUENCE {
+ intended-recipient-name IntendedRecipientName,
+ redirection-reason RedirectionReason
+}
+
+IntendedRecipientName ::= SEQUENCE {
+ intended-recipient ORAddressAndOptionalDirectoryName,
+ redirection-time Time
+}
+
+RedirectionReason ::= ENUMERATED {
+ recipient-assigned-alternate-recipient(0),
+ originator-requested-alternate-recipient(1),
+ recipient-MD-assigned-alternate-recipient(2),
+ -- The following values may not be supported by implementations of earlier versions of this Service Definition
+ directory-look-up(3), alias(4), ...
+ }
+
+--dl-expansion-history EXTENSION ::= {
+-- DLExpansionHistory,
+-- IDENTIFIED BY standard-extension:26
+--}
+
+DLExpansionHistory ::= SEQUENCE -- SIZE (1..ub-dl-expansions)-- OF DLExpansion
+
+DLExpansion ::= SEQUENCE {
+ dl ORAddressAndOptionalDirectoryName,
+ dl-expansion-time Time
+}
+
+--physical-forwarding-address EXTENSION ::= {
+-- PhysicalForwardingAddress,
+-- IDENTIFIED BY standard-extension:27
+--}
+
+PhysicalForwardingAddress ::= ORAddressAndOptionalDirectoryName
+
+--recipient-certificate EXTENSION ::= {
+-- RecipientCertificate,
+-- IDENTIFIED BY standard-extension:28
+--}
+
+--proof-of-delivery EXTENSION ::= {
+-- ProofOfDelivery,
+-- IDENTIFIED BY standard-extension:29
+--}
+
+--originator-and-DL-expansion-history EXTENSION ::= {
+-- OriginatorAndDLExpansionHistory,
+-- IDENTIFIED BY standard-extension:30
+--}
+
+OriginatorAndDLExpansionHistory ::=
+ SEQUENCE --SIZE (2..ub-orig-and-dl-expansions)-- OF OriginatorAndDLExpansion
+
+OriginatorAndDLExpansion ::= SEQUENCE {
+ originator-or-dl-name ORAddressAndOptionalDirectoryName,
+ origination-or-expansion-time Time
+}
+
+--reporting-DL-name EXTENSION ::= {
+-- ReportingDLName,
+-- IDENTIFIED BY standard-extension:31
+--}
+
+ReportingDLName ::= ORAddressAndOptionalDirectoryName
+
+--reporting-MTA-certificate EXTENSION ::= {
+-- ReportingMTACertificate,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:32
+--}
+
+ReportingMTACertificate ::= Certificates
+
+--report-origin-authentication-check EXTENSION ::= {
+-- ReportOriginAuthenticationCheck,
+-- RECOMMENDED CRITICALITY {for-delivery},
+-- IDENTIFIED BY standard-extension:33
+--}
+
+ReportOriginAuthenticationCheck ::= Signature
+-- SIGNATURE
+-- {SEQUENCE {algorithm-identifier
+-- ReportOriginAuthenticationAlgorithmIdentifier,
+-- content-identifier ContentIdentifier OPTIONAL,
+-- message-security-label MessageSecurityLabel OPTIONAL,
+-- per-recipient
+-- SEQUENCE SIZE (1..ub-recipients) OF PerRecipientReportFields
+-- }}
+
+ReportOriginAuthenticationAlgorithmIdentifier ::= AlgorithmIdentifier
+
+PerRecipientReportFields ::= SEQUENCE {
+ actual-recipient-name MTSActualRecipientName,
+ originally-intended-recipient-name MTSOriginallyIntendedRecipientName OPTIONAL,
+ report-type
+ CHOICE {delivery [0] PerRecipientDeliveryReportFields,
+ non-delivery [1] PerRecipientNonDeliveryReportFields}
+}
+
+PerRecipientDeliveryReportFields ::= SEQUENCE {
+ message-delivery-time MessageDeliveryTime,
+ type-of-MTS-user TypeOfMTSUser,
+ recipient-certificate [0] RecipientCertificate OPTIONAL
+-- proof-of-delivery [1] ProofOfDelivery OPTIONAL
+}
+
+PerRecipientNonDeliveryReportFields ::= SEQUENCE {
+ non-delivery-reason-code NonDeliveryReasonCode,
+ non-delivery-diagnostic-code NonDeliveryDiagnosticCode OPTIONAL
+}
+
+--originating-MTA-certificate EXTENSION ::= {
+-- OriginatingMTACertificate,
+-- IDENTIFIED BY standard-extension:34
+--}
+
+OriginatingMTACertificate ::= Certificates
+
+--proof-of-submission EXTENSION ::= {
+-- ProofOfSubmission,
+-- IDENTIFIED BY standard-extension:35
+--}
+
+ProofOfSubmission ::= Signature
+-- SIGNATURE
+-- {SEQUENCE {algorithm-identifier
+-- ProofOfSubmissionAlgorithmIdentifier,
+-- message-submission-envelope MessageSubmissionEnvelope,
+-- content Content,
+-- message-submission-identifier MessageSubmissionIdentifier,
+-- message-submission-time MessageSubmissionTime}}
+
+--ProofOfSubmissionAlgorithmIdentifier ::= AlgorithmIdentifier
+
+--reporting-MTA-name EXTENSION ::= {
+-- ReportingMTAName,
+-- IDENTIFIED BY standard-extension:39
+--}
+
+ReportingMTAName ::= SEQUENCE {
+ domain GlobalDomainIdentifier,
+ mta-name MTAName,
+ mta-directory-name [0] Name OPTIONAL
+}
+
+--multiple-originator-certificates EXTENSION ::= {
+-- ExtendedCertificates,
+-- IDENTIFIED BY standard-extension:40
+--}
+
+ExtendedCertificates ::= SET --SIZE (1..ub-certificates)-- OF ExtendedCertificate
+
+ExtendedCertificate ::= CHOICE {
+ directory-entry [0] Name, -- Name of a Directory entry where the certificate can be found
+ certificate [1] Certificates
+}
+
+--dl-exempted-recipients EXTENSION ::= {
+-- DLExemptedRecipients,
+-- IDENTIFIED BY standard-extension:42
+--}
+
+DLExemptedRecipients ::= SET OF ORAddressAndOrDirectoryName
+
+--certificate-selectors EXTENSION ::= {
+-- CertificateSelectors,
+-- IDENTIFIED BY standard-extension:45
+--}
+
+CertificateSelectors ::= SET {
+ encryption-recipient [0] CertificateAssertion OPTIONAL,
+ encryption-originator [1] CertificateAssertion OPTIONAL,
+ content-integrity-check [2] CertificateAssertion OPTIONAL,
+ token-signature [3] CertificateAssertion OPTIONAL,
+ message-origin-authentication [4] CertificateAssertion OPTIONAL
+}
+
+--certificate-selectors-override EXTENSION ::= {
+-- CertificateSelectors
+-- (WITH COMPONENTS {
+-- ...,
+-- message-origin-authentication ABSENT
+-- }),
+-- IDENTIFIED BY standard-extension:46
+--}
+
+-- Some standard-extensions are defined elsewhere:
+-- 36 (forwarding-request) in ITU-T Rec. X.413 | ISO/IEC 10021-5;
+-- 37 (trace-information), and 38 (internal-trace-information) in Figure 4;
+-- 41 (blind-copy-recipients), 43 (body-part-encryption-token), and 44 (forwarded-content-token) in
+-- ITU-T Rec. X.420 | ISO/IEC 10021-7
+-- Common Parameter Types
+Content ::=
+ OCTET
+ STRING -- when the content-type has the integer value external, the value of the
+
+-- content octet string is the ASN.1 encoding of the external-content;
+-- an external-content is a data type EXTERNAL
+MTSIdentifier ::= [APPLICATION 4] SEQUENCE {
+ global-domain-identifier GlobalDomainIdentifier,
+ local-identifier LocalIdentifier
+}
+
+LocalIdentifier ::= IA5String --(SIZE (1..ub-local-id-length))
+
+GlobalDomainIdentifier ::= [APPLICATION 3] SEQUENCE {
+ country-name CountryName,
+ administration-domain-name AdministrationDomainName,
+ private-domain-identifier PrivateDomainIdentifier OPTIONAL
+}
+
+PrivateDomainIdentifier ::= CHOICE {
+ numeric NumericString --(SIZE (1..ub-domain-name-length))--,
+ printable PrintableString --(SIZE (1..ub-domain-name-length))
+}
+
+MTAName ::= IA5String --(SIZE (1..ub-mta-name-length))
+
+Time ::= UTCTime
+
+
+-- OR Names
+ORAddressAndOrDirectoryName ::= ORName
+
+ORAddressAndOptionalDirectoryName ::= ORName
+
+ORName ::= [APPLICATION 0] SEQUENCE {
+ -- address - -COMPONENTS OF ORAddress,
+ built-in-standard-attributes BuiltInStandardAttributes,
+ built-in-domain-defined-attributes BuiltInDomainDefinedAttributes OPTIONAL,
+ -- see also teletex-domain-defined-attributes
+ extension-attributes ExtensionAttributes OPTIONAL,
+ directory-name [0] Name OPTIONAL
+}
+
+ORAddress ::= SEQUENCE {
+ built-in-standard-attributes BuiltInStandardAttributes,
+ built-in-domain-defined-attributes BuiltInDomainDefinedAttributes OPTIONAL,
+ -- see also teletex-domain-defined-attributes
+ extension-attributes ExtensionAttributes OPTIONAL
+}
+
+-- The OR-address is semantically absent from the OR-name if the built-in-standard-attribute
+-- sequence is empty and the built-in-domain-defined-attributes and extension-attributes are both omitted.
+-- Built-in Standard Attributes
+BuiltInStandardAttributes ::= SEQUENCE {
+ country-name CountryName OPTIONAL,
+ administration-domain-name AdministrationDomainName OPTIONAL,
+ network-address [0] NetworkAddress OPTIONAL,
+ -- see also extended-network-address
+ terminal-identifier [1] TerminalIdentifier OPTIONAL,
+ private-domain-name [2] PrivateDomainName OPTIONAL,
+ organization-name [3] OrganizationName OPTIONAL,
+ -- see also teletex-organization-name
+ numeric-user-identifier [4] NumericUserIdentifier OPTIONAL,
+ personal-name [5] PersonalName OPTIONAL,
+ -- see also teletex-personal-name
+ organizational-unit-names [6] OrganizationalUnitNames OPTIONAL
+ -- see also teletex-organizational-unit-names
+}
+
+CountryName ::= [APPLICATION 1] CHOICE {
+ x121-dcc-code NumericString --(SIZE (ub-country-name-numeric-length))--,
+ iso-3166-alpha2-code PrintableString --(SIZE (ub-country-name-alpha-length))
+}
+
+AdministrationDomainName ::= [APPLICATION 2] CHOICE {
+ numeric NumericString --(SIZE (0..ub-domain-name-length))--,
+ printable PrintableString --(SIZE (0..ub-domain-name-length))
+}
+
+NetworkAddress ::= X121Address
+
+-- see also extended-network-address
+X121Address ::= NumericString --(SIZE (1..ub-x121-address-length))
+
+TerminalIdentifier ::= PrintableString --(SIZE (1..ub-terminal-id-length))
+
+PrivateDomainName ::= CHOICE {
+ numeric NumericString --(SIZE (1..ub-domain-name-length))--,
+ printable PrintableString --(SIZE (1..ub-domain-name-length))
+}
+
+OrganizationName ::= PrintableString --(SIZE (1..ub-organization-name-length))
+
+-- see also teletex-organization-name
+NumericUserIdentifier ::= NumericString --(SIZE (1..ub-numeric-user-id-length))
+
+PersonalName ::= SET {
+ surname [0] PrintableString --(SIZE (1..ub-surname-length)) --,
+ given-name
+ [1] PrintableString --(SIZE (1..ub-given-name-length))-- OPTIONAL,
+ initials
+ [2] PrintableString --(SIZE (1..ub-initials-length))-- OPTIONAL,
+ generation-qualifier
+ [3] PrintableString --(SIZE (1..ub-generation-qualifier-length))-- OPTIONAL
+}
+
+-- see also teletex-personal-name
+OrganizationalUnitNames ::=
+ SEQUENCE --SIZE (1..ub-organizational-units)-- OF OrganizationalUnitName
+
+-- see also teletex-organizational-unit-names
+OrganizationalUnitName ::=
+ PrintableString --(SIZE (1..ub-organizational-unit-name-length))
+
+-- Built-in Domain-defined Attributes
+BuiltInDomainDefinedAttributes ::=
+ SEQUENCE --SIZE (1..ub-domain-defined-attributes)-- OF
+ BuiltInDomainDefinedAttribute
+
+BuiltInDomainDefinedAttribute ::= SEQUENCE {
+ type PrintableString--(SIZE (1..ub-domain-defined-attribute-type-length))--,
+ value PrintableString --(SIZE (1..ub-domain-defined-attribute-value-length))
+}
+
+-- Extension Attributes
+ExtensionAttributes ::=
+ SET --SIZE (1..ub-extension-attributes)-- OF ExtensionAttribute
+
+ExtensionAttribute ::= SEQUENCE {
+ extension-attribute-type
+ [0] ExtensionAttributeType --EXTENSION-ATTRIBUTE.&id({ExtensionAttributeTable}) --,
+ extension-attribute-value
+ [1] ANY --EXTENSION-ATTRIBUTE.&Type
+-- ({ExtensionAttributeTable}{@extension-attribute-type})
+}
+
+
+
+ExtensionAttributeType ::= INTEGER {
+ common-name (1),
+ teletex-common-name (2),
+ teletex-organization-name (3),
+ teletex-personal-name (4),
+ teletex-organizational-unit-names (5),
+ teletex-domain-defined-attributes (6),
+ pds-name (7),
+ physical-delivery-country-name (8),
+ postal-code (9),
+ physical-delivery-office-name (10),
+ physical-delivery-office-number (11),
+ extension-OR-address-components (12),
+ physical-delivery-personal-name (13),
+ physical-delivery-organization-name (14),
+ extension-physical-delivery-address-components (15),
+ unformatted-postal-address (16),
+ street-address (17),
+ post-office-box-address (18),
+ poste-restante-address (19),
+ unique-postal-name (20),
+ local-postal-attributes (21),
+ extended-network-address (22),
+ terminal-type (23),
+ universal-common-name (24),
+ universal-organization-name (25),
+ universal-personal-name (26),
+ universal-organizational-unit-names (27),
+ universal-domain-defined-attributes (28),
+ universal-physical-delivery-office-name (29),
+ universal-physical-delivery-office-number (30),
+ universal-extension-OR-address-components (31),
+ universal-physical-delivery-personal-name (32),
+ universal-physical-delivery-organization-name (33),
+ universal-extension-physical-delivery-address-components (34),
+ universal-unformatted-postal-address (35),
+ universal-street-address (36),
+ universal-post-office-box-address (37),
+ universal-poste-restante-address (38),
+ universal-unique-postal-name (39),
+ universal-local-postal-attributes (40)
+}
+
+--EXTENSION-ATTRIBUTE ::= CLASS {
+-- &id INTEGER(0..ub-extension-attributes) UNIQUE,
+-- &Type
+--}WITH SYNTAX {&Type
+-- IDENTIFIED BY &id
+--}
+
+--ExtensionAttributeTable EXTENSION-ATTRIBUTE ::=
+-- {common-name | teletex-common-name | universal-common-name |
+-- teletex-organization-name | universal-organization-name |
+-- teletex-personal-name | universal-personal-name |
+-- teletex-organizational-unit-names | universal-organizational-unit-names |
+-- teletex-domain-defined-attributes | universal-domain-defined-attributes |
+-- pds-name | physical-delivery-country-name | postal-code |
+-- physical-delivery-office-name | universal-physical-delivery-office-name |
+-- physical-delivery-office-number | universal-physical-delivery-office-number
+-- | extension-OR-address-components |
+-- universal-extension-OR-address-components | physical-delivery-personal-name
+-- | universal-physical-delivery-personal-name |
+-- physical-delivery-organization-name |
+-- universal-physical-delivery-organization-name |
+-- extension-physical-delivery-address-components |
+-- universal-extension-physical-delivery-address-components |
+-- unformatted-postal-address | universal-unformatted-postal-address |
+-- street-address | universal-street-address | post-office-box-address |
+-- universal-post-office-box-address | poste-restante-address |
+-- universal-poste-restante-address | unique-postal-name |
+-- universal-unique-postal-name | local-postal-attributes |
+-- universal-local-postal-attributes | extended-network-address | terminal-type
+-- }
+
+-- Extension Standard Attributes
+--common-name EXTENSION-ATTRIBUTE ::= {CommonName
+-- IDENTIFIED BY 1
+--}
+
+CommonName ::= PrintableString --(SIZE (1..ub-common-name-length))
+
+--teletex-common-name EXTENSION-ATTRIBUTE ::= {TeletexCommonName
+-- IDENTIFIED BY 2
+--}
+
+TeletexCommonName ::= TeletexString --(SIZE (1..ub-common-name-length))
+
+--universal-common-name EXTENSION-ATTRIBUTE ::= {
+-- UniversalCommonName
+-- IDENTIFIED BY 24
+--}
+
+UniversalCommonName ::= UniversalOrBMPString --{ub-common-name-length}
+
+--teletex-organization-name EXTENSION-ATTRIBUTE ::= {
+-- TeletexOrganizationName
+-- IDENTIFIED BY 3
+--}
+
+TeletexOrganizationName ::=
+ TeletexString --(SIZE (1..ub-organization-name-length))
+
+--universal-organization-name EXTENSION-ATTRIBUTE ::= {
+-- UniversalOrganizationName
+-- IDENTIFIED BY 25
+--}
+
+UniversalOrganizationName ::= UniversalOrBMPString --{ub-organization-name-length}
+
+--teletex-personal-name EXTENSION-ATTRIBUTE ::= {
+-- TeletexPersonalName
+-- IDENTIFIED BY 4
+--}
+
+TeletexPersonalName ::= SET {
+ surname [0] TeletexString --(SIZE (1..ub-surname-length))--,
+ given-name
+ [1] TeletexString --(SIZE (1..ub-given-name-length))-- OPTIONAL,
+ initials
+ [2] TeletexString --(SIZE (1..ub-initials-length))-- OPTIONAL,
+ generation-qualifier
+ [3] TeletexString --(SIZE (1..ub-generation-qualifier-length))-- OPTIONAL
+}
+
+--universal-personal-name EXTENSION-ATTRIBUTE ::= {
+-- UniversalPersonalName
+-- IDENTIFIED BY 26
+--}
+
+UniversalPersonalName ::= SET {
+ surname [0] UniversalOrBMPString --{ub-universal-surname-length}--,
+ -- If a language is specified within surname, then that language applies to each of the following
+ -- optional components unless the component specifies another language.
+ given-name
+ [1] UniversalOrBMPString --{ub-universal-given-name-length}-- OPTIONAL,
+ initials
+ [2] UniversalOrBMPString --{ub-universal-initials-length}-- OPTIONAL,
+ generation-qualifier
+ [3] UniversalOrBMPString --{ub-universal-generation-qualifier-length}
+ OPTIONAL
+}
+
+--teletex-organizational-unit-names EXTENSION-ATTRIBUTE ::= {
+-- TeletexOrganizationalUnitNames
+-- IDENTIFIED BY 5
+--}
+
+TeletexOrganizationalUnitNames ::=
+ SEQUENCE --SIZE (1..ub-organizational-units)-- OF TeletexOrganizationalUnitName
+
+TeletexOrganizationalUnitName ::=
+ TeletexString --(SIZE (1..ub-organizational-unit-name-length))
+
+--universal-organizational-unit-names EXTENSION-ATTRIBUTE ::= {
+-- UniversalOrganizationalUnitNames
+-- IDENTIFIED BY 27
+--}
+
+UniversalOrganizationalUnitNames ::=
+ SEQUENCE --SIZE (1..ub-organizational-units)-- OF UniversalOrganizationalUnitName
+
+-- If a unit name specifies a language, then that language applies to subordinate unit names unless
+-- the subordinate specifies another language.
+UniversalOrganizationalUnitName ::=
+ UniversalOrBMPString --{ub-organizational-unit-name-length}
+
+UniversalOrBMPString --{INTEGER:ub-string-length}-- ::= SET {
+ character-encoding
+ CHOICE {two-octets BMPString --(SIZE (1..ub-string-length))--,
+ four-octets UniversalString --(SIZE (1..ub-string-length))-- },
+ iso-639-language-code PrintableString --(SIZE (2 | 5))-- OPTIONAL
+}
+
+--pds-name EXTENSION-ATTRIBUTE ::= {PDSName
+-- IDENTIFIED BY 7
+--}
+
+PDSName ::= PrintableString --(SIZE (1..ub-pds-name-length))
+
+--physical-delivery-country-name EXTENSION-ATTRIBUTE ::= {
+-- PhysicalDeliveryCountryName
+-- IDENTIFIED BY 8
+--}
+
+PhysicalDeliveryCountryName ::= CHOICE {
+ x121-dcc-code NumericString --(SIZE (ub-country-name-numeric-length)) --,
+ iso-3166-alpha2-code PrintableString --(SIZE (ub-country-name-alpha-length))
+}
+
+--postal-code EXTENSION-ATTRIBUTE ::= {PostalCode
+-- IDENTIFIED BY 9
+--}
+
+PostalCode ::= CHOICE {
+ numeric-code NumericString --(SIZE (1..ub-postal-code-length))--,
+ printable-code PrintableString --(SIZE (1..ub-postal-code-length))
+}
+
+--physical-delivery-office-name EXTENSION-ATTRIBUTE ::= {
+-- PhysicalDeliveryOfficeName
+-- IDENTIFIED BY 10
+--}
+
+PhysicalDeliveryOfficeName ::= PDSParameter
+
+--universal-physical-delivery-office-name EXTENSION-ATTRIBUTE ::= {
+-- UniversalPhysicalDeliveryOfficeName
+-- IDENTIFIED BY 29
+--}
+
+UniversalPhysicalDeliveryOfficeName ::= UniversalPDSParameter
+
+--physical-delivery-office-number EXTENSION-ATTRIBUTE ::= {
+-- PhysicalDeliveryOfficeNumber
+-- IDENTIFIED BY 11
+--}
+
+PhysicalDeliveryOfficeNumber ::= PDSParameter
+
+--universal-physical-delivery-office-number EXTENSION-ATTRIBUTE ::= {
+-- UniversalPhysicalDeliveryOfficeNumber
+-- IDENTIFIED BY 30
+--}
+
+UniversalPhysicalDeliveryOfficeNumber ::= UniversalPDSParameter
+
+--extension-OR-address-components EXTENSION-ATTRIBUTE ::= {
+-- ExtensionORAddressComponents
+-- IDENTIFIED BY 12
+--}
+
+ExtensionORAddressComponents ::= PDSParameter
+
+--universal-extension-OR-address-components EXTENSION-ATTRIBUTE ::= {
+-- UniversalExtensionORAddressComponents
+-- IDENTIFIED BY 31
+--}
+
+UniversalExtensionORAddressComponents ::= UniversalPDSParameter
+
+--physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= {
+-- PhysicalDeliveryPersonalName
+-- IDENTIFIED BY 13
+--}
+
+PhysicalDeliveryPersonalName ::= PDSParameter
+
+--universal-physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= {
+-- UniversalPhysicalDeliveryPersonalName
+-- IDENTIFIED BY 32
+--}
+
+UniversalPhysicalDeliveryPersonalName ::= UniversalPDSParameter
+
+--physical-delivery-organization-name EXTENSION-ATTRIBUTE ::= {
+-- PhysicalDeliveryOrganizationName
+-- IDENTIFIED BY 14
+--}
+
+PhysicalDeliveryOrganizationName ::= PDSParameter
+
+--universal-physical-delivery-organization-name EXTENSION-ATTRIBUTE ::=
+--{UniversalPhysicalDeliveryOrganizationName
+-- IDENTIFIED BY 33
+--}
+
+UniversalPhysicalDeliveryOrganizationName ::= UniversalPDSParameter
+
+--extension-physical-delivery-address-components EXTENSION-ATTRIBUTE ::=
+--{ExtensionPhysicalDeliveryAddressComponents
+-- IDENTIFIED BY 15
+--}
+
+ExtensionPhysicalDeliveryAddressComponents ::= PDSParameter
+
+--universal-extension-physical-delivery-address-components EXTENSION-ATTRIBUTE
+-- ::= {UniversalExtensionPhysicalDeliveryAddressComponents
+-- IDENTIFIED BY 34
+--}
+
+UniversalExtensionPhysicalDeliveryAddressComponents ::= UniversalPDSParameter
+
+--unformatted-postal-address EXTENSION-ATTRIBUTE ::= {
+-- UnformattedPostalAddress
+-- IDENTIFIED BY 16
+--}
+
+UnformattedPostalAddress ::= SET {
+ printable-address
+ SEQUENCE --SIZE (1..ub-pds-physical-address-lines)-- OF
+ PrintableString --(SIZE (1..ub-pds-parameter-length))-- OPTIONAL,
+ teletex-string
+ TeletexString --(SIZE (1..ub-unformatted-address-length))-- OPTIONAL
+}
+
+--universal-unformatted-postal-address EXTENSION-ATTRIBUTE ::= {
+-- UniversalUnformattedPostalAddress
+-- IDENTIFIED BY 35
+--}
+
+UniversalUnformattedPostalAddress ::=
+ UniversalOrBMPString --{ub-unformatted-address-length}
+
+--street-address EXTENSION-ATTRIBUTE ::= {StreetAddress
+-- IDENTIFIED BY 17
+--}
+
+StreetAddress ::= PDSParameter
+
+--universal-street-address EXTENSION-ATTRIBUTE ::= {
+-- UniversalStreetAddress
+-- IDENTIFIED BY 36
+--}
+
+UniversalStreetAddress ::= UniversalPDSParameter
+
+--post-office-box-address EXTENSION-ATTRIBUTE ::= {
+-- PostOfficeBoxAddress
+-- IDENTIFIED BY 18
+--}
+
+PostOfficeBoxAddress ::= PDSParameter
+
+--universal-post-office-box-address EXTENSION-ATTRIBUTE ::= {
+-- UniversalPostOfficeBoxAddress
+-- IDENTIFIED BY 37
+--}
+
+UniversalPostOfficeBoxAddress ::= UniversalPDSParameter
+
+--poste-restante-address EXTENSION-ATTRIBUTE ::= {
+-- PosteRestanteAddress
+-- IDENTIFIED BY 19
+--}
+
+PosteRestanteAddress ::= PDSParameter
+
+--universal-poste-restante-address EXTENSION-ATTRIBUTE ::= {
+-- UniversalPosteRestanteAddress
+-- IDENTIFIED BY 38
+--}
+
+UniversalPosteRestanteAddress ::= UniversalPDSParameter
+
+--unique-postal-name EXTENSION-ATTRIBUTE ::= {UniquePostalName
+-- IDENTIFIED BY 20
+--}
+
+UniquePostalName ::= PDSParameter
+
+--universal-unique-postal-name EXTENSION-ATTRIBUTE ::= {
+-- UniversalUniquePostalName
+-- IDENTIFIED BY 39
+--}
+
+UniversalUniquePostalName ::= UniversalPDSParameter
+
+--local-postal-attributes EXTENSION-ATTRIBUTE ::= {
+-- LocalPostalAttributes
+-- IDENTIFIED BY 21
+--}
+
+LocalPostalAttributes ::= PDSParameter
+
+--universal-local-postal-attributes EXTENSION-ATTRIBUTE ::= {
+-- UniversalLocalPostalAttributes
+-- IDENTIFIED BY 40
+--}
+
+UniversalLocalPostalAttributes ::= UniversalPDSParameter
+
+PDSParameter ::= SET {
+ printable-string PrintableString --(SIZE (1..ub-pds-parameter-length))-- OPTIONAL,
+ teletex-string TeletexString --(SIZE (1..ub-pds-parameter-length))-- OPTIONAL
+}
+
+UniversalPDSParameter ::= UniversalOrBMPString --{ub-pds-parameter-length}
+
+--extended-network-address EXTENSION-ATTRIBUTE ::= {
+-- ExtendedNetworkAddress
+-- IDENTIFIED BY 22
+--}
+
+ExtendedNetworkAddress ::= CHOICE {
+ e163-4-address
+ SEQUENCE {number
+ [0] NumericString --(SIZE (1..ub-e163-4-number-length))--,
+ sub-address
+ [1] NumericString --(SIZE (1..ub-e163-4-sub-address-length))--
+ OPTIONAL},
+ psap-address [0] PresentationAddress
+}
+
+--terminal-type EXTENSION-ATTRIBUTE ::= {TerminalType
+-- IDENTIFIED BY 23
+--}
+
+TerminalType ::= INTEGER {
+ telex(3), teletex(4), g3-facsimile(5), g4-facsimile(6), ia5-terminal(7),
+ videotex(8)} --(0..ub-integer-options)
+
+-- Extension Domain-defined Attributes
+--teletex-domain-defined-attributes EXTENSION-ATTRIBUTE ::= {
+-- TeletexDomainDefinedAttributes
+-- IDENTIFIED BY 6
+--}
+
+TeletexDomainDefinedAttributes ::=
+ SEQUENCE --SIZE (1..ub-domain-defined-attributes)-- OF
+ TeletexDomainDefinedAttribute
+
+TeletexDomainDefinedAttribute ::= SEQUENCE {
+ type TeletexString --(SIZE (1..ub-domain-defined-attribute-type-length))--,
+ value TeletexString --(SIZE (1..ub-domain-defined-attribute-value-length))
+
+}
+
+--universal-domain-defined-attributes EXTENSION-ATTRIBUTE ::= {
+-- UniversalDomainDefinedAttributes
+-- IDENTIFIED BY 28
+--}
+
+UniversalDomainDefinedAttributes ::=
+ SEQUENCE --SIZE (1..ub-domain-defined-attributes)-- OF
+ UniversalDomainDefinedAttribute
+
+UniversalDomainDefinedAttribute ::= SEQUENCE {
+ type UniversalOrBMPString --{ub-domain-defined-attribute-type-length}--,
+ value UniversalOrBMPString --{ub-domain-defined-attribute-value-length}
+}
+
+-- Encoded Information Types
+EncodedInformationTypes ::= [APPLICATION 5] SET {
+ built-in-encoded-information-types [0] BuiltInEncodedInformationTypes,
+ -- non-basic-parameters - -COMPONENTS OF NonBasicParameters,
+ g3-facsimile [1] G3FacsimileNonBasicParameters DEFAULT {},
+ teletex [2] TeletexNonBasicParameters DEFAULT {},
+ extended-encoded-information-types
+ [4] ExtendedEncodedInformationTypes OPTIONAL
+}
+
+-- Built-in Encoded Information Types
+BuiltInEncodedInformationTypes ::= BIT STRING {
+ unknown(0), ia5-text(2), g3-facsimile(3), g4-class-1(4), teletex(5),
+ videotex(6), voice(7), sfd(8), mixed-mode(9)
+} --(SIZE (0..ub-built-in-encoded-information-types))
+
+-- Extended Encoded Information Types
+ExtendedEncodedInformationTypes ::=
+ SET --SIZE (1..ub-encoded-information-types)-- OF ExtendedEncodedInformationType
+
+ExtendedEncodedInformationType ::= OBJECT IDENTIFIER
+
+-- Non-basic Parameters
+NonBasicParameters ::= SET {
+ g3-facsimile [1] G3FacsimileNonBasicParameters DEFAULT {},
+ teletex [2] TeletexNonBasicParameters DEFAULT {}
+}
+
+G3FacsimileNonBasicParameters ::= BIT STRING {
+ two-dimensional(8), -- As defined in ITU-T Recommendation T.30
+ fine-resolution(9), --
+ unlimited-length(20), -- These bit values are chosen such that when
+ b4-length(21), -- encoded using ASN.1 Basic Encoding Rules
+ a3-width(22), -- the resulting octets have the same values
+ b4-width(23), -- as for T.30 encoding
+ t6-coding(25), --
+ uncompressed(30), -- Trailing zero bits are not significant.
+ width-middle-864-of-1728(37), -- It is recommended that implementations
+ width-middle-1216-of-1728(38), -- should not encode more than 32 bits unless
+ resolution-type(44), -- higher numbered bits are non-zero.
+ resolution-400x400(45), resolution-300x300(46), resolution-8x15(47),
+ edi(49), dtm(50), bft(51), mixed-mode(58), character-mode(60),
+ twelve-bits(65), preferred-huffmann(66), full-colour(67), jpeg(68),
+ processable-mode-26(71)}
+
+TeletexNonBasicParameters ::= SET {
+ graphic-character-sets [0] TeletexString OPTIONAL,
+ control-character-sets [1] TeletexString OPTIONAL,
+ page-formats [2] OCTET STRING OPTIONAL,
+ miscellaneous-terminal-capabilities [3] TeletexString OPTIONAL,
+ private-use
+ [4] OCTET STRING
+ OPTIONAL -- maximum ub-teletex-private-use-length octets --
+}
+
+-- as defined in CCITT Recommendation T.62
+-- Token
+Token ::= SEQUENCE {
+ token-type-identifier [0] -- TOKEN.&id({TokensTable})-- TokenTypeIdentifier,
+ token
+ [1] --TOKEN.&Type({TokensTable}{@token-type-identifier})-- TokenTypeData
+}
+
+--TOKEN ::= TYPE-IDENTIFIER
+TokenTypeIdentifier ::= OBJECT IDENTIFIER
+TokenTypeData ::= ANY
+
+--TokensTable TOKEN ::= {asymmetric-token, ...}
+
+--asymmetric-token TOKEN ::= {
+-- AsymmetricToken
+-- IDENTIFIED BY id-tok-asymmetricToken
+--}
+
+AsymmetricTokenData ::=
+-- SIGNED
+-- {--SEQUENCE {signature-algorithm-identifier AlgorithmIdentifier,
+ name
+ CHOICE {recipient-name MTSRecipientName,
+ mta [3] MTANameAndOptionalGDI },
+ time Time,
+ signed-data [0] TokenData OPTIONAL,
+ encryption-algorithm-identifier
+ [1] AlgorithmIdentifier OPTIONAL,
+ encrypted-data
+ [2] -- ENCRYPTED{TokenData}-- BIT STRING OPTIONAL} --}
+
+MTANameAndOptionalGDI ::= SEQUENCE {
+ global-domain-identifier GlobalDomainIdentifier OPTIONAL,
+ mta-name MTAName
+}
+
+AsymmetricToken ::= SEQUENCE {
+ asymmetric-token-data AsymmetricTokenData,
+ algorithm-identifier AlgorithmIdentifier,
+ encrypted BIT STRING
+}
+
+TokenData ::= SEQUENCE {
+ type [0] TokenDataType -- TOKEN-DATA.&id({TokenDataTable}) --,
+ value [1] ANY -- TOKEN-DATA.&Type({TokenDataTable}{@type})
+}
+
+TokenDataType ::= INTEGER {
+ bind-token-signed-data (1),
+ message-token-signed-data (2),
+ message-token-encrypted-data (3),
+ bind-token-encrypted-data (4)
+}
+
+--TOKEN-DATA ::= CLASS {&id INTEGER UNIQUE,
+-- &Type
+--}WITH SYNTAX {&Type
+-- IDENTIFIED BY &id
+--}
+
+--TokenDataTable TOKEN-DATA ::=
+-- {bind-token-signed-data | message-token-signed-data |
+-- message-token-encrypted-data | bind-token-encrypted-data, ...}
+
+--bind-token-signed-data TOKEN-DATA ::= {BindTokenSignedData
+-- IDENTIFIED BY 1
+--}
+
+-- This is the only Token Data we know
+--TokenData ::= BindTokenSignedData
+
+BindTokenSignedData ::= RandomNumber
+
+RandomNumber ::= BIT STRING
+
+--message-token-signed-data TOKEN-DATA ::= {
+-- MessageTokenSignedData
+-- IDENTIFIED BY 2
+--}
+
+MessageTokenSignedData ::= SEQUENCE {
+ content-confidentiality-algorithm-identifier
+ [0] ContentConfidentialityAlgorithmIdentifier OPTIONAL,
+ content-integrity-check
+ [1] ContentIntegrityCheck OPTIONAL,
+ message-security-label
+ [2] MessageSecurityLabel OPTIONAL,
+ proof-of-delivery-request
+ [3] ProofOfDeliveryRequest OPTIONAL,
+ message-sequence-number [4] INTEGER OPTIONAL
+}
+
+--message-token-encrypted-data TOKEN-DATA ::= {
+-- MessageTokenEncryptedData
+-- IDENTIFIED BY 3
+--}
+
+MessageTokenEncryptedData ::= SEQUENCE {
+ content-confidentiality-key [0] EncryptionKey OPTIONAL,
+ content-integrity-check [1] ContentIntegrityCheck OPTIONAL,
+ message-security-label [2] MessageSecurityLabel OPTIONAL,
+ content-integrity-key [3] EncryptionKey OPTIONAL,
+ message-sequence-number [4] INTEGER OPTIONAL
+}
+
+EncryptionKey ::= BIT STRING
+
+--bind-token-encrypted-data TOKEN-DATA ::= {
+-- BindTokenEncryptedData
+-- IDENTIFIED BY 4
+--}
+
+BindTokenEncryptedData ::= EXTERNAL
+
+-- Security Label
+SecurityLabel ::= SET {
+ security-policy-identifier SecurityPolicyIdentifier OPTIONAL,
+ security-classification SecurityClassification OPTIONAL,
+ privacy-mark PrivacyMark OPTIONAL,
+ security-categories SecurityCategories OPTIONAL
+}
+
+SecurityPolicyIdentifier ::= OBJECT IDENTIFIER
+
+SecurityClassification ::= INTEGER {
+ unmarked(0), unclassified(1), restricted(2), confidential(3), secret(4),
+ top-secret(5)}(0..ub-integer-options)
+
+PrivacyMark ::= PrintableString(SIZE (1..ub-privacy-mark-length))
+
+SecurityCategories ::= SET SIZE (1..ub-security-categories) OF SecurityCategory
+
+SecurityCategory ::= SEQUENCE {
+ type [0] OBJECT IDENTIFIER --SECURITY-CATEGORY.&id({SecurityCategoriesTable})--,
+ value [1] ANY -- SECURITY-CATEGORY.&Type({SecurityCategoriesTable}{@type})
+}
+
+--SECURITY-CATEGORY ::= TYPE-IDENTIFIER
+
+--SecurityCategoriesTable SECURITY-CATEGORY ::=
+-- {...}
+
+END -- of MTSAbstractService
+
+-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
+
diff --git a/asn1/x411/Makefile.common b/asn1/x411/Makefile.common
index 3f49830a0c..6cd296647f 100644
--- a/asn1/x411/Makefile.common
+++ b/asn1/x411/Makefile.common
@@ -31,7 +31,8 @@ EXPORT_FILES = $(PROTOCOL_NAME)-exp.cnf
EXT_ASN_FILE_LIST =
-ASN_FILE_LIST = MTAAbstractService.asn
+ASN_FILE_LIST = MTAAbstractService.asn \
+ MTSAbstractService.asn
# The packet-$(PROTOCOL_NAME)-template.h and $(PROTOCOL_NAME).asn
# files do not exist for all protocols: Please add/remove as required.