-- ACSE definition from -- http://www.itu.int/ITU-T/asn1/database/itu-t/x/x227bis/1998/ACSE-1.html -- and modified to pass through asn2wrs -- -- -- Module ACSE-1 (X.227bis:09/1998) ACSE-1 {joint-iso-itu-t association-control(2) modules(0) acse1(1) version1(1)} -- ACSE-1 refers to ACSE version 1 DEFINITIONS ::= BEGIN IMPORTS Name, RelativeDistinguishedName FROM InformationFramework {joint-iso-itu-t ds(5) module(1) informationFramework(1) 3}; -- The data types Name and RelativeDistinguishedName are imported from -- ITU-T Rec. X.501 | ISO/IEC 9594-2. -- Workaround for bug in asn2wrs in the .cnf file -- to handle the lack of support for tagged assignments. -- remove that workaround once asn2wrs learns how to handle -- tagged assignments. EXTERNAL ::= [UNIVERSAL 8] IMPLICIT SEQUENCE { direct-reference OBJECT IDENTIFIER OPTIONAL, indirect-reference INTEGER OPTIONAL, data-value-descriptor ObjectDescriptor OPTIONAL, encoding CHOICE {single-ASN1-type [0] ANY, octet-aligned [1] IMPLICIT OCTET STRING, arbitrary [2] IMPLICIT BIT STRING} } -- object identifier assignments acse-as-id OBJECT IDENTIFIER ::= {joint-iso-itu-t association-control(2) abstract-syntax(1) apdus(0) version1(1)} -- may be used to reference the abstract syntax of the ACSE APDUs. aCSE-id OBJECT IDENTIFIER ::= {joint-iso-itu-t association-control(2) ase-id(3) acse-ase(1) version(1)} -- may be used to identify the Association Control ASE. -- top level CHOICE ACSE-apdu ::= CHOICE { --asn2wrs bug -- aarq AARQ-apdu, aarq [APPLICATION 0] IMPLICIT AARQ-apdu, --asn2wrs bug -- aare AARE-apdu, aare [APPLICATION 1] IMPLICIT AARE-apdu, --asn2wrs bug -- rlrq RLRQ-apdu, rlrq [APPLICATION 2] IMPLICIT RLRQ-apdu, --asn2wrs bug -- rlre RLRE-apdu, rlre [APPLICATION 3] IMPLICIT RLRE-apdu, --asn2wrs bug -- abrt ABRT-apdu, abrt [APPLICATION 4] IMPLICIT ABRT-apdu, ..., -- Extensions for higher level association FU --asn2wrs bug -- adt A-DT-apdu, adt [APPLICATION 5] IMPLICIT A-DT-apdu, --asn2wrs bug -- acrq ACRQ-apdu, acrq [APPLICATION 6] IMPLICIT ACRQ-apdu, --asn2wrs bug -- acrp ACRP-apdu acrp [APPLICATION 7] IMPLICIT ACRP-apdu } AARQ-apdu ::= [APPLICATION 0] IMPLICIT SEQUENCE { protocol-version [0] IMPLICIT BIT STRING {version1(0)} DEFAULT {version1}, aSO-context-name [1] ASO-context-name, called-AP-title [2] AP-title OPTIONAL, called-AE-qualifier [3] AE-qualifier OPTIONAL, called-AP-invocation-identifier [4] AP-invocation-identifier OPTIONAL, called-AE-invocation-identifier [5] AE-invocation-identifier OPTIONAL, calling-AP-title [6] AP-title OPTIONAL, calling-AE-qualifier [7] AE-qualifier OPTIONAL, calling-AP-invocation-identifier [8] AP-invocation-identifier OPTIONAL, calling-AE-invocation-identifier [9] AE-invocation-identifier OPTIONAL, -- The following field shall not be present if only the Kernel is used. sender-acse-requirements [10] IMPLICIT ACSE-requirements OPTIONAL, -- The following field shall only be present if the Authentication functional unit is selected. mechanism-name [11] IMPLICIT Mechanism-name OPTIONAL, -- The following field shall only be present if the Authentication functional unit is selected. calling-authentication-value [12] EXPLICIT Authentication-value OPTIONAL, aSO-context-name-list [13] IMPLICIT ASO-context-name-list OPTIONAL, -- The above field shall only be present if the Application Context Negotiation functional unit is selected. implementation-information [29] IMPLICIT Implementation-data OPTIONAL, ..., -- Extensions for higher level association FU p-context-definition-list [14] Syntactic-context-list OPTIONAL, called-asoi-tag [15] IMPLICIT ASOI-tag OPTIONAL, calling-asoi-tag [16] IMPLICIT ASOI-tag OPTIONAL, -- End of extensions for higher level association FU -- ..., user-information [30] IMPLICIT Association-data OPTIONAL } AARE-apdu ::= [APPLICATION 1] IMPLICIT SEQUENCE { protocol-version [0] IMPLICIT BIT STRING {version1(0)} DEFAULT {version1}, aSO-context-name [1] ASO-context-name, result [2] Associate-result, result-source-diagnostic [3] Associate-source-diagnostic, responding-AP-title [4] AP-title OPTIONAL, responding-AE-qualifier [5] AE-qualifier OPTIONAL, responding-AP-invocation-identifier [6] AP-invocation-identifier OPTIONAL, responding-AE-invocation-identifier [7] AE-invocation-identifier OPTIONAL, -- The following field shall not be present if only the Kernel is used. responder-acse-requirements [8] IMPLICIT ACSE-requirements OPTIONAL, -- The following field shall only be present if the Authentication functional unit is selected. mechanism-name [9] IMPLICIT Mechanism-name OPTIONAL, -- This following field shall only be present if the Authentication functional unit is selected. responding-authentication-value [10] EXPLICIT Authentication-value OPTIONAL, aSO-context-name-list [11] IMPLICIT ASO-context-name-list OPTIONAL, -- The above field shall only be present if the Application Context Negotiation functional unit is selected. implementation-information [29] IMPLICIT Implementation-data OPTIONAL, ..., -- Extensions for higher level association FU p-context-result-list [12] IMPLICIT P-context-result-list OPTIONAL, called-asoi-tag [13] IMPLICIT ASOI-tag OPTIONAL, calling-asoi-tag [14] IMPLICIT ASOI-tag OPTIONAL, -- End of extensions for higher level association FU -- ..., user-information [30] IMPLICIT Association-data OPTIONAL } RLRQ-apdu ::= [APPLICATION 2] IMPLICIT SEQUENCE { reason [0] IMPLICIT Release-request-reason OPTIONAL, ..., -- Extensions for higher level association FU aso-qualifier [13] ASO-qualifier OPTIONAL, asoi-identifier [14] IMPLICIT ASOI-identifier OPTIONAL, -- End of extensions for higher level association FU -- ..., user-information [30] IMPLICIT Association-data OPTIONAL } RLRE-apdu ::= [APPLICATION 3] IMPLICIT SEQUENCE { reason [0] IMPLICIT Release-response-reason OPTIONAL, ..., -- Extensions for higher level association FU aso-qualifier [13] ASO-qualifier OPTIONAL, asoi-identifier [14] IMPLICIT ASOI-identifier OPTIONAL, -- End of extensions for higher level association FU -- ..., user-information [30] IMPLICIT Association-data OPTIONAL } ABRT-apdu ::= [APPLICATION 4] IMPLICIT SEQUENCE { abort-source [0] IMPLICIT ABRT-source, abort-diagnostic [1] IMPLICIT ABRT-diagnostic OPTIONAL, -- This field shall not be present if only the Kernel is used. ..., -- Extensions for higher level association FU aso-qualifier [13] ASO-qualifier OPTIONAL, asoi-identifier [14] IMPLICIT ASOI-identifier OPTIONAL, -- End of extensions for higher level association FU -- ..., user-information [30] IMPLICIT Association-data OPTIONAL } A-DT-apdu ::= [APPLICATION 5] IMPLICIT SEQUENCE { aso-qualifier [0] ASO-qualifier OPTIONAL, asoi-identifier [1] IMPLICIT ASOI-identifier OPTIONAL, ..., -- ..., a-user-data [30] User-Data } ACRQ-apdu ::= [APPLICATION 6] IMPLICIT SEQUENCE { aso-qualifier [0] ASO-qualifier OPTIONAL, asoi-identifier [1] IMPLICIT ASOI-identifier OPTIONAL, aSO-context-name [3] IMPLICIT ASO-context-name OPTIONAL, aSO-context-name-list [4] IMPLICIT ASO-context-name-list OPTIONAL, p-context-definition-list [5] Syntactic-context-list OPTIONAL, ..., -- ..., user-information [30] IMPLICIT User-information OPTIONAL } ACRP-apdu ::= [APPLICATION 7] IMPLICIT SEQUENCE { aso-qualifier [0] ASO-qualifier OPTIONAL, asoi-identifier [1] IMPLICIT ASOI-identifier OPTIONAL, aSO-context-name [3] IMPLICIT ASO-context-name-list OPTIONAL, p-context-result-list [4] IMPLICIT P-context-result-list OPTIONAL, ..., -- ..., user-information [30] IMPLICIT User-information OPTIONAL } ABRT-diagnostic ::= ENUMERATED { no-reason-given(1), protocol-error(2), authentication-mechanism-name-not-recognized(3), authentication-mechanism-name-required(4), authentication-failure(5), authentication-required(6), ... } ABRT-source ::= INTEGER {acse-service-user(0), acse-service-provider(1) }(0..1, ...) ACSE-requirements ::= BIT STRING { authentication(0), aSO-context-negotiation(1), higher-level-association(2), nested-association(3)} Application-context-name ::= ASO-context-name ASO-context-name ::= OBJECT IDENTIFIER -- Application-entity title productions follow (not in alphabetical order). AP-title ::= CHOICE { ap-title-form1 AP-title-form1, ap-title-form2 AP-title-form2, ..., ap-title-form3 AP-title-form3 } AE-qualifier ::= ASO-qualifier ASO-qualifier ::= CHOICE { aso-qualifier-form1 ASO-qualifier-form1, aso-qualifier-form2 ASO-qualifier-form2, ..., aso-qualifier-form3 ASO-qualifier-form3, -- an alternative used by some systems from the days when ASO-qualifier -- was an ANY aso-qualifier-form-any-octets ASO-qualifier-form-octets } -- When both AP-title and AE-qualifier data values are present in an AARQ or AARE APDU, both must -- have the same form to allow the construction of an AE-title as discussed in itu-t Rec. X.665 | -- ISO/IEC 9834-6 AP-title-form1 ::= Name -- The value assigned to AP-title-form1 is The Directory Name of an application-process title. ASO-qualifier-form1 ::= RelativeDistinguishedName -- The value assigned to AE-qualifier-form1 is the relative distinguished name of a particular -- application-entity of the application-process identified by AP-title-form1. AP-title-form2 ::= OBJECT IDENTIFIER ASO-qualifier-form2 ::= INTEGER AP-title-form3 ::= PrintableString ASO-qualifier-form3 ::= PrintableString ASO-qualifier-form-octets ::= OCTET STRING AE-title ::= CHOICE { ae-title-form1 AE-title-form1, ae-title-form2 AE-title-form2, ... } -- As defined in ITU-T Rec. X.650 | ISO/IEC 7498-3, an application-entity title is composed of an application process -- title and an application-entity qualifier. The ACSE protocol provides for the transfer of an application-entity title -- value by the transfer of its component values. However, the following data type is provided for International -- Standards that reference a single syntactic structure for AE titles. AE-title-form1 ::= Name -- For access to The Directory (see ITU-T Rec. X.500 series | ISO/IEC 9594), an AE title has AE-title-form1. This value -- can be constructed from AP-title-form1 and AE-qualifier-form1 values contained in an AARQ or AARE APDU. -- A discussion of forming an AE-title-form1 from AP-title-form1 and AE-qualifier form1 may be found in itu-t -- Rec X.665 | ISO/IEC 9834-6. AE-title-form2 ::= OBJECT IDENTIFIER -- A discussion of forming an AE-title-form2 from AP-title-form2 and AE-qualifier-form2 may be found in -- itu-t Rec. X.665 | ISO/IEC 9834-6. AE-invocation-identifier ::= INTEGER AP-invocation-identifier ::= INTEGER ASOI-identifier ::= INTEGER(1..128, ...) ASOI-tag ::= SEQUENCE SIZE (0..7, ...) OF SEQUENCE {qualifier [0] ASO-qualifier OPTIONAL, identifier [1] ASOI-identifier OPTIONAL} -- End of Application-entity title productions ASO-context-name-list ::= SEQUENCE OF ASO-context-name Syntactic-context-list ::= CHOICE { context-list [0] Context-list, default-contact-list [1] Default-Context-List } Context-list ::= SEQUENCE OF SEQUENCE {pci Presentation-context-identifier, abstract-syntax Abstract-syntax-name, -- bug in asn2wrs -- transfer-syntaxes SEQUENCE OF Transfer-syntax-name} transfer-syntaxes SEQUENCE OF TransferSyntaxName} Default-Context-List ::= SEQUENCE OF SEQUENCE {abstract-syntax-name [0] IMPLICIT Abstract-syntax-name OPTIONAL, -- bug in asn2wrs -- transfer-syntax-name [1] IMPLICIT Transfer-syntax-name transfer-syntax-name [1] IMPLICIT TransferSyntaxName } Abstract-syntax-name ::= OBJECT IDENTIFIER P-context-result-list ::= SEQUENCE OF SEQUENCE {result [0] IMPLICIT Result, concrete-syntax-name [1] IMPLICIT Concrete-syntax-name OPTIONAL, provider-reason [2] IMPLICIT INTEGER {reason-not-specified(0), abstract-syntax-not-supported(1), proposed-transfer-syntaxes-not-supported(2), local-limit-on-DCS-exceeded(3)} OPTIONAL } Result ::= INTEGER {acceptance(0), user-rejection(1), provider-rejection(2)} --bug in asn2wrs --Concrete-syntax-name ::= Transfer-syntax-name Concrete-syntax-name ::= TransferSyntaxName --bug in asn2wrs --Transfer-syntax-name ::= OBJECT IDENTIFIER TransferSyntaxName ::= OBJECT IDENTIFIER Associate-result ::= INTEGER { accepted(0), rejected-permanent(1), rejected-transient(2)}(0..2, ...) Associate-source-diagnostic ::= CHOICE { acse-service-user [1] INTEGER {null(0), no-reason-given(1), application-context-name-not-supported(2), calling-AP-title-not-recognized(3), calling-AP-invocation-identifier-not-recognized(4), calling-AE-qualifier-not-recognized(5), calling-AE-invocation-identifier-not-recognized(6), called-AP-title-not-recognized(7), called-AP-invocation-identifier-not-recognized(8), called-AE-qualifier-not-recognized(9), called-AE-invocation-identifier-not-recognized(10), authentication-mechanism-name-not-recognized(11), authentication-mechanism-name-required(12), authentication-failure(13), authentication-required(14)} (0..14, ...), acse-service-provider [2] INTEGER {null(0), no-reason-given(1), no-common-acse-version(2)} (0..2, ...) } User-information ::= Association-data Association-data ::= SEQUENCE OF EXTERNAL Simply-encoded-data ::= OCTET STRING User-Data ::= CHOICE { user-information User-information, simply-encoded-data Simply-encoded-data, fully-encoded-data [0] PDV-list } -- see ITU-T Rec. X.226 | ISO/IEC 8823-1. PDV-list ::= SEQUENCE { --bug in asn2wrs -- transfer-syntax-name Transfer-syntax-name OPTIONAL, transfer-syntax-name TransferSyntaxName OPTIONAL, presentation-context-identifier Presentation-context-identifier, presentation-data-values CHOICE {simple-ASN1-type [0] ANY (CONSTRAINED BY { -- Type corresponding to presentation context identifier }), octet-aligned [1] IMPLICIT OCTET STRING, arbitrary [2] IMPLICIT BIT STRING} -- see ITU-T Rec. X.226 | ISO/IEC 8823-1. } Presentation-context-identifier ::= INTEGER Authentication-value-other ::= SEQUENCE { other-mechanism-name OBJECT IDENTIFIER, other-mechanism-value ANY } Authentication-value ::= CHOICE { charstring [0] IMPLICIT GraphicString, bitstring [1] IMPLICIT BIT STRING, external [2] IMPLICIT EXTERNAL, other [3] IMPLICIT Authentication-value-other } -- The abstract syntax of (calling/responding) authentication-value is determined by the authentication mechanism used -- during association establishment. The authentication mechanism is either explicitly denoted by the &id field (of type -- OBJECT IDENTIFIER) for a mechanism belonging to the class MECHANISM-NAME, or it is known implicitly by -- prior agreement between the communicating partners. If the "other" component is chosen, then the -- "mechanism-name" component must be present in accordance with ITU-T Rec. X.680 | ISO/IEC 8824-1. If the value -- "mechanism-name" occurs in the AARQ-apdu or the AARE-apdu, then that value must be the same as the value for -- "other-mechanism-name". Implementation-data ::= GraphicString Mechanism-name ::= OBJECT IDENTIFIER Release-request-reason ::= INTEGER {normal(0), urgent(1), user-defined(30) } Release-response-reason ::= INTEGER { normal(0), not-finished(1), user-defined(30)} END -- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D