From: Guy Harris <email@example.com> Subject: The "component of NFS" that Sun are giving away To: firstname.lastname@example.org Date: Wed, 2 Feb 2000 15:54:31 -0800 (PST) The Sun announcement says The key component of NFS that Sun is releasing to the open source community today is known as Transport Independent Remote Procedure Call protocol, or TI-RPC. TI-RPC is one of the foundations of NFS, and a key component of the security advancements in version 4. TI-RPC is an implementation of an API for making ONC (Open Network Computing) RPC calls; "ONC RPC" is the name Sun eventually gave their RPC mechanism, atop which NFS, NIS, NIS+, etc. are built. The original RPC API, from pre-5.x SunOS, was somewhat UDP-and-TCP-oriented. As part of the AT&T/Sun deal to make System V Release 4, the API had to be changed to support arbitrary transport protocols; that's the TI-RPC API. For several years, Sun have made source to a SunOS 4.0-vintage version of the pre-TI-RPC RPC code, as well as to various versions of TI-RPC (the latest is probably Solaris 2.3-vintage), available in ftp://playground.sun.com/pub/rpc/ The version there has what license it has in a DISCLAIMER file: /* * Sun RPC is a product of Sun Microsystems, Inc. and is provided for * unrestricted use provided that this legend is included on all tape * media and as a part of the software program in whole or part. Users * may copy or modify Sun RPC without charge, but are not authorized * to license or distribute it to anyone else except as part of a product or * program developed by the user. * * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. * * Sun RPC is provided with no support and without any obligation on the * part of Sun Microsystems, Inc. to assist in its use, correction, * modification or enhancement. * * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC * OR ANY PART THEREOF. * * In no event will Sun Microsystems, Inc. be liable for any lost revenue * or profits or other special, indirect and consequential damages, even if * Sun has been advised of the possibility of such damages. * * Sun Microsystems, Inc. * 2550 Garcia Avenue * Mountain View, California 94043 */ At least the BSDs, and perhaps GNU libc (if it includes ONC RPC code - which it has to, in order to support, say, NIS), use one of those implementations as the basis for their ONC RPC implementation. Sun's TI-RPC code is built atop AT&T's TLI interface for networking, rather than a sockets interface (although one of the TI-RPC implementations on "playground.sun.com" *might* have been backported to a sockets interface). Some work may be necessary to make this work with free UNIXes, unless something such as Linux STREAMS is used *and* Linux STREAMS supports TLI access to protocols including TCP and UDP.