DIRECTORY BasicTime USING [ GMT ], GVBasics USING [Password], Pup USING [ Address ], RefID USING [ ID ], Rope USING [ ROPE ], RPC USING [ InterfaceName, VersionRange ], ThParty, ThPartySunRPC, Thrush, ThrushSunRPC, VoiceRopeServer, VoiceRopeServerSunRPC ; ThrushSunRPCConvert: CEDAR DEFINITIONS ~ { SrToAccessList: PROC [srAccessList: ThPartySunRPC.AccessList] RETURNS [accessList: ThParty.AccessList]; AccessListToSr: PROC [accessList: ThParty.AccessList] RETURNS [srAccessList: ThPartySunRPC.AccessList]; SrToActionReport: PROC [srActionReport: ThrushSunRPC.ActionReport] RETURNS [actionReport: Thrush.ActionReport]; ActionReportToSr: PROC [actionReport: Thrush.ActionReport] RETURNS [srActionReport: ThrushSunRPC.ActionReport]; SrToAddress: PROC [srAddress: ThrushSunRPC.Address] RETURNS [address: Thrush.NetAddress]; AddressToSr: PROC [address: Pup.Address] RETURNS [srAddress: ThrushSunRPC.Address]; SrToATOM: PROC [srAtom: Rope.ROPE] RETURNS [atom: ATOM]; ATOMToSr: PROC [atom: ATOM] RETURNS [srAtom: Rope.ROPE]; SrToAttributes: PROC [srAttributes: ThPartySunRPC.Attributes] RETURNS [attributes: ThParty.Attributes]; AttributesToSr: PROC [attributes: ThParty.Attributes] RETURNS [srAttributes: ThPartySunRPC.Attributes]; SrToCandidateList: PROC [srCandidates: ThPartySunRPC.CandidateList] RETURNS [candidates: LIST OF ThParty.ConversationInfo]; CandidateListToSr: PROC [candidates: LIST OF ThParty.ConversationInfo] RETURNS [srCandidates: ThPartySunRPC.CandidateList]; SrToConvEvent: PROC [srConvEvent: ThrushSunRPC.ConvEvent] RETURNS [convEvent: Thrush.ConvEvent]; ConvEventToSr: PROC [convEvent: Thrush.ConvEvent] RETURNS [srConvEvent: ThrushSunRPC.ConvEvent]; SrToConversationInfo: PROC [srCInfo: ThPartySunRPC.ConversationInfo] RETURNS [cInfo: ThParty.ConversationInfo]; ConversationInfoToSr: PROC [cInfo: ThParty.ConversationInfo] RETURNS [srCInfo: ThPartySunRPC.ConversationInfo]; SrToConversationInfoRec: PROC [srCInfo: ThPartySunRPC.ConversationInfo] RETURNS [cInfoRec: ThParty.ConversationInfoRec]; ConversationInfoRecToSr: PROC [cInfoRec: ThParty.ConversationInfoRec] RETURNS [srCInfo: ThPartySunRPC.ConversationInfo]; SrToConvID: PROC [srConvID: ThrushSunRPC.ConversationID] RETURNS [convID: Thrush.ConversationID] ~ INLINE { convID _ LOOPHOLE[srConvID]; -- eventually a BasicTime.GMT }; ConvIDToSr: PROC [convID: Thrush.ConversationID] RETURNS [srConvID: ThrushSunRPC.ConversationID] ~ INLINE { srConvID _ LOOPHOLE[convID]; }; SrToConvType: PROC [srType: ThPartySunRPC.ConvType] RETURNS [type: ThParty.ConvType] ~ INLINE { type _ VAL[ORD[srType]]; }; ConvTypeToSr: PROC [type: ThParty.ConvType] RETURNS [srType: ThPartySunRPC.ConvType] ~ INLINE { srType _ VAL[ORD[type]]; }; SrToCredentials: PROC [srCredentials: ThrushSunRPC.Credentials] RETURNS [credentials: Thrush.Credentials]; CredentialsToSr: PROC [credentials: Thrush.Credentials] RETURNS [srCredentials: ThrushSunRPC.Credentials]; SrToEncryptionKey: PROC [srKey: ThrushSunRPC.EncryptionKey] RETURNS [key: Thrush.EncryptionKey] ~ INLINE { key _ LOOPHOLE[srKey]; -- Could be dangerous! }; EncryptionKeyToSr: PROC [key: Thrush.EncryptionKey] RETURNS [srKey: ThrushSunRPC.EncryptionKey] ~ INLINE { srKey _ LOOPHOLE[key]; -- Could be dangerous! }; SrToEnergySequence: PROC [srEnergySequence: VoiceRopeServerSunRPC.EnergySequence] RETURNS [energySequence: VoiceRopeServer.EnergySequence]; EnergySequenceToSr: PROC [energySequence: VoiceRopeServer.EnergySequence] RETURNS [srEnergySequence: VoiceRopeServerSunRPC.EnergySequence]; SrToGMT: PROC [srTime: ThrushSunRPC.GMT] RETURNS [time: BasicTime.GMT] ~ INLINE { time _ LOOPHOLE[srTime]; }; GMTToSr: PROC [time: BasicTime.GMT] RETURNS [srTime: ThrushSunRPC.GMT] ~ INLINE { srTime _ LOOPHOLE[time]; }; SrToInterfaceName: PROC [srInterface: ThrushSunRPC.InterfaceName] RETURNS [interface: RPC.InterfaceName]; InterfaceNameToSr: PROC [interface: RPC.InterfaceName] RETURNS [srInterface: ThrushSunRPC.InterfaceName]; SrToInterfaceSpec: PROC [srInterfaceSpec: ThrushSunRPC.InterfaceSpec] RETURNS [interfaceSpec: Thrush.InterfaceSpec]; InterfaceSpecToSr: PROC [interfaceSpec: Thrush.InterfaceSpec] RETURNS [srInterfaceSpec: ThrushSunRPC.InterfaceSpec]; SrToIntervalSpecs: PROC [srIntervalSpecs: VoiceRopeServerSunRPC.IntervalSpecs] RETURNS [intervalSpecs: VoiceRopeServer.IntervalSpecs]; IntervalSpecsToSr: PROC [intervalSpecs: VoiceRopeServer.IntervalSpecs] RETURNS [srIntervalSpecs: VoiceRopeServerSunRPC.IntervalSpecs]; SrToKeyTable: PROC [srKeyTable: ThrushSunRPC.KeyTable] RETURNS [keyTable: Thrush.KeyTable]; KeyTableToSr: PROC [keyTable: Thrush.KeyTable] RETURNS [srKeyTable: ThrushSunRPC.KeyTable]; SrToPartyInfo: PROC [srPInfo: ThPartySunRPC.PartyInfo] RETURNS [pInfo: ThParty.PartyInfo]; PartyInfoToSr: PROC [pInfo: ThParty.PartyInfo] RETURNS [srPInfo: ThPartySunRPC.PartyInfo]; SrToPartyInfoSpec: PROC [srPartySpec: ThPartySunRPC.PartyInfoSpec] RETURNS [partySpec: ThParty.PartyInfoSpec]; PartyInfoSpecToSr: PROC [partySpec: ThParty.PartyInfoSpec] RETURNS [srPartySpec: ThPartySunRPC.PartyInfoSpec]; SrToPassword: PROC [srPassword: ThrushSunRPC.Password] RETURNS [password: GVBasics.Password] ~ INLINE { password _ LOOPHOLE[srPassword]; -- verify Password format if needed }; PasswordToSr: PROC [password: GVBasics.Password] RETURNS [srPassword: ThrushSunRPC.Password] ~ INLINE { srPassword _ LOOPHOLE[password]; -- verify Password format if needed }; SrToROPE: PROC [srRope: Rope.ROPE] RETURNS [rope: Rope.ROPE]; ROPEToSr: PROC [rope: Rope.ROPE] RETURNS [srRope: Rope.ROPE]; SrToSmartsProperties: PROC [srProperties: ThPartySunRPC.SmartsProperties] RETURNS [properties: ThParty.SmartsProperties]; SmartsPropertiesToSr: PROC [properties: ThParty.SmartsProperties] RETURNS [srProperties: ThPartySunRPC.SmartsProperties]; SrToState: PROC [srState: ThrushSunRPC.StateInConv] RETURNS [state: Thrush.StateInConv] ~ INLINE { state _ VAL[ORD[srState]]; }; StateToSr: PROC [state: Thrush.StateInConv] RETURNS [srState: ThrushSunRPC.StateInConv] ~ INLINE { srState _ VAL[ORD[state]]; }; SrToUsers: PROC [srUsers: VoiceRopeServerSunRPC.Users] RETURNS [users: VoiceRopeServer.Users]; UsersToSr: PROC [users: VoiceRopeServer.Users] RETURNS [srUsers: VoiceRopeServerSunRPC.Users]; SrToVersionRange: PROC [srVersion: ThrushSunRPC.VersionRange] RETURNS [version: RPC.VersionRange]; VersionRangeToSr: PROC [version: RPC.VersionRange] RETURNS [srVersion: ThrushSunRPC.VersionRange]; SrToVisitorList: PROC [srVisitorList: ThPartySunRPC.VisitorList] RETURNS [visitorList: LIST OF Thrush.PartyID]; VisitorListToSr: PROC [visitorList: LIST OF Thrush.PartyID] RETURNS [srVisitorList: ThPartySunRPC.VisitorList]; SrToVoiceBlock: PROC [srVoiceBlock: VoiceRopeServerSunRPC.VoiceBlock] RETURNS [voiceBlock: VoiceRopeServer.VoiceBlock]; VoiceBlockToSr: PROC [voiceBlock: VoiceRopeServer.VoiceBlock] RETURNS [srVoiceBlock: VoiceRopeServerSunRPC.VoiceBlock]; SrToVoiceRope: PROC [srVoiceRope: VoiceRopeServerSunRPC.VoiceRope] RETURNS [voiceRope: VoiceRopeServer.VoiceRope]; VoiceRopeToSr: PROC [voiceRope: VoiceRopeServer.VoiceRope] RETURNS [srVoiceRope: VoiceRopeServerSunRPC.VoiceRope]; }. δThrushSunRPCConvert.mesa Copyright Σ 1990 by Xerox Corporation. All rights reserved. Created By: Ken Pier, May 9, 1990 5:33:40 pm PDT This module contains procedures for translating SunRPC data types to Thrush data types and Thrush data types to SunRPC data types. Pier, May 18, 1990 10:47:37 am PDT Polle Zellweger (PTZ) October 29, 1990 3:28:06 pm PST Polle Zellweger (PTZ) May 14, 1990 2:54:47 pm PDT changes to: SrToState, StateToSr Polle Zellweger (PTZ) May 24, 1990 9:30:54 pm PDT new: SrToConversationInfoRec, ConversationInfoRecToSr changes to: SrToConversationInfo, ConversationInfoToSr Polle Zellweger (PTZ) October 29, 1990 12:05:26 pm PST Allow detection of NIL ropes across a SunRPC connection. new: ROPEToSr, SrToROPE Κ^˜™J™