<> <> <> <> <> DIRECTORY Basics USING [ Comparison ], BasicTime USING [ GMT ], GVBasics USING [ Password ], Rope USING [ ROPE ], RPC USING [ EncryptionKey, ShortROPE ], RPCPkt USING [ Machine ] ; Names: CEDAR DEFINITIONS = { ROPE: TYPE = RPC.ShortROPE; NetAddress: TYPE = RPCPkt.Machine; Rname: TYPE = ROPE; anonymousRname: Rname = NIL; <> FileSpec: TYPE = REF FileSpecBody; FileSpecBody: TYPE = RECORD [ server, name, password, dirName, dirPassword, fileName: Rope.ROPE_NIL]; ParseFile: PROCEDURE[ server: ROPE_NIL, dirName: ROPE_NIL, dirPassword: ROPE_NIL, fileName: ROPE_] RETURNS [FileSpec]; <> <> CurrentRName: PROC RETURNS [ROPE]; <> DefaultRegistry: PROC RETURNS [ROPE]; <> Registrize: PROC[name: ROPE] RETURNS [ROPE]; <> CurrentPasskey: PROC[passwordText: ROPE_NIL] RETURNS [RPC.EncryptionKey]; CurrentPassword: PROC[passwordText: ROPE_NIL] RETURNS [GVBasics.Password] = INLINE { RETURN[LOOPHOLE[CurrentPasskey[passwordText]]]; }; <> OwnNetAddress: PROC RETURNS [netAddress: NetAddress]; Rspec: TYPE = REF RspecBody; RspecBody: TYPE = RECORD [ simpleName: ROPE_NIL, registry: ROPE_NIL]; InstanceFromNetAddress: PROC[netAddress: NetAddress, suffix: ROPE_NIL] RETURNS [instance: Rname]; <> <> RnameToRspec: PROC[name: Rname, defaultRegistry: ROPE_NIL] RETURNS [spec: Rspec]; <> RspecToRname: PROC[spec: Rspec] RETURNS [name: Rname]; <> RspecToSortName: PROC[spec: Rspec] RETURNS [name: ROPE]; <> MakeAtom: PROC[rName: Rname, case: BOOL_FALSE] RETURNS [ATOM]; <> <> <<>> GMTComp: PROC[t1, t2: BasicTime.GMT] RETURNS [c: Basics.Comparison]; NetProblem: TYPE = {ok, noSuchName, invalidName, noSuchIndex, noSuchFone, badPassword, notAuthenticated, tryLater, notInitialized, cantImportSmarts}; NetError: ERROR[problem: NetProblem]; }.