DIRECTORY BasicTime USING [GMT, nullGMT], FilingP10V5 USING [Handle, Session], FilingAttributesP10V5 USING [FileID, Version], PFSNames USING [PATH], Rope USING [ROPE], XNS USING [Address], XNSAuth USING [Conversation, Credentials], XNSCHName USING [Name]; XNSFilingOps: CEDAR DEFINITIONS ~ { OPEN BasicTime, FilingAttributesP10V5, Rope; FileType: TYPE ~ CARD32; Root: TYPE ~ FilingP10V5.Handle; Human: TYPE ~ XNSAuth.Credentials; Ticket: TYPE ~ XNSAuth.Conversation; Cabinet: TYPE ~ XNSCHName.Name; OpenSession: TYPE ~ REF FilingP10V5.Session; ServerData: TYPE ~ REF ServerDataObject; ServerDataObject: TYPE ~ RECORD [ serverName: ROPE, -- the readable name of the service steel: Cabinet, -- the qualified name of the service address: REF XNS.Address, -- the transport name of the service tkt: Ticket, -- the "user" for this connection session: OpenSession, -- the session for this connection timeToLive: CARD32, -- the session time-to-live root: Root, -- the root directory of the service admin: AdminData ¬ [0, 0, 0, 0, BasicTime.nullGMT, NIL, FALSE] ]; AdminData: TYPE ~ RECORD [ tktTTL: CARD32, -- the conversation time-to-live trTTL: CARD32, -- the transport time-to-live callsOut: CARD32, -- standing in the rain? files: INT32, -- opened, not yet closed lastOp: BasicTime.GMT, -- informational downMsg: ROPE, -- non-NIL => server is down active: BOOL ¬ FALSE -- TRUE when a call is active; keeps the session alive. ]; Info: TYPE ~ RECORD [ version: Version, bytes: INT, created: BasicTime.GMT, fileType: FileType, pathName: ROPE, fID: FileID, isDir: BOOL, numKids: CARD ]; Op: TYPE ~ { delete, enumerate, enumerateNames, rename, retrieve, store }; EnumProc: TYPE ~ PROC [eFile: PFSNames.PATH, eInfo: Info, pathy: PFSNames.PATH] RETURNS [continue: BOOL ¬ TRUE]; EnumerateOp: PROC [mnt: ServerData, pattern: PFSNames.PATH, proc: EnumProc, op: Op]; LogonOp: PROC [server: ROPE] RETURNS [mnt: ServerData ¬ NIL]; MountRootOp: PROC [mnt: ServerData]; ContinueOp: PROC [mnt: ServerData]; LogoffOp: PROC [mnt: ServerData]; CallProtected: PROC [mnt: ServerData, proc: PROC, pathname: ROPE ¬ NIL, time: GMT ¬ nullGMT]; GuardOp: PROC [proc: PROC]; }. 0 XNSFilingOps.mesa Copyright Σ 1990, 1992 by Xerox Corporation. All rights reserved. Bill Jackson (bj), May 30, 1990 1:15 pm PDT Filing types Strong Authentication I concede this is a bit baroque, but let's face it, color is more interesting! Server data Junk Remote Operations Error Management ΚŽ–(cedarcode) style•NewlineDelimiter ™šœ™Jšœ Οeœ7™BJ™+J™—codešΟk ˜ Kšœ žœžœ ˜Kšœ žœ˜$Kšœžœ˜.Kšœ žœžœ˜Kšœžœžœ˜Kšžœžœ ˜Kšœžœ˜*Kšœ žœ˜K˜—šΟn œžœž œ˜#Kšžœ(˜,head2šΟz ™ Kšœ žœžœ˜Kšœžœ˜ —š ™KšœN™NK™Kšœžœ˜"Kšœžœ˜$Kšœ žœ˜Kšœ žœžœ˜,—š  ™ Kšœ žœžœ˜(šœžœžœ˜!Kšœ žœΟc#˜5Kšœ‘$˜4Kšœ žœžœ ‘$˜>Kšœ‘!˜/Kšœ‘"˜8Kšœ žœ‘˜/Kšœ ‘$˜1Kšœ3žœžœ˜>K˜K˜—šœ žœžœ˜Kšœžœ‘ ˜0Kšœžœ‘˜,Kšœ žœ‘˜*Kšœžœ‘˜(Kšœžœ‘˜'Kšœ žœ‘˜+Kšœžœžœ‘7˜LK˜——š ™šœžœžœ˜Kšœ˜Kšœžœ˜ Kšœžœ˜Kšœ˜Kšœ žœ˜Kšœ ˜ Kšœžœ˜ Kšœ ž˜ Kšœ˜K˜—KšœžœB˜JKšœ žœžœžœžœžœ žœžœ˜pK˜KšŸ œžœ%žœ˜T—š ™Kš Ÿœžœ žœžœžœ˜=KšŸ œžœ˜$KšŸ œžœ˜#KšŸœžœ˜!—šΠbz™Kš Ÿ œžœžœ žœžœžœ ˜]KšŸœžœžœ˜K˜—K˜K˜——…—l *