-< Release of V2.2 >- -------------------------------------------------------------------------------- The release notes for the Version 2.2 (Released June 88) follow. Release 2.2 of CERN/DD's Remote Procedure Call system ----------------------------------------------------- These release notes accompany a VMS distribution of the RPC system from CERN/DD Online Group. This release covers the RPC compiler (RPCC) and the run time support system for VAX/VMS. The run time support systems for other environments, and the utilities provided for managing distributed systems, are available separately. Installation ------------ To install this software, DO NOT USE VMS/INSTAL. Just make a suitable directory ([XXX.RPC] below) and unwrap the files with BACKUP: $ CREATE/DIR [XXX.RPC] $ BACKUP VXCRNA::DISK$D1:[RPC.DISTRIBUTION_KIT]RPC_VMS022.A/SAV [XXX.RPC] The file SETUP.COM should be run at login time. It may be run from the system or the user login command file: $ @[XXX.RPC]SETUP Version 2.2 is a back-compatible upgrade over version 2.1. A summary of the principal changes follows: details are in the user manual. (Differences between version 2.1 and earlier versions are listed in the VAX/NOTES scheme VXCERN::RPC, topic 2). Differences of Version 2.2 from Version 2.1 ------------------------------------------- Package number lookup You can specify a remote package by name instead of number, even when directly calling RPC_OPEN. The syntax uses an "@" sign as for a package number: REM_BOOT@026086000777_5077.ETHERNET If you are using logical names (environment variables, symbols, etc) to perform a logical to physical translation of the name, then you can specify the package name as the logical name, and as the translated name give the network address without any package name or number. In this case, the RPC system will use the logical name as the package name. To gain advantage of this, the client and server side must both use libraries V2.2 or later, or "No such package" will be returned. Ethernet first call bug fix A problem existed that the first call of a session could be executed twice when using the ethernet protocol. This is avoided if the package number is specified by name rather than number. (See above.) Added ethernet devices The RPC system will try the logical name RPC_ETHERNET_DEVICE for the name of the ethernet adapter. If that is not defined, it will try _XEA0:, _XQA0:, _ETA0:, then _ETA0: If you want to use a differnt unit number, or have a different driver name, define the logical name as required. Compiler modifications o The stubs in C now need no modification to compile on OS9. o The /CPCTURBO option is added for the IBM PC Large Buffer Version An alternative library, rpclarge.olb, is supplied which will allow parameters to total up to 8kB in each direction. Link to the logical name RPC$LARGE instead of RPC$LIB. Finding the DECNET caller address The routine RPC_CALLER_ADDRESS described in the manual used to give a rather unhelpful string when called by a multiclient decnet server. It used to return the client class (*XXX.DECNET, for example) which gave no clue as to the client identity. It will now return a string which would be the RPC address of the client if he was also running a server asynchronously, assuming that the DECNET object name were the same as the process name: nnnn::"0=pppp".DECNET where nnnn is the node name and pppp is the process name. DECNET bug fixes When opening and closing connections to many different servers, the rpc system would lose event flags, and run out after about 24 open/close pairs. This has been fixed. Occasionally, a multi-client server running over DECNET would run happily for a while, and then exit with the status "No priviledge for attempted operation", when a client exited immediately after using the server. This has been fixed. [Note 3.12]