-- -- RFA - Remote File Access -- -- Access and Management for a partial file system tree that exists -- at two side either as master files or slave files -- -- rfa.ry : Definition of Remote Operations that are used by RFA -- -- -- Contributed by Oliver Wenzel, GMD Berlin, 1990 -- -- $Header: /f/osi/others/rfa/RCS/rfa.ry,v 7.3 91/02/22 09:28:16 mrose Interim $ -- -- $Log: rfa.ry,v $ -- Revision 7.3 91/02/22 09:28:16 mrose -- Interim 6.8 -- -- Revision 7.2 91/01/14 13:54:51 mrose -- update -- -- Revision 1.1 91/01/04 16:10:29 ow -- Initial revision -- -- -- -- NOTICE -- -- Acquisition, use, and distribution of this module and related -- materials are subject to the restrictions of a license agreement. -- Consult the Preface in the User's Manual for the full terms of -- this agreement. -- RFA DEFINITIONS ::= BEGIN -- operations getFileData OPERATION ARGUMENT GetFileDataArg RESULT GetFileDataRes ERRORS { miscError, fileAccessError } ::= 1 GetFileDataArg ::= SEQUENCE { filename FileName, slaveVersion INTEGER } GetFileDataRes ::= SEQUENCE { mode INTEGER { actual(0), -- local version is still valid data(1), zero(2), compressed(3) }, fileinfo FileInfo, data OCTETSTRING OPTIONAL } requestMaster OPERATION ARGUMENT RequestMasterArg RESULT RequestMasterRes ERRORS { miscError, statusError, fileAccessError } ::= 2 RequestMasterArg ::= SEQUENCE { filename FileName, slaveVersion INTEGER } RequestMasterRes ::= INTEGER -- modification time listDir OPERATION ARGUMENT FileName RESULT FileInfoList ERRORS { miscError, fileAccessError } ::= 3 FileName ::= IA5String FileInfo ::= SEQUENCE { name IA5String, mode INTEGER, user IA5String, group IA5String, size INTEGER, accTime INTEGER, modTime INTEGER, lnkName [0] IA5String OPTIONAL, status INTEGER { unregistered(0), master(1), masterLocked(2), slave(3) }, lockedBy [1] IA5String OPTIONAL, lockedSince INTEGER } FileInfoList ::= SEQUENCE OF FileInfo syncTime OPERATION ARGUMENT SyncTimeArg RESULT SyncTimeRes ERRORS { miscError } ::= 4 SyncTimeArg ::= SEQUENCE { role INTEGER { master(0), slave(1) }, time INTEGER -- only used when role = master } SyncTimeRes ::= SEQUENCE { time INTEGER -- contains clock of master if role was slave -- otherwise the time diff at slave } -- errors miscError ERROR PARAMETER Reason ::= 0 fileAccessError ERROR PARAMETER Reason ::= 1 Reason ::= SEQUENCE { reason IA5String } statusError ERROR PARAMETER StatusErrorParm ::= 2 StatusErrorParm ::= SEQUENCE { reason INTEGER { notMaster (0), locked (1), notRegistered(2), notWritable(3), wrongVersion(4), notRegularFile(5), slaveNewer(6)}, user [0] IA5String OPTIONAL, since [1] INTEGER } -- types Initiate ::= SEQUENCE { user IA5String, password IA5String } END