-- Copyright (C) 1985 by Xerox Corporation. All rights reserved. -- Stub file was translated on May 2, 1985 4:15:48 pm PDT by Lupine of March 15, 1985 2:49:13 pm PST -- Source interface ComputeServerUser came from file ComputeServerUser.bcd, which was created on May 2, 1985 4:15:36 pm PDT with version stamp 1#325#17375234616 from source of November 26, 1984 3:36:43 pm PST. -- The RPC stub modules for ComputeServerUser are: -- ComputeServerUserRpcControl.mesa; -- ComputeServerUserRpcClientImpl.mesa; -- ComputeServerUserRpcBinderImpl.mesa; -- ComputeServerUserRpcServerImpl.mesa. -- The parameters for this translation are: -- Target language = Cedar -- Default parameter passing = VALUE -- Deallocate server heap arguments = TRUE -- Inline RpcServerImpl dispatcher stubs = TRUE -- Declare signals = TRUE -- Warn about short POINTER ("MDS") allocations = TRUE -- Maximum number of dynamic heap NEWs = 50, MDS NEWs = 50 -- Acceptable parameter protocols = VersionRange[1..1]. DIRECTORY PupDefs, Rope, UserCredentials, ComputeServerUser, RPC USING [defaultInterfaceName, EncryptionKey, InterfaceName, Principal, standardZones, VersionRange, Zones], RPCLupine USING [ImportHandle]; ComputeServerUserRpcControl: DEFINITIONS SHARES ComputeServerUser = BEGIN OPEN ComputeServerUser, RpcPublic: RPC, RpcPrivate: RPCLupine; -- Public RPC types and constants. InterfaceName: TYPE = RpcPublic.InterfaceName; VersionRange: TYPE = RpcPublic.VersionRange; Principal: TYPE = RpcPublic.Principal; EncryptionKey: TYPE = RpcPublic.EncryptionKey; Zones: TYPE = RpcPublic.Zones; defaultInterfaceName: InterfaceName = RpcPublic.defaultInterfaceName; standardZones: Zones = RpcPublic.standardZones; -- Standard remote binding routines. ImportInterface: SAFE PROCEDURE [ interface: InterfaceRecord, interfaceName: InterfaceName _ defaultInterfaceName, parameterStorage: Zones _ standardZones ]; ExportInterface: SAFE PROCEDURE [ interfaceName: InterfaceName _ defaultInterfaceName, user: Principal, password: EncryptionKey, parameterStorage: Zones _ standardZones ]; UnexportInterface: SAFE PROCEDURE; -- Dynamic instantiation and binding. ImportNewInterface: SAFE PROCEDURE [ interfaceName: InterfaceName _ defaultInterfaceName, parameterStorage: Zones _ standardZones ] RETURNS [interfaceRecord: InterfaceRecord]; -- NewInterfaceRecord is necessary for Cedar clients who want to -- manufacture a private interface instance, because -- RpcBindingImpl has finalization on type InterfaceRecord. NewInterfaceRecord: SAFE PROCEDURE RETURNS [interfaceRecord: InterfaceRecord]; InterfaceRecord: TYPE = REF InterfaceRecordObject; InterfaceRecordObject: TYPE = RECORD [ myInterface: RpcPrivate.ImportHandle _ NIL, paramZones: RpcPublic.Zones _ RpcPublic.standardZones, clientStubrBoolean: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: BOOLEAN] RETURNS [value: BOOLEAN], clientStubrNumber: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: INT] RETURNS [value: INT], clientStubrToken: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: Rope.ROPE] RETURNS [value: Rope.ROPE], clientStubrListOfTokens: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: LIST OF Rope.ROPE] RETURNS [value: LIST OF Rope.ROPE], clientStubrLine: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: Rope.ROPE] RETURNS [value: Rope.ROPE], clientStubrGetProfileName: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress] RETURNS [Rope.ROPE], clientStubrGetState: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress] RETURNS [UserCredentials.State], clientStubrGet: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress] RETURNS [name: Rope.ROPE, password: Rope.ROPE], bound: BOOL _ FALSE]; rBoolean: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: BOOLEAN] RETURNS [value: BOOLEAN] = CHECKED INLINE { RETURN interface.clientStubrBoolean[interface, listenerPupAddress, key, default]}; rNumber: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: INT] RETURNS [value: INT] = CHECKED INLINE { RETURN interface.clientStubrNumber[interface, listenerPupAddress, key, default]}; rToken: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: Rope.ROPE] RETURNS [value: Rope.ROPE] = CHECKED INLINE { RETURN interface.clientStubrToken[interface, listenerPupAddress, key, default]}; rListOfTokens: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: LIST OF Rope.ROPE] RETURNS [value: LIST OF Rope.ROPE] = CHECKED INLINE { RETURN interface.clientStubrListOfTokens[interface, listenerPupAddress, key, default]}; rLine: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress, key: Rope.ROPE, default: Rope.ROPE] RETURNS [value: Rope.ROPE] = CHECKED INLINE { RETURN interface.clientStubrLine[interface, listenerPupAddress, key, default]}; rGetProfileName: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress] RETURNS [Rope.ROPE] = CHECKED INLINE { RETURN interface.clientStubrGetProfileName[interface, listenerPupAddress]}; rGetState: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress] RETURNS [UserCredentials.State] = CHECKED INLINE { RETURN interface.clientStubrGetState[interface, listenerPupAddress]}; rGet: SAFE PROCEDURE [interface: InterfaceRecord, listenerPupAddress: PupDefs.PupAddress] RETURNS [name: Rope.ROPE, password: Rope.ROPE] = CHECKED INLINE { RETURN interface.clientStubrGet[interface, listenerPupAddress]}; -- Definitions for the stubs. LupineProtocolVersion: PUBLIC VersionRange = [first: 1, last: 1]; InterMdsCallsOnly: PUBLIC BOOLEAN = FALSE; ProcedureIndex: PRIVATE TYPE = MACHINE DEPENDENT { LupineUnusedIndex (0), LupineLastIndex (3), rBoolean (4), rNumber (5), rToken (6), rListOfTokens (7), rLine (8), rGetProfileName (9), rGetState (10), rGet (11)}; SignalIndex: PRIVATE TYPE = MACHINE DEPENDENT { LupineUnusedIndex (0), LupineLastIndex (3)}; END. -- ComputeServerUserRpcControl.