On Fri, 2020-03-20 at 00:09 +0100, Florian Weimer wrote:
- Ben Hutchings:
On Mon, 2020-03-16 at 16:02 +0100, Arnd Bergmann wrote:
On Mon, Mar 16, 2020 at 3:47 PM Rich Felker dalias@libc.org wrote:
libtirpc is the replacement. I wasn't aware if uses libc-provided rpc headers (presumably only if they exist, since folks are using it fine on musl) but even if so I think the types will automatically update when time_t changes. Of course that leaves the libtirpc ABI dependent on which time_t is used.
Ok, makes sense. I suppose it just provides a header with the same name then.
- nfs-utils build-depends on libtirpc-dev, and isn't using the glibc
SunRPC headers except for <rpc/netdb.h>. libtirpc's <rpc/rpcent.h> specifically avoids declaring things that are also declared in glibc's <rpc/netdb.h>.
ntirpc is a different port of the SunRPC code, used by nfs-ganesha.
nis and nfswatch really are using the glibc SunRPC headers.
Which part of NIS? There's a new upstream for libnsl https://github.com/thkukuk/libnsl and the NSS module https://github.com/thkukuk/libnss_nis;. (There is a nisplus module as well.)
This is Debian's "nis" source package, which is a bundle of yp-tools, ypserv, and ypbind-mt from the same upstream author. It's unmaintained and has lots of bug reports in Debian.
All these use libtirpc and support IPv6 in addition to IPv4. As far as I know, it is possible to build a full NIS stack without relying on any of the legacy glibc code.
(I don't know about nfswatch.)
The upstream for that is https://sourceforge.net/projects/nfswatch/. The current Fedora package is patched to use libtirpc.
Ben.