<> <> <> <> <> <> <> <> <<>> <> <<>> DIRECTORY PFSNames USING [PATH], Rope USING [ROPE]; PFSBackdoor: CEDAR DEFINITIONS = BEGIN ROPE: TYPE = Rope.ROPE; ErrorCode: TYPE = {ok -- used internally-- , inconsistent, resourceLimitExceeded, ioError, volumeFull, noMoreVersions, accessDenied, quotaExceeded, invalidPropertyStorage, outOfPropertySpace, positionNotInFile, invalidOpenFile, notImplemented, fileTypeMismatch, unknownClass, unknownFile, unknownUniqueID, patternNotAllowed, versionSpecified, cantUpdateTiogaFile, invalidNameSyntax }; ProduceError: PROC [code: ErrorCode, explanation: Rope.ROPE, info: REF _ NIL]; <<>> <> <<>> <<>> <<>> <<>> Op: TYPE = {startRetrieving, endRetrieving, startStoring, endStoring, startDeleting, endDeleting, startRenaming, endRenaming, startCopying, endCopying, writeClose}; Event: TYPE = RECORD [ op: Op, -- remote operation that has occurred fName: PFSNames.PATH, -- full name of the file operated upon; the toName in the case of renaming and copying chain: REF Event -- used internally to chain events together ]; NextEvent: PROC [REF READONLY Event _ NIL] RETURNS [REF READONLY Event]; <> <> <> <<>> <> <> <<};>> <<>> END. <> <> <<>> <<>>