DIRECTORY CrRPC, CHNameP2V0, AuthenticationP14V2, BulkDataP0V1, CHOpsP2V3; CHOpsP2V3ClientImpl: CEDAR PROGRAM IMPORTS CrRPC EXPORTS CHOpsP2V3 ~ { OPEN CHOpsP2V3; ArgumentError: PUBLIC ArgumentErrorType ~ CODE; PropertyError: PUBLIC PropertyErrorType ~ CODE; CallError: PUBLIC CallErrorType ~ CODE; UpdateError: PUBLIC UpdateErrorType ~ CODE; AuthenticationError: PUBLIC AuthenticationErrorType ~ CODE; WrongServer: PUBLIC WrongServerType ~ CODE; GetError: CrRPC.GetErrorProc ~ { SELECT errNum FROM 2 => { problem: ArgumentProblem; which: WhichArgument; problem ¬ VAL[CrRPC.GetCard16[s]]; which ¬ VAL[CrRPC.GetCard16[s]]; ERROR ArgumentError[problem, which] }; 3 => { problem: PropertyProblem; distinguishedObject: CHNameP2V0.ThreePartName; problem ¬ VAL[CrRPC.GetCard16[s]]; distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; ERROR PropertyError[problem, distinguishedObject] }; 1 => { problem: CallProblem; problem ¬ VAL[CrRPC.GetCard16[s]]; ERROR CallError[problem] }; 4 => { problem: UpdateProblem; found: BOOLEAN; which: WhichArgument; distinguishedObject: CHNameP2V0.ThreePartName; problem ¬ VAL[CrRPC.GetCard16[s]]; found ¬ CrRPC.GetBool[s]; which ¬ VAL[CrRPC.GetCard16[s]]; distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; ERROR UpdateError[problem, found, which, distinguishedObject] }; 6 => { problem: AuthenticationP14V2.Problem; problem ¬ VAL[CrRPC.GetCard16[s]]; ERROR AuthenticationError[problem] }; 5 => { hint: CHNameP2V0.ThreePartName; hint.organization ¬ CrRPC.GetRope[s]; hint.domain ¬ CrRPC.GetRope[s]; hint.object ¬ CrRPC.GetRope[s]; ERROR WrongServer[hint] }; ENDCASE => { ERROR CrRPC.Error[h, remoteError, "Unexpected Remote Error"]; }; }; CreateAlias: PUBLIC CreateAliasType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, alias.organization]; CrRPC.PutRope[s, alias.domain]; CrRPC.PutRope[s, alias.object]; CrRPC.PutRope[s, sameAs.organization]; CrRPC.PutRope[s, sameAs.domain]; CrRPC.PutRope[s, sameAs.object]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~10 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; DeleteProperty: PUBLIC DeletePropertyType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard32[s, property]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~14 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; CreateObject: PUBLIC CreateObjectType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { NULL }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~2 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; ListAliases: PUBLIC ListAliasesType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, pattern.organization]; CrRPC.PutRope[s, pattern.domain]; CrRPC.PutRope[s, pattern.object]; CrRPC.PutBulkDataSink[h, s, list]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { NULL }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~8 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; ListDomainsServed: PUBLIC ListDomainsServedType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutBulkDataSink[h, s, domains]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { NULL }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~1 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; DeleteSelf: PUBLIC DeleteSelfType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard32[s, property]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~22 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; RetrieveItem: PUBLIC RetrieveItemType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, pattern.organization]; CrRPC.PutRope[s, pattern.domain]; CrRPC.PutRope[s, pattern.object]; CrRPC.PutCard32[s, property]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; value ¬ UProc2[h, s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~16 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; ListOrganizations: PUBLIC ListOrganizationsType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, pattern]; CrRPC.PutBulkDataSink[h, s, list]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { NULL }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~5 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; ListProperties: PUBLIC ListPropertiesType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, pattern.organization]; CrRPC.PutRope[s, pattern.domain]; CrRPC.PutRope[s, pattern.object]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; properties ¬ UProc3[h, s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~15 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; ListDomains: PUBLIC ListDomainsType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, pattern.organization]; CrRPC.PutRope[s, pattern.domain]; CrRPC.PutBulkDataSink[h, s, list]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { NULL }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~6 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; RetrieveMembers: PUBLIC RetrieveMembersType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, pattern.organization]; CrRPC.PutRope[s, pattern.domain]; CrRPC.PutRope[s, pattern.object]; CrRPC.PutCard32[s, property]; CrRPC.PutBulkDataSink[h, s, membership]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~18 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; IsMember: PUBLIC IsMemberType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, memberOf.organization]; CrRPC.PutRope[s, memberOf.domain]; CrRPC.PutRope[s, memberOf.object]; CrRPC.PutCard32[s, property]; CrRPC.PutCard32[s, secondaryProperty]; CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { isMember ¬ CrRPC.GetBool[s]; distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~23 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; ListAliasesOf: PUBLIC ListAliasesOfType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, pattern.organization]; CrRPC.PutRope[s, pattern.domain]; CrRPC.PutRope[s, pattern.object]; CrRPC.PutBulkDataSink[h, s, list]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~9 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; ChangeItem: PUBLIC ChangeItemType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard32[s, property]; MProc4[h, s, newValue]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~17 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; DeleteMember: PUBLIC DeleteMemberType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard32[s, property]; CrRPC.PutRope[s, member.organization]; CrRPC.PutRope[s, member.domain]; CrRPC.PutRope[s, member.object]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~21 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; AddSelf: PUBLIC AddSelfType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard32[s, property]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~20 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; RetrieveAddresses: PUBLIC RetrieveAddressesType ~ { PutArgs: CrRPC.PutArgsProc ~ { }; GetResults: CrRPC.GetResultsProc ~ { address ¬ UProc5[h, s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~0 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; DeleteAlias: PUBLIC DeleteAliasType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, alias.organization]; CrRPC.PutRope[s, alias.domain]; CrRPC.PutRope[s, alias.object]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~11 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; LookupObject: PUBLIC LookupObjectType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~4 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; AddGroupProperty: PUBLIC AddGroupPropertyType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard32[s, newProperty]; CrRPC.PutBulkDataSource[h, s, membership]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~12 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; DeleteObject: PUBLIC DeleteObjectType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { NULL }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~3 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; AddItemProperty: PUBLIC AddItemPropertyType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard32[s, newProperty]; MProc4[h, s, value]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~13 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; AddMember: PUBLIC AddMemberType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, name.organization]; CrRPC.PutRope[s, name.domain]; CrRPC.PutRope[s, name.object]; CrRPC.PutCard32[s, property]; CrRPC.PutRope[s, newMember.organization]; CrRPC.PutRope[s, newMember.domain]; CrRPC.PutRope[s, newMember.object]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { distinguishedObject.organization ¬ CrRPC.GetRope[s]; distinguishedObject.domain ¬ CrRPC.GetRope[s]; distinguishedObject.object ¬ CrRPC.GetRope[s]; }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~19 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; ListObjects: PUBLIC ListObjectsType ~ { PutArgs: CrRPC.PutArgsProc ~ { CrRPC.PutRope[s, pattern.organization]; CrRPC.PutRope[s, pattern.domain]; CrRPC.PutRope[s, pattern.object]; CrRPC.PutCard32[s, property]; CrRPC.PutBulkDataSink[h, s, list]; CrRPC.PutCard16[s, ORD[agent.credentials.type]]; MProc1[h, s, agent.credentials.value]; MProc1[h, s, agent.verifier]; }; GetResults: CrRPC.GetResultsProc ~ { NULL }; CrRPC.Call[h~h, remotePgm~2, remotePgmVersion~3, remoteProc~7 , putArgs~PutArgs, getResults~GetResults, getError~GetError]; }; MProc1: PROC [h: CrRPC.Handle, s: CrRPC.STREAM, val: AuthenticationP14V2.SeqWords] ~ { CrRPC.PutCard16[s, val.length]; FOR i6: CARDINAL IN [0..val.length) DO CrRPC.PutCard16[s, val.body[i6]]; ENDLOOP; }; MProc4: PROC [h: CrRPC.Handle, s: CrRPC.STREAM, val: Item] ~ { CrRPC.PutCard16[s, val.length]; FOR i7: CARDINAL IN [0..val.length) DO CrRPC.PutCard16[s, val.body[i7]]; ENDLOOP; }; UProc2: PROC [h: CrRPC.Handle, s: CrRPC.STREAM] RETURNS [res: Item] ~ { { length9: CARDINAL ~ CrRPC.GetCard16[s]; res ¬ NEW[ItemObject[length9]]; FOR i8: CARDINAL IN [0..length9) DO res.body[i8] ¬ CrRPC.GetCard16[s]; ENDLOOP; }; }; UProc3: PROC [h: CrRPC.Handle, s: CrRPC.STREAM] RETURNS [res: Properties] ~ { { length11: CARDINAL ~ CrRPC.GetCard16[s]; res ¬ NEW[PropertiesObject[length11]]; FOR i10: CARDINAL IN [0..length11) DO res.body[i10] ¬ CrRPC.GetCard32[s]; ENDLOOP; }; }; UProc5: PROC [h: CrRPC.Handle, s: CrRPC.STREAM] RETURNS [res: NetworkAddressList] ~ { { length13: CARDINAL ~ CrRPC.GetCard16[s]; res ¬ NEW[NetworkAddressListObject[length13]]; FOR i12: CARDINAL IN [0..length13) DO FOR i14: CARDINAL IN [0..6) DO res.body[i12][i14] ¬ CrRPC.GetCard16[s]; ENDLOOP; ENDLOOP; }; }; }...  CHOpsP2V3ClientImpl.Mesa Copyright Σ 1989, 1991 by Xerox Corporation. All rights reserved. Generated by Willie-sue.pa at February 13, 1989 2:49:37 pm PST using Sirocco [2.0] of February 10, 1989 6:26:26 pm PST Errors GetErrorProc Remote Procedures -- Unmarshal / Marshal Procs -- Κ †•NewlineDelimiter –(cedarcode) style™šœ™Jšœ Οeœ6™BJšœ>™>Jšœ7™7Icode˜—šΟk ˜ K˜K˜ K˜K˜ K˜ —K˜šΟnœžœž˜"Kšžœ˜ Kšžœ˜Kšžœ ˜—K˜šœ™K˜K˜KšŸ œžœžœ˜/K˜KšŸ œžœžœ˜/K˜KšŸ œžœžœ˜'K˜KšŸ œžœžœ˜+K˜KšŸœžœžœ˜;K˜KšŸ œžœžœ˜+K˜—šœ ™ K˜šŸœ˜ šžœž˜˜K˜K˜Kšœ žœ˜"Kšœžœ˜ Kšžœ˜#K˜—˜K˜K˜.Kšœ žœ˜"K˜4—K˜.˜.Kšžœ,˜1K˜—˜K˜Kšœ žœ˜"Kšžœ˜K˜—˜K˜Kšœžœ˜K˜K˜.Kšœ žœ˜"K˜Kšœžœ˜ K˜4—K˜.˜.Kšžœ8˜=K˜—˜K˜%Kšœ žœ˜"Kšžœ˜"K˜—˜K˜K˜%—K˜˜Kšžœ˜K˜—šžœ˜ Kšžœ8˜=K˜——K˜—K˜—šœ™K˜šŸ œžœ˜'šŸœ˜K˜%K˜K˜K˜&K˜ K˜ Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸœžœ˜-šŸœ˜K˜$K˜K˜K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸ œžœ˜)šŸœ˜K˜$K˜K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$Kšž˜K˜K˜—K˜{K˜—K˜šŸ œžœ˜'šŸœ˜K˜'K˜!K˜!K˜"Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$Kšž˜K˜K˜—K˜{K˜—K˜šŸœžœ˜3šŸœ˜K˜%Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$Kšž˜K˜K˜—K˜{K˜—K˜šŸ œžœ˜%šŸœ˜K˜$K˜K˜K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸ œžœ˜)šŸœ˜K˜'K˜!K˜!K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜K˜—K˜|K˜—K˜šŸœžœ˜3šŸœ˜K˜K˜"Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$Kšž˜K˜K˜—K˜{K˜—K˜šŸœžœ˜-šŸœ˜K˜'K˜!K˜!Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜K˜—K˜|K˜—K˜šŸ œžœ˜'šŸœ˜K˜'K˜!K˜"Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$Kšž˜K˜K˜—K˜{K˜—K˜šŸœžœ˜/šŸœ˜K˜'K˜!K˜!K˜K˜(Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸœžœ˜!šŸœ˜K˜(K˜"K˜"K˜K˜&K˜$K˜K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸ œžœ˜+šŸœ˜K˜'K˜!K˜!K˜"Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜{K˜—K˜šŸ œžœ˜%šŸœ˜K˜$K˜K˜K˜K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸ œžœ˜)šŸœ˜K˜$K˜K˜K˜K˜&K˜ K˜ Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸœžœ˜šŸœ˜K˜$K˜K˜K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸœžœ˜3šŸœ˜K˜—šŸ œ˜$K˜K˜K˜—K˜{K˜—K˜šŸ œžœ˜'šŸœ˜K˜%K˜K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸ œžœ˜)šŸœ˜K˜$K˜K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜{K˜—K˜šŸœžœ˜1šŸœ˜K˜$K˜K˜K˜ K˜*Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸ œžœ˜)šŸœ˜K˜$K˜K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$Kšž˜K˜K˜—K˜{K˜—K˜šŸœžœ˜/šŸœ˜K˜$K˜K˜K˜ K˜Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸ œžœ˜#šŸœ˜K˜$K˜K˜K˜K˜)K˜#K˜#Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$K˜4K˜.K˜.K˜K˜—K˜|K˜—K˜šŸ œžœ˜'šŸœ˜K˜'K˜!K˜!K˜K˜"Kšœžœ˜0K˜&K˜K˜—šŸ œ˜$Kšž˜K˜K˜—K˜{K˜—K˜—šœ™K˜K˜šŸœžœžœ(˜VK˜šžœžœžœž˜&K˜!Kšžœ˜—K˜—K˜šŸœžœžœ˜>K˜šžœžœžœž˜&K˜!Kšžœ˜—K˜—K˜šŸœžœžœžœ˜G˜Kšœ žœ˜'Kšœžœ˜ šžœžœžœž˜#K˜"Kšžœ˜—K˜—K˜—K˜šŸœžœžœžœ˜M˜Kšœ žœ˜(Kšœžœ˜'šžœžœžœž˜%K˜#Kšžœ˜—K˜—K˜—K˜šŸœžœžœžœ˜U˜Kšœ žœ˜(Kšœžœ%˜/šžœžœžœž˜%šžœžœžœž˜K˜(Kšžœ˜—Kšžœ˜—K˜—K˜—K˜—K˜K˜—…—DbR