|
|
1.1 root 1: -- idist.ry - IDIST protocol
2:
3: -- $Header: /f/osi/others/idist/RCS/idist.ry,v 7.0 89/11/23 21:58:29 mrose Rel $
4: --
5: -- The UCB rdist protocol as rewritten in terms of ISO OPERATIONS.
6: -- This comes out quite a lot cleaner than the original! It could come
7: -- out cleaner still if some more tidying up of internals was done...
8: --
9: -- Julian Onions <[email protected]>
10: -- Nottingham University Computer Science
11: --
12: --
13: -- $Log: idist.ry,v $
14: -- Revision 7.0 89/11/23 21:58:29 mrose
15: -- Release 6.0
16: --
17:
18: --
19: -- NOTICE
20: --
21: -- Acquisition, use, and distribution of this module and related
22: -- materials are subject to the restrictions of a license agreement.
23: -- Consult the Preface in the User's Manual for the full terms of
24: -- this agreement.
25: --
26: --
27:
28:
29: Idist DEFINITIONS ::=
30:
31: BEGIN
32:
33: -- operations
34:
35: -- version specification
36: init OPERATION
37: ARGUMENT InitDir
38: RESULT NULL
39: ERRORS { congested, badfilename }
40: ::= 0
41:
42: -- transfer a file type (file/dir/link etc)
43: transfer OPERATION
44: ARGUMENT FileSpec
45: RESULT IA5List
46: ERRORS { congested, badfilename, badfiletype }
47: ::= 1
48:
49: -- finished with this directory.
50: terminate OPERATION
51: ARGUMENT TermStatus
52: RESULT NULL
53: ERRORS { writeerror, protocol, badfiletype, fileproblem }
54: ::= 2
55:
56: -- clean up a directory
57: listcdir OPERATION
58: RESULT FileList
59: ERRORS { badfilename }
60: ::= 3
61:
62: -- query existance of file/directory
63: query OPERATION
64: ARGUMENT IA5String
65: RESULT QueryResult
66: ERRORS { congested }
67: ::= 4
68:
69: -- execute special command
70: special OPERATION
71: ARGUMENT IA5String
72: RESULT IA5List
73: ERRORS { execError }
74: ::= 5
75:
76: data OPERATION
77: ARGUMENT Data
78: RESULT NULL
79: ERRORS { writeerror }
80: ::= 6
81:
82: deletefile OPERATION
83: ARGUMENT IA5String
84: RESULT IA5List
85: ERRORS { protocol, badfilename }
86: ::= 7
87:
88: -- Errors
89:
90: congested ERROR
91: PARAMETER IA5List
92: ::= 0
93:
94: execError ERROR
95: PARAMETER IA5List
96: ::= 1
97:
98: badfilename ERROR
99: PARAMETER IA5List
100: ::= 2
101:
102: badfiletype ERROR
103: ::= 3
104:
105: writeerror ERROR
106: PARAMETER IA5List
107: ::= 4
108:
109: protocol ERROR
110: PARAMETER IA5List
111: ::= 5
112:
113: fileproblem ERROR
114: PARAMETER IA5List
115: ::= 6
116:
117: -- Data types
118:
119: Initiate ::= SEQUENCE {
120: version INTEGER,
121: user IA5String,
122: passwd IA5String
123: }
124:
125: InitDir ::= CHOICE {
126: destdir[0] IA5String,
127: nodestdir[1] IA5String
128: }
129:
130: FileSpec ::= SEQUENCE {
131: filetype FileType,
132: fileopts Options,
133: filemode INTEGER,
134: filesize INTEGER,
135: filemtime FileTime,
136: fileowner IA5String,
137: filegroup IA5String,
138: filename IA5String,
139: linkname IA5String
140: }
141:
142: FileType ::= ENUMERATED {
143: regular(0),
144: directory(1),
145: symlink(2),
146: hardlink(3)
147: }
148:
149: Options ::= BITSTRING {
150: verify(0),
151: whole(1),
152: younger(2),
153: compare(3),
154: remove(4),
155: follow(5),
156: ignlinks(6),
157: noinstall(7)
158: }
159:
160: TermStatus ::= SEQUENCE {
161: filetype FileType,
162: status BOOLEAN
163: }
164:
165:
166: FileTime ::= INTEGER
167:
168: QueryResult ::= CHOICE {
169: doesntExist[0] NULL,
170: doesExist[1] FileSpec
171: }
172:
173: FileList ::= SEQUENCE OF FileSpec
174:
175: IA5List ::=
176: SEQUENCE OF IA5String
177:
178: Data ::= OCTET STRING
179:
180: END
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.