NameDBBackDoor.Mesa
Copyright Ó 1988 by Xerox Corporation. All rights reserved.
Last modified by Swinehart, August 25, 1988 9:08:29 am PDT
DIRECTORY
BasicTime USING [ GMT, nullGMT ],
LoganBerry USING [ Entry ],
Rope USING [ ROPE ],
RPC USING [ EncryptionKey ]
;
NameDBBackDoor:
CEDAR DEFINITIONS = {
ROPE: TYPE = Rope.ROPE;
AttributeSeq: TYPE = LoganBerry.Entry;
KeyRope: PROC[key: RPC.EncryptionKey] RETURNS[keyRope: ROPE];
FetchAttribute:
PROC[
attributes: AttributeSeq, attribute: ATOM, default: ROPE←NIL]
RETURNS [value: ROPE, valueLoc: AttributeSeq←NIL];
ExtractAttribute:
PROC[
attributes: AttributeSeq, attribute: ATOM]
RETURNS [newAttributes: AttributeSeq←NIL];
StoreAttribute:
PROC[attributes: AttributeSeq, attribute:
ATOM, value:
ROPE]
RETURNS[newAttributes: AttributeSeq];
Append:
PROC[
a1, a2: AttributeSeq]
RETURNS [newAttributes: AttributeSeq];
RelTime:
PROC[ropeTime:
ROPE]
RETURNS [relativeToNow:
INT];
TimeRope:
PROC [time: BasicTime.
GMT ← BasicTime.nullGMT]
RETURNS[nowRope:
ROPE];
TAttr:
PROC[attribute:
ATOM, prefix: Rope.
ROPE]
RETURNS [tAttr:
ATOM]
}.