|
|
1.1 ! root 1: Clearinghouse: PROGRAM 2 VERSION 2 = ! 2: ! 3: -- fake ch for testing -- ! 4: ! 5: BEGIN ! 6: DEPENDS UPON ! 7: BulkData (0) VERSION 1, ! 8: Authentication (14) VERSION 1; ! 9: ! 10: Organization: TYPE = STRING; ! 11: Domain: TYPE = STRING; ! 12: Object: TYPE = STRING; ! 13: ! 14: NetworkAddress: TYPE = RECORD [ ! 15: network: ARRAY 2 OF UNSPECIFIED, ! 16: host: ARRAY 3 OF UNSPECIFIED, ! 17: socket: UNSPECIFIED ]; ! 18: ! 19: NetworkAddressList: TYPE = SEQUENCE 40 OF NetworkAddress; ! 20: ! 21: ThreePartName: TYPE = RECORD[ ! 22: Organization: Organization, ! 23: domain: Domain, ! 24: object: Object ]; ! 25: ! 26: ObjectName: TYPE = ThreePartName; ! 27: ! 28: ObjectNamePattern: TYPE = ThreePartName; ! 29: ! 30: Authenticator: TYPE = RECORD [ ! 31: credentials: Authentication.Credentials, ! 32: verifier: Authentication.Verifier ]; ! 33: ! 34: -- error stuff -- ! 35: ! 36: WhichArgument: TYPE = {first(1), second(2) }; ! 37: ArgumentProblem: TYPE = CARDINAL; ! 38: CallProblem: TYPE = { ! 39: accessRightsInsufficient(1), ! 40: tooBusy(2), ! 41: serverDown(3), ! 42: useCourier(4), ! 43: other(5) }; ! 44: ! 45: CallError: ERROR [problem: CallProblem] = 1; ! 46: ArgumentError: ERROR[problem: ArgumentProblem, which: WhichArgument] = 2; ! 47: AuthenticationError: ERROR[problem:Authentication.Problem] = 6; ! 48: WrongServer: ERROR [hint: ObjectName] = 5; ! 49: ! 50: RetrieveAddresses: PROCEDURE ! 51: RETURNS [addresses: NetworkAddressList] ! 52: REPORTS [CallError] = 0; ! 53: ! 54: LookupObject: PROCEDURE [name: ObjectNamePattern, agent: Authenticator] ! 55: RETURNS [distinguishedObject: ObjectName] ! 56: REPORTS [ArgumentError, AuthenticationError, CallError, WrongServer] ! 57: = 4; ! 58: ! 59: ListDomainsServed: PROCEDURE [list: BulkData.Sink, agent: Authenticator] ! 60: REPORTS [ArgumentError, AuthenticationError, CallError ] = 7; ! 61: END.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.