1-- http://www.itu.int/ITU-T/formal-language/itu-t/x/x519/2005/IDMProtocolSpecification.asn
2-- Module IDMProtocolSpecification (X.519:08/2005)
3IDMProtocolSpecification {joint-iso-itu-t ds(5) module(1)
4  iDMProtocolSpecification(30) 5} DEFINITIONS ::=
5BEGIN
6
7-- EXPORTS All
8-- The types and values defined in this module are exported for use in the other ASN.1 modules contained
9-- within the Directory Specifications, and for the use of other applications which will use them to access Directory
10-- services. Other applications may use them for their own purposes, but this will not constrain extensions
11-- and modifications needed to maintain or improve the Directory service.
12IMPORTS
13  -- from ITU-T Rec. X.501 | ISO/IEC 9594-2
14  certificateExtensions, commonProtocolSpecification, directoryAbstractService,
15    directoryIDMProtocols, enhancedSecurity
16    FROM UsefulDefinitions {joint-iso-itu-t ds(5) module(1)
17      usefulDefinitions(0) 5}
18  -- from ITU-T Rec. X.509 | ISO/IEC 9594-8
19  GeneralName
20    FROM CertificateExtensions certificateExtensions
21  -- from ITU-T Rec. X.511 | ISO/IEC 9594-3
22  SecurityProblem, ServiceProblem, Versions
23    FROM DirectoryAbstractService directoryAbstractService
24  -- from ITU-T Rec. X.519 | ISO/IEC 9594-5
25  InvokeId, OPERATION
26    FROM CommonProtocolSpecification commonProtocolSpecification;
27
28-- IDM-protocol information object class
29IDM-PROTOCOL ::= CLASS {
30  &bind-operation  OPERATION,
31  &Operations      OPERATION,
32  &id              OBJECT IDENTIFIER UNIQUE
33}WITH SYNTAX {BIND-OPERATION &bind-operation
34              OPERATIONS &Operations
35              ID &id
36}
37
38-- IDM protocol
39IDM-PDU{IDM-PROTOCOL:protocol} ::= CHOICE {
40  bind         [0]  IdmBind{{protocol}},
41  bindResult   [1]  IdmBindResult{{protocol}},
42  bindError    [2]  IdmBindError{{protocol}},
43  request      [3]  Request{{protocol.&Operations}},
44  result       [4]  IdmResult{{protocol.&Operations}},
45  error        [5]  Error{{protocol.&Operations}},
46  reject       [6]  IdmReject,
47  unbind       [7]  Unbind,
48  abort        [8]  Abort,
49  startTLS     [9]  StartTLS,
50  tLSResponse  [10]  TLSResponse
51}
52
53IdmBind{IDM-PROTOCOL:Protocols} ::= SEQUENCE {
54  protocolID      IDM-PROTOCOL.&id({Protocols}),
55  callingAETitle  [0]  GeneralName OPTIONAL,
56  calledAETitle   [1]  GeneralName OPTIONAL,
57  argument
58    [2]  IDM-PROTOCOL.&bind-operation.&ArgumentType({Protocols}{@protocolID})
59}
60
61IdmBindResult{IDM-PROTOCOL:Protocols} ::= SEQUENCE {
62  protocolID         IDM-PROTOCOL.&id({Protocols}),
63  respondingAETitle  [0]  GeneralName OPTIONAL,
64  result
65    [1]  IDM-PROTOCOL.&bind-operation.&ResultType({Protocols}{@protocolID})
66}
67
68IdmBindError{IDM-PROTOCOL:Protocols} ::= SEQUENCE {
69  protocolID         IDM-PROTOCOL.&id({Protocols}),
70  errcode
71    IDM-PROTOCOL.&bind-operation.&Errors.&errorCode({Protocols}{@protocolID}),
72  respondingAETitle  [0]  GeneralName OPTIONAL,
73  aETitleError
74    ENUMERATED {callingAETitleNotAccepted(0), calledAETitleNotRecognized(1)}
75      OPTIONAL,
76  error
77    [1]  IDM-PROTOCOL.&bind-operation.&Errors.&ParameterType
78           ({Protocols}{@protocolID, @errcode})
79}
80
81Unbind ::= NULL
82
83Request{OPERATION:Operations} ::= SEQUENCE {
84  invokeID  INTEGER,
85  opcode    OPERATION.&operationCode({Operations}),
86  argument  OPERATION.&ArgumentType({Operations}{@opcode})
87}
88
89IdmResult{OPERATION:Operations} ::= SEQUENCE {
90  invokeID  InvokeId,
91  opcode    OPERATION.&operationCode({Operations}),
92  result    OPERATION.&ResultType({Operations}{@opcode})
93}
94
95Error{OPERATION:Operations} ::= SEQUENCE {
96  invokeID  INTEGER,
97  errcode   OPERATION.&Errors.&errorCode({Operations}),
98  error     OPERATION.&Errors.&ParameterType({Operations}{@errcode})
99}
100
101IdmReject ::= SEQUENCE {
102  invokeID  INTEGER,
103  reason
104    ENUMERATED {mistypedPDU(0), duplicateInvokeIDRequest(1),
105                unsupportedOperationRequest(2), unknownOperationRequest(3),
106                mistypedArgumentRequest(4), resourceLimitationRequest(5),
107                unknownInvokeIDResult(6), mistypedResultRequest(7),
108                unknownInvokeIDError(8), unknownError(9),
109                mistypedParameterError(10)}
110}
111
112Abort ::= ENUMERATED {
113  mistypedPDU(0), unboundRequest(1), invalidPDU(2), resourceLimitation(3),
114  connectionFailed(4), invalidProtocol(5), reasonNotSpecified(6)}
115
116StartTLS ::= NULL
117
118TLSResponse ::= ENUMERATED {
119  success(0), operationsError(1), protocolError(2), unavailable(3)}
120
121END -- IDMProtocolSpecification
122
123-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
124
125