|
|
1.1 root 1: -- rts.py - RTS definitions
2: -- lifted directly from ISO9066-2
3:
4: -- $Header: /f/osi/rtsap/RCS/rts.py,v 7.0 89/11/23 22:22:33 mrose Rel $
5: --
6: --
7: -- $Log: rts.py,v $
8: -- Revision 7.0 89/11/23 22:22:33 mrose
9: -- Release 6.0
10: --
11:
12: --
13: -- NOTICE
14: --
15: -- Acquisition, use, and distribution of this module and related
16: -- materials are subject to the restrictions of a license agreement.
17: -- Consult the Preface in the User's Manual for the full terms of
18: -- this agreement.
19: --
20: --
21:
22:
23: --* Reliable-Transfer-APDUs *-- RTS
24: --* { joint-iso-ccitt reliable-transfer(3) apdus(0) } *--
25: DEFINITIONS ::=
26:
27: %{
28: #ifndef lint
29: static char *rcsid = "$Header: /f/osi/rtsap/RCS/rts.py,v 7.0 89/11/23 22:22:33 mrose Rel $";
30: #endif
31:
32: #include <stdio.h>
33: #include "rtpkt.h"
34:
35:
36: int rtsap_priority;
37:
38: /* */
39: %}
40:
41: BEGIN
42:
43: -- EXPORTS
44: -- rTSE, rTSE-abstract,syntax, RTORQapdu, RTOACapdu, RTORJapdu, RTABapdu;
45:
46: -- IMPORTS APPLICATION-SERVICE-ELEMENT
47: -- FROM RemoteOperations-Notation-extension
48: -- { joint-ccitt-iso remote-operations(4) notation-extension(2) };
49:
50: -- rTSE-abstract-syntax OBJECT IDENTIFIER ::=
51: -- { joint-iso-ccit reliable-transfer(3) abstract-syntax(2) }
52: -- rTSE APPLICATION-SERVICE-ELEMENT ::=
53: -- { joint-iso-ccit reliable-transfer(3) aseID(1) }
54:
55: RTSE-apdus ::=
56: CHOICE {
57: rtorq-apdu[16]
58: IMPLICIT RTORQapdu,
59:
60: rtoac-apdu[17]
61: IMPLICIT RTOACapdu,
62:
63: rtorj-apdu[18]
64: IMPLICIT RTORJapdu,
65:
66: rttp-apdu
67: RTTPapdu,
68:
69: rttr-apdu
70: RTTRapdu,
71:
72: rtab-apdu[22]
73: IMPLICIT RTABapdu
74: }
75:
76: -- Tags [19], [20], [21] are used by the values of the UNBIND macro of
77: -- the RO-notation of ISO 9072-1. Tags [0] to [15] inclusive are
78: -- reserved for the use by the APDUs of ROSE (ISO 9072-2). Any
79: -- occurrence of ANY in this module shall be replaced by a single ASN.1
80: -- type (if any) in an RTSE-user protocol specification. In addition,
81: -- any RTSE-user protocol sharing a single named abstract syntax with
82: -- the RTSE protocol shall use distinct tags for the single presetnation
83: -- data values in the user data paramters of the RT-CLOSE 9f any) and
84: -- RT-TRANSFER services. These tags shall be distinct from the tag
85: -- values [16], [17], [18] and [22] and from the ASN.1 types INTEGER and
86: -- OCTET STRING. Note: the above conditions are ensured if the
87: -- RTSE-user protocol specification uses the RO-ntation of ISO9072-1
88:
89: -- In X.410-1984 mode only the components of the RTORQapdu, RTOACapdu,
90: -- RTORJapdu and RTABapdu are used by the presentation layer. This has
91: -- the effect that the following APDU types appear in the protocol in
92: -- X.410-1984 mode instead of the alternate types of the RTSE-apdus type:
93: -- RTORQapdu
94: -- RTOACapdu
95: -- RTORJapdu
96: -- RTTPapdu
97: -- RTTRapdu
98: -- RTABapdu
99:
100: RTORQapdu ::=
101: SET {
102: checkpointSize[0]
103: IMPLICIT INTEGER
104: %{ acsap_ckpoint = $$; %}
105: DEFAULT 0,
106:
107: windowSize[1]
108: IMPLICIT INTEGER
109: %{ acsap_window = $$; %}
110: DEFAULT 3,
111:
112: dialogueMode[2]
113: IMPLICIT INTEGER { monologue(0), twa(1)}
114: %{ acsap_mode = $$; %}
115: DEFAULT monologue,
116:
117: connectionDataRQ[3]
118: ConnectionData,
119:
120: applicationProtocol[4]
121: IMPLICIT INTEGER
122: OPTIONAL -- solely in X.410-1984 mode
123: }
124:
125: RTOACapdu ::=
126: SET {
127: checkpointSize[0]
128: IMPLICIT INTEGER
129: %{ acsap_ckpoint = $$; %}
130: DEFAULT 0,
131:
132: windowSize[1]
133: IMPLICIT INTEGER
134: %{ acsap_window = $$; %}
135: DEFAULT 3,
136:
137: connectionDataAC[2]
138: ConnectionData
139: }
140:
141: RTORJapdu ::=
142: SET {
143: refuseReason[0]
144: IMPLICIT OACS.RefuseReason
145: OPTIONAL, -- only in X.410-1984 mode
146:
147: userDataRJ[1]
148: ANY
149: %{ acsap_data = $$; %}
150: OPTIONAL -- RTSE user data, only in normal mode
151: }
152:
153: RTTPapdu ::=
154: -- priority
155: INTEGER
156: %{ rtsap_priority = $$; %}
157:
158: RTTRapdu ::=
159: OCTET STRING
160:
161: RTABapdu ::=
162: SET {
163: abortReason[0]
164: IMPLICIT AbortReason
165: OPTIONAL,
166:
167: reflectedParameter[1]
168: IMPLICIT BIT STRING
169: OPTIONAL,
170: -- 8 bits maximum, only if abortReason is invalidParameter
171:
172: userdataAB[2]
173: ANY
174: %{ acsap_data = $$; %}
175: OPTIONAL
176: -- only in normal mode and if if abortReason is userError
177: }
178:
179: ConnectionData ::=
180: CHOICE {
181: open[0] -- RTSE user data
182: -- this is encoded as [0]IMPLICIT NULL
183: -- in the case of absence of RTSE user data
184: ANY
185: %{ acsap_conntype = RTORQ_CD_OPEN, acsap_data = $$; %},
186:
187: recover[1]
188: IMPLICIT SessionConnectionIdentifier
189: }
190:
191: SessionConnectionIdentifier ::=
192: SEQUENCE {
193: CallingSSuserReference,
194:
195: CommonReference,
196:
197: [0]
198: IMPLICIT AdditionalReferenceInformation
199: OPTIONAL
200: }
201:
202: -- RefuseReason in module OACS for hysterical (sic) reasons
203:
204: CallingSSuserReference ::=
205: CHOICE {
206: T61String, -- solely in X.410-1984 mode
207:
208: OCTET STRING -- solely in normal mode
209: }
210:
211: CommonReference ::=
212: UTCTime
213:
214: AdditionalReferenceInformation ::=
215: T61String
216:
217: AbortReason ::=
218: INTEGER {
219: localSystemProblem(0),
220:
221: invalidParameter(1), -- reflectedParameter supplied
222:
223: unrecognizedActivity(2),
224:
225: temporaryProblem(3), -- the RTSE cannot accept a session
226: -- for a period of time
227:
228: protocolError(4), -- RTSE level protocol error
229:
230: permanentProblem(5), -- provider-abort solely in normal mode
231:
232: userError(6), -- user-abort solely in normal mode
233:
234: transferCompleted(7) -- activity can't be discarded
235: } %{ acsap_abort = $$; %}
236:
237: END
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.