diff options
author | Graeme Lunt <graeme.lunt@smhs.co.uk> | 2009-06-02 11:04:14 +0000 |
---|---|---|
committer | Graeme Lunt <graeme.lunt@smhs.co.uk> | 2009-06-02 11:04:14 +0000 |
commit | 57d4cea4d5dbf47c38a7b31893cbd7aa93c4fd96 (patch) | |
tree | b2fdd83a80040f403b9df0afb7ecc2fff7eb5a9d | |
parent | 077d995cc16360952efe9ae4807125dff0182f69 (diff) | |
download | wireshark-57d4cea4d5dbf47c38a7b31893cbd7aa93c4fd96.tar.gz |
Update to:
* support the P3 protocol in addition to the P1 protocol; and
* reduce the number of changes to the ASN.1 modules (as asn2wrs now handles more of the ASN.1 constructs).
P3 is currently only supported over ROS (and not RTSE)
svn path=/trunk/; revision=28593
-rw-r--r-- | asn1/p7/MSAbstractService.asn | 4 | ||||
-rw-r--r-- | asn1/p7/p7.cnf | 4 | ||||
-rw-r--r-- | asn1/x411/MHSProtocolObjectIdentifiers.asn | 113 | ||||
-rw-r--r-- | asn1/x411/MTAAbstractService.asn | 403 | ||||
-rw-r--r-- | asn1/x411/MTSAbstractService.asn | 1982 | ||||
-rw-r--r-- | asn1/x411/MTSAccessProtocol.asn | 322 | ||||
-rw-r--r-- | asn1/x411/Makefile.common | 2 | ||||
-rw-r--r-- | asn1/x411/packet-x411-template.c | 42 | ||||
-rw-r--r-- | asn1/x411/x411.cnf | 166 | ||||
-rw-r--r-- | epan/dissectors/packet-p7.c | 8 | ||||
-rw-r--r-- | epan/dissectors/packet-p7.h | 2 | ||||
-rw-r--r-- | epan/dissectors/packet-x411.c | 2431 | ||||
-rw-r--r-- | epan/dissectors/packet-x411.h | 4 |
13 files changed, 3759 insertions, 1724 deletions
diff --git a/asn1/p7/MSAbstractService.asn b/asn1/p7/MSAbstractService.asn index 7a78d1ee3e..07b0293c1f 100644 --- a/asn1/p7/MSAbstractService.asn +++ b/asn1/p7/MSAbstractService.asn @@ -27,7 +27,7 @@ IMPORTS ORAddressAndOrDirectoryName, ProbeSubmissionArgument, ProbeSubmissionResult, ResponderCredentials, SecurityContext, SecurityLabel, -- WS added imports because of expansion of COMPONENTS OF - MessageSubmissionIdentifier, ExtensionField, MTSOriginatorName, + MessageSubmissionIdentifier, ExtensionField, OriginatorName, OriginalEncodedInformationTypes, ContentType, ProbeSubmissionIdentifier, ProbeSubmissionTime FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0) @@ -897,7 +897,7 @@ MSProbeSubmissionArgument ::= SET { -- COMPONENTS OF -- ProbeSubmissionArgument - This imported type has IMPLICIT tags -, -- WS Expanded - originator-name MTSOriginatorName, + originator-name OriginatorName, original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL, content-type ContentType, content-identifier ContentIdentifier OPTIONAL, diff --git a/asn1/p7/p7.cnf b/asn1/p7/p7.cnf index bc80d074c5..d5a09d438d 100644 --- a/asn1/p7/p7.cnf +++ b/asn1/p7/p7.cnf @@ -6,10 +6,6 @@ #.IMPORT ../ros/ros-exp.cnf #.IMPORT ../rtse/rtse-exp.cnf -#.MODULE_IMPORT -MTSAbstractService x411 -Reliable-Transfer-APDU rtse - #.EXPORTS SequenceNumber SignatureStatus diff --git a/asn1/x411/MHSProtocolObjectIdentifiers.asn b/asn1/x411/MHSProtocolObjectIdentifiers.asn new file mode 100644 index 0000000000..778ff845aa --- /dev/null +++ b/asn1/x411/MHSProtocolObjectIdentifiers.asn @@ -0,0 +1,113 @@ +-- $Id:$ +-- http://www.itu.int/ITU-T/asn1/database/itu-t/x/x419/1999/index.html +-- Module MHSProtocolObjectIdentifiers (X.419:06/1999) +MHSProtocolObjectIdentifiers {joint-iso-itu-t mhs(6) protocols(0) modules(0) + object-identifiers(0) version-1994(0)} DEFINITIONS IMPLICIT TAGS ::= +BEGIN + +-- Prologue +-- Exports Everything +IMPORTS -- nothing -- ; + +ID ::= OBJECT IDENTIFIER + +-- MHS Protocols +id-mhs-protocols ID ::= + {joint-iso-itu-t mhs(6) protocols(0)} -- not definitive + +-- Categories of Object Identifiers +id-mod ID ::= + {id-mhs-protocols 0} -- modules + +id-ac ID ::= {id-mhs-protocols 1} -- application contexts + +id-as ID ::= {id-mhs-protocols 2} -- abstract syntaxes + +id-ase ID ::= {id-mhs-protocols 3} -- application service elements (obsolete) + +-- Modules +id-mod-object-identifiers ID ::= {id-mod 0} -- not definitive + +id-mod-mts-access-protocol ID ::= {id-mod 1} -- not definitive + +id-mod-ms-access-protocol ID ::= {id-mod 2} -- not definitive + +id-mod-mts-transfer-protocol ID ::= {id-mod 3} -- not definitive + +-- Application Contexts +-- MTS Access Protocol +id-ac-mts-access-88 ID ::= + {id-ac 0} + +id-ac-mts-forced-access-88 ID ::= {id-ac 1} + +id-ac-mts-reliable-access-88 ID ::= {id-ac 2} + +id-ac-mts-forced-reliable-access-88 ID ::= {id-ac 3} + +id-ac-mts-access-94 ID ::= {id-ac 7} + +id-ac-mts-forced-access-94 ID ::= {id-ac 8} + +id-ac-mts-reliable-access-94 ID ::= {id-ac 9} + +id-ac-mts-forced-reliable-access-94 ID ::= {id-ac 10} + +-- MS Access Protocol +id-ac-ms-access-88 ID ::= {id-ac 4} + +id-ac-ms-reliable-access-88 ID ::= {id-ac 5} + +id-ac-ms-access-94 ID ::= {id-ac 11} + +id-ac-ms-reliable-access-94 ID ::= {id-ac 12} + +-- MTS Transfer Protocol +id-ac-mts-transfer ID ::= {id-ac 6} + +-- Abstract Syntaxes +id-as-msse ID ::= {id-as 1} + +id-as-mdse-88 ID ::= {id-as 2} + +id-as-mrse-88 ID ::= {id-as 5} + +id-as-mase-88 ID ::= {id-as 6} + +id-as-mtse ID ::= {id-as 7} + +id-as-mts-rtse ID ::= {id-as 8} + +id-as-ms-88 ID ::= {id-as 9} + +id-as-ms-rtse ID ::= {id-as 10} + +id-as-mts ID ::= {id-as 11} + +id-as-mta-rtse ID ::= {id-as 12} + +id-as-ms-msse ID ::= {id-as 13} + +id-as-mdse-94 ID ::= {id-as 14} + +id-as-mrse-94 ID ::= {id-as 15} + +id-as-mase-94 ID ::= {id-as 16} + +id-as-ms-94 ID ::= {id-as 17} + +-- Application Service Elements +id-ase-msse ID ::= {id-ase 0} + +id-ase-mdse ID ::= {id-ase 1} + +id-ase-mrse ID ::= {id-ase 2} + +id-ase-mase ID ::= {id-ase 3} + +id-ase-mtse ID ::= {id-ase 4} + +END --of MHSProtocolObjectIdentifiers + +-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D + diff --git a/asn1/x411/MTAAbstractService.asn b/asn1/x411/MTAAbstractService.asn index 5c5802d5f2..ad28ceafdc 100644 --- a/asn1/x411/MTAAbstractService.asn +++ b/asn1/x411/MTAAbstractService.asn @@ -8,110 +8,94 @@ BEGIN -- Exports everything IMPORTS -- Remote Operations --- CONNECTION-PACKAGE, CONTRACT + CONNECTION-PACKAGE, CONTRACT --== --- FROM Remote-Operations-Information-Objects {joint-iso-itu-t --- remote-operations(4) informationObjects(5) version1(0)} + 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)} -- MTS Abstract Service Parameters --- ABSTRACT-ERROR, ABSTRACT-OPERATION, administration, --- AdministrationDomainName, --- certificate-selectors, certificate-selectors-override, Content, --- ContentIdentifier, ContentLength, ContentType, --- content-confidentiality-algorithm-identifier, content-correlator, --- content-integrity-check, conversion-with-loss-prohibited, --- ConvertedEncodedInformationTypes, CountryName, DeferredDeliveryTime, --- delivery, dl-exempted-recipients, dl-expansion-history, --- dl-expansion-prohibited, ExplicitConversion, EXTENSION, ExtensionField{}, --- GlobalDomainIdentifier, InitiatorCredentials, latest-delivery-time, --- message-origin-authentication-check, message-security-label, message-token, --- MHS-OBJECT, MTAName, MTSIdentifier, multiple-originator-certificates, --- ORAddressAndOptionalDirectoryName, OriginalEncodedInformationTypes, --- originator-and-DL-expansion-history, originator-certificate, --- originator-return-address, PerMessageIndicators, physical-delivery-modes, --- physical-delivery-report-request, physical-forwarding-address, --- physical-forwarding-address-request, physical-forwarding-prohibited, --- physical-rendition-attributes, PORT, Priority, PrivateDomainIdentifier, --- PrivateExtensions, probe-origin-authentication-check, proof-of-delivery, --- proof-of-delivery-request, recipient-certificate, --- recipient-number-for-advice, recipient-reassignment-prohibited, --- redirection-history, registered-mail-type, reporting-DL-name, --- reporting-MTA-certificate, reporting-MTA-name, ReportType, --- report-origin-authentication-check, requested-delivery-method, --- ResponderCredentials, SecurityContext, submission, --- SupplementaryInformation, Time + ABSTRACT-ERROR, ABSTRACT-OPERATION, administration, AdministrationDomainName, + certificate-selectors, certificate-selectors-override, Content, + ContentIdentifier, ContentLength, ContentType, + content-confidentiality-algorithm-identifier, content-correlator, + content-integrity-check, conversion-with-loss-prohibited, + ConvertedEncodedInformationTypes, CountryName, DeferredDeliveryTime, + delivery, dl-exempted-recipients, dl-expansion-history, + dl-expansion-prohibited, ExplicitConversion, EXTENSION, ExtensionField{}, + GlobalDomainIdentifier, InitiatorCredentials, latest-delivery-time, + message-origin-authentication-check, message-security-label, message-token, + MHS-OBJECT, MTAName, MTSIdentifier, multiple-originator-certificates, + ORAddressAndOptionalDirectoryName, OriginalEncodedInformationTypes, + originator-and-DL-expansion-history, originator-certificate, + originator-return-address, PerMessageIndicators, physical-delivery-modes, + physical-delivery-report-request, physical-forwarding-address, + physical-forwarding-address-request, physical-forwarding-prohibited, + physical-rendition-attributes, PORT, Priority, PrivateDomainIdentifier, + PrivateExtensions, probe-origin-authentication-check, proof-of-delivery, + proof-of-delivery-request, recipient-certificate, + recipient-number-for-advice, recipient-reassignment-prohibited, + redirection-history, registered-mail-type, reporting-DL-name, + reporting-MTA-certificate, reporting-MTA-name, ReportType, + report-origin-authentication-check, requested-delivery-method, + ResponderCredentials, SecurityContext, submission, + SupplementaryInformation, Time, OriginallyIntendedRecipientName --== --- FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0) --- mts-abstract-service(1) version-1999(1)} + FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0) + mts-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-cp-mta-connect, id-ct-mta-transfer, id-ot-mta, id-pt-transfer + id-cp-mta-connect, id-ct-mta-transfer, id-ot-mta, id-pt-transfer --== --- FROM MTSObjectIdentifiers {joint-iso-itu-t mhs(6) mts(3) modules(0) --- object-identifiers(0) version-1999(1)} + FROM MTSObjectIdentifiers {joint-iso-itu-t mhs(6) mts(3) modules(0) + object-identifiers(0) version-1999(1)} -- Upper Bounds ub-bit-options, ub-integer-options, ub-recipients, ub-transfers --== FROM MTSUpperBounds {joint-iso-itu-t mhs(6) mts(3) modules(0) - upper-bounds(3) version-1999(1)} - 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} - CertificateAssertion - --== - FROM CertificateExtensions {joint-iso-itu-t ds(5) module(1) - certificateExtensions(26) 0} - Certificates, AlgorithmIdentifier - --== - FROM AuthenticationFramework {joint-iso-itu-t ds(5) module(1) - authenticationFramework(7) 3}; - + upper-bounds(3) version-1999(1)}; -- Objects ---mta MHS-OBJECT ::= {BOTH {mta-transfer} --- ID id-ot-mta ---} +mta MHS-OBJECT ::= {BOTH {mta-transfer} + ID id-ot-mta +} -- Contracts ---mta-transfer CONTRACT ::= { --- CONNECTION mta-connect --- OPERATIONS OF {transfer} --- ID id-ct-mta-transfer ---} +mta-transfer CONTRACT ::= { + CONNECTION mta-connect + OPERATIONS OF {transfer} + ID id-ct-mta-transfer +} -- Connection package ---mta-connect CONNECTION-PACKAGE ::= { --- BIND mta-bind --- UNBIND mta-unbind --- ID id-cp-mta-connect ---} +mta-connect CONNECTION-PACKAGE ::= { + BIND mta-bind + UNBIND mta-unbind + ID id-cp-mta-connect +} -- Ports ---transfer PORT ::= { --- OPERATIONS {message-transfer | probe-transfer | report-transfer} --- ID id-pt-transfer ---} +PORT ::= OPERATION-PACKAGE + +transfer PORT ::= { + OPERATIONS {message-transfer | probe-transfer | report-transfer} + ID id-pt-transfer +} -- MTA-bind and MTA-unbind ---mta-bind ABSTRACT-OPERATION ::= { --- ARGUMENT MTABindArgument --- RESULT MTABindResult --- ERRORS {mta-bind-error} ---} +mta-bind ABSTRACT-OPERATION ::= { + ARGUMENT MTABindArgument + RESULT MTABindResult + ERRORS {mta-bind-error} +} --- mta-unbind ABSTRACT-OPERATION ::= emptyUnbind +mta-unbind ABSTRACT-OPERATION ::= emptyUnbind MTABindArgument ::= CHOICE { unauthenticated NULL, -- if no authentication is required @@ -136,13 +120,13 @@ MTABindResult ::= CHOICE { [0] MTAName, responder-credentials [1] ResponderCredentials --- (WITH COMPONENTS { --- ..., --- protected ABSENT --- })--} + (WITH COMPONENTS { + ..., + protected ABSENT + })} } - ---mta-bind-error ABSTRACT-ERROR -- MTABindError ::= -- { +MTABindError ::= +--mta-bind-error ABSTRACT-ERROR ::= { -- PARAMETER INTEGER {busy(0), authentication-error(2), unacceptable-dialogue-mode(3), unacceptable-security-context(4), @@ -150,20 +134,20 @@ MTABindResult ::= CHOICE { --} -- Transfer Port ---message-transfer ABSTRACT-OPERATION ::= {ARGUMENT Message ---} +message-transfer ABSTRACT-OPERATION ::= {ARGUMENT Message +} ---probe-transfer ABSTRACT-OPERATION ::= {ARGUMENT Probe ---} +probe-transfer ABSTRACT-OPERATION ::= {ARGUMENT Probe +} ---report-transfer ABSTRACT-OPERATION ::= {ARGUMENT Report ---} +report-transfer ABSTRACT-OPERATION ::= {ARGUMENT Report +} --- taken from X.419 +-- MTS Application Protocol Data Units MTS-APDU ::= CHOICE { -message [0] Message, -report [1] Report, -probe [2] Probe + message [0] Message, + probe [2] Probe, + report [1] Report } Message ::= SEQUENCE {envelope MessageTransferEnvelope, @@ -179,46 +163,39 @@ Report ::= SEQUENCE { -- Message Transfer Envelope MessageTransferEnvelope ::= SET { --- COMPONENTS OF PerMessageTransferFields, --- per-recipient-fields --- [2] SEQUENCE SIZE (1..ub-recipients) OF PerRecipientMessageTransferFields ---} + COMPONENTS OF PerMessageTransferFields, + per-recipient-fields + [2] SEQUENCE SIZE (1..ub-recipients) OF PerRecipientMessageTransferFields +} ---PerMessageTransferFields ::= SET { +PerMessageTransferFields ::= SET { message-identifier MessageIdentifier, originator-name MTAOriginatorName, original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL, content-type ContentType, --- asn2wrs seems to have a problem with untagged choices - so we will expand 'in situ' for now --- it's not the greatest solution - but should be OK --- built-in-content-type BuiltInContentType OPTIONAL, --- extended-content-type ExtendedContentType OPTIONAL, --- end of workaround content-identifier ContentIdentifier OPTIONAL, priority Priority DEFAULT normal, per-message-indicators PerMessageIndicators DEFAULT {}, deferred-delivery-time [0] DeferredDeliveryTime OPTIONAL, per-domain-bilateral-information - [1] SEQUENCE -- SIZE (1..ub-transfers) -- OF PerDomainBilateralInformation + [1] SEQUENCE SIZE (1..ub-transfers) OF PerDomainBilateralInformation OPTIONAL, trace-information TraceInformation, extensions - [3] SET OF ExtensionField --{{MessageTransferExtensions}}-- DEFAULT {} - ,per-recipient-fields - [2] SEQUENCE --SIZE (1..ub-recipients) -- OF PerRecipientMessageTransferFields + [3] SET OF ExtensionField{{MessageTransferExtensions}} DEFAULT {} } ---MessageTransferExtensions EXTENSION ::= - --{- - May contain the following extensions, private extensions, and future standardised extensions, +MessageTransferExtensions 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 | --- content-correlator | dl-exempted-recipients | certificate-selectors | --- multiple-originator-certificates | dl-expansion-history | --- internal-trace-information | PrivateExtensions, ...} + 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 | + content-correlator | dl-exempted-recipients | certificate-selectors | + multiple-originator-certificates | dl-expansion-history | + internal-trace-information | PrivateExtensions, ...} PerRecipientMessageTransferFields ::= SET { recipient-name MTARecipientName, @@ -227,29 +204,29 @@ PerRecipientMessageTransferFields ::= SET { per-recipient-indicators [1] PerRecipientIndicators, explicit-conversion [2] ExplicitConversion OPTIONAL, extensions - [3] SET OF ExtensionField --{{PerRecipientMessageTransferExtensions}} + [3] SET OF ExtensionField{{PerRecipientMessageTransferExtensions}} DEFAULT {} } ---PerRecipientMessageTransferExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +PerRecipientMessageTransferExtensions 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 | redirection-history --- | IPMPerRecipientEnvelopeExtensions | PrivateExtensions, ...} + 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 | redirection-history + | IPMPerRecipientEnvelopeExtensions | PrivateExtensions, ...} -- Probe Transfer Envelope ProbeTransferEnvelope ::= SET { --- COMPONENTS OF PerProbeTransferFields, --- per-recipient-fields --- [2] SEQUENCE SIZE (1..ub-recipients) OF PerRecipientProbeTransferFields ---} + COMPONENTS OF PerProbeTransferFields, + per-recipient-fields + [2] SEQUENCE SIZE (1..ub-recipients) OF PerRecipientProbeTransferFields +} ---PerProbeTransferFields ::= SET { +PerProbeTransferFields ::= SET { probe-identifier ProbeIdentifier, originator-name MTAOriginatorName, original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL, @@ -258,23 +235,21 @@ ProbeTransferEnvelope ::= SET { content-length [0] ContentLength OPTIONAL, per-message-indicators PerMessageIndicators DEFAULT {}, per-domain-bilateral-information - [1] SEQUENCE -- SIZE (1..ub-transfers) -- OF PerDomainBilateralInformation + [1] SEQUENCE SIZE (1..ub-transfers) OF PerDomainBilateralInformation OPTIONAL, trace-information TraceInformation, extensions - [3] SET OF ExtensionField --{{ProbeTransferExtensions}}-- DEFAULT {} - ,per-recipient-fields - [2] SEQUENCE -- SIZE (1..ub-recipients) -- OF PerRecipientProbeTransferFields + [3] SET OF ExtensionField{{ProbeTransferExtensions}} DEFAULT {} } ---ProbeTransferExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +ProbeTransferExtensions 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 | internal-trace-information | --- PrivateExtensions, ...} + recipient-reassignment-prohibited | dl-expansion-prohibited | + conversion-with-loss-prohibited | originator-certificate | + message-security-label | content-correlator | + probe-origin-authentication-check | internal-trace-information | + PrivateExtensions, ...} PerRecipientProbeTransferFields ::= SET { recipient-name MTARecipientName, @@ -283,16 +258,16 @@ PerRecipientProbeTransferFields ::= SET { per-recipient-indicators [1] PerRecipientIndicators, explicit-conversion [2] ExplicitConversion OPTIONAL, extensions - [3] SET OF ExtensionField --{{PerRecipientProbeTransferExtensions}} + [3] SET OF ExtensionField{{PerRecipientProbeTransferExtensions}} DEFAULT {} } ---PerRecipientProbeTransferExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +PerRecipientProbeTransferExtensions 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 | redirection-history | PrivateExtensions, --- ...} + originator-requested-alternate-recipient | requested-delivery-method | + physical-rendition-attributes | redirection-history | PrivateExtensions, + ...} -- Report Transfer Envelope ReportTransferEnvelope ::= SET { @@ -300,26 +275,26 @@ ReportTransferEnvelope ::= SET { report-destination-name ReportDestinationName, trace-information TraceInformation, extensions - [1] SET OF ExtensionField --{{ReportTransferEnvelopeExtensions}}-- DEFAULT {} + [1] SET OF ExtensionField{{ReportTransferEnvelopeExtensions}} DEFAULT {} } ---ReportTransferEnvelopeExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +ReportTransferEnvelopeExtensions EXTENSION ::= + {-- May contain the following extensions, private extensions, and future standardised extensions, -- at most one instance of each extension type: --- message-security-label | redirection-history | --- originator-and-DL-expansion-history | reporting-DL-name | --- reporting-MTA-certificate | report-origin-authentication-check | --- internal-trace-information | reporting-MTA-name | PrivateExtensions, --- ...} + message-security-label | redirection-history | + originator-and-DL-expansion-history | reporting-DL-name | + reporting-MTA-certificate | report-origin-authentication-check | + internal-trace-information | reporting-MTA-name | PrivateExtensions, + ...} -- Report Transfer Content ReportTransferContent ::= SET { --- COMPONENTS OF PerReportTransferFields, --- per-recipient-fields --- [0] SEQUENCE SIZE (1..ub-recipients) OF PerRecipientReportTransferFields ---} + COMPONENTS OF PerReportTransferFields, + per-recipient-fields + [0] SEQUENCE SIZE (1..ub-recipients) OF PerRecipientReportTransferFields +} ---PerReportTransferFields ::= SET { +PerReportTransferFields ::= SET { subject-identifier SubjectIdentifier, subject-intermediate-trace-information SubjectIntermediateTraceInformation OPTIONAL, @@ -330,15 +305,13 @@ ReportTransferContent ::= SET { returned-content [1] Content OPTIONAL, additional-information [2] AdditionalInformation OPTIONAL, extensions - [3] SET OF ExtensionField --{{ReportTransferContentExtensions}}-- DEFAULT {} - ,per-recipient-fields - [0] SEQUENCE -- SIZE (1..ub-recipients) -- OF PerRecipientReportTransferFields + [3] SET OF ExtensionField{{ReportTransferContentExtensions}} DEFAULT {} } ---ReportTransferContentExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +ReportTransferContentExtensions EXTENSION ::= + {-- May contain the following extensions, private extensions, and future standardised extensions, -- at most one instance of each extension type: --- content-correlator | PrivateExtensions, ...} + content-correlator | PrivateExtensions, ...} PerRecipientReportTransferFields ::= SET { actual-recipient-name [0] MTAActualRecipientName, @@ -347,36 +320,45 @@ PerRecipientReportTransferFields ::= SET { per-recipient-indicators [2] PerRecipientIndicators, last-trace-information [3] LastTraceInformation, originally-intended-recipient-name - [4] MTAOriginallyIntendedRecipientName OPTIONAL, + [4] OriginallyIntendedRecipientName OPTIONAL, supplementary-information [5] SupplementaryInformation OPTIONAL, extensions - [6] SET OF ExtensionField --{{PerRecipientReportTransferExtensions}} + [6] SET OF ExtensionField{{PerRecipientReportTransferExtensions}} DEFAULT {} } ---PerRecipientReportTransferExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +PerRecipientReportTransferExtensions 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, ...} + redirection-history | physical-forwarding-address | recipient-certificate | + proof-of-delivery | PrivateExtensions, ...} -- Envelope & Report Content Fields MessageIdentifier ::= MTSIdentifier MTAOriginatorName ::= ORAddressAndOptionalDirectoryName +BILATERAL ::= CLASS {&id BilateralDomain UNIQUE, + &Type +}WITH SYNTAX {&Type, + IDENTIFIED BY &id +} + PerDomainBilateralInformation ::= SEQUENCE { -- COMPONENTS OF BILATERAL.&id, --- bilateral-information BILATERAL.&Type ---} + country-name CountryName, + domain + CHOICE {administration-domain-name AdministrationDomainName, + private-domain + SEQUENCE {administration-domain-name + [0] AdministrationDomainName, + private-domain-identifier + [1] PrivateDomainIdentifier}}, + bilateral-information BILATERAL.&Type +} ---BILATERAL ::= CLASS {&id BilateralDomain UNIQUE, --- &Type ---}WITH SYNTAX {&Type, --- IDENTIFIED BY &id ---} ---BilateralDomain ::= SEQUENCE { +BilateralDomain ::= SEQUENCE { country-name CountryName, domain CHOICE {administration-domain-name AdministrationDomainName, @@ -384,13 +366,12 @@ PerDomainBilateralInformation ::= SEQUENCE { SEQUENCE {administration-domain-name [0] AdministrationDomainName, private-domain-identifier - [1] PrivateDomainIdentifier}}, - bilateral-information ANY + [1] PrivateDomainIdentifier}} } MTARecipientName ::= ORAddressAndOptionalDirectoryName -OriginallySpecifiedRecipientNumber ::= INTEGER --(1..ub-recipients) +OriginallySpecifiedRecipientNumber ::= INTEGER(1..ub-recipients) PerRecipientIndicators ::= BIT STRING { responsibility(0), @@ -411,7 +392,7 @@ PerRecipientIndicators ::= BIT STRING { -- both bits 'zero' requests 'no-report' reserved-5(5), reserved-6(6), reserved-7(7) --- reserved- bits 5 - 7 shall be 'zero' --}--(SIZE (8..ub-bit-options)) +-- reserved- bits 5 - 7 shall be 'zero' --}(SIZE (8..ub-bit-options)) ProbeIdentifier ::= MTSIdentifier @@ -427,11 +408,11 @@ SubjectIntermediateTraceInformation ::= TraceInformation -- AdditionalInformation is retained for backwards compatibility only, -- and use in new systems is strongly deprecated ---ADDITIONAL ::= CLASS {&Type ---} +ADDITIONAL ::= CLASS {&Type +} AdditionalInformation ::= - ANY --ADDITIONAL.&Type - - maximum ub-additional-info octets including all encoding + ADDITIONAL.&Type -- maximum ub-additional-info octets including all encoding MTAActualRecipientName ::= ORAddressAndOptionalDirectoryName @@ -442,28 +423,28 @@ LastTraceInformation ::= SET { report-type [1] ReportType } -MTAOriginallyIntendedRecipientName ::= ORAddressAndOptionalDirectoryName +--OriginallyIntendedRecipientName ::= ORAddressAndOptionalDirectoryName -- Extension Fields ---originator-requested-alternate-recipient EXTENSION ::= { --- OriginatorRequestedAlternateRecipient, --- IDENTIFIED BY standard-extension:2 ---} +originator-requested-alternate-recipient EXTENSION ::= { + MTAOriginatorRequestedAlternateRecipient, + IDENTIFIED BY standard-extension:2 +} MTAOriginatorRequestedAlternateRecipient ::= ORAddressAndOptionalDirectoryName ---trace-information EXTENSION ::= { --- TraceInformation, --- IDENTIFIED BY standard-extension:37 ---} +trace-information EXTENSION ::= { + TraceInformation, + IDENTIFIED BY standard-extension:37 +} ---internal-trace-information EXTENSION ::= { --- InternalTraceInformation, --- IDENTIFIED BY standard-extension:38 ---} +internal-trace-information EXTENSION ::= { + InternalTraceInformation, + IDENTIFIED BY standard-extension:38 +} InternalTraceInformation ::= - SEQUENCE -- SIZE (1..ub-transfers)-- OF InternalTraceInformationElement + SEQUENCE SIZE (1..ub-transfers) OF InternalTraceInformationElement InternalTraceInformationElement ::= SEQUENCE { global-domain-identifier GlobalDomainIdentifier, @@ -476,18 +457,14 @@ MTASuppliedInformation ::= SET { routing-action [2] RoutingAction, attempted CHOICE {mta MTAName, domain GlobalDomainIdentifier} OPTIONAL, - -- additional-actions - -COMPONENTS OF InternalAdditionalActions - deferred-time [1] DeferredTime OPTIONAL, - converted-encoded-information-types - ConvertedEncodedInformationTypes OPTIONAL, - other-actions [3] OtherActions DEFAULT {} + -- additional-actions --COMPONENTS OF InternalAdditionalActions } ---InternalAdditionalActions ::= AdditionalActions +InternalAdditionalActions ::= AdditionalActions -- Common Parameter Types TraceInformation ::= - [APPLICATION 9] SEQUENCE -- SIZE (1..ub-transfers) -- OF TraceInformationElement + [APPLICATION 9] SEQUENCE SIZE (1..ub-transfers) OF TraceInformationElement TraceInformationElement ::= SEQUENCE { global-domain-identifier GlobalDomainIdentifier, @@ -498,10 +475,10 @@ DomainSuppliedInformation ::= SET { arrival-time [0] ArrivalTime, routing-action [2] RoutingAction, attempted-domain GlobalDomainIdentifier OPTIONAL, - -- additional-actions - -COMPONENTS OF AdditionalActions ---} + -- additional-actions --COMPONENTS OF AdditionalActions +} ---AdditionalActions ::= SET { +AdditionalActions ::= SET { deferred-time [1] DeferredTime OPTIONAL, converted-encoded-information-types ConvertedEncodedInformationTypes OPTIONAL, @@ -515,9 +492,9 @@ DeferredTime ::= Time ArrivalTime ::= Time OtherActions ::= BIT STRING {redirected(0), dl-operation(1) -}--(SIZE (0..ub-bit-options))-- +}(SIZE (0..ub-bit-options)) -END +END -- of MTA Abstract Service -- 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 index b8c23ba2a5..0c33b81dff 100644 --- a/asn1/x411/MTSAbstractService.asn +++ b/asn1/x411/MTSAbstractService.asn @@ -6,198 +6,199 @@ BEGIN -- Prologue -- Exports everything ---IMPORTS +IMPORTS -- Remote Operations --- CONNECTION-PACKAGE, CONTRACT, ERROR, OPERATION, OPERATION-PACKAGE, --- ROS-OBJECT-CLASS + 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-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)} + 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 + internal-trace-information, trace-information --== --- FROM MTAAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0) --- mta-abstract-service(2) version-1999(1)} + 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 + forwarding-request --== --- FROM MSAbstractService {joint-iso-itu-t mhs(6) ms(4) modules(0) --- abstract-service(1) version-1999(1)} + FROM MSAbstractService {joint-iso-itu-t mhs(6) ms(4) modules(0) + abstract-service(1) version-1999(1)} -- IPM Information Objects --- IPMPerRecipientEnvelopeExtensions + IPMPerRecipientEnvelopeExtensions --== --- FROM IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0) --- information-objects(2) version-1999(1)} + 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 + 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)} + 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 + 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)} + FROM MTSAccessProtocol {joint-iso-itu-t mhs(6) protocols(0) modules(0) + mts-access-protocol(1) version-1999(1)} -- Directory Definitions --- Name + Name --== --- FROM InformationFramework {joint-iso-itu-t ds(5) module(1) --- informationFramework(1) 3} --- PresentationAddress + 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 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} + FROM AuthenticationFramework {joint-iso-itu-t ds(5) module(1) + authenticationFramework(7) 3} -- Certificate Extensions --- CertificateAssertion + CertificateAssertion --== --- FROM CertificateExtensions {joint-iso-itu-t ds(5) module(1) --- certificateExtensions(26) 0} + 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 + 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)}; + FROM MTSUpperBounds {joint-iso-itu-t mhs(6) mts(3) modules(0) + upper-bounds(3) version-1999(1)}; ---operationObject1 OPERATION ::= {LINKED {operationObject2} ---} +-- operationObject1 OPERATION ::= {LINKED {operationObject2} +-- } ---operationObject2 OPERATION ::= {LINKED {operationObject3} ---} +-- operationObject2 OPERATION ::= {LINKED {operationObject3} +-- } ---operationObject3 OPERATION ::= {LINKED {operationObject4} ---} +-- operationObject3 OPERATION ::= {LINKED {operationObject4} +-- } ---operationObject4 OPERATION ::= {LINKED {...} ---} +-- operationObject4 OPERATION ::= {LINKED {...} +-- } -- Objects ---MHS-OBJECT ::= ROS-OBJECT-CLASS +MHS-OBJECT ::= ROS-OBJECT-CLASS ---mts MHS-OBJECT ::= { --- INITIATES {mts-forced-access-contract} --- RESPONDS {mts-access-contract} --- ID id-ot-mts ---} +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 ---} +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 ---} +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 ---} +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 ---} +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-OPERATION ::= OPERATION ---ABSTRACT-ERROR ::= ERROR +ABSTRACT-ERROR ::= ERROR ---mts-bind ABSTRACT-OPERATION ::= { --- ARGUMENT MTSBindArgument --- RESULT MTSBindResult --- ERRORS {mts-bind-error} ---} +mts-bind --ABSTRACT- -- OPERATION ::= { + ARGUMENT MTSBindArgument + RESULT MTSBindResult + ERRORS {mts-bind-error} + CODE op-ros-bind -- WS: internal operation code +} 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 {} + [5] SET OF ExtensionField{{MTSBindExtensions}} DEFAULT {} } ---MTSBindExtensions EXTENSION ::= {PrivateExtensions, ...} +MTSBindExtensions EXTENSION ::= {PrivateExtensions, ...} -- May contain private extensions and future standardised extensions MTSBindResult ::= SET { @@ -206,20 +207,21 @@ MTSBindResult ::= SET { responder-credentials [2] ResponderCredentials, ..., extensions - [5] SET OF ExtensionField --{{MTSBindResultExtensions}}-- DEFAULT {} + [5] SET OF ExtensionField{{MTSBindResultExtensions}} DEFAULT {} } ---MTSBindResultExtensions EXTENSION ::= {PrivateExtensions, ...} +MTSBindResultExtensions EXTENSION ::= {PrivateExtensions, ...} -- May contain private extensions and future standardised extensions -MTSBindError --mts-bind-error ABSTRACT-ERROR-- ::= --{ --- PARAMETER +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) ---} + inadequate-association-confidentiality(5)}(0..ub-integer-options) + CODE err-ros-bind -- WS: internal error code +} ---mts-unbind ABSTRACT-OPERATION ::= emptyUnbind +mts-unbind ABSTRACT-OPERATION ::= emptyUnbind -- Association Control Parameters ObjectName ::= CHOICE { @@ -235,8 +237,8 @@ MessagesWaiting ::= SET { } DeliveryQueue ::= SET { - messages [0] INTEGER --(0..ub-queue-size)--, - octets [1] INTEGER --(0..ub-content-length)-- OPTIONAL + messages [0] INTEGER(0..ub-queue-size), + octets [1] INTEGER(0..ub-content-length) OPTIONAL } InitiatorCredentials ::= Credentials @@ -246,19 +248,19 @@ 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)) + 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 } @@ -281,21 +283,21 @@ Signature ::= SEQUENCE { encrypted BIT STRING } -SecurityContext ::= SET --SIZE (1..ub-security-labels)-- OF SecurityLabel +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 ---} +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, @@ -307,27 +309,27 @@ MessageSubmissionResult ::= SET { 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 ---} + [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 @@ -336,83 +338,83 @@ ProbeSubmissionResult ::= SET { probe-submission-time [0] ProbeSubmissionTime, content-identifier ContentIdentifier OPTIONAL, extensions - [1] SET OF ExtensionField --{{ProbeResultExtensions}}-- DEFAULT {} + [1] SET OF ExtensionField{{ProbeResultExtensions}} DEFAULT {} } ---ProbeResultExtensions EXTENSION ::= {PrivateExtensions, ...} +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 ---} +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 ---} +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 ---} +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 ---} +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 ---} +deferred-delivery-cancellation-rejected -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-deferred-delivery-cancellation-rejected +} ---originator-invalid ABSTRACT-ERROR ::= { --- PARAMETER NULL --- CODE err-originator-invalid ---} +originator-invalid -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-originator-invalid +} ---recipient-improperly-specified ABSTRACT-ERROR ::= { --- PARAMETER ImproperlySpecifiedRecipients --- CODE err-recipient-improperly-specified ---} +recipient-improperly-specified -- ABSTRACT- -- ERROR ::= { + PARAMETER ImproperlySpecifiedRecipients + CODE err-recipient-improperly-specified +} ImproperlySpecifiedRecipients ::= - SEQUENCE --SIZE (1..ub-recipients)-- OF MTSRecipientName + SEQUENCE SIZE (1..ub-recipients) OF RecipientName ---message-submission-identifier-invalid ABSTRACT-ERROR ::= { --- PARAMETER NULL --- CODE err-message-submission-identifier-invalid ---} +message-submission-identifier-invalid -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-message-submission-identifier-invalid +} ---inconsistent-request ABSTRACT-ERROR ::= { --- PARAMETER NULL --- CODE err-inconsistent-request ---} +inconsistent-request -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-inconsistent-request +} ---security-error ABSTRACT-ERROR ::= { --- PARAMETER SecurityProblem --- CODE err-security-error ---} +security-error -- ABSTRACT- -- ERROR ::= { + PARAMETER SecurityProblem + CODE err-security-error +} SecurityProblem ::= INTEGER { assemby-instructions-conflict-with-security-services(0), @@ -437,15 +439,15 @@ SecurityProblem ::= INTEGER { 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 ---} +unsupported-critical-function -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-unsupported-critical-function +} ---remote-bind-error ABSTRACT-ERROR ::= { --- PARAMETER NULL --- CODE err-remote-bind-error ---} +remote-bind-error -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-remote-bind-error +} -- Submission Port Parameters MessageSubmissionIdentifier ::= MTSIdentifier @@ -468,7 +470,7 @@ 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 {}, + [2] SET SIZE (0..ub-content-types) OF ContentType DEFAULT {}, waiting-encoded-information-types EncodedInformationTypes OPTIONAL } @@ -482,22 +484,19 @@ WaitingMessages ::= BIT STRING { }(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 ---} +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, + COMPONENTS OF MessageDeliveryEnvelope, content Content } @@ -506,33 +505,25 @@ MessageDeliveryResult ::= SET { proof-of-delivery [1] IMPLICIT ProofOfDelivery OPTIONAL, ..., extensions - [2] SET OF ExtensionField --{{MessageDeliveryResultExtensions}}-- DEFAULT {} + [2] SET OF ExtensionField{{MessageDeliveryResultExtensions}} DEFAULT {} } ---MessageDeliveryResultExtensions EXTENSION ::= {PrivateExtensions, ...} +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 ---} +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, + COMPONENTS OF ReportDeliveryEnvelope, returned-content [0] Content OPTIONAL } @@ -540,21 +531,21 @@ ReportDeliveryResult ::= CHOICE { empty-result NULL, ..., extensions - SET --SIZE (1..MAX)-- OF ExtensionField --{{ReportDeliveryResultExtensions}}-- + SET SIZE (1..MAX) OF ExtensionField{{ReportDeliveryResultExtensions}} } ---ReportDeliveryResultExtensions EXTENSION ::= {PrivateExtensions, ...} +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 ---} +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, @@ -568,45 +559,40 @@ DeliveryControlArgument ::= SET { PermissibleEncodedInformationTypes OPTIONAL, permissible-security-context [5] SecurityContext OPTIONAL, extensions - [6] SET OF ExtensionField --{{DeliveryControlExtensions}}-- DEFAULT {} + [6] SET OF ExtensionField{{DeliveryControlExtensions}} DEFAULT {} } ---DeliveryControlExtensions EXTENSION ::= {PrivateExtensions, ...} +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, + COMPONENTS OF Waiting, extensions - [6] SET OF ExtensionField --{{DeliveryControlResultExtensions}}-- DEFAULT {} + [6] SET OF ExtensionField{{DeliveryControlResultExtensions}} DEFAULT {} } ---DeliveryControlResultExtensions EXTENSION ::= {PrivateExtensions, ...} +DeliveryControlResultExtensions EXTENSION ::= {PrivateExtensions, ...} -- May contain private extensions and future standardised extensions ---delivery-control-violated ABSTRACT-ERROR ::= { --- PARAMETER NULL --- CODE err-delivery-control-violated ---} +delivery-control-violated -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-delivery-control-violated +} ---control-violates-registration ABSTRACT-ERROR ::= { --- PARAMETER NULL --- CODE err-control-violates-registration ---} +control-violates-registration -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-control-violates-registration +} ---operation-refused ABSTRACT-ERROR ::= { --- PARAMETER RefusedOperation --- CODE err-operation-refused ---} +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 --}, + refused-extension EXTENSION.&id}, refusal-reason [2] RefusalReason } @@ -636,7 +622,7 @@ ProofOfDelivery ::= Signature -- delivery-time MessageDeliveryTime, -- this-recipient-name ThisRecipientName, -- originally-intended-recipient-name --- MTSOriginallyIntendedRecipientName OPTIONAL, +-- OriginallyIntendedRecipientName OPTIONAL, -- content Content, -- content-identifier ContentIdentifier OPTIONAL, -- message-security-label @@ -663,31 +649,31 @@ 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 ---} +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, + 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 {} + [6] SET OF ExtensionField{{RegisterExtensions}} DEFAULT {} } ---RegisterExtensions EXTENSION ::= {PrivateExtensions, ...} +RegisterExtensions EXTENSION ::= {PrivateExtensions, ...} -- May contain private extensions and future standardised extensions RegisterResult ::= CHOICE { @@ -695,28 +681,28 @@ RegisterResult ::= CHOICE { non-empty-result SET {registered-information [0] RegisterArgument --- (WITH COMPONENTS { --- ..., --- retrieve-registrations ABSENT --- }) OPTIONAL--, + (WITH COMPONENTS { + ..., + retrieve-registrations ABSENT + }) OPTIONAL, extensions - [1] SET OF ExtensionField --{{RegisterResultExtensions}}-- DEFAULT {} + [1] SET OF ExtensionField{{RegisterResultExtensions}} DEFAULT {} } } ---RegisterResultExtensions EXTENSION ::= {PrivateExtensions, ...} +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 ---} +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 { @@ -727,20 +713,20 @@ ChangeCredentialsArgument ::= SET { }) } ---register-rejected ABSTRACT-ERROR ::= { --- PARAMETER NULL --- CODE err-register-rejected ---} +register-rejected -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-register-rejected +} ---new-credentials-unacceptable ABSTRACT-ERROR ::= { --- PARAMETER NULL --- CODE err-new-credentials-unacceptable ---} +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 ---} +old-credentials-incorrectly-specified -- ABSTRACT- -- ERROR ::= { + PARAMETER NULL + CODE err-old-credentials-incorrectly-specified +} -- Administration Port Parameters UserName ::= ORAddressAndOptionalDirectoryName @@ -748,9 +734,9 @@ UserName ::= ORAddressAndOptionalDirectoryName UserAddress ::= CHOICE { x121 [0] SEQUENCE {x121-address - NumericString --(SIZE (1..ub-x121-address-length))-- OPTIONAL, + NumericString(SIZE (1..ub-x121-address-length)) OPTIONAL, tsap-id - PrintableString --(SIZE (1..ub-tsap-id-length))-- OPTIONAL + PrintableString(SIZE (1..ub-tsap-id-length)) OPTIONAL }, presentation [1] PSAPAddress } @@ -783,7 +769,7 @@ Redirections ::= SEQUENCE SIZE (1..ub-redirections) OF RecipientRedirection RecipientRedirection ::= SET { redirection-classes - [0] SET --SIZE (1..ub-redirection-classes)-- OF RedirectionClass OPTIONAL, + [0] SET SIZE (1..ub-redirection-classes) OF RedirectionClass OPTIONAL, recipient-assigned-alternate-recipient [1] RecipientAssignedAlternateRecipient OPTIONAL } @@ -802,7 +788,7 @@ MessageClass ::= SET { } DEFAULT both, applies-only-to [6] SEQUENCE OF Restriction OPTIONAL, -- Not considered in the case of Reports extensions - [7] SET OF ExtensionField --{{MessageClassExtensions}}-- DEFAULT {} + [7] SET OF ExtensionField{{MessageClassExtensions}} DEFAULT {} } EncodedInformationTypesConstraints ::= SEQUENCE { @@ -811,7 +797,7 @@ EncodedInformationTypesConstraints ::= SEQUENCE { exclusively-acceptable-eits [2] ExtendedEncodedInformationTypes OPTIONAL } ---MessageClassExtensions EXTENSION ::= {PrivateExtensions, ...} +MessageClassExtensions EXTENSION ::= {PrivateExtensions, ...} -- May contain private extensions and future standardised extensions RecipientAssignedAlternateRecipient ::= @@ -823,7 +809,7 @@ 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}--, + DEFAULT {originated-by, redirected-by, dl-expanded-by}, source-name ExactOrPattern OPTIONAL } @@ -837,19 +823,19 @@ RegistrationTypes ::= SEQUENCE { [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 + extensions [1] SET OF 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, + COMPONENTS OF PerMessageSubmissionFields, + per-recipient-fields + [1] SEQUENCE SIZE (1..ub-recipients) OF + PerRecipientMessageSubmissionFields +} + +PerMessageSubmissionFields ::= SET { + originator-name OriginatorName, original-encoded-information-types OriginalEncodedInformationTypes OPTIONAL, content-type ContentType, content-identifier ContentIdentifier OPTIONAL, @@ -857,89 +843,82 @@ MessageSubmissionEnvelope ::= SET { 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 - + [2] SET OF ExtensionField{{PerMessageSubmissionExtensions}} DEFAULT {} } ---PerMessageSubmissionExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +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, --- ...} + 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, + recipient-name RecipientName, originator-report-request [0] OriginatorReportRequest, explicit-conversion [1] ExplicitConversion OPTIONAL, extensions - [2] SET OF ExtensionField --{{PerRecipientMessageSubmissionExtensions}}-- + [2] SET OF ExtensionField{{PerRecipientMessageSubmissionExtensions}} DEFAULT {} } ---PerRecipientMessageSubmissionExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +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, ...} + 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 ---} + COMPONENTS OF PerProbeSubmissionFields, + per-recipient-fields + [3] SEQUENCE SIZE (1..ub-recipients) OF PerRecipientProbeSubmissionFields +} ---PerProbeSubmissionFields ::= SET { - originator-name MTSOriginatorName, +PerProbeSubmissionFields ::= SET { + originator-name OriginatorName, 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 - + [2] SET OF ExtensionField{{PerProbeSubmissionExtensions}} DEFAULT {} } ---PerProbeSubmissionExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +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, ...} + 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, + recipient-name RecipientName, originator-report-request [0] OriginatorReportRequest, explicit-conversion [1] ExplicitConversion OPTIONAL, extensions - [2] SET OF ExtensionField --{{PerRecipientProbeSubmissionExtensions}} + [2] SET OF ExtensionField{{PerRecipientProbeSubmissionExtensions}} DEFAULT {} } ---PerRecipientProbeSubmissionExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +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, ...} + originator-requested-alternate-recipient | requested-delivery-method | + physical-rendition-attributes | PrivateExtensions, ...} -- Message Delivery Envelope MessageDeliveryEnvelope ::= SEQUENCE { @@ -958,77 +937,74 @@ OtherMessageDeliveryFields ::= SET { other-recipient-names [3] OtherRecipientNames OPTIONAL, this-recipient-name [4] ThisRecipientName, originally-intended-recipient-name - [5] MTSOriginallyIntendedRecipientName OPTIONAL, + [5] OriginallyIntendedRecipientName 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 {} + [9] SET OF ExtensionField{{MessageDeliveryExtensions}} DEFAULT {} } ---MessageDeliveryExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +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, ...} + 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 ---} + COMPONENTS OF PerReportDeliveryFields, + per-recipient-fields + SEQUENCE SIZE (1..ub-recipients) OF PerRecipientReportDeliveryFields +} ---PerReportDeliveryFields ::= SET { +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 - + [1] SET OF ExtensionField{{ReportDeliveryExtensions}} DEFAULT {} } ---ReportDeliveryExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +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, ...} + 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, + actual-recipient-name [0] ActualRecipientName, report-type [1] ReportType, converted-encoded-information-types ConvertedEncodedInformationTypes OPTIONAL, originally-intended-recipient-name - [2] MTSOriginallyIntendedRecipientName OPTIONAL, + [2] OriginallyIntendedRecipientName OPTIONAL, supplementary-information [3] SupplementaryInformation OPTIONAL, extensions - [4] SET OF ExtensionField --{{PerRecipientReportDeliveryExtensions}}-- + [4] SET OF ExtensionField{{PerRecipientReportDeliveryExtensions}} DEFAULT {} } ---PerRecipientReportDeliveryExtensions EXTENSION ::= --- {- - May contain the following extensions, private extensions, and future standardised extensions, +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, ...} + redirection-history | physical-forwarding-address | recipient-certificate | + proof-of-delivery | PrivateExtensions, ...} ReportType ::= CHOICE { delivery [0] DeliveryReport, @@ -1046,13 +1022,13 @@ NonDeliveryReport ::= SET { } -- Envelope Fields -MTSOriginatorName ::= ORAddressAndOrDirectoryName +OriginatorName ::= ORAddressAndOrDirectoryName DeliveredOriginatorName ::= ORAddressAndOptionalDirectoryName OriginalEncodedInformationTypes ::= EncodedInformationTypes -ContentTypes ::= SET --SIZE (1..ub-content-types)-- OF ContentType +ContentTypes ::= SET SIZE (1..ub-content-types) OF ContentType ContentType ::= CHOICE { built-in BuiltInContentType, @@ -1063,7 +1039,7 @@ 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) + edi-messaging(35), voice-messaging(40)}(0..ub-built-in-content-type) ExtendedContentType ::= OBJECT IDENTIFIER -- RELATIVE-OID @@ -1073,7 +1049,7 @@ DeliveredContentType ::= CHOICE { } ContentIdentifier ::= - [APPLICATION 10] PrintableString --(SIZE (1..ub-content-id-length)) + [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', @@ -1105,7 +1081,7 @@ PerMessageIndicators ::= [APPLICATION 8] BIT STRING { -- it may be a notification related to a service message; -- used only by bilateral agreement --}(SIZE (0..ub-bit-options)) -MTSRecipientName ::= ORAddressAndOrDirectoryName +RecipientName ::= ORAddressAndOrDirectoryName OriginatorReportRequest ::= BIT STRING {report(3), non-delivery-report(4) @@ -1139,19 +1115,19 @@ DeliveryFlags ::= BIT STRING { -- implicit-conversion-allowed 'zero' --}(SIZE (0..ub-bit-options)) -OtherRecipientNames ::= SEQUENCE --SIZE (1..ub-recipients)-- OF OtherRecipientName +OtherRecipientNames ::= SEQUENCE SIZE (1..ub-recipients) OF OtherRecipientName OtherRecipientName ::= ORAddressAndOptionalDirectoryName ThisRecipientName ::= ORAddressAndOptionalDirectoryName -MTSOriginallyIntendedRecipientName ::= ORAddressAndOptionalDirectoryName +OriginallyIntendedRecipientName ::= ORAddressAndOptionalDirectoryName ConvertedEncodedInformationTypes ::= EncodedInformationTypes SubjectSubmissionIdentifier ::= MTSIdentifier -MTSActualRecipientName ::= ORAddressAndOrDirectoryName +ActualRecipientName ::= ORAddressAndOrDirectoryName TypeOfMTSUser ::= INTEGER { public(0), private(1), ms(2), dl(3), pdau(4), physical-recipient(5), other(6) @@ -1232,7 +1208,7 @@ WITH SYNTAX { } ExtensionType ::= CHOICE { - standard-extension [0] StandardExtension --(0..ub-extension-types)--, + standard-extension [0] --INTEGER(0..ub-extension-types)-- StandardExtension, private-extension [3] OBJECT IDENTIFIER } @@ -1284,114 +1260,114 @@ StandardExtension ::= INTEGER { 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' +}(SIZE (0..ub-bit-options)) -- critical 'one', non-critical 'zero' -ExtensionField --{EXTENSION:ChosenFrom}-- ::= SEQUENCE { - type ExtensionType --EXTENSION.&id({ChosenFrom})--, +ExtensionField{EXTENSION:ChosenFrom} ::= SEQUENCE { + type EXTENSION.&id({ChosenFrom}), criticality [1] Criticality DEFAULT {}, - value [2] ANY --EXTENSION.&Type({ChosenFrom}{@type}) DEFAULT NULL:NULL + value [2] EXTENSION.&Type({ChosenFrom}{@type}) DEFAULT NULL:NULL } ---PrivateExtensions EXTENSION ::= --- {- - Any value shall be relayed and delivered if not Critical (see Table 27) +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 - -...} + -- 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 ---} +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 ---} +originator-requested-alternate-recipient EXTENSION ::= { + OriginatorRequestedAlternateRecipient, + RECOMMENDED CRITICALITY {for-submission}, + IDENTIFIED BY standard-extension:2 +} -MTSOriginatorRequestedAlternateRecipient ::= ORAddressAndOrDirectoryName +OriginatorRequestedAlternateRecipient ::= 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 ---} +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 ---} +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 ---} +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 ---} +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), + 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 ---} +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 ---} +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 ---} +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), @@ -1401,84 +1377,84 @@ PhysicalDeliveryModes ::= BIT STRING { -- 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)) +(SIZE (0..ub-bit-options)) ---registered-mail-type EXTENSION ::= { --- RegisteredMailType --- IF ABSENT non-registered-mail, --- RECOMMENDED CRITICALITY {for-delivery}, --- IDENTIFIED BY standard-extension:10 ---} +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 ---} +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)) + 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 ---} +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 ---} +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 ---} +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) +}(0..ub-integer-options) ---originator-certificate EXTENSION ::= { --- OriginatorCertificate, --- IDENTIFIED BY standard-extension:15 ---} +originator-certificate EXTENSION ::= { + OriginatorCertificate, + IDENTIFIED BY standard-extension:15 +} OriginatorCertificate ::= Certificates ---message-token EXTENSION ::= { --- MessageToken, --- RECOMMENDED CRITICALITY {for-delivery}, --- IDENTIFIED BY standard-extension:16 ---} +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 ---} +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 ---} +content-integrity-check EXTENSION ::= { + ContentIntegrityCheck, + RECOMMENDED CRITICALITY {for-delivery}, + IDENTIFIED BY standard-extension:18 +} ContentIntegrityCheck ::= Signature -- SIGNATURE @@ -1488,11 +1464,11 @@ ContentIntegrityCheck ::= Signature ContentIntegrityAlgorithmIdentifier ::= AlgorithmIdentifier ---message-origin-authentication-check EXTENSION ::= { --- MessageOriginAuthenticationCheck, --- RECOMMENDED CRITICALITY {for-delivery}, --- IDENTIFIED BY standard-extension:19 ---} +message-origin-authentication-check EXTENSION ::= { + MessageOriginAuthenticationCheck, + RECOMMENDED CRITICALITY {for-delivery}, + IDENTIFIED BY standard-extension:19 +} MessageOriginAuthenticationCheck ::= Signature -- SIGNATURE @@ -1504,49 +1480,49 @@ MessageOriginAuthenticationCheck ::= Signature MessageOriginAuthenticationAlgorithmIdentifier ::= AlgorithmIdentifier ---message-security-label EXTENSION ::= { --- MessageSecurityLabel, --- RECOMMENDED CRITICALITY {for-delivery}, --- IDENTIFIED BY standard-extension:20 ---} +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 ---} +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 ---} +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 ---} +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 ---} +probe-origin-authentication-check EXTENSION ::= { + ProbeOriginAuthenticationCheck, + RECOMMENDED CRITICALITY {for-delivery}, + IDENTIFIED BY standard-extension:24 +} ProbeOriginAuthenticationCheck ::= Signature -- SIGNATURE @@ -1557,10 +1533,10 @@ ProbeOriginAuthenticationCheck ::= Signature ProbeOriginAuthenticationAlgorithmIdentifier ::= AlgorithmIdentifier ---redirection-history EXTENSION ::= { --- RedirectionHistory, --- IDENTIFIED BY standard-extension:25 ---} +redirection-history EXTENSION ::= { + RedirectionHistory, + IDENTIFIED BY standard-extension:25 +} RedirectionHistory ::= SEQUENCE SIZE (1..ub-redirections) OF Redirection @@ -1582,68 +1558,68 @@ RedirectionReason ::= ENUMERATED { directory-look-up(3), alias(4), ... } ---dl-expansion-history EXTENSION ::= { --- DLExpansionHistory, --- IDENTIFIED BY standard-extension:26 ---} +dl-expansion-history EXTENSION ::= { + DLExpansionHistory, + IDENTIFIED BY standard-extension:26 +} -DLExpansionHistory ::= SEQUENCE -- SIZE (1..ub-dl-expansions)-- OF DLExpansion +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 ---} +physical-forwarding-address EXTENSION ::= { + PhysicalForwardingAddress, + IDENTIFIED BY standard-extension:27 +} PhysicalForwardingAddress ::= ORAddressAndOptionalDirectoryName ---recipient-certificate EXTENSION ::= { --- RecipientCertificate, --- IDENTIFIED BY standard-extension:28 ---} +recipient-certificate EXTENSION ::= { + RecipientCertificate, + IDENTIFIED BY standard-extension:28 +} ---proof-of-delivery EXTENSION ::= { --- ProofOfDelivery, --- IDENTIFIED BY standard-extension:29 ---} +proof-of-delivery EXTENSION ::= { + ProofOfDelivery, + IDENTIFIED BY standard-extension:29 +} ---originator-and-DL-expansion-history EXTENSION ::= { --- OriginatorAndDLExpansionHistory, --- IDENTIFIED BY standard-extension:30 ---} +originator-and-DL-expansion-history EXTENSION ::= { + OriginatorAndDLExpansionHistory, + IDENTIFIED BY standard-extension:30 +} OriginatorAndDLExpansionHistory ::= - SEQUENCE --SIZE (2..ub-orig-and-dl-expansions)-- OF OriginatorAndDLExpansion + 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 ---} +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 ---} +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 ---} +report-origin-authentication-check EXTENSION ::= { + ReportOriginAuthenticationCheck, + RECOMMENDED CRITICALITY {for-delivery}, + IDENTIFIED BY standard-extension:33 +} ReportOriginAuthenticationCheck ::= Signature -- SIGNATURE @@ -1658,8 +1634,8 @@ ReportOriginAuthenticationCheck ::= Signature ReportOriginAuthenticationAlgorithmIdentifier ::= AlgorithmIdentifier PerRecipientReportFields ::= SEQUENCE { - actual-recipient-name MTSActualRecipientName, - originally-intended-recipient-name MTSOriginallyIntendedRecipientName OPTIONAL, + actual-recipient-name ActualRecipientName, + originally-intended-recipient-name OriginallyIntendedRecipientName OPTIONAL, report-type CHOICE {delivery [0] PerRecipientDeliveryReportFields, non-delivery [1] PerRecipientNonDeliveryReportFields} @@ -1668,8 +1644,8 @@ PerRecipientReportFields ::= SEQUENCE { PerRecipientDeliveryReportFields ::= SEQUENCE { message-delivery-time MessageDeliveryTime, type-of-MTS-user TypeOfMTSUser, - recipient-certificate [0] RecipientCertificate OPTIONAL --- proof-of-delivery [1] ProofOfDelivery OPTIONAL + recipient-certificate [0] RecipientCertificate OPTIONAL, + proof-of-delivery [1] ProofOfDelivery OPTIONAL } PerRecipientNonDeliveryReportFields ::= SEQUENCE { @@ -1677,17 +1653,17 @@ PerRecipientNonDeliveryReportFields ::= SEQUENCE { non-delivery-diagnostic-code NonDeliveryDiagnosticCode OPTIONAL } ---originating-MTA-certificate EXTENSION ::= { --- OriginatingMTACertificate, --- IDENTIFIED BY standard-extension:34 ---} +originating-MTA-certificate EXTENSION ::= { + OriginatingMTACertificate, + IDENTIFIED BY standard-extension:34 +} OriginatingMTACertificate ::= Certificates ---proof-of-submission EXTENSION ::= { --- ProofOfSubmission, --- IDENTIFIED BY standard-extension:35 ---} +proof-of-submission EXTENSION ::= { + ProofOfSubmission, + IDENTIFIED BY standard-extension:35 +} ProofOfSubmission ::= Signature -- SIGNATURE @@ -1698,12 +1674,12 @@ ProofOfSubmission ::= Signature -- message-submission-identifier MessageSubmissionIdentifier, -- message-submission-time MessageSubmissionTime}} ---ProofOfSubmissionAlgorithmIdentifier ::= AlgorithmIdentifier +ProofOfSubmissionAlgorithmIdentifier ::= AlgorithmIdentifier ---reporting-MTA-name EXTENSION ::= { --- ReportingMTAName, --- IDENTIFIED BY standard-extension:39 ---} +reporting-MTA-name EXTENSION ::= { + ReportingMTAName, + IDENTIFIED BY standard-extension:39 +} ReportingMTAName ::= SEQUENCE { domain GlobalDomainIdentifier, @@ -1711,29 +1687,29 @@ ReportingMTAName ::= SEQUENCE { mta-directory-name [0] Name OPTIONAL } ---multiple-originator-certificates EXTENSION ::= { --- ExtendedCertificates, --- IDENTIFIED BY standard-extension:40 ---} +multiple-originator-certificates EXTENSION ::= { + ExtendedCertificates, + IDENTIFIED BY standard-extension:40 +} -ExtendedCertificates ::= SET --SIZE (1..ub-certificates)-- OF ExtendedCertificate +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 ---} +dl-exempted-recipients EXTENSION ::= { + DLExemptedRecipients, + IDENTIFIED BY standard-extension:42 +} DLExemptedRecipients ::= SET OF ORAddressAndOrDirectoryName ---certificate-selectors EXTENSION ::= { --- CertificateSelectors, --- IDENTIFIED BY standard-extension:45 ---} +certificate-selectors EXTENSION ::= { + CertificateSelectors, + IDENTIFIED BY standard-extension:45 +} CertificateSelectors ::= SET { encryption-recipient [0] CertificateAssertion OPTIONAL, @@ -1743,14 +1719,14 @@ CertificateSelectors ::= SET { message-origin-authentication [4] CertificateAssertion OPTIONAL } ---certificate-selectors-override EXTENSION ::= { --- CertificateSelectors --- (WITH COMPONENTS { --- ..., --- message-origin-authentication ABSENT --- }), --- IDENTIFIED BY standard-extension:46 ---} +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; @@ -1769,7 +1745,7 @@ MTSIdentifier ::= [APPLICATION 4] SEQUENCE { local-identifier LocalIdentifier } -LocalIdentifier ::= IA5String --(SIZE (1..ub-local-id-length)) +LocalIdentifier ::= IA5String(SIZE (1..ub-local-id-length)) GlobalDomainIdentifier ::= [APPLICATION 3] SEQUENCE { country-name CountryName, @@ -1778,26 +1754,21 @@ GlobalDomainIdentifier ::= [APPLICATION 3] SEQUENCE { } PrivateDomainIdentifier ::= CHOICE { - numeric NumericString --(SIZE (1..ub-domain-name-length))--, - printable PrintableString --(SIZE (1..ub-domain-name-length)) + numeric NumericString(SIZE (1..ub-domain-name-length)), + printable PrintableString(SIZE (1..ub-domain-name-length)) } -MTAName ::= IA5String --(SIZE (1..ub-mta-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, + -- address --COMPONENTS OF ORAddress, directory-name [0] Name OPTIONAL } @@ -1828,74 +1799,72 @@ BuiltInStandardAttributes ::= SEQUENCE { } 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)) + 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)) + 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)) +X121Address ::= NumericString(SIZE (1..ub-x121-address-length)) -TerminalIdentifier ::= PrintableString --(SIZE (1..ub-terminal-id-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)) + numeric NumericString(SIZE (1..ub-domain-name-length)), + printable PrintableString(SIZE (1..ub-domain-name-length)) } -OrganizationName ::= PrintableString --(SIZE (1..ub-organization-name-length)) +OrganizationName ::= PrintableString(SIZE (1..ub-organization-name-length)) -- see also teletex-organization-name -NumericUserIdentifier ::= NumericString --(SIZE (1..ub-numeric-user-id-length)) +NumericUserIdentifier ::= NumericString(SIZE (1..ub-numeric-user-id-length)) PersonalName ::= SET { - surname [0] PrintableString --(SIZE (1..ub-surname-length)) --, + surname [0] PrintableString(SIZE (1..ub-surname-length)), given-name - [1] PrintableString --(SIZE (1..ub-given-name-length))-- OPTIONAL, + [1] PrintableString(SIZE (1..ub-given-name-length)) OPTIONAL, initials - [2] PrintableString --(SIZE (1..ub-initials-length))-- OPTIONAL, + [2] PrintableString(SIZE (1..ub-initials-length)) OPTIONAL, generation-qualifier - [3] PrintableString --(SIZE (1..ub-generation-qualifier-length))-- OPTIONAL + [3] PrintableString(SIZE (1..ub-generation-qualifier-length)) OPTIONAL } -- see also teletex-personal-name OrganizationalUnitNames ::= - SEQUENCE --SIZE (1..ub-organizational-units)-- OF OrganizationalUnitName + SEQUENCE SIZE (1..ub-organizational-units) OF OrganizationalUnitName -- see also teletex-organizational-unit-names OrganizationalUnitName ::= - PrintableString --(SIZE (1..ub-organizational-unit-name-length)) + PrintableString(SIZE (1..ub-organizational-unit-name-length)) -- Built-in Domain-defined Attributes BuiltInDomainDefinedAttributes ::= - SEQUENCE --SIZE (1..ub-domain-defined-attributes)-- OF + 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)) + 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 + SET SIZE (1..ub-extension-attributes) OF ExtensionAttribute ExtensionAttribute ::= SEQUENCE { extension-attribute-type - [0] ExtensionAttributeType --EXTENSION-ATTRIBUTE.&id({ExtensionAttributeTable}) --, + [0] --EXTENSION-ATTRIBUTE.&id({ExtensionAttributeTable})-- ExtensionAttributeType, extension-attribute-value - [1] ANY --EXTENSION-ATTRIBUTE.&Type --- ({ExtensionAttributeTable}{@extension-attribute-type}) + [1] EXTENSION-ATTRIBUTE.&Type + ({ExtensionAttributeTable}{@extension-attribute-type}) } - - ExtensionAttributeType ::= INTEGER { common-name (1), teletex-common-name (2), @@ -1939,400 +1908,397 @@ ExtensionAttributeType ::= INTEGER { 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-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 ---} +common-name EXTENSION-ATTRIBUTE ::= {CommonName + IDENTIFIED BY 1 +} -CommonName ::= PrintableString --(SIZE (1..ub-common-name-length)) +CommonName ::= PrintableString(SIZE (1..ub-common-name-length)) ---teletex-common-name EXTENSION-ATTRIBUTE ::= {TeletexCommonName --- IDENTIFIED BY 2 ---} +teletex-common-name EXTENSION-ATTRIBUTE ::= {TeletexCommonName + IDENTIFIED BY 2 +} -TeletexCommonName ::= TeletexString --(SIZE (1..ub-common-name-length)) +TeletexCommonName ::= TeletexString(SIZE (1..ub-common-name-length)) ---universal-common-name EXTENSION-ATTRIBUTE ::= { --- UniversalCommonName --- IDENTIFIED BY 24 ---} +universal-common-name EXTENSION-ATTRIBUTE ::= { + UniversalCommonName + IDENTIFIED BY 24 +} -UniversalCommonName ::= UniversalOrBMPString --{ub-common-name-length} +UniversalCommonName ::= UniversalOrBMPString{ub-common-name-length} ---teletex-organization-name EXTENSION-ATTRIBUTE ::= { --- TeletexOrganizationName --- IDENTIFIED BY 3 ---} +teletex-organization-name EXTENSION-ATTRIBUTE ::= { + TeletexOrganizationName + IDENTIFIED BY 3 +} TeletexOrganizationName ::= - TeletexString --(SIZE (1..ub-organization-name-length)) + TeletexString(SIZE (1..ub-organization-name-length)) ---universal-organization-name EXTENSION-ATTRIBUTE ::= { --- UniversalOrganizationName --- IDENTIFIED BY 25 ---} +universal-organization-name EXTENSION-ATTRIBUTE ::= { + UniversalOrganizationName + IDENTIFIED BY 25 +} -UniversalOrganizationName ::= UniversalOrBMPString --{ub-organization-name-length} +UniversalOrganizationName ::= UniversalOrBMPString{ub-organization-name-length} ---teletex-personal-name EXTENSION-ATTRIBUTE ::= { --- TeletexPersonalName --- IDENTIFIED BY 4 ---} +teletex-personal-name EXTENSION-ATTRIBUTE ::= { + TeletexPersonalName + IDENTIFIED BY 4 +} TeletexPersonalName ::= SET { - surname [0] TeletexString --(SIZE (1..ub-surname-length))--, + surname [0] TeletexString(SIZE (1..ub-surname-length)), given-name - [1] TeletexString --(SIZE (1..ub-given-name-length))-- OPTIONAL, + [1] TeletexString(SIZE (1..ub-given-name-length)) OPTIONAL, initials - [2] TeletexString --(SIZE (1..ub-initials-length))-- OPTIONAL, + [2] TeletexString(SIZE (1..ub-initials-length)) OPTIONAL, generation-qualifier - [3] TeletexString --(SIZE (1..ub-generation-qualifier-length))-- OPTIONAL + [3] TeletexString(SIZE (1..ub-generation-qualifier-length)) OPTIONAL } ---universal-personal-name EXTENSION-ATTRIBUTE ::= { --- UniversalPersonalName --- IDENTIFIED BY 26 ---} +universal-personal-name EXTENSION-ATTRIBUTE ::= { + UniversalPersonalName + IDENTIFIED BY 26 +} UniversalPersonalName ::= SET { - surname [0] UniversalOrBMPString --{ub-universal-surname-length}--, + 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, + [1] UniversalOrBMPString{ub-universal-given-name-length} OPTIONAL, initials - [2] UniversalOrBMPString --{ub-universal-initials-length}-- OPTIONAL, + [2] UniversalOrBMPString{ub-universal-initials-length} OPTIONAL, generation-qualifier - [3] UniversalOrBMPString --{ub-universal-generation-qualifier-length} + [3] UniversalOrBMPString{ub-universal-generation-qualifier-length} OPTIONAL } ---teletex-organizational-unit-names EXTENSION-ATTRIBUTE ::= { --- TeletexOrganizationalUnitNames --- IDENTIFIED BY 5 ---} +teletex-organizational-unit-names EXTENSION-ATTRIBUTE ::= { + TeletexOrganizationalUnitNames + IDENTIFIED BY 5 +} TeletexOrganizationalUnitNames ::= - SEQUENCE --SIZE (1..ub-organizational-units)-- OF TeletexOrganizationalUnitName + SEQUENCE SIZE (1..ub-organizational-units) OF TeletexOrganizationalUnitName TeletexOrganizationalUnitName ::= - TeletexString --(SIZE (1..ub-organizational-unit-name-length)) + TeletexString(SIZE (1..ub-organizational-unit-name-length)) ---universal-organizational-unit-names EXTENSION-ATTRIBUTE ::= { --- UniversalOrganizationalUnitNames --- IDENTIFIED BY 27 ---} +universal-organizational-unit-names EXTENSION-ATTRIBUTE ::= { + UniversalOrganizationalUnitNames + IDENTIFIED BY 27 +} UniversalOrganizationalUnitNames ::= - SEQUENCE --SIZE (1..ub-organizational-units)-- OF UniversalOrganizationalUnitName + 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{ub-organizational-unit-name-length} -UniversalOrBMPString --{INTEGER:ub-string-length}-- ::= SET { +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 + 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 ---} +pds-name EXTENSION-ATTRIBUTE ::= {PDSName + IDENTIFIED BY 7 +} -PDSName ::= PrintableString --(SIZE (1..ub-pds-name-length)) +PDSName ::= PrintableString(SIZE (1..ub-pds-name-length)) ---physical-delivery-country-name EXTENSION-ATTRIBUTE ::= { --- PhysicalDeliveryCountryName --- IDENTIFIED BY 8 ---} +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)) + 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 ---} +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)) + 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 ---} +physical-delivery-office-name EXTENSION-ATTRIBUTE ::= { + PhysicalDeliveryOfficeName + IDENTIFIED BY 10 +} PhysicalDeliveryOfficeName ::= PDSParameter ---universal-physical-delivery-office-name EXTENSION-ATTRIBUTE ::= { --- UniversalPhysicalDeliveryOfficeName --- IDENTIFIED BY 29 ---} +universal-physical-delivery-office-name EXTENSION-ATTRIBUTE ::= { + UniversalPhysicalDeliveryOfficeName + IDENTIFIED BY 29 +} UniversalPhysicalDeliveryOfficeName ::= UniversalPDSParameter ---physical-delivery-office-number EXTENSION-ATTRIBUTE ::= { --- PhysicalDeliveryOfficeNumber --- IDENTIFIED BY 11 ---} +physical-delivery-office-number EXTENSION-ATTRIBUTE ::= { + PhysicalDeliveryOfficeNumber + IDENTIFIED BY 11 +} PhysicalDeliveryOfficeNumber ::= PDSParameter ---universal-physical-delivery-office-number EXTENSION-ATTRIBUTE ::= { --- UniversalPhysicalDeliveryOfficeNumber --- IDENTIFIED BY 30 ---} +universal-physical-delivery-office-number EXTENSION-ATTRIBUTE ::= { + UniversalPhysicalDeliveryOfficeNumber + IDENTIFIED BY 30 +} UniversalPhysicalDeliveryOfficeNumber ::= UniversalPDSParameter ---extension-OR-address-components EXTENSION-ATTRIBUTE ::= { --- ExtensionORAddressComponents --- IDENTIFIED BY 12 ---} +extension-OR-address-components EXTENSION-ATTRIBUTE ::= { + ExtensionORAddressComponents + IDENTIFIED BY 12 +} ExtensionORAddressComponents ::= PDSParameter ---universal-extension-OR-address-components EXTENSION-ATTRIBUTE ::= { --- UniversalExtensionORAddressComponents --- IDENTIFIED BY 31 ---} +universal-extension-OR-address-components EXTENSION-ATTRIBUTE ::= { + UniversalExtensionORAddressComponents + IDENTIFIED BY 31 +} UniversalExtensionORAddressComponents ::= UniversalPDSParameter ---physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= { --- PhysicalDeliveryPersonalName --- IDENTIFIED BY 13 ---} +physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= { + PhysicalDeliveryPersonalName + IDENTIFIED BY 13 +} PhysicalDeliveryPersonalName ::= PDSParameter ---universal-physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= { --- UniversalPhysicalDeliveryPersonalName --- IDENTIFIED BY 32 ---} +universal-physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= { + UniversalPhysicalDeliveryPersonalName + IDENTIFIED BY 32 +} UniversalPhysicalDeliveryPersonalName ::= UniversalPDSParameter ---physical-delivery-organization-name EXTENSION-ATTRIBUTE ::= { --- PhysicalDeliveryOrganizationName --- IDENTIFIED BY 14 ---} +physical-delivery-organization-name EXTENSION-ATTRIBUTE ::= { + PhysicalDeliveryOrganizationName + IDENTIFIED BY 14 +} PhysicalDeliveryOrganizationName ::= PDSParameter ---universal-physical-delivery-organization-name EXTENSION-ATTRIBUTE ::= ---{UniversalPhysicalDeliveryOrganizationName --- IDENTIFIED BY 33 ---} +universal-physical-delivery-organization-name EXTENSION-ATTRIBUTE ::= +{UniversalPhysicalDeliveryOrganizationName + IDENTIFIED BY 33 +} UniversalPhysicalDeliveryOrganizationName ::= UniversalPDSParameter ---extension-physical-delivery-address-components EXTENSION-ATTRIBUTE ::= ---{ExtensionPhysicalDeliveryAddressComponents --- IDENTIFIED BY 15 ---} +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 ---} +universal-extension-physical-delivery-address-components EXTENSION-ATTRIBUTE + ::= {UniversalExtensionPhysicalDeliveryAddressComponents + IDENTIFIED BY 34 +} UniversalExtensionPhysicalDeliveryAddressComponents ::= UniversalPDSParameter ---unformatted-postal-address EXTENSION-ATTRIBUTE ::= { --- UnformattedPostalAddress --- IDENTIFIED BY 16 ---} +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, + 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 + TeletexString(SIZE (1..ub-unformatted-address-length)) OPTIONAL } ---universal-unformatted-postal-address EXTENSION-ATTRIBUTE ::= { --- UniversalUnformattedPostalAddress --- IDENTIFIED BY 35 ---} +universal-unformatted-postal-address EXTENSION-ATTRIBUTE ::= { + UniversalUnformattedPostalAddress + IDENTIFIED BY 35 +} UniversalUnformattedPostalAddress ::= - UniversalOrBMPString --{ub-unformatted-address-length} + UniversalOrBMPString{ub-unformatted-address-length} ---street-address EXTENSION-ATTRIBUTE ::= {StreetAddress --- IDENTIFIED BY 17 ---} +street-address EXTENSION-ATTRIBUTE ::= {StreetAddress + IDENTIFIED BY 17 +} StreetAddress ::= PDSParameter ---universal-street-address EXTENSION-ATTRIBUTE ::= { --- UniversalStreetAddress --- IDENTIFIED BY 36 ---} +universal-street-address EXTENSION-ATTRIBUTE ::= { + UniversalStreetAddress + IDENTIFIED BY 36 +} UniversalStreetAddress ::= UniversalPDSParameter ---post-office-box-address EXTENSION-ATTRIBUTE ::= { --- PostOfficeBoxAddress --- IDENTIFIED BY 18 ---} +post-office-box-address EXTENSION-ATTRIBUTE ::= { + PostOfficeBoxAddress + IDENTIFIED BY 18 +} PostOfficeBoxAddress ::= PDSParameter ---universal-post-office-box-address EXTENSION-ATTRIBUTE ::= { --- UniversalPostOfficeBoxAddress --- IDENTIFIED BY 37 ---} +universal-post-office-box-address EXTENSION-ATTRIBUTE ::= { + UniversalPostOfficeBoxAddress + IDENTIFIED BY 37 +} UniversalPostOfficeBoxAddress ::= UniversalPDSParameter ---poste-restante-address EXTENSION-ATTRIBUTE ::= { --- PosteRestanteAddress --- IDENTIFIED BY 19 ---} +poste-restante-address EXTENSION-ATTRIBUTE ::= { + PosteRestanteAddress + IDENTIFIED BY 19 +} PosteRestanteAddress ::= PDSParameter ---universal-poste-restante-address EXTENSION-ATTRIBUTE ::= { --- UniversalPosteRestanteAddress --- IDENTIFIED BY 38 ---} +universal-poste-restante-address EXTENSION-ATTRIBUTE ::= { + UniversalPosteRestanteAddress + IDENTIFIED BY 38 +} UniversalPosteRestanteAddress ::= UniversalPDSParameter ---unique-postal-name EXTENSION-ATTRIBUTE ::= {UniquePostalName --- IDENTIFIED BY 20 ---} +unique-postal-name EXTENSION-ATTRIBUTE ::= {UniquePostalName + IDENTIFIED BY 20 +} UniquePostalName ::= PDSParameter ---universal-unique-postal-name EXTENSION-ATTRIBUTE ::= { --- UniversalUniquePostalName --- IDENTIFIED BY 39 ---} +universal-unique-postal-name EXTENSION-ATTRIBUTE ::= { + UniversalUniquePostalName + IDENTIFIED BY 39 +} UniversalUniquePostalName ::= UniversalPDSParameter ---local-postal-attributes EXTENSION-ATTRIBUTE ::= { --- LocalPostalAttributes --- IDENTIFIED BY 21 ---} +local-postal-attributes EXTENSION-ATTRIBUTE ::= { + LocalPostalAttributes + IDENTIFIED BY 21 +} LocalPostalAttributes ::= PDSParameter ---universal-local-postal-attributes EXTENSION-ATTRIBUTE ::= { --- UniversalLocalPostalAttributes --- IDENTIFIED BY 40 ---} +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 + 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} +UniversalPDSParameter ::= UniversalOrBMPString{ub-pds-parameter-length} ---extended-network-address EXTENSION-ATTRIBUTE ::= { --- ExtendedNetworkAddress --- IDENTIFIED BY 22 ---} +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))--, + [0] NumericString(SIZE (1..ub-e163-4-number-length)), sub-address - [1] NumericString --(SIZE (1..ub-e163-4-sub-address-length))-- + [1] NumericString(SIZE (1..ub-e163-4-sub-address-length)) OPTIONAL}, psap-address [0] PresentationAddress } ---terminal-type EXTENSION-ATTRIBUTE ::= {TerminalType --- IDENTIFIED BY 23 ---} +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) + videotex(8)}(0..ub-integer-options) -- Extension Domain-defined Attributes ---teletex-domain-defined-attributes EXTENSION-ATTRIBUTE ::= { --- TeletexDomainDefinedAttributes --- IDENTIFIED BY 6 ---} +teletex-domain-defined-attributes EXTENSION-ATTRIBUTE ::= { + TeletexDomainDefinedAttributes + IDENTIFIED BY 6 +} TeletexDomainDefinedAttributes ::= - SEQUENCE --SIZE (1..ub-domain-defined-attributes)-- OF + 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)) - + 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 ---} +universal-domain-defined-attributes EXTENSION-ATTRIBUTE ::= { + UniversalDomainDefinedAttributes + IDENTIFIED BY 28 +} UniversalDomainDefinedAttributes ::= - SEQUENCE --SIZE (1..ub-domain-defined-attributes)-- OF + 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} + 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 {}, + -- non-basic-parameters --COMPONENTS OF NonBasicParameters, extended-encoded-information-types [4] ExtendedEncodedInformationTypes OPTIONAL } @@ -2341,11 +2307,11 @@ EncodedInformationTypes ::= [APPLICATION 5] SET { 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)) +}(SIZE (0..ub-built-in-encoded-information-types)) -- Extended Encoded Information Types ExtendedEncodedInformationTypes ::= - SET --SIZE (1..ub-encoded-information-types)-- OF ExtendedEncodedInformationType + SET SIZE (1..ub-encoded-information-types) OF ExtendedEncodedInformationType ExtendedEncodedInformationType ::= OBJECT IDENTIFIER @@ -2382,6 +2348,8 @@ TeletexNonBasicParameters ::= SET { OPTIONAL -- maximum ub-teletex-private-use-length octets -- } +TOKEN ::= TYPE-IDENTIFIER + -- as defined in CCITT Recommendation T.62 -- Token Token ::= SEQUENCE { @@ -2390,33 +2358,33 @@ Token ::= SEQUENCE { [1] --TOKEN.&Type({TokensTable}{@token-type-identifier})-- TokenTypeData } ---TOKEN ::= TYPE-IDENTIFIER TokenTypeIdentifier ::= OBJECT IDENTIFIER TokenTypeData ::= ANY ---TokensTable TOKEN ::= {asymmetric-token, ...} +TokensTable TOKEN ::= {asymmetric-token, ...} ---asymmetric-token TOKEN ::= { --- AsymmetricToken --- IDENTIFIED BY id-tok-asymmetricToken ---} +asymmetric-token TOKEN ::= { + AsymmetricToken + IDENTIFIED BY id-tok-asymmetricToken +} AsymmetricTokenData ::= -- SIGNED -- {--SEQUENCE {signature-algorithm-identifier AlgorithmIdentifier, name - CHOICE {recipient-name MTSRecipientName, - mta [3] MTANameAndOptionalGDI }, + CHOICE {recipient-name RecipientName, + mta + [3] MTANameAndOptionalGDI }, time Time, signed-data [0] TokenData OPTIONAL, encryption-algorithm-identifier [1] AlgorithmIdentifier OPTIONAL, encrypted-data - [2] -- ENCRYPTED{TokenData}-- BIT STRING OPTIONAL} --} + [2] --ENCRYPTED{TokenData}-- BIT STRING OPTIONAL} --} MTANameAndOptionalGDI ::= SEQUENCE { - global-domain-identifier GlobalDomainIdentifier OPTIONAL, - mta-name MTAName + global-domain-identifier GlobalDomainIdentifier OPTIONAL, + mta-name MTAName } AsymmetricToken ::= SEQUENCE { @@ -2425,43 +2393,41 @@ AsymmetricToken ::= SEQUENCE { encrypted BIT STRING } + TokenData ::= SEQUENCE { - type [0] TokenDataType -- TOKEN-DATA.&id({TokenDataTable}) --, - value [1] ANY -- TOKEN-DATA.&Type({TokenDataTable}{@type}) + type [0] -- TOKEN-DATA.&id({TokenDataTable})-- TokenDataType, + value [1] 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) + 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, ...} +TOKEN-DATA ::= CLASS {&id INTEGER UNIQUE, + &Type +}WITH SYNTAX {&Type + IDENTIFIED BY &id +} ---bind-token-signed-data TOKEN-DATA ::= {BindTokenSignedData --- IDENTIFIED BY 1 ---} +TokenDataTable TOKEN-DATA ::= + {bind-token-signed-data | message-token-signed-data | + message-token-encrypted-data | bind-token-encrypted-data, ...} --- This is the only Token Data we know ---TokenData ::= BindTokenSignedData +bind-token-signed-data TOKEN-DATA ::= {BindTokenSignedData + IDENTIFIED BY 1 +} BindTokenSignedData ::= RandomNumber RandomNumber ::= BIT STRING ---message-token-signed-data TOKEN-DATA ::= { --- MessageTokenSignedData --- IDENTIFIED BY 2 ---} +message-token-signed-data TOKEN-DATA ::= { + MessageTokenSignedData + IDENTIFIED BY 2 +} MessageTokenSignedData ::= SEQUENCE { content-confidentiality-algorithm-identifier @@ -2475,10 +2441,10 @@ MessageTokenSignedData ::= SEQUENCE { message-sequence-number [4] INTEGER OPTIONAL } ---message-token-encrypted-data TOKEN-DATA ::= { --- MessageTokenEncryptedData --- IDENTIFIED BY 3 ---} +message-token-encrypted-data TOKEN-DATA ::= { + MessageTokenEncryptedData + IDENTIFIED BY 3 +} MessageTokenEncryptedData ::= SEQUENCE { content-confidentiality-key [0] EncryptionKey OPTIONAL, @@ -2490,10 +2456,10 @@ MessageTokenEncryptedData ::= SEQUENCE { EncryptionKey ::= BIT STRING ---bind-token-encrypted-data TOKEN-DATA ::= { --- BindTokenEncryptedData --- IDENTIFIED BY 4 ---} +bind-token-encrypted-data TOKEN-DATA ::= { + BindTokenEncryptedData + IDENTIFIED BY 4 +} BindTokenEncryptedData ::= EXTERNAL @@ -2515,15 +2481,19 @@ PrivacyMark ::= PrintableString(SIZE (1..ub-privacy-mark-length)) SecurityCategories ::= SET SIZE (1..ub-security-categories) OF SecurityCategory +SECURITY-CATEGORY ::= TYPE-IDENTIFIER + SecurityCategory ::= SEQUENCE { - type [0] OBJECT IDENTIFIER --SECURITY-CATEGORY.&id({SecurityCategoriesTable})--, - value [1] ANY -- SECURITY-CATEGORY.&Type({SecurityCategoriesTable}{@type}) + type [0] --SECURITY-CATEGORY.&id({SecurityCategoriesTable})-- SecurityCategoryIdentifier, + value [1] --SECURITY-CATEGORY.&Type({SecurityCategoriesTable}{@type})-- SecurityCategoryValue } ---SECURITY-CATEGORY ::= TYPE-IDENTIFIER +SecurityCategoryIdentifier ::= OBJECT IDENTIFIER +SecurityCategoryValue ::= ANY + ---SecurityCategoriesTable SECURITY-CATEGORY ::= --- {...} +SecurityCategoriesTable SECURITY-CATEGORY ::= + {...} END -- of MTSAbstractService diff --git a/asn1/x411/MTSAccessProtocol.asn b/asn1/x411/MTSAccessProtocol.asn new file mode 100644 index 0000000000..8836cb73df --- /dev/null +++ b/asn1/x411/MTSAccessProtocol.asn @@ -0,0 +1,322 @@ +-- $Id:$ +-- http://www.itu.int/ITU-T/asn1/database/itu-t/x/x411/1999/index.html +-- Module MTSAccessProtocol (X.419:06/1999) +MTSAccessProtocol {joint-iso-itu-t mhs(6) protocols(0) modules(0) + mts-access-protocol(1) version-1999(1)} DEFINITIONS IMPLICIT TAGS ::= +BEGIN + +-- Prologue +IMPORTS + -- MTS Abstract Service + administration, delivery, mts-access-contract, mts-connect, + mts-forced-access-contract, submission + --== + FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0) + mts-abstract-service(1) version-1999(1)} + -- MTS Abstract Service (1988) + administration-88, delivery-88, mts-access-contract-88, + mts-forced-access-contract-88 + --== + FROM MTSAbstractService88 {joint-iso-itu-t mhs(6) mts(3) modules(0) + mts-abstract-service(1) version-1988(1988)} + -- Remote Operations + APPLICATION-CONTEXT + --== + FROM Remote-Operations-Information-Objects-extensions {joint-iso-itu-t + remote-operations(4) informationObjects-extensions(8) version1(0)} + Code + --== + FROM Remote-Operations-Information-Objects {joint-iso-itu-t + remote-operations(4) informationObjects(5) version1(0)} + -- Bind{} ,-- InvokeId --, Unbind{} -- + --== + FROM Remote-Operations-Generic-ROS-PDUs {joint-iso-itu-t + remote-operations(4) generic-ROS-PDUs(6) version1(0)} +-- ROS-SingleAS{} + --== +-- FROM Remote-Operations-Useful-Definitions {joint-iso-itu-t +-- remote-operations(4) useful-definitions(7) version1(0)} + acse, association-by-RTSE, pData, transfer-by-RTSE + --== + FROM Remote-Operations-Realizations {joint-iso-itu-t remote-operations(4) + realizations(9) version1(0)} + acse-abstract-syntax + --== + FROM Remote-Operations-Abstract-Syntaxes {joint-iso-itu-t + remote-operations(4) remote-operations-abstract-syntaxes(12) version1(0)} + -- Reliable Transfer + RTORQapdu, RTOACapdu, RTORJapdu + FROM Reliable-Transfer-APDU {joint-iso-itu-t reliable-transfer(3) apdus(0)} + -- Object Identifiers + id-ac-mts-access-88, id-ac-mts-access-94, id-ac-mts-forced-access-88, + id-ac-mts-forced-access-94, id-ac-mts-forced-reliable-access-88, + id-ac-mts-forced-reliable-access-94, id-ac-mts-reliable-access-88, + id-ac-mts-reliable-access-94, id-as-mase-88, id-as-mase-94, id-as-mdse-88, + id-as-mdse-94, id-as-msse, id-as-mts, id-as-mts-rtse + --== + FROM MHSProtocolObjectIdentifiers {joint-iso-itu-t mhs(6) protocols(0) + modules(0) object-identifiers(0) version-1994(0)}; + +RTSE-apdus ::= CHOICE { + rtorq-apdu [16] IMPLICIT RTORQapdu, + rtoac-apdu [17] IMPLICIT RTOACapdu, + rtorj-apdu [18] IMPLICIT RTORJapdu, + rttp-apdu RTTPapdu, + rttr-apdu RTTRapdu, + rtab-apdu [22] IMPLICIT RTABapdu +} + +RTTPapdu ::= -- priority-- INTEGER + +RTTRapdu ::= OCTET STRING + +RTABapdu ::= SET { + abortReason [0] IMPLICIT AbortReason OPTIONAL, + reflectedParameter [1] IMPLICIT BIT STRING OPTIONAL, + -- 8 bits maximum, only if abortReason is invalidParameter + userdataAB + [2] --TYPE-IDENTIFIER.&Type-- OBJECT IDENTIFIER + OPTIONAL -- only in normal mode and if abortReason-- + -- is userError +} + +AbortReason ::= INTEGER { + localSystemProblem(0), + invalidParameter(1), -- reflectedParameter supplied + unrecognizedActivity(2), + temporaryProblem(3), + -- the RTSE cannot accept a session for a period of time + protocolError(4), -- RTSE level protocol error + permanentProblem(5), --provider-abort solely in normal mode + userError(6), -- user-abort solely in normal mode + transferCompleted(7) -- activity can't be discarded--} + +-- APPLICATION CONTEXTS +-- 1994 Application Contexts omitting RTSE +-- MTS-user initiated +mts-access-94 APPLICATION-CONTEXT ::= { + CONTRACT mts-access-contract + ESTABLISHED BY acse + INFORMATION TRANSFER BY pData + ABSTRACT SYNTAXES + {acse-abstract-syntax | message-submission-abstract-syntax | + message-delivery-abstract-syntax | + message-administration-abstract-syntax-94 | + mts-bind-unbind-abstract-syntax} + APPLICATION CONTEXT NAME id-ac-mts-access-94 +} + +-- MTS initiated +mts-forced-access-94 APPLICATION-CONTEXT ::= { + CONTRACT mts-forced-access-contract + ESTABLISHED BY acse + INFORMATION TRANSFER BY pData + ABSTRACT SYNTAXES + {acse-abstract-syntax | message-submission-abstract-syntax | + message-delivery-abstract-syntax | + message-administration-abstract-syntax-94 | + mts-bind-unbind-abstract-syntax} + APPLICATION CONTEXT NAME id-ac-mts-forced-access-94 +} + +-- 1994 Application Contexts including RTSE in normal mode +-- MTS-user initiated +mts-reliable-access-94 APPLICATION-CONTEXT ::= { + CONTRACT mts-access-contract + ESTABLISHED BY association-by-RTSE + INFORMATION TRANSFER BY transfer-by-RTSE + ABSTRACT SYNTAXES + {acse-abstract-syntax | message-submission-abstract-syntax | + message-delivery-abstract-syntax | + message-administration-abstract-syntax-94 | + mts-bind-unbind-rtse-abstract-syntax} + APPLICATION CONTEXT NAME id-ac-mts-reliable-access-94 +} + +-- MTS initiated +mts-forced-reliable-access-94 APPLICATION-CONTEXT ::= { + CONTRACT mts-forced-access-contract + ESTABLISHED BY association-by-RTSE + INFORMATION TRANSFER BY transfer-by-RTSE + ABSTRACT SYNTAXES + {acse-abstract-syntax | message-submission-abstract-syntax | + message-delivery-abstract-syntax | + message-administration-abstract-syntax-94 | + mts-bind-unbind-rtse-abstract-syntax} + APPLICATION CONTEXT NAME id-ac-mts-forced-reliable-access-94 +} + +-- 1988 Application Contexts omitting RTSE +-- MTS-user initiated +mts-access-88 APPLICATION-CONTEXT ::= { + CONTRACT mts-access-contract-88 + ESTABLISHED BY acse + INFORMATION TRANSFER BY pData + ABSTRACT SYNTAXES + {acse-abstract-syntax | message-submission-abstract-syntax | + message-delivery-abstract-syntax-88 | + message-administration-abstract-syntax-88 | + mts-bind-unbind-abstract-syntax} + APPLICATION CONTEXT NAME id-ac-mts-access-88 +} + +-- MTS initiated +mts-forced-access-88 APPLICATION-CONTEXT ::= { + CONTRACT mts-forced-access-contract-88 + ESTABLISHED BY acse + INFORMATION TRANSFER BY pData + ABSTRACT SYNTAXES + {acse-abstract-syntax | message-submission-abstract-syntax | + message-delivery-abstract-syntax-88 | + message-administration-abstract-syntax-88 | + mts-bind-unbind-abstract-syntax} + APPLICATION CONTEXT NAME id-ac-mts-forced-access-88 +} + +-- 1988 Application Contexts including RTSE in normal mode +-- MTS-user initiated +mts-reliable-access-88 APPLICATION-CONTEXT ::= { + CONTRACT mts-access-contract-88 + ESTABLISHED BY association-by-RTSE + INFORMATION TRANSFER BY transfer-by-RTSE + ABSTRACT SYNTAXES + {acse-abstract-syntax | message-submission-abstract-syntax | + message-delivery-abstract-syntax-88 | + message-administration-abstract-syntax-88 | + mts-bind-unbind-rtse-abstract-syntax} + APPLICATION CONTEXT NAME id-ac-mts-reliable-access-88 +} + +-- MTS initiated +mts-forced-reliable-access-88 APPLICATION-CONTEXT ::= { + CONTRACT mts-forced-access-contract-88 + ESTABLISHED BY association-by-RTSE + INFORMATION TRANSFER BY transfer-by-RTSE + ABSTRACT SYNTAXES + {acse-abstract-syntax | message-submission-abstract-syntax | + message-delivery-abstract-syntax-88 | + message-administration-abstract-syntax-88 | + mts-bind-unbind-rtse-abstract-syntax} + APPLICATION CONTEXT NAME id-ac-mts-forced-reliable-access-88 +} + +-- ABSTRACT-SYNTAXES +-- Abstract Syntax for MTS-Bind and MTS-Unbind +mts-bind-unbind-abstract-syntax ABSTRACT-SYNTAX ::= { + MTSBindUnbindPDUs + IDENTIFIED BY id-as-mts +} + +--MTSBindUnbindPDUs ::= CHOICE { +-- bind Bind{mts-connect.&bind}, +-- unbind Unbind{mts-connect.&unbind} +--} + +-- Abstract Syntax for MTS-Bind and MTS-Unbind with RTSE +mts-bind-unbind-rtse-abstract-syntax ABSTRACT-SYNTAX ::= { + RTSE-apdus -- With MTS Bind and MTS Unbind -- + IDENTIFIED BY id-as-mts-rtse +} + +-- Abstract Syntax for Message Submission Service Element +message-submission-abstract-syntax ABSTRACT-SYNTAX ::= { + MessageSubmissionPDUs + IDENTIFIED BY id-as-msse +} + +--MessageSubmissionPDUs ::= ROS-SingleAS{{MTSInvokeIds}, submission} + +MTSInvokeIds ::= InvokeId -- (ALL EXCEPT absent:NULL) + +-- Remote Operations +op-message-submission Code ::= local:3 + +op-probe-submission Code ::= local:4 + +op-cancel-deferred-delivery Code ::= local:7 + +op-submission-control Code ::= local:2 + +-- Remote Errors +err-submission-control-violated Code ::= local:1 + +err-element-of-service-not-subscribed Code ::= local:4 + +err-deferred-delivery-cancellation-rejected Code ::= local:8 + +err-originator-invalid Code ::= local:2 + +err-recipient-improperly-specified Code ::= local:3 + +err-message-submission-identifier-invalid Code ::= local:7 + +err-inconsistent-request Code ::= local:11 + +err-security-error Code ::= local:12 + +err-unsupported-critical-function Code ::= local:13 + +err-remote-bind-error Code ::= local:15 + +-- Abstract Syntax for Message Delivery Service Element 1994 +message-delivery-abstract-syntax ABSTRACT-SYNTAX ::= { + MessageDeliveryPDUs + IDENTIFIED BY id-as-mdse-94 +} + +--MessageDeliveryPDUs ::= ROS-SingleAS{{MTSInvokeIds}, delivery} + +-- Abstract Syntax for Message Delivery Service Element 1988 +message-delivery-abstract-syntax-88 ABSTRACT-SYNTAX ::= { + MessageDeliveryPDUs88 + IDENTIFIED BY id-as-mdse-88 +} + +--MessageDeliveryPDUs88 ::= ROS-SingleAS{{MTSInvokeIds}, delivery-88} + +-- Remote Operations +op-message-delivery Code ::= local:5 + +op-report-delivery Code ::= local:6 + +op-delivery-control Code ::= local:2 + +-- Remote Errors +err-delivery-control-violated Code ::= local:1 + +err-control-violates-registration Code ::= local:14 + +err-operation-refused Code ::= local:16 + +-- Abstract Syntax for Message Administration Service Element 1994 +message-administration-abstract-syntax-94 ABSTRACT-SYNTAX ::= { + MessageAdministrationPDUs + IDENTIFIED BY id-as-mase-94 +} + +--MessageAdministrationPDUs ::= ROS-SingleAS{{MTSInvokeIds}, administration} + +-- Abstract Syntax for Message Administration Service Element 1988 +message-administration-abstract-syntax-88 ABSTRACT-SYNTAX ::= { + MessageAdministrationPDUs88 + IDENTIFIED BY id-as-mase-88 +} + +--MessageAdministrationPDUs88 ::= ROS-SingleAS{{MTSInvokeIds}, administration-88} + +-- Remote Operations +op-register Code ::= local:1 + +op-change-credentials Code ::= local:8 + +-- Remote Errors +err-register-rejected Code ::= local:10 + +err-new-credentials-unacceptable Code ::= local:6 + +err-old-credentials-incorrectly-specified Code ::= local:5 + +END -- of MTSAccessProtocol + +-- 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 6cd296647f..dc3098b51c 100644 --- a/asn1/x411/Makefile.common +++ b/asn1/x411/Makefile.common @@ -32,7 +32,7 @@ EXPORT_FILES = $(PROTOCOL_NAME)-exp.cnf EXT_ASN_FILE_LIST = ASN_FILE_LIST = MTAAbstractService.asn \ - MTSAbstractService.asn + MTSAbstractService.asn MTSAccessProtocol.asn MHSProtocolObjectIdentifiers.asn # The packet-$(PROTOCOL_NAME)-template.h and $(PROTOCOL_NAME).asn # files do not exist for all protocols: Please add/remove as required. diff --git a/asn1/x411/packet-x411-template.c b/asn1/x411/packet-x411-template.c index 0a5bd4800f..b170cbda8c 100644 --- a/asn1/x411/packet-x411-template.c +++ b/asn1/x411/packet-x411-template.c @@ -60,6 +60,7 @@ void prefs_register_x411(void); /* forward declaration for use in preferences re /* Initialize the protocol and registered fields */ int proto_x411 = -1; +int proto_p3 = -1; static struct SESSION_DATA_STRUCTURE* session = NULL; static int extension_id = -1; /* integer extension id */ @@ -84,6 +85,7 @@ static int hf_x411_MTABindError_PDU = -1; /* Initialize the subtree pointers */ static gint ett_x411 = -1; +static gint ett_p3 = -1; static gint ett_x411_content_unknown = -1; static gint ett_x411_bilateral_information = -1; static gint ett_x411_additional_information = -1; @@ -97,9 +99,26 @@ static dissector_table_t x411_extension_dissector_table; static dissector_table_t x411_extension_attribute_dissector_table; static dissector_table_t x411_tokendata_dissector_table; +#include "packet-x411-val.h" + +#include "packet-x411-table.c" /* operation and error codes */ #include "packet-x411-fn.c" +#include "packet-x411-table11.c" /* operation argument/result dissectors */ +#include "packet-x411-table21.c" /* error dissector */ + +static const ros_info_t p3_ros_info = { + "P3", + &proto_p3, + &ett_p3, + p3_opr_code_string_vals, + p3_opr_tab, + p3_err_code_string_vals, + p3_err_tab +}; + + char* x411_get_last_oraddress() { return oraddress; } /* @@ -239,6 +258,7 @@ void proto_register_x411(void) { /* List of subtrees */ static gint *ett[] = { &ett_x411, + &ett_p3, &ett_x411_content_unknown, &ett_x411_bilateral_information, &ett_x411_additional_information, @@ -253,6 +273,9 @@ void proto_register_x411(void) { /* Register protocol */ proto_x411 = proto_register_protocol(PNAME, PSNAME, PFNAME); register_dissector("x411", dissect_x411, proto_x411); + + proto_p3 = proto_register_protocol("X.411 Message Access Service", "P3", "p3"); + /* Register fields and subtrees */ proto_register_field_array(proto_x411, hf, array_length(hf)); proto_register_subtree_array(ett, array_length(ett)); @@ -296,6 +319,25 @@ void proto_reg_handoff_x411(void) { /* remember the tpkt handler for change in preferences */ tpkt_handle = find_dissector("tpkt"); + /* APPLICATION CONTEXT */ + + oid_add_from_string("id-ac-mts-access-88", id_ac_mts_access_88); + oid_add_from_string("id-ac-mts-forced-access-88", id_ac_mts_forced_access_88); + oid_add_from_string("id-ac-mts-access-94", id_ac_mts_access_94); + oid_add_from_string("id-ac-mts-forced-access-94", id_ac_mts_forced_access_94); + + + /* Register P3 with ROS */ + register_ros_protocol_info(id_as_msse, &p3_ros_info, 0, "id-as-msse", FALSE); + + register_ros_protocol_info(id_as_mdse_88, &p3_ros_info, 0, "id-as-mdse-88", FALSE); + register_ros_protocol_info(id_as_mdse_94, &p3_ros_info, 0, "id-as-mdse-94", FALSE); + + register_ros_protocol_info(id_as_mase_88, &p3_ros_info, 0, "id-as-mase-88", FALSE); + register_ros_protocol_info(id_as_mase_94, &p3_ros_info, 0, "id-as-mase-94", FALSE); + + register_ros_protocol_info(id_as_mts, &p3_ros_info, 0, "id-as-mts", FALSE); + } void prefs_register_x411(void) { diff --git a/asn1/x411/x411.cnf b/asn1/x411/x411.cnf index 1865469c77..86067e12e1 100644 --- a/asn1/x411/x411.cnf +++ b/asn1/x411/x411.cnf @@ -1,11 +1,13 @@ +#.TYPE_ATTR +CountryName TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = VALS(x411_CountryName_U_vals) BITMASK = 0 +Time TYPE = FT_STRING DISPLAY = BASE_NONE STRING = NULL BITMASK = 0 + #.IMPORT ../x509ce/x509ce-exp.cnf #.IMPORT ../x509if/x509if-exp.cnf #.IMPORT ../x509sat/x509sat-exp.cnf #.IMPORT ../x509af/x509af-exp.cnf - -#.TYPE_ATTR -CountryName TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = VALS(x411_CountryName_U_vals) BITMASK = 0 -Time TYPE = FT_STRING DISPLAY = BASE_NONE STRING = NULL BITMASK = 0 +#.IMPORT ../ros/ros-exp.cnf +#.IMPORT ../rtse/rtse-exp.cnf #.OMIT_ASSIGNMENT # These gives unused code warnings @@ -16,23 +18,6 @@ ContentIntegrityAlgorithmIdentifier MessageOriginAuthenticationAlgorithmIdentifier ProbeOriginAuthenticationAlgorithmIdentifier ReportOriginAuthenticationAlgorithmIdentifier -MessageSubmissionResult -ProbeSubmissionArgument -ProbeSubmissionResult -CancelDeferredDeliveryArgument -CancelDeferredDeliveryResult -SubmissionControlArgument -SubmissionControlResult -MessageDeliveryArgument -MessageDeliveryResult -ReportDeliveryResult -DeliveryControlArgument -DeliveryControlResult -ChangeCredentialsArgument -# Currently not used -MTSBindArgument -MTSBindResult -MTSBindError #.END #.EXPORTS @@ -59,9 +44,9 @@ MessageSubmissionEnvelope MessageSubmissionIdentifier MessageSubmissionTime MessageToken -MTSOriginatorName ORAddress ORAddressAndOrDirectoryName +OriginatorName ORName OriginalEncodedInformationTypes OriginatingMTACertificate @@ -84,6 +69,80 @@ NonDeliveryReasonCode NonDeliveryDiagnosticCode # Forward declaration of Classes +# CONNECTION-PACKAGE CONTRACT from ROS +#.CLASS CONNECTION-PACKAGE +&bind ClassReference OPERATION +&unbind ClassReference OPERATION +&responderCanUnbind BooleanType +&unbindCanFail BooleanType +&id ObjectIdentifierType +#.END + +#.CLASS APPLICATION-CONTEXT +&associationContract ClassReference CONTRACT +&associationRealization +&transferRealization +&AbstractSyntaxes ClassReference ABSTRACT-SYNTAX +&applicationContextName ObjectIdentifierType +#.END + + +#.CLASS CONTRACT +&connection ClassReference CONNECTION-PACKAGE +&OperationsOf ClassReference OPERATION-PACKAGE +&InitiatorConsumerOf ClassReference OPERATION-PACKAGE +&InitiatorSupplierOf ClassReference OPERATION-PACKAGE +&id ObjectIdentifierType +#.END + +#.CLASS MHS-OBJECT +&Is ClassReference MHS-OBJECT +&Initiates ClassReference CONTRACT +&Responds ClassReference CONTRACT +&InitiatesAndResponds ClassReference CONTRACT +&id ObjectIdentifierType +#.END + +# Ros OPERATION +#.CLASS ABSTRACT-OPERATION +&ArgumentType +&argumentTypeOptional BooleanType +&returnResult BooleanType +&ResultType +&resultTypeOptional BooleanType +&Errors ClassReference ERROR +&Linked ClassReference OPERATION +&synchronous BooleanType +&alwaysReturns BooleanType +&InvokePriority _FixedTypeValueSetFieldSpec +&ResultPriority _FixedTypeValueSetFieldSpec +&operationCode TypeReference Code +#.END + +# ros ERROR +#.CLASS ABSTRACT-ERROR +&ParameterType +¶meterTypeOptional BooleanType +&ErrorPriority _FixedTypeValueSetFieldSpec +&errorCode TypeReference Code +#.END + +#.CLASS EXTENSION +&id TypeReference ExtensionType +&Type +&absent _VariableTypeValueSetFieldSpec +&recommended TypeReference Criticality +#.END + +#.CLASS EXTENSION-ATTRIBUTE +&id IntegerType +&Type +#.END + +#.CLASS TOKEN-DATA +&id IntegerType +&Type +#.END #.TYPE_RENAME @@ -153,6 +212,12 @@ MessageSubmissionArgument/envelope message-submission-envelope OtherMessageDeliveryFields/content-type delivered-content-type Report/content report-content +ReportDeliveryResult/extensions max-extensions + +OtherMessageDeliveryFields/originator-name delivered-originator-name + +PDSParameter/teletex-string pds-teletex-string + PerDomainBilateralInformation/domain bilateral-domain Report/envelope report-envelope @@ -191,9 +256,60 @@ CertificateSelectors/content-integrity-check selectors-content-integrity-check #.PDU +# This table creates the value_sting to name P3 operation codes and errors +# in file packet-p3-table.c which is included in the template file +# +#.TABLE_HDR +/* P3 ABSTRACT-OPERATIONS */ +const value_string p3_opr_code_string_vals[] = { +#.TABLE_BODY OPERATION + { %(&operationCode)s, "%(_ident)s" }, +#.TABLE_FTR + { 0, NULL } +}; +#.END + +#.TABLE_HDR +/* P3 ERRORS */ +static const value_string p3_err_code_string_vals[] = { +#.TABLE_BODY ERROR + { %(&errorCode)s, "%(_ident)s" }, +#.TABLE_FTR + { 0, NULL } +}; +#.END + +# Create a table of opcode and corresponding args and res +#.TABLE11_HDR +static const ros_opr_t p3_opr_tab[] = { +#.TABLE11_BODY OPERATION + /* %(_name)s */ + { %(&operationCode)-25s, %(_argument_pdu)s, %(_result_pdu)s }, +#.TABLE11_FTR + { 0, (new_dissector_t)(-1), (new_dissector_t)(-1) }, +}; +#.END + +#.TABLE21_HDR +static const ros_err_t p3_err_tab[] = { +#.TABLE21_BODY ERROR + /* %(_name)s*/ + { %(&errorCode)s, %(_parameter_pdu)s }, +#.TABLE21_FTR + { 0, (new_dissector_t)(-1) }, +}; +#.END + +#.PDU_NEW +ERROR.&ParameterType +OPERATION.&ArgumentType +OPERATION.&ResultType +#.END + + #.REGISTER RecipientReassignmentProhibited N x411.extension 1 -MTSOriginatorRequestedAlternateRecipient N x411.extension 2 +OriginatorRequestedAlternateRecipient N x411.extension 2 DLExpansionProhibited N x411.extension 3 ConversionWithLossProhibited N x411.extension 4 LatestDeliveryTime N x411.extension 5 @@ -277,7 +393,7 @@ UniversalPosteRestanteAddress N x411.extension-attribute 38 UniversalUniquePostalName N x411.extension-attribute 39 UniversalLocalPostalAttributes N x411.extension-attribute 40 -ReportDeliveryArgument B "2.6.1.4.14" "id-et-report" +#ReportDeliveryArgument B "2.6.1.4.14" "id-et-report" AsymmetricToken B "2.6.3.6.0" "id-tok-asymmetricToken" MTANameAndOptionalGDI B "2.6.5.6.0" "id-on-mtaName" @@ -405,7 +521,7 @@ MessageToken B "2.6.1.7.36" "id-hat-forwarded-token" } -#.FN_BODY SecurityCategory/value +#.FN_BODY SecurityCategoryValue offset = dissect_unknown_ber(actx->pinfo, tvb, offset, tree); diff --git a/epan/dissectors/packet-p7.c b/epan/dissectors/packet-p7.c index 0d83ac1803..42a6408101 100644 --- a/epan/dissectors/packet-p7.c +++ b/epan/dissectors/packet-p7.c @@ -1,7 +1,7 @@ /* Do not modify this file. */ /* It is created automatically by the ASN.1 to Wireshark dissector compiler */ /* packet-p7.c */ -/* ../../tools/asn2wrs.py -b -e -L -p p7 -c ./p7.cnf -s ./packet-p7-template -D . MSAbstractService.asn MSGeneralAttributeTypes.asn MSAccessProtocol.asn */ +/* ../../tools/asn2wrs.py -b -e -L -p p7 -c p7.cnf -s packet-p7-template MSAbstractService.asn MSGeneralAttributeTypes.asn MSAccessProtocol.asn */ /* Input file: packet-p7-template.c */ @@ -346,7 +346,7 @@ static int hf_p7_extensions = -1; /* SET_OF_ExtensionField */ static int hf_p7_extensions_item = -1; /* ExtensionField */ static int hf_p7_ms_message_result = -1; /* CommonSubmissionResults */ static int hf_p7_store_draft_result = -1; /* CommonSubmissionResults */ -static int hf_p7_originator_name = -1; /* MTSOriginatorName */ +static int hf_p7_originator_name = -1; /* OriginatorName */ static int hf_p7_original_encoded_information_types = -1; /* OriginalEncodedInformationTypes */ static int hf_p7_content_type = -1; /* ContentType */ static int hf_p7_content_length = -1; /* ContentLength */ @@ -2804,7 +2804,7 @@ dissect_p7_SEQUENCE_OF_PerRecipientProbeSubmissionFields(gboolean implicit_tag _ static const ber_sequence_t MSProbeSubmissionArgument_set[] = { - { &hf_p7_originator_name , BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_MTSOriginatorName }, + { &hf_p7_originator_name , BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_OriginatorName }, { &hf_p7_original_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginalEncodedInformationTypes }, { &hf_p7_content_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x411_ContentType }, { &hf_p7_content_identifier, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ContentIdentifier }, @@ -5256,7 +5256,7 @@ void proto_register_p7(void) { { &hf_p7_originator_name, { "originator-name", "p7.originator_name", FT_NONE, BASE_NONE, NULL, 0, - "x411.MTSOriginatorName", HFILL }}, + "x411.OriginatorName", HFILL }}, { &hf_p7_original_encoded_information_types, { "original-encoded-information-types", "p7.original_encoded_information_types", FT_NONE, BASE_NONE, NULL, 0, diff --git a/epan/dissectors/packet-p7.h b/epan/dissectors/packet-p7.h index 6859852682..4868739c29 100644 --- a/epan/dissectors/packet-p7.h +++ b/epan/dissectors/packet-p7.h @@ -1,7 +1,7 @@ /* Do not modify this file. */ /* It is created automatically by the ASN.1 to Wireshark dissector compiler */ /* packet-p7.h */ -/* ../../tools/asn2wrs.py -b -e -L -p p7 -c ./p7.cnf -s ./packet-p7-template -D . MSAbstractService.asn MSGeneralAttributeTypes.asn MSAccessProtocol.asn */ +/* ../../tools/asn2wrs.py -b -e -L -p p7 -c p7.cnf -s packet-p7-template MSAbstractService.asn MSGeneralAttributeTypes.asn MSAccessProtocol.asn */ /* Input file: packet-p7-template.h */ diff --git a/epan/dissectors/packet-x411.c b/epan/dissectors/packet-x411.c index 0a8e14beba..b0c36d4adf 100644 --- a/epan/dissectors/packet-x411.c +++ b/epan/dissectors/packet-x411.c @@ -1,7 +1,7 @@ /* Do not modify this file. */ /* It is created automatically by the ASN.1 to Wireshark dissector compiler */ /* packet-x411.c */ -/* ../../tools/asn2wrs.py -b -e -p x411 -c ./x411.cnf -s ./packet-x411-template -D . MTAAbstractService.asn MTSAbstractService.asn */ +/* ../../tools/asn2wrs.py -b -e -p x411 -c x411.cnf -s packet-x411-template MTAAbstractService.asn MTSAbstractService.asn MTSAccessProtocol.asn MHSProtocolObjectIdentifiers.asn */ /* Input file: packet-x411-template.c */ @@ -68,6 +68,7 @@ void prefs_register_x411(void); /* forward declaration for use in preferences re /* Initialize the protocol and registered fields */ int proto_x411 = -1; +int proto_p3 = -1; static struct SESSION_DATA_STRUCTURE* session = NULL; static int extension_id = -1; /* integer extension id */ @@ -95,10 +96,46 @@ static int hf_x411_InternalTraceInformation_PDU = -1; /* InternalTraceInformati static int hf_x411_InternalTraceInformationElement_PDU = -1; /* InternalTraceInformationElement */ static int hf_x411_TraceInformation_PDU = -1; /* TraceInformation */ static int hf_x411_TraceInformationElement_PDU = -1; /* TraceInformationElement */ +static int hf_x411_MTSBindArgument_PDU = -1; /* MTSBindArgument */ +static int hf_x411_MTSBindResult_PDU = -1; /* MTSBindResult */ +static int hf_x411_PAR_mts_bind_error_PDU = -1; /* PAR_mts_bind_error */ +static int hf_x411_MessageSubmissionArgument_PDU = -1; /* MessageSubmissionArgument */ +static int hf_x411_MessageSubmissionResult_PDU = -1; /* MessageSubmissionResult */ +static int hf_x411_ProbeSubmissionArgument_PDU = -1; /* ProbeSubmissionArgument */ +static int hf_x411_ProbeSubmissionResult_PDU = -1; /* ProbeSubmissionResult */ +static int hf_x411_CancelDeferredDeliveryArgument_PDU = -1; /* CancelDeferredDeliveryArgument */ +static int hf_x411_CancelDeferredDeliveryResult_PDU = -1; /* CancelDeferredDeliveryResult */ +static int hf_x411_SubmissionControlArgument_PDU = -1; /* SubmissionControlArgument */ +static int hf_x411_SubmissionControlResult_PDU = -1; /* SubmissionControlResult */ +static int hf_x411_PAR_submission_control_violated_PDU = -1; /* PAR_submission_control_violated */ +static int hf_x411_PAR_element_of_service_not_subscribed_PDU = -1; /* PAR_element_of_service_not_subscribed */ +static int hf_x411_PAR_deferred_delivery_cancellation_rejected_PDU = -1; /* PAR_deferred_delivery_cancellation_rejected */ +static int hf_x411_PAR_originator_invalid_PDU = -1; /* PAR_originator_invalid */ +static int hf_x411_ImproperlySpecifiedRecipients_PDU = -1; /* ImproperlySpecifiedRecipients */ +static int hf_x411_PAR_message_submission_identifier_invalid_PDU = -1; /* PAR_message_submission_identifier_invalid */ +static int hf_x411_PAR_inconsistent_request_PDU = -1; /* PAR_inconsistent_request */ +static int hf_x411_SecurityProblem_PDU = -1; /* SecurityProblem */ +static int hf_x411_PAR_unsupported_critical_function_PDU = -1; /* PAR_unsupported_critical_function */ +static int hf_x411_PAR_remote_bind_error_PDU = -1; /* PAR_remote_bind_error */ static int hf_x411_MessageSubmissionTime_PDU = -1; /* MessageSubmissionTime */ +static int hf_x411_MessageDeliveryArgument_PDU = -1; /* MessageDeliveryArgument */ +static int hf_x411_MessageDeliveryResult_PDU = -1; /* MessageDeliveryResult */ static int hf_x411_ReportDeliveryArgument_PDU = -1; /* ReportDeliveryArgument */ +static int hf_x411_ReportDeliveryResult_PDU = -1; /* ReportDeliveryResult */ +static int hf_x411_DeliveryControlArgument_PDU = -1; /* DeliveryControlArgument */ +static int hf_x411_DeliveryControlResult_PDU = -1; /* DeliveryControlResult */ +static int hf_x411_PAR_delivery_control_violated_PDU = -1; /* PAR_delivery_control_violated */ +static int hf_x411_PAR_control_violates_registration_PDU = -1; /* PAR_control_violates_registration */ +static int hf_x411_RefusedOperation_PDU = -1; /* RefusedOperation */ static int hf_x411_RecipientCertificate_PDU = -1; /* RecipientCertificate */ static int hf_x411_ProofOfDelivery_PDU = -1; /* ProofOfDelivery */ +static int hf_x411_RegisterArgument_PDU = -1; /* RegisterArgument */ +static int hf_x411_RegisterResult_PDU = -1; /* RegisterResult */ +static int hf_x411_ChangeCredentialsArgument_PDU = -1; /* ChangeCredentialsArgument */ +static int hf_x411_RES_change_credentials_PDU = -1; /* RES_change_credentials */ +static int hf_x411_PAR_register_rejected_PDU = -1; /* PAR_register_rejected */ +static int hf_x411_PAR_new_credentials_unacceptable_PDU = -1; /* PAR_new_credentials_unacceptable */ +static int hf_x411_PAR_old_credentials_incorrectly_specified_PDU = -1; /* PAR_old_credentials_incorrectly_specified */ static int hf_x411_MessageSubmissionEnvelope_PDU = -1; /* MessageSubmissionEnvelope */ static int hf_x411_PerRecipientMessageSubmissionFields_PDU = -1; /* PerRecipientMessageSubmissionFields */ static int hf_x411_ProbeSubmissionEnvelope_PDU = -1; /* ProbeSubmissionEnvelope */ @@ -117,7 +154,7 @@ static int hf_x411_MessageDeliveryTime_PDU = -1; /* MessageDeliveryTime */ static int hf_x411_DeliveryFlags_PDU = -1; /* DeliveryFlags */ static int hf_x411_SubjectSubmissionIdentifier_PDU = -1; /* SubjectSubmissionIdentifier */ static int hf_x411_RecipientReassignmentProhibited_PDU = -1; /* RecipientReassignmentProhibited */ -static int hf_x411_MTSOriginatorRequestedAlternateRecipient_PDU = -1; /* MTSOriginatorRequestedAlternateRecipient */ +static int hf_x411_OriginatorRequestedAlternateRecipient_PDU = -1; /* OriginatorRequestedAlternateRecipient */ static int hf_x411_DLExpansionProhibited_PDU = -1; /* DLExpansionProhibited */ static int hf_x411_ConversionWithLossProhibited_PDU = -1; /* ConversionWithLossProhibited */ static int hf_x411_LatestDeliveryTime_PDU = -1; /* LatestDeliveryTime */ @@ -279,19 +316,22 @@ static int hf_x411_other_actions = -1; /* OtherActions */ static int hf_x411__untag_item = -1; /* TraceInformationElement */ static int hf_x411_domain_supplied_information = -1; /* DomainSuppliedInformation */ static int hf_x411_attempted_domain = -1; /* GlobalDomainIdentifier */ +static int hf_x411_initiator_name = -1; /* ObjectName */ +static int hf_x411_messages_waiting = -1; /* MessagesWaiting */ +static int hf_x411_responder_name = -1; /* ObjectName */ static int hf_x411_user_agent = -1; /* ORAddressAndOptionalDirectoryName */ static int hf_x411_mTA = -1; /* MTAName */ static int hf_x411_message_store = -1; /* ORAddressAndOptionalDirectoryName */ static int hf_x411_urgent = -1; /* DeliveryQueue */ static int hf_x411_normal = -1; /* DeliveryQueue */ static int hf_x411_non_urgent = -1; /* DeliveryQueue */ -static int hf_x411_messages = -1; /* INTEGER */ -static int hf_x411_delivery_queue_octets = -1; /* INTEGER */ +static int hf_x411_messages = -1; /* INTEGER_0_ub_queue_size */ +static int hf_x411_delivery_queue_octets = -1; /* INTEGER_0_ub_content_length */ static int hf_x411_simple = -1; /* Password */ static int hf_x411_strong = -1; /* StrongCredentials */ static int hf_x411_protected = -1; /* ProtectedPassword */ -static int hf_x411_ia5_string = -1; /* IA5String */ -static int hf_x411_octet_string = -1; /* OCTET_STRING */ +static int hf_x411_ia5_string = -1; /* IA5String_SIZE_0_ub_password_length */ +static int hf_x411_octet_string = -1; /* OCTET_STRING_SIZE_0_ub_password_length */ static int hf_x411_bind_token = -1; /* Token */ static int hf_x411_certificate = -1; /* Certificates */ static int hf_x411_certificate_selector = -1; /* CertificateAssertion */ @@ -304,19 +344,21 @@ static int hf_x411_algorithmIdentifier = -1; /* AlgorithmIdentifier */ static int hf_x411_encrypted = -1; /* BIT_STRING */ static int hf_x411_SecurityContext_item = -1; /* SecurityLabel */ static int hf_x411_message_submission_envelope = -1; /* MessageSubmissionEnvelope */ -static int hf_x411_ImproperlySpecifiedRecipients_item = -1; /* MTSRecipientName */ +static int hf_x411_message_submission_identifier = -1; /* MessageSubmissionIdentifier */ +static int hf_x411_message_submission_time = -1; /* MessageSubmissionTime */ +static int hf_x411_probe_submission_identifier = -1; /* ProbeSubmissionIdentifier */ +static int hf_x411_probe_submission_time = -1; /* ProbeSubmissionTime */ +static int hf_x411_ImproperlySpecifiedRecipients_item = -1; /* RecipientName */ static int hf_x411_waiting_operations = -1; /* Operations */ static int hf_x411_waiting_messages = -1; /* WaitingMessages */ -static int hf_x411_waiting_content_types = -1; /* SET_OF_ContentType */ +static int hf_x411_waiting_content_types = -1; /* SET_SIZE_0_ub_content_types_OF_ContentType */ static int hf_x411_waiting_content_types_item = -1; /* ContentType */ static int hf_x411_waiting_encoded_information_types = -1; /* EncodedInformationTypes */ -static int hf_x411_subject_submission_identifier = -1; /* SubjectSubmissionIdentifier */ -static int hf_x411_per_recipient_report_delivery_fields = -1; /* SEQUENCE_OF_PerRecipientReportDeliveryFields */ -static int hf_x411_per_recipient_report_delivery_fields_item = -1; /* PerRecipientReportDeliveryFields */ -static int hf_x411_refused_argument = -1; /* T_refused_argument */ -static int hf_x411_built_in_argument = -1; /* RefusedArgument */ -static int hf_x411_refused_extension = -1; /* T_refused_extension */ -static int hf_x411_refusal_reason = -1; /* RefusalReason */ +static int hf_x411_recipient_certificate = -1; /* RecipientCertificate */ +static int hf_x411_proof_of_delivery = -1; /* ProofOfDelivery */ +static int hf_x411_empty_result = -1; /* NULL */ +static int hf_x411_max_extensions = -1; /* SET_SIZE_1_MAX_OF_ExtensionField */ +static int hf_x411_max_extensions_item = -1; /* ExtensionField */ static int hf_x411_restrict = -1; /* BOOLEAN */ static int hf_x411_permissible_operations = -1; /* Operations */ static int hf_x411_permissible_maximum_content_length = -1; /* ContentLength */ @@ -324,23 +366,28 @@ static int hf_x411_permissible_lowest_priority = -1; /* Priority */ static int hf_x411_permissible_content_types = -1; /* ContentTypes */ static int hf_x411_permissible_encoded_information_types = -1; /* PermissibleEncodedInformationTypes */ static int hf_x411_permissible_security_context = -1; /* SecurityContext */ +static int hf_x411_refused_argument = -1; /* T_refused_argument */ +static int hf_x411_built_in_argument = -1; /* RefusedArgument */ +static int hf_x411_refused_extension = -1; /* T_refused_extension */ +static int hf_x411_refusal_reason = -1; /* RefusalReason */ static int hf_x411_user_name = -1; /* UserName */ static int hf_x411_user_address = -1; /* UserAddress */ -static int hf_x411_deliverable_class = -1; /* SET_OF_DeliverableClass */ +static int hf_x411_deliverable_class = -1; /* SET_SIZE_1_ub_deliverable_class_OF_DeliverableClass */ static int hf_x411_deliverable_class_item = -1; /* DeliverableClass */ static int hf_x411_default_delivery_controls = -1; /* DefaultDeliveryControls */ static int hf_x411_redirections = -1; /* Redirections */ static int hf_x411_restricted_delivery = -1; /* RestrictedDelivery */ static int hf_x411_retrieve_registrations = -1; /* RegistrationTypes */ -static int hf_x411_empty_result = -1; /* NULL */ static int hf_x411_non_empty_result = -1; /* T_non_empty_result */ static int hf_x411_registered_information = -1; /* RegisterArgument */ +static int hf_x411_old_credentials = -1; /* Credentials */ +static int hf_x411_new_credentials = -1; /* Credentials */ static int hf_x411_x121 = -1; /* T_x121 */ static int hf_x411_x121_address = -1; /* AddrNumericString */ -static int hf_x411_tsap_id = -1; /* PrintableString */ +static int hf_x411_tsap_id = -1; /* PrintableString_SIZE_1_ub_tsap_id_length */ static int hf_x411_presentation = -1; /* PSAPAddress */ static int hf_x411_Redirections_item = -1; /* RecipientRedirection */ -static int hf_x411_redirection_classes = -1; /* SET_OF_RedirectionClass */ +static int hf_x411_redirection_classes = -1; /* SET_SIZE_1_ub_redirection_classes_OF_RedirectionClass */ static int hf_x411_redirection_classes_item = -1; /* RedirectionClass */ static int hf_x411_recipient_assigned_alternate_recipient = -1; /* RecipientAssignedAlternateRecipient */ static int hf_x411_content_types = -1; /* ContentTypes */ @@ -364,25 +411,21 @@ static int hf_x411_pattern_match = -1; /* ORName */ static int hf_x411_standard_parameters = -1; /* T_standard_parameters */ static int hf_x411_type_extensions = -1; /* T_type_extensions */ static int hf_x411_type_extensions_item = -1; /* T_type_extensions_item */ -static int hf_x411_mts_originator_name = -1; /* MTSOriginatorName */ -static int hf_x411_per_recipient_message_submission_fields = -1; /* SEQUENCE_OF_PerRecipientMessageSubmissionFields */ -static int hf_x411_per_recipient_message_submission_fields_item = -1; /* PerRecipientMessageSubmissionFields */ -static int hf_x411_submission_recipient_name = -1; /* MTSRecipientName */ +static int hf_x411_originator_name = -1; /* OriginatorName */ +static int hf_x411_submission_recipient_name = -1; /* RecipientName */ static int hf_x411_originator_report_request = -1; /* OriginatorReportRequest */ -static int hf_x411_per_recipient_probe_submission_fields = -1; /* SEQUENCE_OF_PerRecipientProbeSubmissionFields */ -static int hf_x411_per_recipient_probe_submission_fields_item = -1; /* PerRecipientProbeSubmissionFields */ -static int hf_x411_probe_recipient_name = -1; /* MTSRecipientName */ +static int hf_x411_probe_recipient_name = -1; /* RecipientName */ static int hf_x411_message_delivery_identifier = -1; /* MessageDeliveryIdentifier */ static int hf_x411_message_delivery_time = -1; /* MessageDeliveryTime */ static int hf_x411_other_fields = -1; /* OtherMessageDeliveryFields */ static int hf_x411_delivered_content_type = -1; /* DeliveredContentType */ -static int hf_x411_originator_name = -1; /* DeliveredOriginatorName */ +static int hf_x411_delivered_originator_name = -1; /* DeliveredOriginatorName */ static int hf_x411_delivery_flags = -1; /* DeliveryFlags */ static int hf_x411_other_recipient_names = -1; /* OtherRecipientNames */ static int hf_x411_this_recipient_name = -1; /* ThisRecipientName */ -static int hf_x411_originally_intended_recipient_name = -1; /* MTSOriginallyIntendedRecipientName */ -static int hf_x411_message_submission_time = -1; /* MessageSubmissionTime */ -static int hf_x411_actual_recipient_name = -1; /* MTSActualRecipientName */ +static int hf_x411_originally_intended_recipient_name = -1; /* OriginallyIntendedRecipientName */ +static int hf_x411_subject_submission_identifier = -1; /* SubjectSubmissionIdentifier */ +static int hf_x411_actual_recipient_name = -1; /* ActualRecipientName */ static int hf_x411_delivery_report_type = -1; /* ReportType */ static int hf_x411_delivery = -1; /* DeliveryReport */ static int hf_x411_non_delivery = -1; /* NonDeliveryReport */ @@ -415,7 +458,6 @@ static int hf_x411_origination_or_expansion_time = -1; /* Time */ static int hf_x411_report_type = -1; /* T_report_type */ static int hf_x411_report_type_delivery = -1; /* PerRecipientDeliveryReportFields */ static int hf_x411_non_delivery_report = -1; /* PerRecipientNonDeliveryReportFields */ -static int hf_x411_recipient_certificate = -1; /* RecipientCertificate */ static int hf_x411_mta_directory_name = -1; /* Name */ static int hf_x411_ExtendedCertificates_item = -1; /* ExtendedCertificate */ static int hf_x411_directory_entry = -1; /* Name */ @@ -431,7 +473,6 @@ static int hf_x411_printable_private_domain_identifier = -1; /* AddrPrintableSt static int hf_x411_built_in_standard_attributes = -1; /* BuiltInStandardAttributes */ static int hf_x411_built_in_domain_defined_attributes = -1; /* BuiltInDomainDefinedAttributes */ static int hf_x411_extension_attributes = -1; /* ExtensionAttributes */ -static int hf_x411_directory_name = -1; /* Name */ static int hf_x411_network_address = -1; /* NetworkAddress */ static int hf_x411_terminal_identifier = -1; /* TerminalIdentifier */ static int hf_x411_private_domain_name = -1; /* PrivateDomainName */ @@ -467,18 +508,19 @@ static int hf_x411_universal_generation_qualifier = -1; /* UniversalOrBMPString static int hf_x411_TeletexOrganizationalUnitNames_item = -1; /* TeletexOrganizationalUnitName */ static int hf_x411_UniversalOrganizationalUnitNames_item = -1; /* UniversalOrganizationalUnitName */ static int hf_x411_character_encoding = -1; /* T_character_encoding */ -static int hf_x411_two_octets = -1; /* BMPString */ -static int hf_x411_four_octets = -1; /* UniversalString */ -static int hf_x411_iso_639_language_code = -1; /* PrintableString */ +static int hf_x411_two_octets = -1; /* BMPString_SIZE_1_ub_string_length */ +static int hf_x411_four_octets = -1; /* UniversalString_SIZE_1_ub_string_length */ +static int hf_x411_iso_639_language_code = -1; /* PrintableString_SIZE_CONSTR411846860 */ static int hf_x411_numeric_code = -1; /* AddrNumericString */ -static int hf_x411_printable_code = -1; /* PrintableString */ +static int hf_x411_printable_code = -1; /* PrintableString_SIZE_1_ub_postal_code_length */ static int hf_x411_printable_address = -1; /* T_printable_address */ -static int hf_x411_printable_address_item = -1; /* PrintableString */ -static int hf_x411_teletex_string = -1; /* TeletexString */ -static int hf_x411_printable_string = -1; /* PrintableString */ +static int hf_x411_printable_address_item = -1; /* PrintableString_SIZE_1_ub_pds_parameter_length */ +static int hf_x411_teletex_string = -1; /* TeletexString_SIZE_1_ub_unformatted_address_length */ +static int hf_x411_printable_string = -1; /* PrintableString_SIZE_1_ub_pds_parameter_length */ +static int hf_x411_pds_teletex_string = -1; /* TeletexString_SIZE_1_ub_pds_parameter_length */ static int hf_x411_e163_4_address = -1; /* T_e163_4_address */ -static int hf_x411_number = -1; /* NumericString */ -static int hf_x411_sub_address = -1; /* NumericString */ +static int hf_x411_number = -1; /* NumericString_SIZE_1_ub_e163_4_number_length */ +static int hf_x411_sub_address = -1; /* NumericString_SIZE_1_ub_e163_4_sub_address_length */ static int hf_x411_psap_address = -1; /* PresentationAddress */ static int hf_x411_TeletexDomainDefinedAttributes_item = -1; /* TeletexDomainDefinedAttribute */ static int hf_x411_type = -1; /* AddrTeletexString */ @@ -486,11 +528,9 @@ static int hf_x411_teletex_value = -1; /* AddrTeletexString */ static int hf_x411_UniversalDomainDefinedAttributes_item = -1; /* UniversalDomainDefinedAttribute */ static int hf_x411_universal_type = -1; /* UniversalOrBMPString */ static int hf_x411_universal_value = -1; /* UniversalOrBMPString */ -static int hf_x411_built_in_encoded_information_types = -1; /* BuiltInEncodedInformationTypes */ +static int hf_x411_ExtendedEncodedInformationTypes_item = -1; /* ExtendedEncodedInformationType */ static int hf_x411_g3_facsimile = -1; /* G3FacsimileNonBasicParameters */ static int hf_x411_teletex = -1; /* TeletexNonBasicParameters */ -static int hf_x411_extended_encoded_information_types = -1; /* ExtendedEncodedInformationTypes */ -static int hf_x411_ExtendedEncodedInformationTypes_item = -1; /* ExtendedEncodedInformationType */ static int hf_x411_graphic_character_sets = -1; /* TeletexString */ static int hf_x411_control_character_sets = -1; /* TeletexString */ static int hf_x411_page_formats = -1; /* OCTET_STRING */ @@ -500,7 +540,7 @@ static int hf_x411_token_type_identifier = -1; /* TokenTypeIdentifier */ static int hf_x411_token = -1; /* TokenTypeData */ static int hf_x411_signature_algorithm_identifier = -1; /* AlgorithmIdentifier */ static int hf_x411_name = -1; /* T_name */ -static int hf_x411_token_recipient_name = -1; /* MTSRecipientName */ +static int hf_x411_token_recipient_name = -1; /* RecipientName */ static int hf_x411_token_mta = -1; /* MTANameAndOptionalGDI */ static int hf_x411_time = -1; /* Time */ static int hf_x411_signed_data = -1; /* TokenData */ @@ -522,8 +562,27 @@ static int hf_x411_security_classification = -1; /* SecurityClassification */ static int hf_x411_privacy_mark = -1; /* PrivacyMark */ static int hf_x411_security_categories = -1; /* SecurityCategories */ static int hf_x411_SecurityCategories_item = -1; /* SecurityCategory */ -static int hf_x411_category_type = -1; /* OBJECT_IDENTIFIER */ +static int hf_x411_category_type = -1; /* SecurityCategoryIdentifier */ static int hf_x411_category_value = -1; /* CategoryValue */ +static int hf_x411_rtorq_apdu = -1; /* RTORQapdu */ +static int hf_x411_rtoac_apdu = -1; /* RTOACapdu */ +static int hf_x411_rtorj_apdu = -1; /* RTORJapdu */ +static int hf_x411_rttp_apdu = -1; /* RTTPapdu */ +static int hf_x411_rttr_apdu = -1; /* RTTRapdu */ +static int hf_x411_rtab_apdu = -1; /* RTABapdu */ +static int hf_x411_abortReason = -1; /* AbortReason */ +static int hf_x411_reflectedParameter = -1; /* BIT_STRING */ +static int hf_x411_userdataAB = -1; /* OBJECT_IDENTIFIER */ +static int hf_x411_per_recipient_report_delivery_fields = -1; /* SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields */ +static int hf_x411_per_recipient_report_delivery_fields_item = -1; /* PerRecipientReportDeliveryFields */ +static int hf_x411_mts_originator_name = -1; /* OriginatorName */ +static int hf_x411_per_recipient_message_submission_fields = -1; /* SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientMessageSubmissionFields */ +static int hf_x411_per_recipient_message_submission_fields_item = -1; /* PerRecipientMessageSubmissionFields */ +static int hf_x411_per_recipient_probe_submission_fields = -1; /* SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientProbeSubmissionFields */ +static int hf_x411_per_recipient_probe_submission_fields_item = -1; /* PerRecipientProbeSubmissionFields */ +static int hf_x411_directory_name = -1; /* Name */ +static int hf_x411_built_in_encoded_information_types = -1; /* BuiltInEncodedInformationTypes */ +static int hf_x411_extended_encoded_information_types = -1; /* ExtendedEncodedInformationTypes */ /* named bits */ static int hf_x411_PerRecipientIndicators_responsibility = -1; static int hf_x411_PerRecipientIndicators_originating_MTA_report = -1; @@ -606,10 +665,11 @@ static int hf_x411_G3FacsimileNonBasicParameters_jpeg = -1; static int hf_x411_G3FacsimileNonBasicParameters_processable_mode_26 = -1; /*--- End of included file: packet-x411-hf.c ---*/ -#line 84 "packet-x411-template.c" +#line 85 "packet-x411-template.c" /* Initialize the subtree pointers */ static gint ett_x411 = -1; +static gint ett_p3 = -1; static gint ett_x411_content_unknown = -1; static gint ett_x411_bilateral_information = -1; static gint ett_x411_additional_information = -1; @@ -651,6 +711,8 @@ static gint ett_x411_SEQUENCE_OF_TraceInformationElement = -1; static gint ett_x411_TraceInformationElement = -1; static gint ett_x411_DomainSuppliedInformation = -1; static gint ett_x411_OtherActions = -1; +static gint ett_x411_MTSBindArgument = -1; +static gint ett_x411_MTSBindResult = -1; static gint ett_x411_ObjectName = -1; static gint ett_x411_MessagesWaiting = -1; static gint ett_x411_DeliveryQueue = -1; @@ -661,25 +723,33 @@ static gint ett_x411_ProtectedPassword = -1; static gint ett_x411_Signature = -1; static gint ett_x411_SecurityContext = -1; static gint ett_x411_MessageSubmissionArgument = -1; +static gint ett_x411_MessageSubmissionResult = -1; +static gint ett_x411_ProbeSubmissionResult = -1; static gint ett_x411_ImproperlySpecifiedRecipients = -1; static gint ett_x411_Waiting = -1; -static gint ett_x411_SET_OF_ContentType = -1; +static gint ett_x411_SET_SIZE_0_ub_content_types_OF_ContentType = -1; static gint ett_x411_Operations = -1; static gint ett_x411_WaitingMessages = -1; +static gint ett_x411_MessageDeliveryArgument = -1; +static gint ett_x411_MessageDeliveryResult = -1; static gint ett_x411_ReportDeliveryArgument = -1; -static gint ett_x411_SEQUENCE_OF_PerRecipientReportDeliveryFields = -1; +static gint ett_x411_ReportDeliveryResult = -1; +static gint ett_x411_SET_SIZE_1_MAX_OF_ExtensionField = -1; +static gint ett_x411_DeliveryControlArgument = -1; +static gint ett_x411_DeliveryControlResult = -1; static gint ett_x411_RefusedOperation = -1; static gint ett_x411_T_refused_argument = -1; static gint ett_x411_Controls = -1; static gint ett_x411_RegisterArgument = -1; -static gint ett_x411_SET_OF_DeliverableClass = -1; +static gint ett_x411_SET_SIZE_1_ub_deliverable_class_OF_DeliverableClass = -1; static gint ett_x411_RegisterResult = -1; static gint ett_x411_T_non_empty_result = -1; +static gint ett_x411_ChangeCredentialsArgument = -1; static gint ett_x411_UserAddress = -1; static gint ett_x411_T_x121 = -1; static gint ett_x411_Redirections = -1; static gint ett_x411_RecipientRedirection = -1; -static gint ett_x411_SET_OF_RedirectionClass = -1; +static gint ett_x411_SET_SIZE_1_ub_redirection_classes_OF_RedirectionClass = -1; static gint ett_x411_MessageClass = -1; static gint ett_x411_SET_OF_Priority = -1; static gint ett_x411_SEQUENCE_OF_Restriction = -1; @@ -692,14 +762,15 @@ static gint ett_x411_RegistrationTypes = -1; static gint ett_x411_T_standard_parameters = -1; static gint ett_x411_T_type_extensions = -1; static gint ett_x411_MessageSubmissionEnvelope = -1; -static gint ett_x411_SEQUENCE_OF_PerRecipientMessageSubmissionFields = -1; +static gint ett_x411_PerMessageSubmissionFields = -1; static gint ett_x411_PerRecipientMessageSubmissionFields = -1; static gint ett_x411_ProbeSubmissionEnvelope = -1; -static gint ett_x411_SEQUENCE_OF_PerRecipientProbeSubmissionFields = -1; +static gint ett_x411_PerProbeSubmissionFields = -1; static gint ett_x411_PerRecipientProbeSubmissionFields = -1; static gint ett_x411_MessageDeliveryEnvelope = -1; static gint ett_x411_OtherMessageDeliveryFields = -1; static gint ett_x411_ReportDeliveryEnvelope = -1; +static gint ett_x411_PerReportDeliveryFields = -1; static gint ett_x411_PerRecipientReportDeliveryFields = -1; static gint ett_x411_ReportType = -1; static gint ett_x411_DeliveryReport = -1; @@ -782,9 +853,14 @@ static gint ett_x411_MessageTokenEncryptedData = -1; static gint ett_x411_SecurityLabel = -1; static gint ett_x411_SecurityCategories = -1; static gint ett_x411_SecurityCategory = -1; +static gint ett_x411_RTSE_apdus = -1; +static gint ett_x411_RTABapdu = -1; +static gint ett_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields = -1; +static gint ett_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientMessageSubmissionFields = -1; +static gint ett_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientProbeSubmissionFields = -1; /*--- End of included file: packet-x411-ett.c ---*/ -#line 94 "packet-x411-template.c" +#line 96 "packet-x411-template.c" /* Dissector tables */ static dissector_table_t x411_extension_dissector_table; @@ -792,6 +868,125 @@ static dissector_table_t x411_extension_attribute_dissector_table; static dissector_table_t x411_tokendata_dissector_table; +/*--- Included file: packet-x411-val.h ---*/ +#line 1 "packet-x411-val.h" +#define op_message_submission 3 +#define op_probe_submission 4 +#define op_cancel_deferred_delivery 7 +#define op_submission_control 2 +#define err_submission_control_violated 1 +#define err_element_of_service_not_subscribed 4 +#define err_deferred_delivery_cancellation_rejected 8 +#define err_originator_invalid 2 +#define err_recipient_improperly_specified 3 +#define err_message_submission_identifier_invalid 7 +#define err_inconsistent_request 11 +#define err_security_error 12 +#define err_unsupported_critical_function 13 +#define err_remote_bind_error 15 +#define op_message_delivery 5 +#define op_report_delivery 6 +#define op_delivery_control 2 +#define err_delivery_control_violated 1 +#define err_control_violates_registration 14 +#define err_operation_refused 16 +#define op_register 1 +#define op_change_credentials 8 +#define err_register_rejected 10 +#define err_new_credentials_unacceptable 6 +#define err_old_credentials_incorrectly_specified 5 +#define id_mhs_protocols "2.6.0" +#define id_mod id_mhs_protocols".0" +#define id_ac id_mhs_protocols".1" +#define id_as id_mhs_protocols".2" +#define id_ase id_mhs_protocols".3" +#define id_mod_object_identifiers id_mod".0" +#define id_mod_mts_access_protocol id_mod".1" +#define id_mod_ms_access_protocol id_mod".2" +#define id_mod_mts_transfer_protocol id_mod".3" +#define id_ac_mts_access_88 id_ac".0" +#define id_ac_mts_forced_access_88 id_ac".1" +#define id_ac_mts_reliable_access_88 id_ac".2" +#define id_ac_mts_forced_reliable_access_88 id_ac".3" +#define id_ac_mts_access_94 id_ac".7" +#define id_ac_mts_forced_access_94 id_ac".8" +#define id_ac_mts_reliable_access_94 id_ac".9" +#define id_ac_mts_forced_reliable_access_94 id_ac".10" +#define id_ac_ms_access_88 id_ac".4" +#define id_ac_ms_reliable_access_88 id_ac".5" +#define id_ac_ms_access_94 id_ac".11" +#define id_ac_ms_reliable_access_94 id_ac".12" +#define id_ac_mts_transfer id_ac".6" +#define id_as_msse id_as".1" +#define id_as_mdse_88 id_as".2" +#define id_as_mrse_88 id_as".5" +#define id_as_mase_88 id_as".6" +#define id_as_mtse id_as".7" +#define id_as_mts_rtse id_as".8" +#define id_as_ms_88 id_as".9" +#define id_as_ms_rtse id_as".10" +#define id_as_mts id_as".11" +#define id_as_mta_rtse id_as".12" +#define id_as_ms_msse id_as".13" +#define id_as_mdse_94 id_as".14" +#define id_as_mrse_94 id_as".15" +#define id_as_mase_94 id_as".16" +#define id_as_ms_94 id_as".17" +#define id_ase_msse id_ase".0" +#define id_ase_mdse id_ase".1" +#define id_ase_mrse id_ase".2" +#define id_ase_mase id_ase".3" +#define id_ase_mtse id_ase".4" + +/*--- End of included file: packet-x411-val.h ---*/ +#line 103 "packet-x411-template.c" + + +/*--- Included file: packet-x411-table.c ---*/ +#line 1 "packet-x411-table.c" + +/* P3 ABSTRACT-OPERATIONS */ +const value_string p3_opr_code_string_vals[] = { + { op_ros_bind, "mts_bind" }, + { op_message_submission, "message_submission" }, + { op_probe_submission, "probe_submission" }, + { op_cancel_deferred_delivery, "cancel_deferred_delivery" }, + { op_submission_control, "submission_control" }, + { op_message_delivery, "message_delivery" }, + { op_report_delivery, "report_delivery" }, + { op_delivery_control, "delivery_control" }, + { op_register, "register" }, + { op_change_credentials, "change_credentials" }, + { 0, NULL } +}; + + +/* P3 ERRORS */ +static const value_string p3_err_code_string_vals[] = { + { err_ros_bind, "mts_bind_error" }, + { err_submission_control_violated, "submission_control_violated" }, + { err_element_of_service_not_subscribed, "element_of_service_not_subscribed" }, + { err_deferred_delivery_cancellation_rejected, "deferred_delivery_cancellation_rejected" }, + { err_originator_invalid, "originator_invalid" }, + { err_recipient_improperly_specified, "recipient_improperly_specified" }, + { err_message_submission_identifier_invalid, "message_submission_identifier_invalid" }, + { err_inconsistent_request, "inconsistent_request" }, + { err_security_error, "security_error" }, + { err_unsupported_critical_function, "unsupported_critical_function" }, + { err_remote_bind_error, "remote_bind_error" }, + { err_delivery_control_violated, "delivery_control_violated" }, + { err_control_violates_registration, "control_violates_registration" }, + { err_operation_refused, "operation_refused" }, + { err_register_rejected, "register_rejected" }, + { err_new_credentials_unacceptable, "new_credentials_unacceptable" }, + { err_old_credentials_incorrectly_specified, "old_credentials_incorrectly_specified" }, + { 0, NULL } +}; + + +/*--- End of included file: packet-x411-table.c ---*/ +#line 105 "packet-x411-template.c" + /*--- Included file: packet-x411-fn.c ---*/ #line 1 "packet-x411-fn.c" @@ -808,7 +1003,7 @@ dissect_x411_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, static int dissect_x411_MTAName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 519 "x411.cnf" +#line 635 "x411.cnf" tvbuff_t *mtaname = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String, @@ -836,7 +1031,7 @@ dissect_x411_MTAName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U static int -dissect_x411_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_IA5String_SIZE_0_ub_password_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String, actx, tree, tvb, offset, hf_index, NULL); @@ -847,7 +1042,7 @@ dissect_x411_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset static int -dissect_x411_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_OCTET_STRING_SIZE_0_ub_password_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); @@ -862,8 +1057,8 @@ static const value_string x411_Password_vals[] = { }; static const ber_choice_t Password_choice[] = { - { 0, &hf_x411_ia5_string , BER_CLASS_UNI, BER_UNI_TAG_IA5String, BER_FLAGS_NOOWNTAG, dissect_x411_IA5String }, - { 1, &hf_x411_octet_string , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_x411_OCTET_STRING }, + { 0, &hf_x411_ia5_string , BER_CLASS_UNI, BER_UNI_TAG_IA5String, BER_FLAGS_NOOWNTAG, dissect_x411_IA5String_SIZE_0_ub_password_length }, + { 1, &hf_x411_octet_string , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_x411_OCTET_STRING_SIZE_0_ub_password_length }, { 0, NULL, 0, 0, 0, NULL } }; @@ -889,7 +1084,7 @@ dissect_x411_TokenTypeIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i static int dissect_x411_TokenTypeData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 877 "x411.cnf" +#line 993 "x411.cnf" if(object_identifier_id) call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree); @@ -1000,7 +1195,7 @@ static const ber_choice_t Credentials_choice[] = { int dissect_x411_Credentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 885 "x411.cnf" +#line 1001 "x411.cnf" gint credentials = -1; offset = dissect_ber_choice(actx, tree, tvb, offset, @@ -1071,7 +1266,7 @@ dissect_x411_PrivacyMark(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse static int -dissect_x411_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_SecurityCategoryIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); return offset; @@ -1080,8 +1275,8 @@ dissect_x411_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static int -dissect_x411_CategoryValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 409 "x411.cnf" +dissect_x411_SecurityCategoryValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +#line 525 "x411.cnf" offset = dissect_unknown_ber(actx->pinfo, tvb, offset, tree); @@ -1091,8 +1286,17 @@ dissect_x411_CategoryValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off } + +static int +dissect_x411_CategoryValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_SecurityCategoryValue(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + static const ber_sequence_t SecurityCategory_sequence[] = { - { &hf_x411_category_type , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_OBJECT_IDENTIFIER }, + { &hf_x411_category_type , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_SecurityCategoryIdentifier }, { &hf_x411_category_value , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x411_CategoryValue }, { NULL, 0, 0, 0, NULL } }; @@ -1245,7 +1449,7 @@ static const value_string x411_MTABindError_vals[] = { static int dissect_x411_MTABindError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 868 "x411.cnf" +#line 984 "x411.cnf" int error = -1; offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, &error); @@ -1262,7 +1466,7 @@ dissect_x411_MTABindError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs static int dissect_x411_AddrNumericString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 630 "x411.cnf" +#line 746 "x411.cnf" tvbuff_t *nstring = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString, @@ -1282,7 +1486,7 @@ dissect_x411_AddrNumericString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static int dissect_x411_AddrPrintableString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 619 "x411.cnf" +#line 735 "x411.cnf" tvbuff_t *nstring = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1324,7 +1528,7 @@ dissect_x411_CountryName_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off static int dissect_x411_CountryName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 436 "x411.cnf" +#line 552 "x411.cnf" if(doing_address) g_strlcat(oraddress, "/C=", MAX_ORA_STR_LEN); @@ -1364,7 +1568,7 @@ dissect_x411_AdministrationDomainName_U(gboolean implicit_tag _U_, tvbuff_t *tvb static int dissect_x411_AdministrationDomainName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 443 "x411.cnf" +#line 559 "x411.cnf" if(doing_address) g_strlcat(oraddress, "/A=", MAX_ORA_STR_LEN); @@ -1393,7 +1597,7 @@ static const ber_choice_t PrivateDomainIdentifier_choice[] = { static int dissect_x411_PrivateDomainIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 570 "x411.cnf" +#line 686 "x411.cnf" if(doing_address) g_strlcat(oraddress, "/P=", MAX_ORA_STR_LEN); @@ -1428,7 +1632,7 @@ dissect_x411_GlobalDomainIdentifier_U(gboolean implicit_tag _U_, tvbuff_t *tvb _ static int dissect_x411_GlobalDomainIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 748 "x411.cnf" +#line 864 "x411.cnf" oraddress = ep_alloc(MAX_ORA_STR_LEN); oraddress[0] = '\0'; address_item = tree; @@ -1455,7 +1659,7 @@ dissect_x411_GlobalDomainIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ static int dissect_x411_LocalIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 767 "x411.cnf" +#line 883 "x411.cnf" tvbuff_t *id = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String, @@ -1495,7 +1699,7 @@ dissect_x411_MTSIdentifier_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o static int dissect_x411_MTSIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 780 "x411.cnf" +#line 896 "x411.cnf" doing_address = TRUE; @@ -1521,7 +1725,7 @@ dissect_x411_MTSIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off static int dissect_x411_MessageIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 742 "x411.cnf" +#line 858 "x411.cnf" address_item = NULL; @@ -1537,7 +1741,7 @@ dissect_x411_MessageIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static int dissect_x411_X121Address(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 539 "x411.cnf" +#line 655 "x411.cnf" tvbuff_t *string = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString, @@ -1569,7 +1773,7 @@ dissect_x411_NetworkAddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of static int dissect_x411_TerminalIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 553 "x411.cnf" +#line 669 "x411.cnf" tvbuff_t *string = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1602,7 +1806,7 @@ static const ber_choice_t PrivateDomainName_choice[] = { static int dissect_x411_PrivateDomainName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 563 "x411.cnf" +#line 679 "x411.cnf" if(doing_address) g_strlcat(oraddress, "/P=", MAX_ORA_STR_LEN); @@ -1621,7 +1825,7 @@ dissect_x411_PrivateDomainName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static int dissect_x411_OrganizationName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 580 "x411.cnf" +#line 696 "x411.cnf" tvbuff_t *string = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1654,7 +1858,7 @@ dissect_x411_NumericUserIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, static int dissect_x411_T_printable_surname(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 650 "x411.cnf" +#line 766 "x411.cnf" tvbuff_t *pstring = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1675,7 +1879,7 @@ dissect_x411_T_printable_surname(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i static int dissect_x411_T_printable_given_name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 659 "x411.cnf" +#line 775 "x411.cnf" tvbuff_t *pstring = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1696,7 +1900,7 @@ dissect_x411_T_printable_given_name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ static int dissect_x411_T_printable_initials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 668 "x411.cnf" +#line 784 "x411.cnf" tvbuff_t *pstring = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1717,7 +1921,7 @@ dissect_x411_T_printable_initials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, static int dissect_x411_T_printable_generation_qualifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 677 "x411.cnf" +#line 793 "x411.cnf" tvbuff_t *pstring = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1756,7 +1960,7 @@ dissect_x411_PersonalName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs static int dissect_x411_OrganizationalUnitName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 593 "x411.cnf" +#line 709 "x411.cnf" tvbuff_t *string = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1803,7 +2007,7 @@ static const ber_sequence_t BuiltInStandardAttributes_sequence[] = { static int dissect_x411_BuiltInStandardAttributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 804 "x411.cnf" +#line 920 "x411.cnf" address_item = tree; @@ -1820,7 +2024,7 @@ dissect_x411_BuiltInStandardAttributes(gboolean implicit_tag _U_, tvbuff_t *tvb static int dissect_x411_T_printable_type(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 687 "x411.cnf" +#line 803 "x411.cnf" tvbuff_t *pstring = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1843,7 +2047,7 @@ dissect_x411_T_printable_type(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static int dissect_x411_T_printable_value(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 698 "x411.cnf" +#line 814 "x411.cnf" tvbuff_t *pstring = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -1873,7 +2077,7 @@ static const ber_sequence_t BuiltInDomainDefinedAttribute_sequence[] = { static int dissect_x411_BuiltInDomainDefinedAttribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 711 "x411.cnf" +#line 827 "x411.cnf" ddatype = ep_alloc(MAX_ORA_STR_LEN); ddatype[0] = '\0'; offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, @@ -1956,7 +2160,7 @@ dissect_x411_ExtensionAttributeType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ static int dissect_x411_T_extension_attribute_value(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 416 "x411.cnf" +#line 532 "x411.cnf" proto_item_append_text(tree, " (%s)", val_to_str(extension_id, x411_ExtensionAttributeType_vals, "extension-attribute-type %d")); if (dissector_try_port(x411_extension_attribute_dissector_table, extension_id, tvb, actx->pinfo, tree)) { @@ -2027,7 +2231,7 @@ dissect_x411_ORName_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _ int dissect_x411_ORName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 729 "x411.cnf" +#line 845 "x411.cnf" oraddress = ep_alloc(MAX_ORA_STR_LEN); oraddress[0] = '\0'; address_item = NULL; @@ -2138,6 +2342,16 @@ dissect_x411_TeletexString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off } + +static int +dissect_x411_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + static const ber_sequence_t TeletexNonBasicParameters_set[] = { { &hf_x411_graphic_character_sets, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_TeletexString }, { &hf_x411_control_character_sets, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_TeletexString }, @@ -2227,7 +2441,7 @@ static const value_string x411_BuiltInContentType_U_vals[] = { static int dissect_x411_BuiltInContentType_U(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 476 "x411.cnf" +#line 592 "x411.cnf" static guint32 ict = -1; offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, @@ -2266,7 +2480,7 @@ dissect_x411_BuiltInContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, in int dissect_x411_ExtendedContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 461 "x411.cnf" +#line 577 "x411.cnf" const char *name = NULL; offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &content_type_id); @@ -2310,7 +2524,7 @@ dissect_x411_ContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse static int -dissect_x411_PrintableString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_PrintableString_SIZE_1_ub_content_id_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, actx, tree, tvb, offset, hf_index, NULL); @@ -2323,7 +2537,7 @@ dissect_x411_PrintableString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o int dissect_x411_ContentIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_tagged_type(implicit_tag, actx, tree, tvb, offset, - hf_index, BER_CLASS_APP, 10, TRUE, dissect_x411_PrintableString); + hf_index, BER_CLASS_APP, 10, TRUE, dissect_x411_PrintableString_SIZE_1_ub_content_id_length); return offset; } @@ -2391,7 +2605,7 @@ dissect_x411_PerMessageIndicators(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, static int dissect_x411_Time(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 847 "x411.cnf" +#line 963 "x411.cnf" tvbuff_t *arrival = NULL; offset = dissect_ber_UTCTime(implicit_tag, actx, tree, tvb, offset, hf_index); @@ -2455,7 +2669,7 @@ dissect_x411_T_bilateral_domain(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, in static int dissect_x411_T_bilateral_information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 915 "x411.cnf" +#line 1031 "x411.cnf" proto_item *item = NULL; int loffset = 0; guint32 len = 0; @@ -2523,7 +2737,7 @@ static const value_string x411_RoutingAction_vals[] = { static int dissect_x411_RoutingAction(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 858 "x411.cnf" +#line 974 "x411.cnf" int action = 0; offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, @@ -2584,7 +2798,7 @@ static const ber_sequence_t DomainSuppliedInformation_set[] = { static int dissect_x411_DomainSuppliedInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 826 "x411.cnf" +#line 942 "x411.cnf" doing_address = FALSE; @@ -2609,7 +2823,7 @@ static const ber_sequence_t TraceInformationElement_sequence[] = { static int dissect_x411_TraceInformationElement(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 810 "x411.cnf" +#line 926 "x411.cnf" doing_address = TRUE; @@ -2710,7 +2924,7 @@ dissect_x411_StandardExtension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static int dissect_x411_T_private_extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 453 "x411.cnf" +#line 569 "x411.cnf" offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id); @@ -2764,7 +2978,7 @@ dissect_x411_Criticality(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse static int dissect_x411_ExtensionValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 385 "x411.cnf" +#line 501 "x411.cnf" const char *name; if(extension_id != -1) { @@ -2797,7 +3011,7 @@ dissect_x411_ExtensionValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of static const ber_sequence_t ExtensionField_sequence[] = { { &hf_x411_extension_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ExtensionType }, { &hf_x411_criticality , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_Criticality }, - { &hf_x411_extension_value, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_x411_ExtensionValue }, + { &hf_x411_extension_value, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ExtensionValue }, { NULL, 0, 0, 0, NULL } }; @@ -2947,7 +3161,7 @@ dissect_x411_MessageTransferEnvelope(gboolean implicit_tag _U_, tvbuff_t *tvb _U int dissect_x411_Content(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 494 "x411.cnf" +#line 610 "x411.cnf" tvbuff_t *next_tvb; /* we can do this now constructed octet strings are supported */ @@ -3055,7 +3269,7 @@ dissect_x411_SubjectIntermediateTraceInformation(gboolean implicit_tag _U_, tvbu static int dissect_x411_AdditionalInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 367 "x411.cnf" +#line 483 "x411.cnf" proto_item *item = NULL; int loffset = 0; guint32 len = 0; @@ -3275,7 +3489,7 @@ static const ber_choice_t ReportType_choice[] = { static int dissect_x411_ReportType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 947 "x411.cnf" +#line 1063 "x411.cnf" gint report = -1; offset = dissect_ber_choice(actx, tree, tvb, offset, @@ -3500,7 +3714,7 @@ static const ber_choice_t MTS_APDU_choice[] = { static int dissect_x411_MTS_APDU(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 933 "x411.cnf" +#line 1049 "x411.cnf" gint apdu = -1; offset = dissect_ber_choice(actx, tree, tvb, offset, @@ -3554,7 +3768,7 @@ static const ber_sequence_t MTASuppliedInformation_set[] = { static int dissect_x411_MTASuppliedInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 835 "x411.cnf" +#line 951 "x411.cnf" doing_address = FALSE; @@ -3580,7 +3794,7 @@ static const ber_sequence_t InternalTraceInformationElement_sequence[] = { static int dissect_x411_InternalTraceInformationElement(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 818 "x411.cnf" +#line 934 "x411.cnf" doing_address = TRUE; @@ -3635,7 +3849,17 @@ dissect_x411_ObjectName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset static int -dissect_x411_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_INTEGER_0_ub_queue_size(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_x411_INTEGER_0_ub_content_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); @@ -3644,8 +3868,8 @@ dissect_x411_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U static const ber_sequence_t DeliveryQueue_set[] = { - { &hf_x411_messages , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_INTEGER }, - { &hf_x411_delivery_queue_octets, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_INTEGER }, + { &hf_x411_messages , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_INTEGER_0_ub_queue_size }, + { &hf_x411_delivery_queue_octets, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_INTEGER_0_ub_content_length }, { NULL, 0, 0, 0, NULL } }; @@ -3674,6 +3898,60 @@ dissect_x411_MessagesWaiting(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o } +static const ber_sequence_t MTSBindArgument_set[] = { + { &hf_x411_initiator_name , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ObjectName }, + { &hf_x411_messages_waiting, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_x411_MessagesWaiting }, + { &hf_x411_initiator_credentials, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_InitiatorCredentials }, + { &hf_x411_security_context, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SecurityContext }, + { &hf_x411_extensions , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_MTSBindArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + MTSBindArgument_set, hf_index, ett_x411_MTSBindArgument); + + return offset; +} + + +static const ber_sequence_t MTSBindResult_set[] = { + { &hf_x411_responder_name , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ObjectName }, + { &hf_x411_messages_waiting, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_x411_MessagesWaiting }, + { &hf_x411_responder_credentials, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ResponderCredentials }, + { &hf_x411_extensions , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_MTSBindResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + MTSBindResult_set, hf_index, ett_x411_MTSBindResult); + + return offset; +} + + +static const value_string x411_PAR_mts_bind_error_vals[] = { + { 0, "busy" }, + { 2, "authentication-error" }, + { 3, "unacceptable-dialogue-mode" }, + { 4, "unacceptable-security-context" }, + { 5, "inadequate-association-confidentiality" }, + { 0, NULL } +}; + + +static int +dissect_x411_PAR_mts_bind_error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + int dissect_x411_ORAddressAndOrDirectoryName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -3685,7 +3963,7 @@ dissect_x411_ORAddressAndOrDirectoryName(gboolean implicit_tag _U_, tvbuff_t *tv int -dissect_x411_MTSOriginatorName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_OriginatorName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_x411_ORAddressAndOrDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); return offset; @@ -3694,7 +3972,7 @@ dissect_x411_MTSOriginatorName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static int -dissect_x411_MTSRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_RecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_x411_ORAddressAndOrDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); return offset; @@ -3718,7 +3996,7 @@ dissect_x411_OriginatorReportRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U static const ber_sequence_t PerRecipientMessageSubmissionFields_set[] = { - { &hf_x411_submission_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_MTSRecipientName }, + { &hf_x411_submission_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_RecipientName }, { &hf_x411_originator_report_request, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_OriginatorReportRequest }, { &hf_x411_explicit_conversion, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ExplicitConversion }, { &hf_x411_extensions , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, @@ -3734,21 +4012,21 @@ dissect_x411_PerRecipientMessageSubmissionFields(gboolean implicit_tag _U_, tvbu } -static const ber_sequence_t SEQUENCE_OF_PerRecipientMessageSubmissionFields_sequence_of[1] = { +static const ber_sequence_t SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientMessageSubmissionFields_sequence_of[1] = { { &hf_x411_per_recipient_message_submission_fields_item, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x411_PerRecipientMessageSubmissionFields }, }; static int -dissect_x411_SEQUENCE_OF_PerRecipientMessageSubmissionFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientMessageSubmissionFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, - SEQUENCE_OF_PerRecipientMessageSubmissionFields_sequence_of, hf_index, ett_x411_SEQUENCE_OF_PerRecipientMessageSubmissionFields); + SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientMessageSubmissionFields_sequence_of, hf_index, ett_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientMessageSubmissionFields); return offset; } static const ber_sequence_t MessageSubmissionEnvelope_set[] = { - { &hf_x411_mts_originator_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_MTSOriginatorName }, + { &hf_x411_mts_originator_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_OriginatorName }, { &hf_x411_original_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginalEncodedInformationTypes }, { &hf_x411_content_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ContentType }, { &hf_x411_content_identifier, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ContentIdentifier }, @@ -3756,7 +4034,7 @@ static const ber_sequence_t MessageSubmissionEnvelope_set[] = { { &hf_x411_per_message_indicators, BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PerMessageIndicators }, { &hf_x411_deferred_delivery_time, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_DeferredDeliveryTime }, { &hf_x411_extensions , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, - { &hf_x411_per_recipient_message_submission_fields, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x411_SEQUENCE_OF_PerRecipientMessageSubmissionFields }, + { &hf_x411_per_recipient_message_submission_fields, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientMessageSubmissionFields }, { NULL, 0, 0, 0, NULL } }; @@ -3784,82 +4062,96 @@ dissect_x411_MessageSubmissionArgument(gboolean implicit_tag _U_, tvbuff_t *tvb } -static const ber_sequence_t ImproperlySpecifiedRecipients_sequence_of[1] = { - { &hf_x411_ImproperlySpecifiedRecipients_item, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_MTSRecipientName }, -}; int -dissect_x411_ImproperlySpecifiedRecipients(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, - ImproperlySpecifiedRecipients_sequence_of, hf_index, ett_x411_ImproperlySpecifiedRecipients); +dissect_x411_MessageSubmissionIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_MTSIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index); return offset; } -const value_string x411_SecurityProblem_vals[] = { - { 0, "assemby-instructions-conflict-with-security-services" }, - { 1, "authentication-problem" }, - { 2, "authentication-failure-on-subject-message" }, - { 3, "confidentiality-association-problem" }, - { 4, "decryption-failed" }, - { 5, "decryption-key-unobtainable" }, - { 6, "failure-of-proof-of-message" }, - { 7, "forbidden-user-security-label-register" }, - { 8, "incompatible-change-with-original-security-context" }, - { 9, "integrity-failure-on-subject-message" }, - { 10, "invalid-security-label" }, - { 11, "invalid-security-label-update" }, - { 12, "key-failure" }, - { 13, "mandatory-parameter-absence" }, - { 14, "operation-security-failure" }, - { 15, "redirection-prohibited" }, - { 16, "refused-alternate-recipient-name" }, - { 17, "repudiation-failure-of-message" }, - { 18, "responder-credentials-checking-problem" }, - { 19, "security-context-failure" }, - { 20, "security-context-problem" }, - { 21, "security-policy-violation" }, - { 22, "security-services-refusal" }, - { 23, "token-decryption-failed" }, - { 24, "token-error" }, - { 25, "unable-to-aggregate-security-labels" }, - { 26, "unauthorised-dl-name" }, - { 27, "unauthorised-entry-class" }, - { 28, "unauthorised-originally-intended-recipient-name" }, - { 29, "unauthorised-originator-name" }, - { 30, "unauthorised-recipient-name" }, - { 31, "unauthorised-security-label-update" }, - { 32, "unauthorised-user-name" }, - { 33, "unknown-security-label" }, - { 34, "unsupported-algorithm-identifier" }, - { 35, "unsupported-security-policy" }, - { 0, NULL } + +int +dissect_x411_MessageSubmissionTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_Time(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const ber_sequence_t MessageSubmissionResult_set[] = { + { &hf_x411_message_submission_identifier, BER_CLASS_APP, 4, BER_FLAGS_NOOWNTAG, dissect_x411_MessageSubmissionIdentifier }, + { &hf_x411_message_submission_time, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_MessageSubmissionTime }, + { &hf_x411_content_identifier, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ContentIdentifier }, + { &hf_x411_extensions , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } }; +static int +dissect_x411_MessageSubmissionResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + MessageSubmissionResult_set, hf_index, ett_x411_MessageSubmissionResult); + + return offset; +} + + +static const ber_sequence_t PerRecipientProbeSubmissionFields_set[] = { + { &hf_x411_probe_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_RecipientName }, + { &hf_x411_originator_report_request, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_OriginatorReportRequest }, + { &hf_x411_explicit_conversion, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ExplicitConversion }, + { &hf_x411_extensions , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } +}; int -dissect_x411_SecurityProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, - NULL); +dissect_x411_PerRecipientProbeSubmissionFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + PerRecipientProbeSubmissionFields_set, hf_index, ett_x411_PerRecipientProbeSubmissionFields); return offset; } +static const ber_sequence_t SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientProbeSubmissionFields_sequence_of[1] = { + { &hf_x411_per_recipient_probe_submission_fields_item, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x411_PerRecipientProbeSubmissionFields }, +}; -int -dissect_x411_MessageSubmissionIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x411_MTSIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index); +static int +dissect_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientProbeSubmissionFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, + SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientProbeSubmissionFields_sequence_of, hf_index, ett_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientProbeSubmissionFields); return offset; } +static const ber_sequence_t ProbeSubmissionEnvelope_set[] = { + { &hf_x411_mts_originator_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_OriginatorName }, + { &hf_x411_original_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginalEncodedInformationTypes }, + { &hf_x411_content_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ContentType }, + { &hf_x411_content_identifier, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ContentIdentifier }, + { &hf_x411_content_length , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ContentLength }, + { &hf_x411_per_message_indicators, BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PerMessageIndicators }, + { &hf_x411_extensions , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { &hf_x411_per_recipient_probe_submission_fields, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientProbeSubmissionFields }, + { NULL, 0, 0, 0, NULL } +}; int -dissect_x411_MessageSubmissionTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x411_Time(implicit_tag, tvb, offset, actx, tree, hf_index); +dissect_x411_ProbeSubmissionEnvelope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + ProbeSubmissionEnvelope_set, hf_index, ett_x411_ProbeSubmissionEnvelope); + + return offset; +} + + + +static int +dissect_x411_ProbeSubmissionArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_ProbeSubmissionEnvelope(implicit_tag, tvb, offset, actx, tree, hf_index); return offset; } @@ -3883,6 +4175,41 @@ dissect_x411_ProbeSubmissionTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i } +static const ber_sequence_t ProbeSubmissionResult_set[] = { + { &hf_x411_probe_submission_identifier, BER_CLASS_APP, 4, BER_FLAGS_NOOWNTAG, dissect_x411_ProbeSubmissionIdentifier }, + { &hf_x411_probe_submission_time, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_ProbeSubmissionTime }, + { &hf_x411_content_identifier, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ContentIdentifier }, + { &hf_x411_extensions , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_ProbeSubmissionResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + ProbeSubmissionResult_set, hf_index, ett_x411_ProbeSubmissionResult); + + return offset; +} + + + +static int +dissect_x411_CancelDeferredDeliveryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_MessageSubmissionIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + + +static int +dissect_x411_CancelDeferredDeliveryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + static int dissect_x411_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -3975,6 +4302,15 @@ dissect_x411_SubmissionControls(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, in } + +static int +dissect_x411_SubmissionControlArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_SubmissionControls(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + static const asn_namedbit WaitingMessages_bits[] = { { 0, &hf_x411_WaitingMessages_long_content, -1, -1, "long-content", NULL }, { 1, &hf_x411_WaitingMessages_low_priority, -1, -1, "low-priority", NULL }, @@ -3992,14 +4328,14 @@ dissect_x411_WaitingMessages(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o } -static const ber_sequence_t SET_OF_ContentType_set_of[1] = { +static const ber_sequence_t SET_SIZE_0_ub_content_types_OF_ContentType_set_of[1] = { { &hf_x411_waiting_content_types_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ContentType }, }; static int -dissect_x411_SET_OF_ContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_SET_SIZE_0_ub_content_types_OF_ContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset, - SET_OF_ContentType_set_of, hf_index, ett_x411_SET_OF_ContentType); + SET_SIZE_0_ub_content_types_OF_ContentType_set_of, hf_index, ett_x411_SET_SIZE_0_ub_content_types_OF_ContentType); return offset; } @@ -4008,7 +4344,7 @@ dissect_x411_SET_OF_ContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, in static const ber_sequence_t Waiting_set[] = { { &hf_x411_waiting_operations, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_Operations }, { &hf_x411_waiting_messages, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_WaitingMessages }, - { &hf_x411_waiting_content_types, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ContentType }, + { &hf_x411_waiting_content_types, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_SIZE_0_ub_content_types_OF_ContentType }, { &hf_x411_waiting_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_EncodedInformationTypes }, { NULL, 0, 0, 0, NULL } }; @@ -4024,17 +4360,198 @@ dissect_x411_Waiting(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U static int -dissect_x411_SubjectSubmissionIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_SubmissionControlResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_Waiting(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + + +static int +dissect_x411_PAR_submission_control_violated(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + + +static int +dissect_x411_PAR_element_of_service_not_subscribed(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + + +static int +dissect_x411_PAR_deferred_delivery_cancellation_rejected(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + + +static int +dissect_x411_PAR_originator_invalid(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + +static const ber_sequence_t ImproperlySpecifiedRecipients_sequence_of[1] = { + { &hf_x411_ImproperlySpecifiedRecipients_item, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_RecipientName }, +}; + +int +dissect_x411_ImproperlySpecifiedRecipients(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, + ImproperlySpecifiedRecipients_sequence_of, hf_index, ett_x411_ImproperlySpecifiedRecipients); + + return offset; +} + + + +static int +dissect_x411_PAR_message_submission_identifier_invalid(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + + +static int +dissect_x411_PAR_inconsistent_request(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + +const value_string x411_SecurityProblem_vals[] = { + { 0, "assemby-instructions-conflict-with-security-services" }, + { 1, "authentication-problem" }, + { 2, "authentication-failure-on-subject-message" }, + { 3, "confidentiality-association-problem" }, + { 4, "decryption-failed" }, + { 5, "decryption-key-unobtainable" }, + { 6, "failure-of-proof-of-message" }, + { 7, "forbidden-user-security-label-register" }, + { 8, "incompatible-change-with-original-security-context" }, + { 9, "integrity-failure-on-subject-message" }, + { 10, "invalid-security-label" }, + { 11, "invalid-security-label-update" }, + { 12, "key-failure" }, + { 13, "mandatory-parameter-absence" }, + { 14, "operation-security-failure" }, + { 15, "redirection-prohibited" }, + { 16, "refused-alternate-recipient-name" }, + { 17, "repudiation-failure-of-message" }, + { 18, "responder-credentials-checking-problem" }, + { 19, "security-context-failure" }, + { 20, "security-context-problem" }, + { 21, "security-policy-violation" }, + { 22, "security-services-refusal" }, + { 23, "token-decryption-failed" }, + { 24, "token-error" }, + { 25, "unable-to-aggregate-security-labels" }, + { 26, "unauthorised-dl-name" }, + { 27, "unauthorised-entry-class" }, + { 28, "unauthorised-originally-intended-recipient-name" }, + { 29, "unauthorised-originator-name" }, + { 30, "unauthorised-recipient-name" }, + { 31, "unauthorised-security-label-update" }, + { 32, "unauthorised-user-name" }, + { 33, "unknown-security-label" }, + { 34, "unsupported-algorithm-identifier" }, + { 35, "unsupported-security-policy" }, + { 0, NULL } +}; + + +int +dissect_x411_SecurityProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_x411_PAR_unsupported_critical_function(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + + +static int +dissect_x411_PAR_remote_bind_error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + + +int +dissect_x411_MessageDeliveryIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_x411_MTSIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index); return offset; } +static const value_string x411_DeliveredContentType_vals[] = { + { 0, "built-in" }, + { 1, "extended" }, + { 0, NULL } +}; + +static const ber_choice_t DeliveredContentType_choice[] = { + { 0, &hf_x411_built_in , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_BuiltInContentType }, + { 1, &hf_x411_extended , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x411_ExtendedContentType }, + { 0, NULL, 0, 0, 0, NULL } +}; static int -dissect_x411_MTSActualRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x411_ORAddressAndOrDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); +dissect_x411_DeliveredContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_choice(actx, tree, tvb, offset, + DeliveredContentType_choice, hf_index, ett_x411_DeliveredContentType, + NULL); + + return offset; +} + + + +static int +dissect_x411_DeliveredOriginatorName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_ORAddressAndOptionalDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const asn_namedbit DeliveryFlags_bits[] = { + { 1, &hf_x411_DeliveryFlags_implicit_conversion_prohibited, -1, -1, "implicit-conversion-prohibited", NULL }, + { 0, NULL, 0, 0, NULL, NULL } +}; + +static int +dissect_x411_DeliveryFlags(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, + DeliveryFlags_bits, hf_index, ett_x411_DeliveryFlags, + NULL); return offset; } @@ -4042,18 +4559,143 @@ dissect_x411_MTSActualRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ static int -dissect_x411_MTSOriginallyIntendedRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_OtherRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_x411_ORAddressAndOptionalDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); return offset; } +static const ber_sequence_t OtherRecipientNames_sequence_of[1] = { + { &hf_x411_OtherRecipientNames_item, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_OtherRecipientName }, +}; + +static int +dissect_x411_OtherRecipientNames(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, + OtherRecipientNames_sequence_of, hf_index, ett_x411_OtherRecipientNames); + + return offset; +} + + + +static int +dissect_x411_ThisRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_ORAddressAndOptionalDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + + +static int +dissect_x411_OriginallyIntendedRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_ORAddressAndOptionalDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const ber_sequence_t OtherMessageDeliveryFields_set[] = { + { &hf_x411_delivered_content_type, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_DeliveredContentType }, + { &hf_x411_delivered_originator_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_DeliveredOriginatorName }, + { &hf_x411_original_encoded_information_types, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_OriginalEncodedInformationTypes }, + { &hf_x411_priority , BER_CLASS_APP, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_Priority }, + { &hf_x411_delivery_flags , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_DeliveryFlags }, + { &hf_x411_other_recipient_names, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_OtherRecipientNames }, + { &hf_x411_this_recipient_name, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_x411_ThisRecipientName }, + { &hf_x411_originally_intended_recipient_name, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_OriginallyIntendedRecipientName }, + { &hf_x411_converted_encoded_information_types, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ConvertedEncodedInformationTypes }, + { &hf_x411_message_submission_time, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_x411_MessageSubmissionTime }, + { &hf_x411_content_identifier, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ContentIdentifier }, + { &hf_x411_extensions , BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } +}; + +int +dissect_x411_OtherMessageDeliveryFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + OtherMessageDeliveryFields_set, hf_index, ett_x411_OtherMessageDeliveryFields); + + return offset; +} + + +static const ber_sequence_t MessageDeliveryArgument_sequence[] = { + { &hf_x411_message_delivery_identifier, BER_CLASS_APP, 4, BER_FLAGS_NOOWNTAG, dissect_x411_MessageDeliveryIdentifier }, + { &hf_x411_message_delivery_time, BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_x411_MessageDeliveryTime }, + { &hf_x411_other_fields , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x411_OtherMessageDeliveryFields }, + { &hf_x411_content , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_x411_Content }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_MessageDeliveryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, + MessageDeliveryArgument_sequence, hf_index, ett_x411_MessageDeliveryArgument); + + return offset; +} + + + +static int +dissect_x411_RecipientCertificate(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x509af_Certificates(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + + +static int +dissect_x411_ProofOfDelivery(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_Signature(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const ber_sequence_t MessageDeliveryResult_set[] = { + { &hf_x411_recipient_certificate, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_RecipientCertificate }, + { &hf_x411_proof_of_delivery, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ProofOfDelivery }, + { &hf_x411_extensions , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_MessageDeliveryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + MessageDeliveryResult_set, hf_index, ett_x411_MessageDeliveryResult); + + return offset; +} + + + +static int +dissect_x411_SubjectSubmissionIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_MTSIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + + +static int +dissect_x411_ActualRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_ORAddressAndOrDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + static const ber_sequence_t PerRecipientReportDeliveryFields_set[] = { - { &hf_x411_actual_recipient_name, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_MTSActualRecipientName }, + { &hf_x411_actual_recipient_name, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_ActualRecipientName }, { &hf_x411_delivery_report_type, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ReportType }, { &hf_x411_converted_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ConvertedEncodedInformationTypes }, - { &hf_x411_originally_intended_recipient_name, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_MTSOriginallyIntendedRecipientName }, + { &hf_x411_originally_intended_recipient_name, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_OriginallyIntendedRecipientName }, { &hf_x411_supplementary_information, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SupplementaryInformation }, { &hf_x411_extensions , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, { NULL, 0, 0, 0, NULL } @@ -4068,14 +4710,14 @@ dissect_x411_PerRecipientReportDeliveryFields(gboolean implicit_tag _U_, tvbuff_ } -static const ber_sequence_t SEQUENCE_OF_PerRecipientReportDeliveryFields_sequence_of[1] = { +static const ber_sequence_t SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields_sequence_of[1] = { { &hf_x411_per_recipient_report_delivery_fields_item, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x411_PerRecipientReportDeliveryFields }, }; static int -dissect_x411_SEQUENCE_OF_PerRecipientReportDeliveryFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, - SEQUENCE_OF_PerRecipientReportDeliveryFields_sequence_of, hf_index, ett_x411_SEQUENCE_OF_PerRecipientReportDeliveryFields); + SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields_sequence_of, hf_index, ett_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields); return offset; } @@ -4087,7 +4729,7 @@ static const ber_sequence_t ReportDeliveryArgument_set[] = { { &hf_x411_content_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ContentType }, { &hf_x411_original_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginalEncodedInformationTypes }, { &hf_x411_extensions , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, - { &hf_x411_per_recipient_report_delivery_fields, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x411_SEQUENCE_OF_PerRecipientReportDeliveryFields }, + { &hf_x411_per_recipient_report_delivery_fields, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields }, { &hf_x411_returned_content, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_Content }, { NULL, 0, 0, 0, NULL } }; @@ -4101,6 +4743,98 @@ dissect_x411_ReportDeliveryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ } +static const ber_sequence_t SET_SIZE_1_MAX_OF_ExtensionField_set_of[1] = { + { &hf_x411_max_extensions_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x411_ExtensionField }, +}; + +static int +dissect_x411_SET_SIZE_1_MAX_OF_ExtensionField(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset, + SET_SIZE_1_MAX_OF_ExtensionField_set_of, hf_index, ett_x411_SET_SIZE_1_MAX_OF_ExtensionField); + + return offset; +} + + +static const value_string x411_ReportDeliveryResult_vals[] = { + { 0, "empty-result" }, + { 1, "extensions" }, + { 0, NULL } +}; + +static const ber_choice_t ReportDeliveryResult_choice[] = { + { 0, &hf_x411_empty_result , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_x411_NULL }, + { 1, &hf_x411_max_extensions , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x411_SET_SIZE_1_MAX_OF_ExtensionField }, + { 0, NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_ReportDeliveryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_choice(actx, tree, tvb, offset, + ReportDeliveryResult_choice, hf_index, ett_x411_ReportDeliveryResult, + NULL); + + return offset; +} + + +static const ber_sequence_t DeliveryControlArgument_set[] = { + { &hf_x411_restrict , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_BOOLEAN }, + { &hf_x411_permissible_operations, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_Operations }, + { &hf_x411_permissible_maximum_content_length, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ContentLength }, + { &hf_x411_permissible_lowest_priority, BER_CLASS_APP, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_Priority }, + { &hf_x411_permissible_content_types, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ContentTypes }, + { &hf_x411_permissible_encoded_information_types, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PermissibleEncodedInformationTypes }, + { &hf_x411_permissible_security_context, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SecurityContext }, + { &hf_x411_extensions , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_DeliveryControlArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + DeliveryControlArgument_set, hf_index, ett_x411_DeliveryControlArgument); + + return offset; +} + + +static const ber_sequence_t DeliveryControlResult_set[] = { + { &hf_x411_waiting_operations, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_Operations }, + { &hf_x411_waiting_messages, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_WaitingMessages }, + { &hf_x411_waiting_content_types, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_SIZE_0_ub_content_types_OF_ContentType }, + { &hf_x411_waiting_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_EncodedInformationTypes }, + { &hf_x411_extensions , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_DeliveryControlResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + DeliveryControlResult_set, hf_index, ett_x411_DeliveryControlResult); + + return offset; +} + + + +static int +dissect_x411_PAR_delivery_control_violated(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + + +static int +dissect_x411_PAR_control_violates_registration(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + static const value_string x411_RefusedArgument_vals[] = { { 0, "user-name" }, { 1, "user-address" }, @@ -4134,7 +4868,7 @@ dissect_x411_RefusedArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o static int dissect_x411_T_refused_extension(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 433 "x411.cnf" +#line 549 "x411.cnf" /*XXX not implemented yet */ @@ -4151,7 +4885,7 @@ static const value_string x411_T_refused_argument_vals[] = { static const ber_choice_t T_refused_argument_choice[] = { { 0, &hf_x411_built_in_argument, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_x411_RefusedArgument }, - { 1, &hf_x411_refused_extension, BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_x411_T_refused_extension }, + { 1, &hf_x411_refused_extension, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x411_T_refused_extension }, { 0, NULL, 0, 0, 0, NULL } }; @@ -4199,17 +4933,8 @@ dissect_x411_RefusedOperation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static int -dissect_x411_RecipientCertificate(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x509af_Certificates(implicit_tag, tvb, offset, actx, tree, hf_index); - - return offset; -} - - - -static int -dissect_x411_ProofOfDelivery(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x411_Signature(implicit_tag, tvb, offset, actx, tree, hf_index); +dissect_x411_UserName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x411_ORAddressAndOptionalDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); return offset; } @@ -4217,8 +4942,10 @@ dissect_x411_ProofOfDelivery(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int o static int -dissect_x411_UserName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x411_ORAddressAndOptionalDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); +dissect_x411_PrintableString_SIZE_1_ub_tsap_id_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, + actx, tree, tvb, offset, hf_index, + NULL); return offset; } @@ -4226,7 +4953,7 @@ dissect_x411_UserName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _ static const ber_sequence_t T_x121_sequence[] = { { &hf_x411_x121_address , BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_AddrNumericString }, - { &hf_x411_tsap_id , BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString }, + { &hf_x411_tsap_id , BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString_SIZE_1_ub_tsap_id_length }, { NULL, 0, 0, 0, NULL } }; @@ -4341,7 +5068,7 @@ dissect_x411_ExactOrPattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of static const ber_sequence_t Restriction_set[] = { { &hf_x411_permitted , BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_BOOLEAN }, - { &hf_x411_source_type , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_x411_T_source_type }, + { &hf_x411_source_type , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_T_source_type }, { &hf_x411_source_name , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ExactOrPattern }, { NULL, 0, 0, 0, NULL } }; @@ -4398,14 +5125,14 @@ dissect_x411_DeliverableClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int } -static const ber_sequence_t SET_OF_DeliverableClass_set_of[1] = { +static const ber_sequence_t SET_SIZE_1_ub_deliverable_class_OF_DeliverableClass_set_of[1] = { { &hf_x411_deliverable_class_item, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x411_DeliverableClass }, }; static int -dissect_x411_SET_OF_DeliverableClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_SET_SIZE_1_ub_deliverable_class_OF_DeliverableClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset, - SET_OF_DeliverableClass_set_of, hf_index, ett_x411_SET_OF_DeliverableClass); + SET_SIZE_1_ub_deliverable_class_OF_DeliverableClass_set_of, hf_index, ett_x411_SET_SIZE_1_ub_deliverable_class_OF_DeliverableClass); return offset; } @@ -4429,14 +5156,14 @@ dissect_x411_RedirectionClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int } -static const ber_sequence_t SET_OF_RedirectionClass_set_of[1] = { +static const ber_sequence_t SET_SIZE_1_ub_redirection_classes_OF_RedirectionClass_set_of[1] = { { &hf_x411_redirection_classes_item, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x411_RedirectionClass }, }; static int -dissect_x411_SET_OF_RedirectionClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_SET_SIZE_1_ub_redirection_classes_OF_RedirectionClass(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset, - SET_OF_RedirectionClass_set_of, hf_index, ett_x411_SET_OF_RedirectionClass); + SET_SIZE_1_ub_redirection_classes_OF_RedirectionClass_set_of, hf_index, ett_x411_SET_SIZE_1_ub_redirection_classes_OF_RedirectionClass); return offset; } @@ -4452,7 +5179,7 @@ dissect_x411_RecipientAssignedAlternateRecipient(gboolean implicit_tag _U_, tvbu static const ber_sequence_t RecipientRedirection_set[] = { - { &hf_x411_redirection_classes, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_RedirectionClass }, + { &hf_x411_redirection_classes, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_SIZE_1_ub_redirection_classes_OF_RedirectionClass }, { &hf_x411_recipient_assigned_alternate_recipient, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_RecipientAssignedAlternateRecipient }, { NULL, 0, 0, 0, NULL } }; @@ -4515,7 +5242,7 @@ dissect_x411_T_standard_parameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, static int dissect_x411_T_type_extensions_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 382 "x411.cnf" +#line 498 "x411.cnf" /*XXX not implemented yet */ @@ -4525,7 +5252,7 @@ dissect_x411_T_type_extensions_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ static const ber_sequence_t T_type_extensions_set_of[1] = { - { &hf_x411_type_extensions_item, BER_CLASS_ANY, 0, BER_FLAGS_NOOWNTAG, dissect_x411_T_type_extensions_item }, + { &hf_x411_type_extensions_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_T_type_extensions_item }, }; static int @@ -4555,7 +5282,7 @@ dissect_x411_RegistrationTypes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static const ber_sequence_t RegisterArgument_set[] = { { &hf_x411_user_name , BER_CLASS_APP, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_UserName }, { &hf_x411_user_address , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_UserAddress }, - { &hf_x411_deliverable_class, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_SET_OF_DeliverableClass }, + { &hf_x411_deliverable_class, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_SET_SIZE_1_ub_deliverable_class_OF_DeliverableClass }, { &hf_x411_default_delivery_controls, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_x411_DefaultDeliveryControls }, { &hf_x411_redirections , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_Redirections }, { &hf_x411_restricted_delivery, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_RestrictedDelivery }, @@ -4574,7 +5301,7 @@ dissect_x411_RegisterArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static const ber_sequence_t T_non_empty_result_set[] = { - { &hf_x411_registered_information, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_RegisterArgument }, + { &hf_x411_registered_information, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_RegisterArgument }, { &hf_x411_extensions , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, { NULL, 0, 0, 0, NULL } }; @@ -4610,83 +5337,25 @@ dissect_x411_RegisterResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of } -static const ber_sequence_t PerRecipientProbeSubmissionFields_set[] = { - { &hf_x411_probe_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_MTSRecipientName }, - { &hf_x411_originator_report_request, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_OriginatorReportRequest }, - { &hf_x411_explicit_conversion, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ExplicitConversion }, - { &hf_x411_extensions , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, - { NULL, 0, 0, 0, NULL } -}; - -int -dissect_x411_PerRecipientProbeSubmissionFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, - PerRecipientProbeSubmissionFields_set, hf_index, ett_x411_PerRecipientProbeSubmissionFields); - - return offset; -} - - -static const ber_sequence_t SEQUENCE_OF_PerRecipientProbeSubmissionFields_sequence_of[1] = { - { &hf_x411_per_recipient_probe_submission_fields_item, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x411_PerRecipientProbeSubmissionFields }, -}; static int -dissect_x411_SEQUENCE_OF_PerRecipientProbeSubmissionFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, - SEQUENCE_OF_PerRecipientProbeSubmissionFields_sequence_of, hf_index, ett_x411_SEQUENCE_OF_PerRecipientProbeSubmissionFields); +dissect_x411_RES_change_credentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); return offset; } -static const ber_sequence_t ProbeSubmissionEnvelope_set[] = { - { &hf_x411_mts_originator_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_MTSOriginatorName }, - { &hf_x411_original_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginalEncodedInformationTypes }, - { &hf_x411_content_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ContentType }, - { &hf_x411_content_identifier, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ContentIdentifier }, - { &hf_x411_content_length , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ContentLength }, - { &hf_x411_per_message_indicators, BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PerMessageIndicators }, - { &hf_x411_extensions , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, - { &hf_x411_per_recipient_probe_submission_fields, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_x411_SEQUENCE_OF_PerRecipientProbeSubmissionFields }, +static const ber_sequence_t ChangeCredentialsArgument_set[] = { + { &hf_x411_old_credentials, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_Credentials }, + { &hf_x411_new_credentials, BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_Credentials }, { NULL, 0, 0, 0, NULL } }; -int -dissect_x411_ProbeSubmissionEnvelope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, - ProbeSubmissionEnvelope_set, hf_index, ett_x411_ProbeSubmissionEnvelope); - - return offset; -} - - - -int -dissect_x411_MessageDeliveryIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x411_MTSIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index); - - return offset; -} - - -static const value_string x411_DeliveredContentType_vals[] = { - { 0, "built-in" }, - { 1, "extended" }, - { 0, NULL } -}; - -static const ber_choice_t DeliveredContentType_choice[] = { - { 0, &hf_x411_built_in , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_BuiltInContentType }, - { 1, &hf_x411_extended , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x411_ExtendedContentType }, - { 0, NULL, 0, 0, 0, NULL } -}; - static int -dissect_x411_DeliveredContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_ber_choice(actx, tree, tvb, offset, - DeliveredContentType_choice, hf_index, ett_x411_DeliveredContentType, - NULL); +dissect_x411_ChangeCredentialsArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + ChangeCredentialsArgument_set, hf_index, ett_x411_ChangeCredentialsArgument); return offset; } @@ -4694,23 +5363,17 @@ dissect_x411_DeliveredContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, static int -dissect_x411_DeliveredOriginatorName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x411_ORAddressAndOptionalDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); +dissect_x411_PAR_register_rejected(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); return offset; } -static const asn_namedbit DeliveryFlags_bits[] = { - { 1, &hf_x411_DeliveryFlags_implicit_conversion_prohibited, -1, -1, "implicit-conversion-prohibited", NULL }, - { 0, NULL, 0, 0, NULL, NULL } -}; static int -dissect_x411_DeliveryFlags(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, - DeliveryFlags_bits, hf_index, ett_x411_DeliveryFlags, - NULL); +dissect_x411_PAR_new_credentials_unacceptable(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); return offset; } @@ -4718,55 +5381,49 @@ dissect_x411_DeliveryFlags(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off static int -dissect_x411_OtherRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x411_ORAddressAndOptionalDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); +dissect_x411_PAR_old_credentials_incorrectly_specified(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); return offset; } -static const ber_sequence_t OtherRecipientNames_sequence_of[1] = { - { &hf_x411_OtherRecipientNames_item, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_OtherRecipientName }, +static const ber_sequence_t PerMessageSubmissionFields_set[] = { + { &hf_x411_originator_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_OriginatorName }, + { &hf_x411_original_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginalEncodedInformationTypes }, + { &hf_x411_content_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ContentType }, + { &hf_x411_content_identifier, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ContentIdentifier }, + { &hf_x411_priority , BER_CLASS_APP, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_Priority }, + { &hf_x411_per_message_indicators, BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PerMessageIndicators }, + { &hf_x411_deferred_delivery_time, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_DeferredDeliveryTime }, + { &hf_x411_extensions , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } }; static int -dissect_x411_OtherRecipientNames(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, - OtherRecipientNames_sequence_of, hf_index, ett_x411_OtherRecipientNames); - - return offset; -} - - - -static int -dissect_x411_ThisRecipientName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_x411_ORAddressAndOptionalDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); +dissect_x411_PerMessageSubmissionFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + PerMessageSubmissionFields_set, hf_index, ett_x411_PerMessageSubmissionFields); return offset; } -static const ber_sequence_t OtherMessageDeliveryFields_set[] = { - { &hf_x411_delivered_content_type, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_DeliveredContentType }, - { &hf_x411_originator_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_DeliveredOriginatorName }, - { &hf_x411_original_encoded_information_types, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_OriginalEncodedInformationTypes }, - { &hf_x411_priority , BER_CLASS_APP, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_Priority }, - { &hf_x411_delivery_flags , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_DeliveryFlags }, - { &hf_x411_other_recipient_names, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_OtherRecipientNames }, - { &hf_x411_this_recipient_name, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_x411_ThisRecipientName }, - { &hf_x411_originally_intended_recipient_name, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_MTSOriginallyIntendedRecipientName }, - { &hf_x411_converted_encoded_information_types, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ConvertedEncodedInformationTypes }, - { &hf_x411_message_submission_time, BER_CLASS_CON, 7, BER_FLAGS_IMPLTAG, dissect_x411_MessageSubmissionTime }, - { &hf_x411_content_identifier, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ContentIdentifier }, - { &hf_x411_extensions , BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, +static const ber_sequence_t PerProbeSubmissionFields_set[] = { + { &hf_x411_originator_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_OriginatorName }, + { &hf_x411_original_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginalEncodedInformationTypes }, + { &hf_x411_content_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ContentType }, + { &hf_x411_content_identifier, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ContentIdentifier }, + { &hf_x411_content_length , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ContentLength }, + { &hf_x411_per_message_indicators, BER_CLASS_APP, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PerMessageIndicators }, + { &hf_x411_extensions , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, { NULL, 0, 0, 0, NULL } }; -int -dissect_x411_OtherMessageDeliveryFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +static int +dissect_x411_PerProbeSubmissionFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, - OtherMessageDeliveryFields_set, hf_index, ett_x411_OtherMessageDeliveryFields); + PerProbeSubmissionFields_set, hf_index, ett_x411_PerProbeSubmissionFields); return offset; } @@ -4794,7 +5451,7 @@ static const ber_sequence_t ReportDeliveryEnvelope_set[] = { { &hf_x411_content_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ContentType }, { &hf_x411_original_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginalEncodedInformationTypes }, { &hf_x411_extensions , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, - { &hf_x411_per_recipient_report_delivery_fields, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x411_SEQUENCE_OF_PerRecipientReportDeliveryFields }, + { &hf_x411_per_recipient_report_delivery_fields, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields }, { NULL, 0, 0, 0, NULL } }; @@ -4807,6 +5464,24 @@ dissect_x411_ReportDeliveryEnvelope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ } +static const ber_sequence_t PerReportDeliveryFields_set[] = { + { &hf_x411_subject_submission_identifier, BER_CLASS_APP, 4, BER_FLAGS_NOOWNTAG, dissect_x411_SubjectSubmissionIdentifier }, + { &hf_x411_content_identifier, BER_CLASS_APP, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_ContentIdentifier }, + { &hf_x411_content_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_ContentType }, + { &hf_x411_original_encoded_information_types, BER_CLASS_APP, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginalEncodedInformationTypes }, + { &hf_x411_extensions , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_SET_OF_ExtensionField }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_PerReportDeliveryFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + PerReportDeliveryFields_set, hf_index, ett_x411_PerReportDeliveryFields); + + return offset; +} + + static const value_string x411_RecipientReassignmentProhibited_vals[] = { { 0, "recipient-reassignment-allowed" }, { 1, "recipient-reassignment-prohibited" }, @@ -4825,7 +5500,7 @@ dissect_x411_RecipientReassignmentProhibited(gboolean implicit_tag _U_, tvbuff_t static int -dissect_x411_MTSOriginatorRequestedAlternateRecipient(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_OriginatorRequestedAlternateRecipient(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_x411_ORAddressAndOrDirectoryName(implicit_tag, tvb, offset, actx, tree, hf_index); return offset; @@ -5010,7 +5685,7 @@ static const ber_sequence_t ORAddress_sequence[] = { int dissect_x411_ORAddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 716 "x411.cnf" +#line 832 "x411.cnf" oraddress = ep_alloc(MAX_ORA_STR_LEN); oraddress[0] = '\0'; doing_address = TRUE; @@ -5144,6 +5819,17 @@ dissect_x411_ProofOfDeliveryRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ } + +static int +dissect_x411_IA5String(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + static const value_string x411_ContentCorrelator_vals[] = { { 0, "ia5text" }, { 1, "octets" }, @@ -5333,6 +6019,7 @@ static const ber_sequence_t PerRecipientDeliveryReportFields_sequence[] = { { &hf_x411_message_delivery_time, BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_x411_MessageDeliveryTime }, { &hf_x411_type_of_MTS_user, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_x411_TypeOfMTSUser }, { &hf_x411_recipient_certificate, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_RecipientCertificate }, + { &hf_x411_proof_of_delivery, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ProofOfDelivery }, { NULL, 0, 0, 0, NULL } }; @@ -5383,8 +6070,8 @@ dissect_x411_T_report_type(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off static const ber_sequence_t PerRecipientReportFields_sequence[] = { - { &hf_x411_actual_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_MTSActualRecipientName }, - { &hf_x411_originally_intended_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_MTSOriginallyIntendedRecipientName }, + { &hf_x411_actual_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_ActualRecipientName }, + { &hf_x411_originally_intended_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_OriginallyIntendedRecipientName }, { &hf_x411_report_type , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_T_report_type }, { NULL, 0, 0, 0, NULL } }; @@ -5416,6 +6103,15 @@ dissect_x411_ProofOfSubmission(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int } + +static int +dissect_x411_ProofOfSubmissionAlgorithmIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_x509af_AlgorithmIdentifier(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + static const ber_sequence_t ReportingMTAName_sequence[] = { { &hf_x411_domain , BER_CLASS_APP, 3, BER_FLAGS_NOOWNTAG, dissect_x411_GlobalDomainIdentifier }, { &hf_x411_mta_name , BER_CLASS_UNI, BER_UNI_TAG_IA5String, BER_FLAGS_NOOWNTAG, dissect_x411_MTAName }, @@ -5501,7 +6197,7 @@ dissect_x411_CertificateSelectors(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, static int dissect_x411_CommonName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 606 "x411.cnf" +#line 722 "x411.cnf" tvbuff_t *string = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, @@ -5533,7 +6229,7 @@ dissect_x411_TeletexCommonName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int static int -dissect_x411_BMPString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_BMPString_SIZE_1_ub_string_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_BMPString, actx, tree, tvb, offset, hf_index, NULL); @@ -5544,7 +6240,7 @@ dissect_x411_BMPString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset static int -dissect_x411_UniversalString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_UniversalString_SIZE_1_ub_string_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_UniversalString, actx, tree, tvb, offset, hf_index, NULL); @@ -5560,8 +6256,8 @@ static const value_string x411_T_character_encoding_vals[] = { }; static const ber_choice_t T_character_encoding_choice[] = { - { 0, &hf_x411_two_octets , BER_CLASS_UNI, BER_UNI_TAG_BMPString, BER_FLAGS_NOOWNTAG, dissect_x411_BMPString }, - { 1, &hf_x411_four_octets , BER_CLASS_UNI, BER_UNI_TAG_UniversalString, BER_FLAGS_NOOWNTAG, dissect_x411_UniversalString }, + { 0, &hf_x411_two_octets , BER_CLASS_UNI, BER_UNI_TAG_BMPString, BER_FLAGS_NOOWNTAG, dissect_x411_BMPString_SIZE_1_ub_string_length }, + { 1, &hf_x411_four_octets , BER_CLASS_UNI, BER_UNI_TAG_UniversalString, BER_FLAGS_NOOWNTAG, dissect_x411_UniversalString_SIZE_1_ub_string_length }, { 0, NULL, 0, 0, 0, NULL } }; @@ -5575,9 +6271,20 @@ dissect_x411_T_character_encoding(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, } + +static int +dissect_x411_PrintableString_SIZE_CONSTR411846860(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + static const ber_sequence_t UniversalOrBMPString_set[] = { { &hf_x411_character_encoding, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_x411_T_character_encoding }, - { &hf_x411_iso_639_language_code, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString }, + { &hf_x411_iso_639_language_code, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString_SIZE_CONSTR411846860 }, { NULL, 0, 0, 0, NULL } }; @@ -5622,7 +6329,7 @@ dissect_x411_UniversalOrganizationName(gboolean implicit_tag _U_, tvbuff_t *tvb static int dissect_x411_AddrTeletexString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 641 "x411.cnf" +#line 757 "x411.cnf" tvbuff_t *tstring = NULL; offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_TeletexString, @@ -5753,6 +6460,17 @@ dissect_x411_PhysicalDeliveryCountryName(gboolean implicit_tag _U_, tvbuff_t *tv } + +static int +dissect_x411_PrintableString_SIZE_1_ub_postal_code_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + static const value_string x411_PostalCode_vals[] = { { 0, "numeric-code" }, { 1, "printable-code" }, @@ -5761,7 +6479,7 @@ static const value_string x411_PostalCode_vals[] = { static const ber_choice_t PostalCode_choice[] = { { 0, &hf_x411_numeric_code , BER_CLASS_UNI, BER_UNI_TAG_NumericString, BER_FLAGS_NOOWNTAG, dissect_x411_AddrNumericString }, - { 1, &hf_x411_printable_code , BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString }, + { 1, &hf_x411_printable_code , BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString_SIZE_1_ub_postal_code_length }, { 0, NULL, 0, 0, 0, NULL } }; @@ -5775,9 +6493,31 @@ dissect_x411_PostalCode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset } + +static int +dissect_x411_PrintableString_SIZE_1_ub_pds_parameter_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_x411_TeletexString_SIZE_1_ub_pds_parameter_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_TeletexString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + static const ber_sequence_t PDSParameter_set[] = { - { &hf_x411_printable_string, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString }, - { &hf_x411_teletex_string , BER_CLASS_UNI, BER_UNI_TAG_TeletexString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_TeletexString }, + { &hf_x411_printable_string, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString_SIZE_1_ub_pds_parameter_length }, + { &hf_x411_pds_teletex_string, BER_CLASS_UNI, BER_UNI_TAG_TeletexString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_TeletexString_SIZE_1_ub_pds_parameter_length }, { NULL, 0, 0, 0, NULL } }; @@ -5908,7 +6648,7 @@ dissect_x411_UniversalExtensionPhysicalDeliveryAddressComponents(gboolean implic static const ber_sequence_t T_printable_address_sequence_of[1] = { - { &hf_x411_printable_address_item, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString }, + { &hf_x411_printable_address_item, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_x411_PrintableString_SIZE_1_ub_pds_parameter_length }, }; static int @@ -5920,9 +6660,20 @@ dissect_x411_T_printable_address(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i } + +static int +dissect_x411_TeletexString_SIZE_1_ub_unformatted_address_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_TeletexString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + static const ber_sequence_t UnformattedPostalAddress_set[] = { { &hf_x411_printable_address, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_T_printable_address }, - { &hf_x411_teletex_string , BER_CLASS_UNI, BER_UNI_TAG_TeletexString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_TeletexString }, + { &hf_x411_teletex_string , BER_CLASS_UNI, BER_UNI_TAG_TeletexString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x411_TeletexString_SIZE_1_ub_unformatted_address_length }, { NULL, 0, 0, 0, NULL } }; @@ -6036,7 +6787,18 @@ dissect_x411_UniversalLocalPostalAttributes(gboolean implicit_tag _U_, tvbuff_t static int -dissect_x411_NumericString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_x411_NumericString_SIZE_1_ub_e163_4_number_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_x411_NumericString_SIZE_1_ub_e163_4_sub_address_length(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_NumericString, actx, tree, tvb, offset, hf_index, NULL); @@ -6046,8 +6808,8 @@ dissect_x411_NumericString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off static const ber_sequence_t T_e163_4_address_sequence[] = { - { &hf_x411_number , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_NumericString }, - { &hf_x411_sub_address , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_NumericString }, + { &hf_x411_number , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x411_NumericString_SIZE_1_ub_e163_4_number_length }, + { &hf_x411_sub_address , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_NumericString_SIZE_1_ub_e163_4_sub_address_length }, { NULL, 0, 0, 0, NULL } }; @@ -6181,7 +6943,7 @@ static const ber_sequence_t MTANameAndOptionalGDI_sequence[] = { static int dissect_x411_MTANameAndOptionalGDI(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 795 "x411.cnf" +#line 911 "x411.cnf" doing_address = TRUE; @@ -6205,7 +6967,7 @@ static const value_string x411_T_name_vals[] = { }; static const ber_choice_t T_name_choice[] = { - { 0, &hf_x411_token_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_MTSRecipientName }, + { 0, &hf_x411_token_recipient_name, BER_CLASS_APP, 0, BER_FLAGS_NOOWNTAG, dissect_x411_RecipientName }, { 1, &hf_x411_token_mta , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_x411_MTANameAndOptionalGDI }, { 0, NULL, 0, 0, 0, NULL } }; @@ -6241,7 +7003,7 @@ dissect_x411_TokenDataType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off static int dissect_x411_T_value(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 899 "x411.cnf" +#line 1015 "x411.cnf" proto_item_append_text(tree, " (%s)", val_to_str(extension_id, x411_TokenDataType_vals, "tokendata-type %d")); if (dissector_try_port(x411_tokendata_dissector_table, extension_id, tvb, actx->pinfo, tree)) { @@ -6333,6 +7095,16 @@ dissect_x411_BindTokenSignedData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i } + +static int +dissect_x411_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + static const ber_sequence_t MessageTokenSignedData_sequence[] = { { &hf_x411_content_confidentiality_algorithm_identifier, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ContentConfidentialityAlgorithmIdentifier }, { &hf_x411_content_integrity_check, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_ContentIntegrityCheck }, @@ -6388,6 +7160,121 @@ dissect_x411_BindTokenEncryptedData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_ return offset; } + + +static int +dissect_x411_RTTPapdu(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_x411_RTTRapdu(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string x411_AbortReason_vals[] = { + { 0, "localSystemProblem" }, + { 1, "invalidParameter" }, + { 2, "unrecognizedActivity" }, + { 3, "temporaryProblem" }, + { 4, "protocolError" }, + { 5, "permanentProblem" }, + { 6, "userError" }, + { 7, "transferCompleted" }, + { 0, NULL } +}; + + +static int +dissect_x411_AbortReason(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_x411_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); + + return offset; +} + + +static const ber_sequence_t RTABapdu_set[] = { + { &hf_x411_abortReason , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_AbortReason }, + { &hf_x411_reflectedParameter, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_BIT_STRING }, + { &hf_x411_userdataAB , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x411_OBJECT_IDENTIFIER }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_RTABapdu(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + RTABapdu_set, hf_index, ett_x411_RTABapdu); + + return offset; +} + + +static const value_string x411_RTSE_apdus_vals[] = { + { 0, "rtorq-apdu" }, + { 1, "rtoac-apdu" }, + { 2, "rtorj-apdu" }, + { 3, "rttp-apdu" }, + { 4, "rttr-apdu" }, + { 5, "rtab-apdu" }, + { 0, NULL } +}; + +static const ber_choice_t RTSE_apdus_choice[] = { + { 0, &hf_x411_rtorq_apdu , BER_CLASS_CON, 16, BER_FLAGS_IMPLTAG, dissect_rtse_RTORQapdu }, + { 1, &hf_x411_rtoac_apdu , BER_CLASS_CON, 17, BER_FLAGS_IMPLTAG, dissect_rtse_RTOACapdu }, + { 2, &hf_x411_rtorj_apdu , BER_CLASS_CON, 18, BER_FLAGS_IMPLTAG, dissect_rtse_RTORJapdu }, + { 3, &hf_x411_rttp_apdu , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_x411_RTTPapdu }, + { 4, &hf_x411_rttr_apdu , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_x411_RTTRapdu }, + { 5, &hf_x411_rtab_apdu , BER_CLASS_CON, 22, BER_FLAGS_IMPLTAG, dissect_x411_RTABapdu }, + { 0, NULL, 0, 0, 0, NULL } +}; + +static int +dissect_x411_RTSE_apdus(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_choice(actx, tree, tvb, offset, + RTSE_apdus_choice, hf_index, ett_x411_RTSE_apdus, + NULL); + + return offset; +} + + + +static int +dissect_x411_MTSInvokeIds(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ros_InvokeId(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + + +static int +dissect_x411_ID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); + + return offset; +} + /*--- PDUs ---*/ static void dissect_InternalTraceInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { @@ -6410,15 +7297,220 @@ static void dissect_TraceInformationElement_PDU(tvbuff_t *tvb _U_, packet_info * asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); dissect_x411_TraceInformationElement(FALSE, tvb, 0, &asn1_ctx, tree, hf_x411_TraceInformationElement_PDU); } +static int dissect_MTSBindArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_MTSBindArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_MTSBindArgument_PDU); + return offset; +} +static int dissect_MTSBindResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_MTSBindResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_MTSBindResult_PDU); + return offset; +} +static int dissect_PAR_mts_bind_error_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_mts_bind_error(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_mts_bind_error_PDU); + return offset; +} +static int dissect_MessageSubmissionArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_MessageSubmissionArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_MessageSubmissionArgument_PDU); + return offset; +} +static int dissect_MessageSubmissionResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_MessageSubmissionResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_MessageSubmissionResult_PDU); + return offset; +} +static int dissect_ProbeSubmissionArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_ProbeSubmissionArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_ProbeSubmissionArgument_PDU); + return offset; +} +static int dissect_ProbeSubmissionResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_ProbeSubmissionResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_ProbeSubmissionResult_PDU); + return offset; +} +static int dissect_CancelDeferredDeliveryArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_CancelDeferredDeliveryArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_CancelDeferredDeliveryArgument_PDU); + return offset; +} +static int dissect_CancelDeferredDeliveryResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_CancelDeferredDeliveryResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_CancelDeferredDeliveryResult_PDU); + return offset; +} +static int dissect_SubmissionControlArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_SubmissionControlArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_SubmissionControlArgument_PDU); + return offset; +} +static int dissect_SubmissionControlResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_SubmissionControlResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_SubmissionControlResult_PDU); + return offset; +} +static int dissect_PAR_submission_control_violated_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_submission_control_violated(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_submission_control_violated_PDU); + return offset; +} +static int dissect_PAR_element_of_service_not_subscribed_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_element_of_service_not_subscribed(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_element_of_service_not_subscribed_PDU); + return offset; +} +static int dissect_PAR_deferred_delivery_cancellation_rejected_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_deferred_delivery_cancellation_rejected(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_deferred_delivery_cancellation_rejected_PDU); + return offset; +} +static int dissect_PAR_originator_invalid_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_originator_invalid(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_originator_invalid_PDU); + return offset; +} +static int dissect_ImproperlySpecifiedRecipients_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_ImproperlySpecifiedRecipients(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_ImproperlySpecifiedRecipients_PDU); + return offset; +} +static int dissect_PAR_message_submission_identifier_invalid_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_message_submission_identifier_invalid(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_message_submission_identifier_invalid_PDU); + return offset; +} +static int dissect_PAR_inconsistent_request_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_inconsistent_request(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_inconsistent_request_PDU); + return offset; +} +static int dissect_SecurityProblem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_SecurityProblem(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_SecurityProblem_PDU); + return offset; +} +static int dissect_PAR_unsupported_critical_function_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_unsupported_critical_function(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_unsupported_critical_function_PDU); + return offset; +} +static int dissect_PAR_remote_bind_error_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_remote_bind_error(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_remote_bind_error_PDU); + return offset; +} static void dissect_MessageSubmissionTime_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { asn1_ctx_t asn1_ctx; asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); dissect_x411_MessageSubmissionTime(FALSE, tvb, 0, &asn1_ctx, tree, hf_x411_MessageSubmissionTime_PDU); } -static void dissect_ReportDeliveryArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { +static int dissect_MessageDeliveryArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_MessageDeliveryArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_MessageDeliveryArgument_PDU); + return offset; +} +static int dissect_MessageDeliveryResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_MessageDeliveryResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_MessageDeliveryResult_PDU); + return offset; +} +static int dissect_ReportDeliveryArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_ReportDeliveryArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_ReportDeliveryArgument_PDU); + return offset; +} +static int dissect_ReportDeliveryResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_ReportDeliveryResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_ReportDeliveryResult_PDU); + return offset; +} +static int dissect_DeliveryControlArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_DeliveryControlArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_DeliveryControlArgument_PDU); + return offset; +} +static int dissect_DeliveryControlResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_DeliveryControlResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_DeliveryControlResult_PDU); + return offset; +} +static int dissect_PAR_delivery_control_violated_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_delivery_control_violated(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_delivery_control_violated_PDU); + return offset; +} +static int dissect_PAR_control_violates_registration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; asn1_ctx_t asn1_ctx; asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); - dissect_x411_ReportDeliveryArgument(FALSE, tvb, 0, &asn1_ctx, tree, hf_x411_ReportDeliveryArgument_PDU); + offset = dissect_x411_PAR_control_violates_registration(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_control_violates_registration_PDU); + return offset; +} +static int dissect_RefusedOperation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_RefusedOperation(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_RefusedOperation_PDU); + return offset; } static void dissect_RecipientCertificate_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { asn1_ctx_t asn1_ctx; @@ -6430,6 +7522,55 @@ static void dissect_ProofOfDelivery_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); dissect_x411_ProofOfDelivery(FALSE, tvb, 0, &asn1_ctx, tree, hf_x411_ProofOfDelivery_PDU); } +static int dissect_RegisterArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_RegisterArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_RegisterArgument_PDU); + return offset; +} +static int dissect_RegisterResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_RegisterResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_RegisterResult_PDU); + return offset; +} +static int dissect_ChangeCredentialsArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_ChangeCredentialsArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_ChangeCredentialsArgument_PDU); + return offset; +} +static int dissect_RES_change_credentials_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_RES_change_credentials(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_RES_change_credentials_PDU); + return offset; +} +static int dissect_PAR_register_rejected_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_register_rejected(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_register_rejected_PDU); + return offset; +} +static int dissect_PAR_new_credentials_unacceptable_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_new_credentials_unacceptable(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_new_credentials_unacceptable_PDU); + return offset; +} +static int dissect_PAR_old_credentials_incorrectly_specified_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_x411_PAR_old_credentials_incorrectly_specified(FALSE, tvb, offset, &asn1_ctx, tree, hf_x411_PAR_old_credentials_incorrectly_specified_PDU); + return offset; +} static void dissect_MessageSubmissionEnvelope_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { asn1_ctx_t asn1_ctx; asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); @@ -6520,10 +7661,10 @@ static void dissect_RecipientReassignmentProhibited_PDU(tvbuff_t *tvb _U_, packe asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); dissect_x411_RecipientReassignmentProhibited(FALSE, tvb, 0, &asn1_ctx, tree, hf_x411_RecipientReassignmentProhibited_PDU); } -static void dissect_MTSOriginatorRequestedAlternateRecipient_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { +static void dissect_OriginatorRequestedAlternateRecipient_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { asn1_ctx_t asn1_ctx; asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); - dissect_x411_MTSOriginatorRequestedAlternateRecipient(FALSE, tvb, 0, &asn1_ctx, tree, hf_x411_MTSOriginatorRequestedAlternateRecipient_PDU); + dissect_x411_OriginatorRequestedAlternateRecipient(FALSE, tvb, 0, &asn1_ctx, tree, hf_x411_OriginatorRequestedAlternateRecipient_PDU); } static void dissect_DLExpansionProhibited_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) { asn1_ctx_t asn1_ctx; @@ -6973,7 +8114,95 @@ static void dissect_SecurityClassification_PDU(tvbuff_t *tvb _U_, packet_info *p /*--- End of included file: packet-x411-fn.c ---*/ -#line 102 "packet-x411-template.c" +#line 107 "packet-x411-template.c" + + +/*--- Included file: packet-x411-table11.c ---*/ +#line 1 "packet-x411-table11.c" + +static const ros_opr_t p3_opr_tab[] = { + /* mts-bind */ + { op_ros_bind , dissect_MTSBindArgument_PDU, dissect_MTSBindResult_PDU }, + /* message-submission */ + { op_message_submission , dissect_MessageSubmissionArgument_PDU, dissect_MessageSubmissionResult_PDU }, + /* probe-submission */ + { op_probe_submission , dissect_ProbeSubmissionArgument_PDU, dissect_ProbeSubmissionResult_PDU }, + /* cancel-deferred-delivery */ + { op_cancel_deferred_delivery, dissect_CancelDeferredDeliveryArgument_PDU, dissect_CancelDeferredDeliveryResult_PDU }, + /* submission-control */ + { op_submission_control , dissect_SubmissionControlArgument_PDU, dissect_SubmissionControlResult_PDU }, + /* message-delivery */ + { op_message_delivery , dissect_MessageDeliveryArgument_PDU, dissect_MessageDeliveryResult_PDU }, + /* report-delivery */ + { op_report_delivery , dissect_ReportDeliveryArgument_PDU, dissect_ReportDeliveryResult_PDU }, + /* delivery-control */ + { op_delivery_control , dissect_DeliveryControlArgument_PDU, dissect_DeliveryControlResult_PDU }, + /* register */ + { op_register , dissect_RegisterArgument_PDU, dissect_RegisterResult_PDU }, + /* change-credentials */ + { op_change_credentials , dissect_ChangeCredentialsArgument_PDU, dissect_RES_change_credentials_PDU }, + { 0, (new_dissector_t)(-1), (new_dissector_t)(-1) }, +}; + + +/*--- End of included file: packet-x411-table11.c ---*/ +#line 109 "packet-x411-template.c" + +/*--- Included file: packet-x411-table21.c ---*/ +#line 1 "packet-x411-table21.c" + +static const ros_err_t p3_err_tab[] = { + /* mts-bind-error*/ + { err_ros_bind, dissect_PAR_mts_bind_error_PDU }, + /* submission-control-violated*/ + { err_submission_control_violated, dissect_PAR_submission_control_violated_PDU }, + /* element-of-service-not-subscribed*/ + { err_element_of_service_not_subscribed, dissect_PAR_element_of_service_not_subscribed_PDU }, + /* deferred-delivery-cancellation-rejected*/ + { err_deferred_delivery_cancellation_rejected, dissect_PAR_deferred_delivery_cancellation_rejected_PDU }, + /* originator-invalid*/ + { err_originator_invalid, dissect_PAR_originator_invalid_PDU }, + /* recipient-improperly-specified*/ + { err_recipient_improperly_specified, dissect_ImproperlySpecifiedRecipients_PDU }, + /* message-submission-identifier-invalid*/ + { err_message_submission_identifier_invalid, dissect_PAR_message_submission_identifier_invalid_PDU }, + /* inconsistent-request*/ + { err_inconsistent_request, dissect_PAR_inconsistent_request_PDU }, + /* security-error*/ + { err_security_error, dissect_SecurityProblem_PDU }, + /* unsupported-critical-function*/ + { err_unsupported_critical_function, dissect_PAR_unsupported_critical_function_PDU }, + /* remote-bind-error*/ + { err_remote_bind_error, dissect_PAR_remote_bind_error_PDU }, + /* delivery-control-violated*/ + { err_delivery_control_violated, dissect_PAR_delivery_control_violated_PDU }, + /* control-violates-registration*/ + { err_control_violates_registration, dissect_PAR_control_violates_registration_PDU }, + /* operation-refused*/ + { err_operation_refused, dissect_RefusedOperation_PDU }, + /* register-rejected*/ + { err_register_rejected, dissect_PAR_register_rejected_PDU }, + /* new-credentials-unacceptable*/ + { err_new_credentials_unacceptable, dissect_PAR_new_credentials_unacceptable_PDU }, + /* old-credentials-incorrectly-specified*/ + { err_old_credentials_incorrectly_specified, dissect_PAR_old_credentials_incorrectly_specified_PDU }, + { 0, (new_dissector_t)(-1) }, +}; + + +/*--- End of included file: packet-x411-table21.c ---*/ +#line 110 "packet-x411-template.c" + +static const ros_info_t p3_ros_info = { + "P3", + &proto_p3, + &ett_p3, + p3_opr_code_string_vals, + p3_opr_tab, + p3_err_code_string_vals, + p3_err_tab +}; + char* x411_get_last_oraddress() { return oraddress; } @@ -7127,14 +8356,130 @@ void proto_register_x411(void) { { "TraceInformationElement", "x411.TraceInformationElement", FT_NONE, BASE_NONE, NULL, 0, "x411.TraceInformationElement", HFILL }}, + { &hf_x411_MTSBindArgument_PDU, + { "MTSBindArgument", "x411.MTSBindArgument", + FT_NONE, BASE_NONE, NULL, 0, + "x411.MTSBindArgument", HFILL }}, + { &hf_x411_MTSBindResult_PDU, + { "MTSBindResult", "x411.MTSBindResult", + FT_NONE, BASE_NONE, NULL, 0, + "x411.MTSBindResult", HFILL }}, + { &hf_x411_PAR_mts_bind_error_PDU, + { "PAR-mts-bind-error", "x411.PAR_mts_bind_error", + FT_UINT32, BASE_DEC, VALS(x411_PAR_mts_bind_error_vals), 0, + "x411.PAR_mts_bind_error", HFILL }}, + { &hf_x411_MessageSubmissionArgument_PDU, + { "MessageSubmissionArgument", "x411.MessageSubmissionArgument", + FT_NONE, BASE_NONE, NULL, 0, + "x411.MessageSubmissionArgument", HFILL }}, + { &hf_x411_MessageSubmissionResult_PDU, + { "MessageSubmissionResult", "x411.MessageSubmissionResult", + FT_NONE, BASE_NONE, NULL, 0, + "x411.MessageSubmissionResult", HFILL }}, + { &hf_x411_ProbeSubmissionArgument_PDU, + { "ProbeSubmissionArgument", "x411.ProbeSubmissionArgument", + FT_NONE, BASE_NONE, NULL, 0, + "x411.ProbeSubmissionArgument", HFILL }}, + { &hf_x411_ProbeSubmissionResult_PDU, + { "ProbeSubmissionResult", "x411.ProbeSubmissionResult", + FT_NONE, BASE_NONE, NULL, 0, + "x411.ProbeSubmissionResult", HFILL }}, + { &hf_x411_CancelDeferredDeliveryArgument_PDU, + { "CancelDeferredDeliveryArgument", "x411.CancelDeferredDeliveryArgument", + FT_NONE, BASE_NONE, NULL, 0, + "x411.CancelDeferredDeliveryArgument", HFILL }}, + { &hf_x411_CancelDeferredDeliveryResult_PDU, + { "CancelDeferredDeliveryResult", "x411.CancelDeferredDeliveryResult", + FT_NONE, BASE_NONE, NULL, 0, + "x411.CancelDeferredDeliveryResult", HFILL }}, + { &hf_x411_SubmissionControlArgument_PDU, + { "SubmissionControlArgument", "x411.SubmissionControlArgument", + FT_NONE, BASE_NONE, NULL, 0, + "x411.SubmissionControlArgument", HFILL }}, + { &hf_x411_SubmissionControlResult_PDU, + { "SubmissionControlResult", "x411.SubmissionControlResult", + FT_NONE, BASE_NONE, NULL, 0, + "x411.SubmissionControlResult", HFILL }}, + { &hf_x411_PAR_submission_control_violated_PDU, + { "PAR-submission-control-violated", "x411.PAR_submission_control_violated", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_submission_control_violated", HFILL }}, + { &hf_x411_PAR_element_of_service_not_subscribed_PDU, + { "PAR-element-of-service-not-subscribed", "x411.PAR_element_of_service_not_subscribed", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_element_of_service_not_subscribed", HFILL }}, + { &hf_x411_PAR_deferred_delivery_cancellation_rejected_PDU, + { "PAR-deferred-delivery-cancellation-rejected", "x411.PAR_deferred_delivery_cancellation_rejected", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_deferred_delivery_cancellation_rejected", HFILL }}, + { &hf_x411_PAR_originator_invalid_PDU, + { "PAR-originator-invalid", "x411.PAR_originator_invalid", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_originator_invalid", HFILL }}, + { &hf_x411_ImproperlySpecifiedRecipients_PDU, + { "ImproperlySpecifiedRecipients", "x411.ImproperlySpecifiedRecipients", + FT_UINT32, BASE_DEC, NULL, 0, + "x411.ImproperlySpecifiedRecipients", HFILL }}, + { &hf_x411_PAR_message_submission_identifier_invalid_PDU, + { "PAR-message-submission-identifier-invalid", "x411.PAR_message_submission_identifier_invalid", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_message_submission_identifier_invalid", HFILL }}, + { &hf_x411_PAR_inconsistent_request_PDU, + { "PAR-inconsistent-request", "x411.PAR_inconsistent_request", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_inconsistent_request", HFILL }}, + { &hf_x411_SecurityProblem_PDU, + { "SecurityProblem", "x411.SecurityProblem", + FT_UINT32, BASE_DEC, VALS(x411_SecurityProblem_vals), 0, + "x411.SecurityProblem", HFILL }}, + { &hf_x411_PAR_unsupported_critical_function_PDU, + { "PAR-unsupported-critical-function", "x411.PAR_unsupported_critical_function", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_unsupported_critical_function", HFILL }}, + { &hf_x411_PAR_remote_bind_error_PDU, + { "PAR-remote-bind-error", "x411.PAR_remote_bind_error", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_remote_bind_error", HFILL }}, { &hf_x411_MessageSubmissionTime_PDU, { "MessageSubmissionTime", "x411.MessageSubmissionTime", FT_STRING, BASE_NONE, NULL, 0, "x411.MessageSubmissionTime", HFILL }}, + { &hf_x411_MessageDeliveryArgument_PDU, + { "MessageDeliveryArgument", "x411.MessageDeliveryArgument", + FT_NONE, BASE_NONE, NULL, 0, + "x411.MessageDeliveryArgument", HFILL }}, + { &hf_x411_MessageDeliveryResult_PDU, + { "MessageDeliveryResult", "x411.MessageDeliveryResult", + FT_NONE, BASE_NONE, NULL, 0, + "x411.MessageDeliveryResult", HFILL }}, { &hf_x411_ReportDeliveryArgument_PDU, { "ReportDeliveryArgument", "x411.ReportDeliveryArgument", FT_NONE, BASE_NONE, NULL, 0, "x411.ReportDeliveryArgument", HFILL }}, + { &hf_x411_ReportDeliveryResult_PDU, + { "ReportDeliveryResult", "x411.ReportDeliveryResult", + FT_UINT32, BASE_DEC, VALS(x411_ReportDeliveryResult_vals), 0, + "x411.ReportDeliveryResult", HFILL }}, + { &hf_x411_DeliveryControlArgument_PDU, + { "DeliveryControlArgument", "x411.DeliveryControlArgument", + FT_NONE, BASE_NONE, NULL, 0, + "x411.DeliveryControlArgument", HFILL }}, + { &hf_x411_DeliveryControlResult_PDU, + { "DeliveryControlResult", "x411.DeliveryControlResult", + FT_NONE, BASE_NONE, NULL, 0, + "x411.DeliveryControlResult", HFILL }}, + { &hf_x411_PAR_delivery_control_violated_PDU, + { "PAR-delivery-control-violated", "x411.PAR_delivery_control_violated", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_delivery_control_violated", HFILL }}, + { &hf_x411_PAR_control_violates_registration_PDU, + { "PAR-control-violates-registration", "x411.PAR_control_violates_registration", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_control_violates_registration", HFILL }}, + { &hf_x411_RefusedOperation_PDU, + { "RefusedOperation", "x411.RefusedOperation", + FT_NONE, BASE_NONE, NULL, 0, + "x411.RefusedOperation", HFILL }}, { &hf_x411_RecipientCertificate_PDU, { "RecipientCertificate", "x411.RecipientCertificate", FT_NONE, BASE_NONE, NULL, 0, @@ -7143,6 +8488,34 @@ void proto_register_x411(void) { { "ProofOfDelivery", "x411.ProofOfDelivery", FT_NONE, BASE_NONE, NULL, 0, "x411.ProofOfDelivery", HFILL }}, + { &hf_x411_RegisterArgument_PDU, + { "RegisterArgument", "x411.RegisterArgument", + FT_NONE, BASE_NONE, NULL, 0, + "x411.RegisterArgument", HFILL }}, + { &hf_x411_RegisterResult_PDU, + { "RegisterResult", "x411.RegisterResult", + FT_UINT32, BASE_DEC, VALS(x411_RegisterResult_vals), 0, + "x411.RegisterResult", HFILL }}, + { &hf_x411_ChangeCredentialsArgument_PDU, + { "ChangeCredentialsArgument", "x411.ChangeCredentialsArgument", + FT_NONE, BASE_NONE, NULL, 0, + "x411.ChangeCredentialsArgument", HFILL }}, + { &hf_x411_RES_change_credentials_PDU, + { "RES-change-credentials", "x411.RES_change_credentials", + FT_NONE, BASE_NONE, NULL, 0, + "x411.RES_change_credentials", HFILL }}, + { &hf_x411_PAR_register_rejected_PDU, + { "PAR-register-rejected", "x411.PAR_register_rejected", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_register_rejected", HFILL }}, + { &hf_x411_PAR_new_credentials_unacceptable_PDU, + { "PAR-new-credentials-unacceptable", "x411.PAR_new_credentials_unacceptable", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_new_credentials_unacceptable", HFILL }}, + { &hf_x411_PAR_old_credentials_incorrectly_specified_PDU, + { "PAR-old-credentials-incorrectly-specified", "x411.PAR_old_credentials_incorrectly_specified", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PAR_old_credentials_incorrectly_specified", HFILL }}, { &hf_x411_MessageSubmissionEnvelope_PDU, { "MessageSubmissionEnvelope", "x411.MessageSubmissionEnvelope", FT_NONE, BASE_NONE, NULL, 0, @@ -7215,10 +8588,10 @@ void proto_register_x411(void) { { "RecipientReassignmentProhibited", "x411.RecipientReassignmentProhibited", FT_UINT32, BASE_DEC, VALS(x411_RecipientReassignmentProhibited_vals), 0, "x411.RecipientReassignmentProhibited", HFILL }}, - { &hf_x411_MTSOriginatorRequestedAlternateRecipient_PDU, - { "MTSOriginatorRequestedAlternateRecipient", "x411.MTSOriginatorRequestedAlternateRecipient", + { &hf_x411_OriginatorRequestedAlternateRecipient_PDU, + { "OriginatorRequestedAlternateRecipient", "x411.OriginatorRequestedAlternateRecipient", FT_NONE, BASE_NONE, NULL, 0, - "x411.MTSOriginatorRequestedAlternateRecipient", HFILL }}, + "x411.OriginatorRequestedAlternateRecipient", HFILL }}, { &hf_x411_DLExpansionProhibited_PDU, { "DLExpansionProhibited", "x411.DLExpansionProhibited", FT_UINT32, BASE_DEC, VALS(x411_DLExpansionProhibited_vals), 0, @@ -7265,7 +8638,7 @@ void proto_register_x411(void) { "x411.OriginatorReturnAddress", HFILL }}, { &hf_x411_PhysicalDeliveryReportRequest_PDU, { "PhysicalDeliveryReportRequest", "x411.PhysicalDeliveryReportRequest", - FT_INT32, BASE_DEC, VALS(x411_PhysicalDeliveryReportRequest_vals), 0, + FT_UINT32, BASE_DEC, VALS(x411_PhysicalDeliveryReportRequest_vals), 0, "x411.PhysicalDeliveryReportRequest", HFILL }}, { &hf_x411_OriginatorCertificate_PDU, { "OriginatorCertificate", "x411.OriginatorCertificate", @@ -7533,7 +8906,7 @@ void proto_register_x411(void) { "x411.ExtendedNetworkAddress", HFILL }}, { &hf_x411_TerminalType_PDU, { "TerminalType", "x411.TerminalType", - FT_INT32, BASE_DEC, VALS(x411_TerminalType_vals), 0, + FT_UINT32, BASE_DEC, VALS(x411_TerminalType_vals), 0, "x411.TerminalType", HFILL }}, { &hf_x411_TeletexDomainDefinedAttributes_PDU, { "TeletexDomainDefinedAttributes", "x411.TeletexDomainDefinedAttributes", @@ -7863,6 +9236,18 @@ void proto_register_x411(void) { { "attempted-domain", "x411.attempted_domain", FT_NONE, BASE_NONE, NULL, 0, "x411.GlobalDomainIdentifier", HFILL }}, + { &hf_x411_initiator_name, + { "initiator-name", "x411.initiator_name", + FT_UINT32, BASE_DEC, VALS(x411_ObjectName_vals), 0, + "x411.ObjectName", HFILL }}, + { &hf_x411_messages_waiting, + { "messages-waiting", "x411.messages_waiting", + FT_NONE, BASE_NONE, NULL, 0, + "x411.MessagesWaiting", HFILL }}, + { &hf_x411_responder_name, + { "responder-name", "x411.responder_name", + FT_UINT32, BASE_DEC, VALS(x411_ObjectName_vals), 0, + "x411.ObjectName", HFILL }}, { &hf_x411_user_agent, { "user-agent", "x411.user_agent", FT_NONE, BASE_NONE, NULL, 0, @@ -7889,12 +9274,12 @@ void proto_register_x411(void) { "x411.DeliveryQueue", HFILL }}, { &hf_x411_messages, { "messages", "x411.messages", - FT_INT32, BASE_DEC, NULL, 0, - "x411.INTEGER", HFILL }}, + FT_UINT32, BASE_DEC, NULL, 0, + "x411.INTEGER_0_ub_queue_size", HFILL }}, { &hf_x411_delivery_queue_octets, { "octets", "x411.octets", - FT_INT32, BASE_DEC, NULL, 0, - "x411.INTEGER", HFILL }}, + FT_UINT32, BASE_DEC, NULL, 0, + "x411.INTEGER_0_ub_content_length", HFILL }}, { &hf_x411_simple, { "simple", "x411.simple", FT_UINT32, BASE_DEC, VALS(x411_Password_vals), 0, @@ -7910,11 +9295,11 @@ void proto_register_x411(void) { { &hf_x411_ia5_string, { "ia5-string", "x411.ia5_string", FT_STRING, BASE_NONE, NULL, 0, - "x411.IA5String", HFILL }}, + "x411.IA5String_SIZE_0_ub_password_length", HFILL }}, { &hf_x411_octet_string, { "octet-string", "x411.octet_string", FT_BYTES, BASE_HEX, NULL, 0, - "x411.OCTET_STRING", HFILL }}, + "x411.OCTET_STRING_SIZE_0_ub_password_length", HFILL }}, { &hf_x411_bind_token, { "bind-token", "x411.bind_token", FT_NONE, BASE_NONE, NULL, 0, @@ -7963,10 +9348,26 @@ void proto_register_x411(void) { { "envelope", "x411.envelope", FT_NONE, BASE_NONE, NULL, 0, "x411.MessageSubmissionEnvelope", HFILL }}, + { &hf_x411_message_submission_identifier, + { "message-submission-identifier", "x411.message_submission_identifier", + FT_NONE, BASE_NONE, NULL, 0, + "x411.MessageSubmissionIdentifier", HFILL }}, + { &hf_x411_message_submission_time, + { "message-submission-time", "x411.message_submission_time", + FT_STRING, BASE_NONE, NULL, 0, + "x411.MessageSubmissionTime", HFILL }}, + { &hf_x411_probe_submission_identifier, + { "probe-submission-identifier", "x411.probe_submission_identifier", + FT_NONE, BASE_NONE, NULL, 0, + "x411.ProbeSubmissionIdentifier", HFILL }}, + { &hf_x411_probe_submission_time, + { "probe-submission-time", "x411.probe_submission_time", + FT_STRING, BASE_NONE, NULL, 0, + "x411.ProbeSubmissionTime", HFILL }}, { &hf_x411_ImproperlySpecifiedRecipients_item, - { "MTSRecipientName", "x411.MTSRecipientName", + { "RecipientName", "x411.RecipientName", FT_NONE, BASE_NONE, NULL, 0, - "x411.MTSRecipientName", HFILL }}, + "x411.RecipientName", HFILL }}, { &hf_x411_waiting_operations, { "waiting-operations", "x411.waiting_operations", FT_BYTES, BASE_HEX, NULL, 0, @@ -7978,7 +9379,7 @@ void proto_register_x411(void) { { &hf_x411_waiting_content_types, { "waiting-content-types", "x411.waiting_content_types", FT_UINT32, BASE_DEC, NULL, 0, - "x411.SET_OF_ContentType", HFILL }}, + "x411.SET_SIZE_0_ub_content_types_OF_ContentType", HFILL }}, { &hf_x411_waiting_content_types_item, { "ContentType", "x411.ContentType", FT_UINT32, BASE_DEC, VALS(x411_ContentType_vals), 0, @@ -7987,34 +9388,26 @@ void proto_register_x411(void) { { "waiting-encoded-information-types", "x411.waiting_encoded_information_types", FT_NONE, BASE_NONE, NULL, 0, "x411.EncodedInformationTypes", HFILL }}, - { &hf_x411_subject_submission_identifier, - { "subject-submission-identifier", "x411.subject_submission_identifier", + { &hf_x411_recipient_certificate, + { "recipient-certificate", "x411.recipient_certificate", FT_NONE, BASE_NONE, NULL, 0, - "x411.SubjectSubmissionIdentifier", HFILL }}, - { &hf_x411_per_recipient_report_delivery_fields, - { "per-recipient-fields", "x411.per_recipient_fields", - FT_UINT32, BASE_DEC, NULL, 0, - "x411.SEQUENCE_OF_PerRecipientReportDeliveryFields", HFILL }}, - { &hf_x411_per_recipient_report_delivery_fields_item, - { "PerRecipientReportDeliveryFields", "x411.PerRecipientReportDeliveryFields", + "x411.RecipientCertificate", HFILL }}, + { &hf_x411_proof_of_delivery, + { "proof-of-delivery", "x411.proof_of_delivery", FT_NONE, BASE_NONE, NULL, 0, - "x411.PerRecipientReportDeliveryFields", HFILL }}, - { &hf_x411_refused_argument, - { "refused-argument", "x411.refused_argument", - FT_UINT32, BASE_DEC, VALS(x411_T_refused_argument_vals), 0, - "x411.T_refused_argument", HFILL }}, - { &hf_x411_built_in_argument, - { "built-in-argument", "x411.built_in_argument", - FT_UINT32, BASE_DEC, VALS(x411_RefusedArgument_vals), 0, - "x411.RefusedArgument", HFILL }}, - { &hf_x411_refused_extension, - { "refused-extension", "x411.refused_extension", + "x411.ProofOfDelivery", HFILL }}, + { &hf_x411_empty_result, + { "empty-result", "x411.empty_result", FT_NONE, BASE_NONE, NULL, 0, - "x411.T_refused_extension", HFILL }}, - { &hf_x411_refusal_reason, - { "refusal-reason", "x411.refusal_reason", - FT_UINT32, BASE_DEC, VALS(x411_RefusalReason_vals), 0, - "x411.RefusalReason", HFILL }}, + "x411.NULL", HFILL }}, + { &hf_x411_max_extensions, + { "extensions", "x411.extensions", + FT_UINT32, BASE_DEC, NULL, 0, + "x411.SET_SIZE_1_MAX_OF_ExtensionField", HFILL }}, + { &hf_x411_max_extensions_item, + { "ExtensionField", "x411.ExtensionField", + FT_NONE, BASE_NONE, NULL, 0, + "x411.ExtensionField", HFILL }}, { &hf_x411_restrict, { "restrict", "x411.restrict", FT_BOOLEAN, 8, NULL, 0, @@ -8043,6 +9436,22 @@ void proto_register_x411(void) { { "permissible-security-context", "x411.permissible_security_context", FT_UINT32, BASE_DEC, NULL, 0, "x411.SecurityContext", HFILL }}, + { &hf_x411_refused_argument, + { "refused-argument", "x411.refused_argument", + FT_UINT32, BASE_DEC, VALS(x411_T_refused_argument_vals), 0, + "x411.T_refused_argument", HFILL }}, + { &hf_x411_built_in_argument, + { "built-in-argument", "x411.built_in_argument", + FT_UINT32, BASE_DEC, VALS(x411_RefusedArgument_vals), 0, + "x411.RefusedArgument", HFILL }}, + { &hf_x411_refused_extension, + { "refused-extension", "x411.refused_extension", + FT_UINT32, BASE_DEC, VALS(x411_ExtensionType_vals), 0, + "x411.T_refused_extension", HFILL }}, + { &hf_x411_refusal_reason, + { "refusal-reason", "x411.refusal_reason", + FT_UINT32, BASE_DEC, VALS(x411_RefusalReason_vals), 0, + "x411.RefusalReason", HFILL }}, { &hf_x411_user_name, { "user-name", "x411.user_name", FT_NONE, BASE_NONE, NULL, 0, @@ -8054,7 +9463,7 @@ void proto_register_x411(void) { { &hf_x411_deliverable_class, { "deliverable-class", "x411.deliverable_class", FT_UINT32, BASE_DEC, NULL, 0, - "x411.SET_OF_DeliverableClass", HFILL }}, + "x411.SET_SIZE_1_ub_deliverable_class_OF_DeliverableClass", HFILL }}, { &hf_x411_deliverable_class_item, { "DeliverableClass", "x411.DeliverableClass", FT_NONE, BASE_NONE, NULL, 0, @@ -8075,10 +9484,6 @@ void proto_register_x411(void) { { "retrieve-registrations", "x411.retrieve_registrations", FT_NONE, BASE_NONE, NULL, 0, "x411.RegistrationTypes", HFILL }}, - { &hf_x411_empty_result, - { "empty-result", "x411.empty_result", - FT_NONE, BASE_NONE, NULL, 0, - "x411.NULL", HFILL }}, { &hf_x411_non_empty_result, { "non-empty-result", "x411.non_empty_result", FT_NONE, BASE_NONE, NULL, 0, @@ -8087,6 +9492,14 @@ void proto_register_x411(void) { { "registered-information", "x411.registered_information", FT_NONE, BASE_NONE, NULL, 0, "x411.RegisterArgument", HFILL }}, + { &hf_x411_old_credentials, + { "old-credentials", "x411.old_credentials", + FT_UINT32, BASE_DEC, VALS(x411_Credentials_vals), 0, + "x411.Credentials", HFILL }}, + { &hf_x411_new_credentials, + { "new-credentials", "x411.new_credentials", + FT_UINT32, BASE_DEC, VALS(x411_Credentials_vals), 0, + "x411.Credentials", HFILL }}, { &hf_x411_x121, { "x121", "x411.x121", FT_NONE, BASE_NONE, NULL, 0, @@ -8098,7 +9511,7 @@ void proto_register_x411(void) { { &hf_x411_tsap_id, { "tsap-id", "x411.tsap_id", FT_STRING, BASE_NONE, NULL, 0, - "x411.PrintableString", HFILL }}, + "x411.PrintableString_SIZE_1_ub_tsap_id_length", HFILL }}, { &hf_x411_presentation, { "presentation", "x411.presentation", FT_NONE, BASE_NONE, NULL, 0, @@ -8110,7 +9523,7 @@ void proto_register_x411(void) { { &hf_x411_redirection_classes, { "redirection-classes", "x411.redirection_classes", FT_UINT32, BASE_DEC, NULL, 0, - "x411.SET_OF_RedirectionClass", HFILL }}, + "x411.SET_SIZE_1_ub_redirection_classes_OF_RedirectionClass", HFILL }}, { &hf_x411_redirection_classes_item, { "RedirectionClass", "x411.RedirectionClass", FT_NONE, BASE_NONE, NULL, 0, @@ -8201,40 +9614,24 @@ void proto_register_x411(void) { "x411.T_type_extensions", HFILL }}, { &hf_x411_type_extensions_item, { "extensions item", "x411.extensions_item", - FT_NONE, BASE_NONE, NULL, 0, + FT_UINT32, BASE_DEC, VALS(x411_ExtensionType_vals), 0, "x411.T_type_extensions_item", HFILL }}, - { &hf_x411_mts_originator_name, + { &hf_x411_originator_name, { "originator-name", "x411.originator_name", FT_NONE, BASE_NONE, NULL, 0, - "x411.MTSOriginatorName", HFILL }}, - { &hf_x411_per_recipient_message_submission_fields, - { "per-recipient-fields", "x411.per_recipient_fields", - FT_UINT32, BASE_DEC, NULL, 0, - "x411.SEQUENCE_OF_PerRecipientMessageSubmissionFields", HFILL }}, - { &hf_x411_per_recipient_message_submission_fields_item, - { "PerRecipientMessageSubmissionFields", "x411.PerRecipientMessageSubmissionFields", - FT_NONE, BASE_NONE, NULL, 0, - "x411.PerRecipientMessageSubmissionFields", HFILL }}, + "x411.OriginatorName", HFILL }}, { &hf_x411_submission_recipient_name, { "recipient-name", "x411.recipient_name", FT_NONE, BASE_NONE, NULL, 0, - "x411.MTSRecipientName", HFILL }}, + "x411.RecipientName", HFILL }}, { &hf_x411_originator_report_request, { "originator-report-request", "x411.originator_report_request", FT_BYTES, BASE_HEX, NULL, 0, "x411.OriginatorReportRequest", HFILL }}, - { &hf_x411_per_recipient_probe_submission_fields, - { "per-recipient-fields", "x411.per_recipient_fields", - FT_UINT32, BASE_DEC, NULL, 0, - "x411.SEQUENCE_OF_PerRecipientProbeSubmissionFields", HFILL }}, - { &hf_x411_per_recipient_probe_submission_fields_item, - { "PerRecipientProbeSubmissionFields", "x411.PerRecipientProbeSubmissionFields", - FT_NONE, BASE_NONE, NULL, 0, - "x411.PerRecipientProbeSubmissionFields", HFILL }}, { &hf_x411_probe_recipient_name, { "recipient-name", "x411.recipient_name", FT_NONE, BASE_NONE, NULL, 0, - "x411.MTSRecipientName", HFILL }}, + "x411.RecipientName", HFILL }}, { &hf_x411_message_delivery_identifier, { "message-delivery-identifier", "x411.message_delivery_identifier", FT_NONE, BASE_NONE, NULL, 0, @@ -8251,7 +9648,7 @@ void proto_register_x411(void) { { "content-type", "x411.content_type", FT_UINT32, BASE_DEC, VALS(x411_DeliveredContentType_vals), 0, "x411.DeliveredContentType", HFILL }}, - { &hf_x411_originator_name, + { &hf_x411_delivered_originator_name, { "originator-name", "x411.originator_name", FT_NONE, BASE_NONE, NULL, 0, "x411.DeliveredOriginatorName", HFILL }}, @@ -8270,15 +9667,15 @@ void proto_register_x411(void) { { &hf_x411_originally_intended_recipient_name, { "originally-intended-recipient-name", "x411.originally_intended_recipient_name", FT_NONE, BASE_NONE, NULL, 0, - "x411.MTSOriginallyIntendedRecipientName", HFILL }}, - { &hf_x411_message_submission_time, - { "message-submission-time", "x411.message_submission_time", - FT_STRING, BASE_NONE, NULL, 0, - "x411.MessageSubmissionTime", HFILL }}, + "x411.OriginallyIntendedRecipientName", HFILL }}, + { &hf_x411_subject_submission_identifier, + { "subject-submission-identifier", "x411.subject_submission_identifier", + FT_NONE, BASE_NONE, NULL, 0, + "x411.SubjectSubmissionIdentifier", HFILL }}, { &hf_x411_actual_recipient_name, { "actual-recipient-name", "x411.actual_recipient_name", FT_NONE, BASE_NONE, NULL, 0, - "x411.MTSActualRecipientName", HFILL }}, + "x411.ActualRecipientName", HFILL }}, { &hf_x411_delivery_report_type, { "report-type", "x411.report_type", FT_UINT32, BASE_DEC, VALS(x411_ReportType_vals), 0, @@ -8309,7 +9706,7 @@ void proto_register_x411(void) { "x411.ContentType", HFILL }}, { &hf_x411_built_in, { "built-in", "x411.built_in", - FT_INT32, BASE_DEC, VALS(x411_BuiltInContentType_U_vals), 0, + FT_UINT32, BASE_DEC, VALS(x411_BuiltInContentType_U_vals), 0, "x411.BuiltInContentType", HFILL }}, { &hf_x411_extended, { "extended", "x411.extended", @@ -8407,10 +9804,6 @@ void proto_register_x411(void) { { "non-delivery", "x411.non_delivery", FT_NONE, BASE_NONE, NULL, 0, "x411.PerRecipientNonDeliveryReportFields", HFILL }}, - { &hf_x411_recipient_certificate, - { "recipient-certificate", "x411.recipient_certificate", - FT_NONE, BASE_NONE, NULL, 0, - "x411.RecipientCertificate", HFILL }}, { &hf_x411_mta_directory_name, { "mta-directory-name", "x411.mta_directory_name", FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0, @@ -8471,10 +9864,6 @@ void proto_register_x411(void) { { "extension-attributes", "x411.extension_attributes", FT_UINT32, BASE_DEC, NULL, 0, "x411.ExtensionAttributes", HFILL }}, - { &hf_x411_directory_name, - { "directory-name", "x411.directory_name", - FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0, - "x509if.Name", HFILL }}, { &hf_x411_network_address, { "network-address", "x411.network_address", FT_STRING, BASE_NONE, NULL, 0, @@ -8618,15 +10007,15 @@ void proto_register_x411(void) { { &hf_x411_two_octets, { "two-octets", "x411.two_octets", FT_STRING, BASE_NONE, NULL, 0, - "x411.BMPString", HFILL }}, + "x411.BMPString_SIZE_1_ub_string_length", HFILL }}, { &hf_x411_four_octets, { "four-octets", "x411.four_octets", FT_STRING, BASE_NONE, NULL, 0, - "x411.UniversalString", HFILL }}, + "x411.UniversalString_SIZE_1_ub_string_length", HFILL }}, { &hf_x411_iso_639_language_code, { "iso-639-language-code", "x411.iso_639_language_code", FT_STRING, BASE_NONE, NULL, 0, - "x411.PrintableString", HFILL }}, + "x411.PrintableString_SIZE_CONSTR411846860", HFILL }}, { &hf_x411_numeric_code, { "numeric-code", "x411.numeric_code", FT_STRING, BASE_NONE, NULL, 0, @@ -8634,7 +10023,7 @@ void proto_register_x411(void) { { &hf_x411_printable_code, { "printable-code", "x411.printable_code", FT_STRING, BASE_NONE, NULL, 0, - "x411.PrintableString", HFILL }}, + "x411.PrintableString_SIZE_1_ub_postal_code_length", HFILL }}, { &hf_x411_printable_address, { "printable-address", "x411.printable_address", FT_UINT32, BASE_DEC, NULL, 0, @@ -8642,15 +10031,19 @@ void proto_register_x411(void) { { &hf_x411_printable_address_item, { "printable-address item", "x411.printable_address_item", FT_STRING, BASE_NONE, NULL, 0, - "x411.PrintableString", HFILL }}, + "x411.PrintableString_SIZE_1_ub_pds_parameter_length", HFILL }}, { &hf_x411_teletex_string, { "teletex-string", "x411.teletex_string", FT_STRING, BASE_NONE, NULL, 0, - "x411.TeletexString", HFILL }}, + "x411.TeletexString_SIZE_1_ub_unformatted_address_length", HFILL }}, { &hf_x411_printable_string, { "printable-string", "x411.printable_string", FT_STRING, BASE_NONE, NULL, 0, - "x411.PrintableString", HFILL }}, + "x411.PrintableString_SIZE_1_ub_pds_parameter_length", HFILL }}, + { &hf_x411_pds_teletex_string, + { "teletex-string", "x411.teletex_string", + FT_STRING, BASE_NONE, NULL, 0, + "x411.TeletexString_SIZE_1_ub_pds_parameter_length", HFILL }}, { &hf_x411_e163_4_address, { "e163-4-address", "x411.e163_4_address", FT_NONE, BASE_NONE, NULL, 0, @@ -8658,11 +10051,11 @@ void proto_register_x411(void) { { &hf_x411_number, { "number", "x411.number", FT_STRING, BASE_NONE, NULL, 0, - "x411.NumericString", HFILL }}, + "x411.NumericString_SIZE_1_ub_e163_4_number_length", HFILL }}, { &hf_x411_sub_address, { "sub-address", "x411.sub_address", FT_STRING, BASE_NONE, NULL, 0, - "x411.NumericString", HFILL }}, + "x411.NumericString_SIZE_1_ub_e163_4_sub_address_length", HFILL }}, { &hf_x411_psap_address, { "psap-address", "x411.psap_address", FT_NONE, BASE_NONE, NULL, 0, @@ -8691,10 +10084,10 @@ void proto_register_x411(void) { { "value", "x411.value", FT_NONE, BASE_NONE, NULL, 0, "x411.UniversalOrBMPString", HFILL }}, - { &hf_x411_built_in_encoded_information_types, - { "built-in-encoded-information-types", "x411.built_in_encoded_information_types", - FT_BYTES, BASE_HEX, NULL, 0, - "x411.BuiltInEncodedInformationTypes", HFILL }}, + { &hf_x411_ExtendedEncodedInformationTypes_item, + { "ExtendedEncodedInformationType", "x411.ExtendedEncodedInformationType", + FT_OID, BASE_NONE, NULL, 0, + "x411.ExtendedEncodedInformationType", HFILL }}, { &hf_x411_g3_facsimile, { "g3-facsimile", "x411.g3_facsimile", FT_BYTES, BASE_HEX, NULL, 0, @@ -8703,14 +10096,6 @@ void proto_register_x411(void) { { "teletex", "x411.teletex", FT_NONE, BASE_NONE, NULL, 0, "x411.TeletexNonBasicParameters", HFILL }}, - { &hf_x411_extended_encoded_information_types, - { "extended-encoded-information-types", "x411.extended_encoded_information_types", - FT_UINT32, BASE_DEC, NULL, 0, - "x411.ExtendedEncodedInformationTypes", HFILL }}, - { &hf_x411_ExtendedEncodedInformationTypes_item, - { "ExtendedEncodedInformationType", "x411.ExtendedEncodedInformationType", - FT_OID, BASE_NONE, NULL, 0, - "x411.ExtendedEncodedInformationType", HFILL }}, { &hf_x411_graphic_character_sets, { "graphic-character-sets", "x411.graphic_character_sets", FT_STRING, BASE_NONE, NULL, 0, @@ -8750,7 +10135,7 @@ void proto_register_x411(void) { { &hf_x411_token_recipient_name, { "recipient-name", "x411.recipient_name", FT_NONE, BASE_NONE, NULL, 0, - "x411.MTSRecipientName", HFILL }}, + "x411.RecipientName", HFILL }}, { &hf_x411_token_mta, { "mta", "x411.mta", FT_NONE, BASE_NONE, NULL, 0, @@ -8838,11 +10223,87 @@ void proto_register_x411(void) { { &hf_x411_category_type, { "type", "x411.type", FT_OID, BASE_NONE, NULL, 0, - "x411.OBJECT_IDENTIFIER", HFILL }}, + "x411.SecurityCategoryIdentifier", HFILL }}, { &hf_x411_category_value, { "value", "x411.value", FT_NONE, BASE_NONE, NULL, 0, "x411.CategoryValue", HFILL }}, + { &hf_x411_rtorq_apdu, + { "rtorq-apdu", "x411.rtorq_apdu", + FT_NONE, BASE_NONE, NULL, 0, + "rtse.RTORQapdu", HFILL }}, + { &hf_x411_rtoac_apdu, + { "rtoac-apdu", "x411.rtoac_apdu", + FT_NONE, BASE_NONE, NULL, 0, + "rtse.RTOACapdu", HFILL }}, + { &hf_x411_rtorj_apdu, + { "rtorj-apdu", "x411.rtorj_apdu", + FT_NONE, BASE_NONE, NULL, 0, + "rtse.RTORJapdu", HFILL }}, + { &hf_x411_rttp_apdu, + { "rttp-apdu", "x411.rttp_apdu", + FT_INT32, BASE_DEC, NULL, 0, + "x411.RTTPapdu", HFILL }}, + { &hf_x411_rttr_apdu, + { "rttr-apdu", "x411.rttr_apdu", + FT_BYTES, BASE_HEX, NULL, 0, + "x411.RTTRapdu", HFILL }}, + { &hf_x411_rtab_apdu, + { "rtab-apdu", "x411.rtab_apdu", + FT_NONE, BASE_NONE, NULL, 0, + "x411.RTABapdu", HFILL }}, + { &hf_x411_abortReason, + { "abortReason", "x411.abortReason", + FT_INT32, BASE_DEC, VALS(x411_AbortReason_vals), 0, + "x411.AbortReason", HFILL }}, + { &hf_x411_reflectedParameter, + { "reflectedParameter", "x411.reflectedParameter", + FT_BYTES, BASE_HEX, NULL, 0, + "x411.BIT_STRING", HFILL }}, + { &hf_x411_userdataAB, + { "userdataAB", "x411.userdataAB", + FT_OID, BASE_NONE, NULL, 0, + "x411.OBJECT_IDENTIFIER", HFILL }}, + { &hf_x411_per_recipient_report_delivery_fields, + { "per-recipient-fields", "x411.per_recipient_fields", + FT_UINT32, BASE_DEC, NULL, 0, + "x411.SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields", HFILL }}, + { &hf_x411_per_recipient_report_delivery_fields_item, + { "PerRecipientReportDeliveryFields", "x411.PerRecipientReportDeliveryFields", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PerRecipientReportDeliveryFields", HFILL }}, + { &hf_x411_mts_originator_name, + { "originator-name", "x411.originator_name", + FT_NONE, BASE_NONE, NULL, 0, + "x411.OriginatorName", HFILL }}, + { &hf_x411_per_recipient_message_submission_fields, + { "per-recipient-fields", "x411.per_recipient_fields", + FT_UINT32, BASE_DEC, NULL, 0, + "x411.SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientMessageSubmissionFields", HFILL }}, + { &hf_x411_per_recipient_message_submission_fields_item, + { "PerRecipientMessageSubmissionFields", "x411.PerRecipientMessageSubmissionFields", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PerRecipientMessageSubmissionFields", HFILL }}, + { &hf_x411_per_recipient_probe_submission_fields, + { "per-recipient-fields", "x411.per_recipient_fields", + FT_UINT32, BASE_DEC, NULL, 0, + "x411.SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientProbeSubmissionFields", HFILL }}, + { &hf_x411_per_recipient_probe_submission_fields_item, + { "PerRecipientProbeSubmissionFields", "x411.PerRecipientProbeSubmissionFields", + FT_NONE, BASE_NONE, NULL, 0, + "x411.PerRecipientProbeSubmissionFields", HFILL }}, + { &hf_x411_directory_name, + { "directory-name", "x411.directory_name", + FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0, + "x509if.Name", HFILL }}, + { &hf_x411_built_in_encoded_information_types, + { "built-in-encoded-information-types", "x411.built_in_encoded_information_types", + FT_BYTES, BASE_HEX, NULL, 0, + "x411.BuiltInEncodedInformationTypes", HFILL }}, + { &hf_x411_extended_encoded_information_types, + { "extended-encoded-information-types", "x411.extended_encoded_information_types", + FT_UINT32, BASE_DEC, NULL, 0, + "x411.ExtendedEncodedInformationTypes", HFILL }}, { &hf_x411_PerRecipientIndicators_responsibility, { "responsibility", "x411.responsibility", FT_BOOLEAN, 8, NULL, 0x80, @@ -9161,12 +10622,13 @@ void proto_register_x411(void) { "", HFILL }}, /*--- End of included file: packet-x411-hfarr.c ---*/ -#line 237 "packet-x411-template.c" +#line 256 "packet-x411-template.c" }; /* List of subtrees */ static gint *ett[] = { &ett_x411, + &ett_p3, &ett_x411_content_unknown, &ett_x411_bilateral_information, &ett_x411_additional_information, @@ -9208,6 +10670,8 @@ void proto_register_x411(void) { &ett_x411_TraceInformationElement, &ett_x411_DomainSuppliedInformation, &ett_x411_OtherActions, + &ett_x411_MTSBindArgument, + &ett_x411_MTSBindResult, &ett_x411_ObjectName, &ett_x411_MessagesWaiting, &ett_x411_DeliveryQueue, @@ -9218,25 +10682,33 @@ void proto_register_x411(void) { &ett_x411_Signature, &ett_x411_SecurityContext, &ett_x411_MessageSubmissionArgument, + &ett_x411_MessageSubmissionResult, + &ett_x411_ProbeSubmissionResult, &ett_x411_ImproperlySpecifiedRecipients, &ett_x411_Waiting, - &ett_x411_SET_OF_ContentType, + &ett_x411_SET_SIZE_0_ub_content_types_OF_ContentType, &ett_x411_Operations, &ett_x411_WaitingMessages, + &ett_x411_MessageDeliveryArgument, + &ett_x411_MessageDeliveryResult, &ett_x411_ReportDeliveryArgument, - &ett_x411_SEQUENCE_OF_PerRecipientReportDeliveryFields, + &ett_x411_ReportDeliveryResult, + &ett_x411_SET_SIZE_1_MAX_OF_ExtensionField, + &ett_x411_DeliveryControlArgument, + &ett_x411_DeliveryControlResult, &ett_x411_RefusedOperation, &ett_x411_T_refused_argument, &ett_x411_Controls, &ett_x411_RegisterArgument, - &ett_x411_SET_OF_DeliverableClass, + &ett_x411_SET_SIZE_1_ub_deliverable_class_OF_DeliverableClass, &ett_x411_RegisterResult, &ett_x411_T_non_empty_result, + &ett_x411_ChangeCredentialsArgument, &ett_x411_UserAddress, &ett_x411_T_x121, &ett_x411_Redirections, &ett_x411_RecipientRedirection, - &ett_x411_SET_OF_RedirectionClass, + &ett_x411_SET_SIZE_1_ub_redirection_classes_OF_RedirectionClass, &ett_x411_MessageClass, &ett_x411_SET_OF_Priority, &ett_x411_SEQUENCE_OF_Restriction, @@ -9249,14 +10721,15 @@ void proto_register_x411(void) { &ett_x411_T_standard_parameters, &ett_x411_T_type_extensions, &ett_x411_MessageSubmissionEnvelope, - &ett_x411_SEQUENCE_OF_PerRecipientMessageSubmissionFields, + &ett_x411_PerMessageSubmissionFields, &ett_x411_PerRecipientMessageSubmissionFields, &ett_x411_ProbeSubmissionEnvelope, - &ett_x411_SEQUENCE_OF_PerRecipientProbeSubmissionFields, + &ett_x411_PerProbeSubmissionFields, &ett_x411_PerRecipientProbeSubmissionFields, &ett_x411_MessageDeliveryEnvelope, &ett_x411_OtherMessageDeliveryFields, &ett_x411_ReportDeliveryEnvelope, + &ett_x411_PerReportDeliveryFields, &ett_x411_PerRecipientReportDeliveryFields, &ett_x411_ReportType, &ett_x411_DeliveryReport, @@ -9339,9 +10812,14 @@ void proto_register_x411(void) { &ett_x411_SecurityLabel, &ett_x411_SecurityCategories, &ett_x411_SecurityCategory, + &ett_x411_RTSE_apdus, + &ett_x411_RTABapdu, + &ett_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientReportDeliveryFields, + &ett_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientMessageSubmissionFields, + &ett_x411_SEQUENCE_SIZE_1_ub_recipients_OF_PerRecipientProbeSubmissionFields, /*--- End of included file: packet-x411-ettarr.c ---*/ -#line 249 "packet-x411-template.c" +#line 269 "packet-x411-template.c" }; module_t *x411_module; @@ -9349,6 +10827,9 @@ void proto_register_x411(void) { /* Register protocol */ proto_x411 = proto_register_protocol(PNAME, PSNAME, PFNAME); register_dissector("x411", dissect_x411, proto_x411); + + proto_p3 = proto_register_protocol("X.411 Message Access Service", "P3", "p3"); + /* Register fields and subtrees */ proto_register_field_array(proto_x411, hf, array_length(hf)); proto_register_subtree_array(ett, array_length(ett)); @@ -9377,7 +10858,7 @@ void proto_reg_handoff_x411(void) { /*--- Included file: packet-x411-dis-tab.c ---*/ #line 1 "packet-x411-dis-tab.c" dissector_add("x411.extension", 1, create_dissector_handle(dissect_RecipientReassignmentProhibited_PDU, proto_x411)); - dissector_add("x411.extension", 2, create_dissector_handle(dissect_MTSOriginatorRequestedAlternateRecipient_PDU, proto_x411)); + dissector_add("x411.extension", 2, create_dissector_handle(dissect_OriginatorRequestedAlternateRecipient_PDU, proto_x411)); dissector_add("x411.extension", 3, create_dissector_handle(dissect_DLExpansionProhibited_PDU, proto_x411)); dissector_add("x411.extension", 4, create_dissector_handle(dissect_ConversionWithLossProhibited_PDU, proto_x411)); dissector_add("x411.extension", 5, create_dissector_handle(dissect_LatestDeliveryTime_PDU, proto_x411)); @@ -9456,7 +10937,6 @@ void proto_reg_handoff_x411(void) { dissector_add("x411.extension-attribute", 38, create_dissector_handle(dissect_UniversalPosteRestanteAddress_PDU, proto_x411)); dissector_add("x411.extension-attribute", 39, create_dissector_handle(dissect_UniversalUniquePostalName_PDU, proto_x411)); dissector_add("x411.extension-attribute", 40, create_dissector_handle(dissect_UniversalLocalPostalAttributes_PDU, proto_x411)); - register_ber_oid_dissector("2.6.1.4.14", dissect_ReportDeliveryArgument_PDU, proto_x411, "id-et-report"); register_ber_oid_dissector("2.6.3.6.0", dissect_AsymmetricToken_PDU, proto_x411, "id-tok-asymmetricToken"); register_ber_oid_dissector("2.6.5.6.0", dissect_MTANameAndOptionalGDI_PDU, proto_x411, "id-on-mtaName"); dissector_add("x411.tokendata", 1, create_dissector_handle(dissect_BindTokenSignedData_PDU, proto_x411)); @@ -9531,7 +11011,7 @@ void proto_reg_handoff_x411(void) { /*--- End of included file: packet-x411-dis-tab.c ---*/ -#line 281 "packet-x411-template.c" +#line 304 "packet-x411-template.c" /* APPLICATION CONTEXT */ @@ -9550,6 +11030,25 @@ void proto_reg_handoff_x411(void) { /* remember the tpkt handler for change in preferences */ tpkt_handle = find_dissector("tpkt"); + /* APPLICATION CONTEXT */ + + oid_add_from_string("id-ac-mts-access-88", id_ac_mts_access_88); + oid_add_from_string("id-ac-mts-forced-access-88", id_ac_mts_forced_access_88); + oid_add_from_string("id-ac-mts-access-94", id_ac_mts_access_94); + oid_add_from_string("id-ac-mts-forced-access-94", id_ac_mts_forced_access_94); + + + /* Register P3 with ROS */ + register_ros_protocol_info(id_as_msse, &p3_ros_info, 0, "id-as-msse", FALSE); + + register_ros_protocol_info(id_as_mdse_88, &p3_ros_info, 0, "id-as-mdse-88", FALSE); + register_ros_protocol_info(id_as_mdse_94, &p3_ros_info, 0, "id-as-mdse-94", FALSE); + + register_ros_protocol_info(id_as_mase_88, &p3_ros_info, 0, "id-as-mase-88", FALSE); + register_ros_protocol_info(id_as_mase_94, &p3_ros_info, 0, "id-as-mase-94", FALSE); + + register_ros_protocol_info(id_as_mts, &p3_ros_info, 0, "id-as-mts", FALSE); + } void prefs_register_x411(void) { diff --git a/epan/dissectors/packet-x411.h b/epan/dissectors/packet-x411.h index 83eeb26eed..9118f6e1ed 100644 --- a/epan/dissectors/packet-x411.h +++ b/epan/dissectors/packet-x411.h @@ -1,7 +1,7 @@ /* Do not modify this file. */ /* It is created automatically by the ASN.1 to Wireshark dissector compiler */ /* packet-x411.h */ -/* ../../tools/asn2wrs.py -b -e -p x411 -c ./x411.cnf -s ./packet-x411-template -D . MTAAbstractService.asn MTSAbstractService.asn */ +/* ../../tools/asn2wrs.py -b -e -p x411 -c x411.cnf -s packet-x411-template MTAAbstractService.asn MTSAbstractService.asn MTSAccessProtocol.asn MHSProtocolObjectIdentifiers.asn */ /* Input file: packet-x411-template.h */ @@ -59,7 +59,7 @@ int dissect_x411_MessageSubmissionEnvelope(gboolean implicit_tag _U_, tvbuff_t * int dissect_x411_ProbeSubmissionEnvelope(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); int dissect_x411_PerRecipientProbeSubmissionFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); int dissect_x411_OtherMessageDeliveryFields(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); -int dissect_x411_MTSOriginatorName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); +int dissect_x411_OriginatorName(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); int dissect_x411_OriginalEncodedInformationTypes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); int dissect_x411_ContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); int dissect_x411_ExtendedContentType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_); |