AuthenticationP14V2.Mesa
Copyright (C) 1986 by Xerox Corporation. All rights reserved.
Generated by Demers.pa at January 6, 1987 4:10:35 pm PST
using Sirocco [2.0] of January 6, 1987 4:07:33 pm PST
DIRECTORY
CrRPC,
TimeP15V2,
CHNameP2V0,
Rope;
AuthenticationP14V2: CEDAR DEFINITIONS ~ {
ROPE: TYPE ~ Rope.ROPE;
SimpleVerifier: TYPE ~ CARD16;
ChangeSimpleKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, newKey: CARD16];
ChangeSimpleKey: ChangeSimpleKeyType;
Problem: TYPE ~ MACHINE DEPENDENT { credentialsInvalid(0), verifierInvalid(1), verifierExpired(2), verifierReused(3), credentialsExpired(4), inappropriateCredentials(5)};
CreateStrongKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, name: CHNameP2V0.ThreePartName, key: Block];
CreateStrongKey: CreateStrongKeyType;
AuthenticationErrorType: TYPE ~ ERROR [problem: Problem];
AuthenticationError: AuthenticationErrorType;
SimpleCredentials: TYPE ~ CHNameP2V0.ThreePartName;
StrongVerifier: TYPE ~ RECORD [
timeStamp: CARD32,
ticks: CARD32];
SeqWords: TYPE ~ REF SeqWordsObject;
SeqWordsObject: TYPE ~ MACHINE DEPENDENT RECORD [
body: PACKED SEQUENCE length: CARDINAL OF CARD16
];
Credentials: TYPE ~ RECORD [
type: CredentialsType,
value: SeqWords];
DeleteSimpleKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, name: CHNameP2V0.ThreePartName];
DeleteSimpleKey: DeleteSimpleKeyType;
GetStrongCredentialsType: TYPE ~ PROC [h: CrRPC.Handle, initiator: CHNameP2V0.ThreePartName, recipient: CHNameP2V0.ThreePartName, nonce: CARD32] RETURNS [encryptedCredentialsPackage: SeqWords];
GetStrongCredentials: GetStrongCredentialsType;
Which: TYPE ~ MACHINE DEPENDENT { notApplicable(0), initiator(1), recipient(2), client(3)};
CredentialsPackage: TYPE ~ RECORD [
credentials: Credentials,
nonce: CARD32,
recipient: CHNameP2V0.ThreePartName,
conversationKey: Block];
Verifier: TYPE ~ SeqWords;
Key: TYPE ~ Block;
CheckSimpleCredentialsType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords] RETURNS [ok: BOOLEAN];
CheckSimpleCredentials: CheckSimpleCredentialsType;
ChangeStrongKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, newKey: Block];
ChangeStrongKey: ChangeStrongKeyType;
StrongCredentials: TYPE ~ RECORD [
conversationKey: Block,
expirationTime: CARD32,
initiator: CHNameP2V0.ThreePartName];
Block: TYPE ~ ARRAY [0..4) OF CARD16;
DeleteStrongKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, name: CHNameP2V0.ThreePartName];
DeleteStrongKey: DeleteStrongKeyType;
CallErrorType: TYPE ~ ERROR [problem: CallProblem, whichArg: Which];
CallError: CallErrorType;
HashedPassword: TYPE ~ CARD16;
CredentialsType: TYPE ~ MACHINE DEPENDENT { simple(0), strong(1)};
CreateSimpleKeyType: TYPE ~ PROC [h: CrRPC.Handle, credentials: Credentials, verifier: SeqWords, name: CHNameP2V0.ThreePartName, key: CARD16];
CreateSimpleKey: CreateSimpleKeyType;
CallProblem: TYPE ~ MACHINE DEPENDENT { tooBusy(0), accessRightsInsufficient(1), keysUnavailable(2), strongKeyDoesNotExist(3), simpleKeyDoesNotExist(4), strongKeyAlreadyRegistered(5), simpleKeyAlreadyRegistered(6), domainForNewKeyUnavailable(7), domainForNewKeyUnknown(8), badKey(9), badName(10), databaseFull(11), other(12)};
}...