BSD 4_3_Net_2 development
[unix-history] / usr / src / contrib / isode / others / rfa / rfa.ry
CommitLineData
11492ebf
C
1--
2-- RFA - Remote File Access
3--
4-- Access and Management for a partial file system tree that exists
5-- at two side either as master files or slave files
6--
7-- rfa.ry : Definition of Remote Operations that are used by RFA
8--
9--
10-- Contributed by Oliver Wenzel, GMD Berlin, 1990
11--
12-- $Header: /f/osi/others/rfa/RCS/rfa.ry,v 7.3 91/02/22 09:28:16 mrose Interim $
13--
14-- $Log: rfa.ry,v $
15-- Revision 7.3 91/02/22 09:28:16 mrose
16-- Interim 6.8
17--
18-- Revision 7.2 91/01/14 13:54:51 mrose
19-- update
20--
21-- Revision 1.1 91/01/04 16:10:29 ow
22-- Initial revision
23--
24--
25--
26-- NOTICE
27--
28-- Acquisition, use, and distribution of this module and related
29-- materials are subject to the restrictions of a license agreement.
30-- Consult the Preface in the User's Manual for the full terms of
31-- this agreement.
32--
33
34
35RFA DEFINITIONS ::=
36
37BEGIN
38
39-- operations
40
41
42getFileData OPERATION
43 ARGUMENT GetFileDataArg
44 RESULT GetFileDataRes
45 ERRORS { miscError, fileAccessError }
46 ::= 1
47
48GetFileDataArg ::= SEQUENCE {
49 filename FileName,
50 slaveVersion INTEGER
51}
52
53GetFileDataRes ::= SEQUENCE {
54 mode INTEGER {
55 actual(0), -- local version is still valid
56 data(1),
57 zero(2),
58 compressed(3) },
59 fileinfo FileInfo,
60 data OCTETSTRING OPTIONAL
61}
62
63
64requestMaster OPERATION
65 ARGUMENT RequestMasterArg
66 RESULT RequestMasterRes
67 ERRORS { miscError, statusError, fileAccessError }
68 ::= 2
69
70RequestMasterArg ::= SEQUENCE {
71 filename FileName,
72 slaveVersion INTEGER
73}
74
75RequestMasterRes ::= INTEGER -- modification time
76
77
78
79listDir OPERATION
80 ARGUMENT FileName
81 RESULT FileInfoList
82 ERRORS { miscError, fileAccessError }
83 ::= 3
84
85FileName ::= IA5String
86
87FileInfo ::= SEQUENCE {
88 name IA5String,
89 mode INTEGER,
90 user IA5String,
91 group IA5String,
92 size INTEGER,
93 accTime INTEGER,
94 modTime INTEGER,
95 lnkName [0] IA5String OPTIONAL,
96 status INTEGER {
97 unregistered(0),
98 master(1),
99 masterLocked(2),
100 slave(3) },
101 lockedBy [1] IA5String OPTIONAL,
102 lockedSince INTEGER
103}
104
105FileInfoList ::= SEQUENCE OF FileInfo
106
107
108
109syncTime OPERATION
110 ARGUMENT SyncTimeArg
111 RESULT SyncTimeRes
112 ERRORS { miscError }
113 ::= 4
114
115SyncTimeArg ::= SEQUENCE {
116 role INTEGER {
117 master(0),
118 slave(1)
119 },
120 time INTEGER -- only used when role = master
121}
122
123SyncTimeRes ::= SEQUENCE {
124 time INTEGER -- contains clock of master if role was slave
125 -- otherwise the time diff at slave
126}
127
128
129-- errors
130
131miscError ERROR
132 PARAMETER Reason
133 ::= 0
134
135fileAccessError ERROR
136 PARAMETER Reason
137 ::= 1
138
139Reason ::= SEQUENCE {
140 reason IA5String
141}
142
143statusError ERROR
144 PARAMETER StatusErrorParm
145 ::= 2
146
147StatusErrorParm ::= SEQUENCE {
148 reason INTEGER {
149 notMaster (0),
150 locked (1),
151 notRegistered(2),
152 notWritable(3),
153 wrongVersion(4),
154 notRegularFile(5),
155 slaveNewer(6)},
156 user [0] IA5String OPTIONAL,
157 since [1] INTEGER
158}
159
160-- types
161
162
163Initiate ::= SEQUENCE {
164 user IA5String,
165 password IA5String
166}
167
168END