XDR implementation report 3/17/97
in support of advancing XDR to DS
------------------------------------------------------
Name of Implementation: Solaris 2.5.1's RPC/XDR
Organization/Vendor: SunSoft, Inc.
Implemented features: all
Platforms: Solaris 2 SPARC, Solaris 2 x86
Lineage of code: Based on the first RPC/XDR implemenation
(circa) 1984 for Sun's SunOS 2.0/mc68k platform
by Bob Lyon. Much of the code is still unchanged.
Sun has developed XDR packages for flat memory spaces
and scatter gather buffering systems like socket mbufs and
Streams mblks
Point of Contact: Alex Chiu (hacker@Eng.Sun.Com)
Claimed Interoperability: The code is tested annually
at Connectathon, in which dozen's of implementors
test interoperability of NFS, NIS, NIS+, and
RPC/XDR. NFS, NIS, NIS+ all use RPC/XDR. Connectathon
has been an annual affair since 1985 (one year in the
90s was skipped). Implementors at Connectathon have
included: Sun, Pyramid, Gould Computer, MIPS, SGI,Sun's
PC-NFS group, IBM, Digital Equipment, HP, FTP Software.
Report By: Mike Eisler
------------------------------------------------------
Name of Implementation: 4.3 BSD's XDR code in NFS
Organization/Vendor: Rick Macklem
Implemented features: for XDR all. For RPC, probably
all but float & double
Platforms: 4.4BSD on x86
Lineage of code: This appears to be a from scratch
implementation. It inlines the use of XDR rather
than producing xdr code derived from RPC language
compiler.
Point of Contact: Rick Macklem (rick@snowhite.cis.uoguelph.ca)
Claimed Interoperability: I've personally tested it
against a Solaris 2.5 NFS/TCP implementation to
make sure
Report By: Mike Eisler
------------------------------------------------------
Name of Implementation: ILU Sun RPC support
Organization/Vendor: Xerox/PARC
Implemented features: encoding/decoding of Integer (signed
and unsigned, regular and Hyper), Floating-point
(regular, double-precision, and quadruple-precision),
Array (fixed and variable length), Structure,
Boolean, Opaque (fixed and variable), String,
Discriminated Union, Optional-data. We do not
implement the XDR language, only the encoding
forms (we use OMG IDL or ILU ISL for the structure
definitions), and so we trivially do not implement
`void', `constant', and `typedef', as they are
language-only forms.
Platforms: Byte addressable ANSI C systems.
Lineage of code: Original, from RFC 1832.
Point of Contact: ilu-core@parc.xerox.com (code available
via ftp://ftp.parc.xerox.com/pub/ilu/ilu.html).
Claimed Interoperability: Verified interoperability (on the
subset of functionality implemented) on various
platforms with Sun's standard implementation.
Report By: Bill Janssen