mb@rex.cs.tulane.edu (Mark Benard) (03/14/90)
I was trying to apply Pyramid's rpcgen (from OSx 4.4) to some simple examples and kept getting all sorts of error messages about syntax; to start with it would not accept a 'const' statement. The same examples compile fine on Suns. I finally compiled rpcgen from the rpc4.0 source distribution and it works fine on Pyramid. Is Pyramid's version broken? Mark -- Mark Benard Department of Computer Science INTERNET & BITNET: mb@cs.tulane.edu Tulane University USENET: rex!mb New Orleans, LA 70118
guy@auspex.auspex.com (Guy Harris) (03/15/90)
>I was trying to apply Pyramid's rpcgen (from OSx 4.4) to some simple examples >and kept getting all sorts of error messages about syntax; to start with it >would not accept a 'const' statement. The same examples compile fine on >Suns. I finally compiled rpcgen from the rpc4.0 source distribution and it >works fine on Pyramid. Is Pyramid's version broken? Perhaps, but it might just be old. "rpcgen" changed between the first SunOS 3.x release in which it appeared, and the SunOS 4.0 release; the NFSSRC3.x and NFSSRC4.0 versions, and the rpc3.x and rpc4.0 versions, may also differ in the same way. I don't remember what the changes were, but one of them may have been the appearance of "const".
glr@otc.otca.oz (Gordon Rowell) (03/20/90)
In article <3038@auspex.auspex.com>, guy@auspex.auspex.com (Guy Harris) writes: > > Perhaps, but it might just be old. "rpcgen" changed between the first > SunOS 3.x release in which it appeared, and the SunOS 4.0 release; the > NFSSRC3.x and NFSSRC4.0 versions, and the rpc3.x and rpc4.0 versions, > may also differ in the same way. I don't remember what the changes > were, but one of them may have been the appearance of "const". It gets even worse under OSx5, to which we have recently upgraded. Most of the RPC calls have been merged into libc.a, but unfortunately not all. The strange thing is that the missing functions are parts of my copies of RPC source files (version 4.0), rather than entire missing files. The following functions are missing: __rpc_dtablesize _bindresvport _clnt_create _clnt_spcreateerror _getrpcport _svc_getreqset _xdr_free _xdr_rmtcall_args _xdr_rmtcallres As it stands, the support is there for writing servers, but writing RPC clients is more difficult the necessary. For example, the function clnt_create() is used in all of the Sun documentation when writing the client side. If you don't use clnt_create() you have to do a lot of mucking about with sockaddrs. xdr_free() should be called when you have finished with a decoded argument or you will get a memory leak. I have made a library containing these functions by selectively compiling parts of the source files. Can anyone explain why the functions are missing? We have Interactive 386ix UNIX on some 386 machines and the above functions are also missing (amongst others). Is it a SYSV idea of RPCs, or is these libraries descended from a very old version of RPCs? Gordon -- Gordon Rowell ACSnet/Internet: glr@otc.otca.oz.au R&D Contractor UUCP: {uunet,mcvax}!otc.otca.oz!glr Network R&D Snail: GPO Box 7000, Sydney 2001, Australia |||| OTC || Phone: +61 2 287 5385 Fax: +61 2 287 4990