Annotation of 43BSD/contrib/xns/examples/authchtest/BasicAuthentication.cr, revision 1.1.1.1

1.1       root        1: BasicAuthentication: PROGRAM 14 VERSION 2 =
                      2: -- a subset of Authentication, hopefully big enough for some testing --
                      3: BEGIN
                      4:     DEPENDS UPON Time(15) VERSION 2;
                      5: 
                      6: -- faked dependency --
                      7: 
                      8: Organization: TYPE = STRING;
                      9: Domain: TYPE = STRING;
                     10: Object: TYPE = STRING;
                     11: 
                     12: ThreePartName: TYPE = RECORD [
                     13:     organization: Organization,
                     14:     domain: Domain,
                     15:     object: Object
                     16:     ];
                     17: 
                     18: Clearinghouse_Name:  TYPE = ThreePartName;
                     19: 
                     20: -- Types --
                     21: 
                     22: CredentialsType: TYPE = {simple(0), strong(1)};
                     23: 
                     24: Credentials: TYPE = RECORD [type: CredentialsType,
                     25:                            value:SEQUENCE OF UNSPECIFIED];
                     26: 
                     27: SimpleCredentials: TYPE = Clearinghouse_Name;
                     28: 
                     29: HashedPassword: TYPE = CARDINAL;
                     30: 
                     31: SimpleVerifier: TYPE = HashedPassword;
                     32: 
                     33: Verifier: TYPE = SEQUENCE 12 OF UNSPECIFIED;
                     34: 
                     35: -- errors --
                     36: 
                     37: Problem: TYPE = {
                     38:     credentialsInvalid(0),
                     39:     verifierInvalid(1),
                     40:     verifierExpiered(2),
                     41:     verifierReused(3),
                     42:     credentialsExpired(4),
                     43:     inappropriateCredeitnals(5) };
                     44: AuthenticationError: ERROR[problem: Problem] = 2;
                     45: 
                     46: CallProblem: TYPE = {
                     47:     tooBusy(0),
                     48:     accessRightsInsufficient(1),
                     49:     keysUnavailable(2),
                     50:     strongKeyDoesNotExist(3),
                     51:     simpleKeyDoesNotExist(4),
                     52:     strongKeyAlreadyRegistered(5),
                     53:     simpleKeyAlreadyRegistered(6),
                     54:     domainForNewKeyUnavailable(7),
                     55:     domainForNewKeyUnknown(8),
                     56:     badKey(9),
                     57:     badName(10),
                     58:     databaseFull(11),
                     59:     other(12) };
                     60: Which: TYPE = {notApplicable(0), initiator(1), recipient(2), client(3) };
                     61: CallError: ERROR [problem: CallProblem, whichArg: Which] = 1;
                     62: 
                     63: -- PROCEDURES --
                     64: 
                     65: CheckSimpleCredentials: PROCEDURE [credentials: Credentials, verifier: Verifier]
                     66:        RETURNS[ok: BOOLEAN]
                     67:        REPORTS[AuthenticationError, CallError] = 2;
                     68: 
                     69: END.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.