--- a/files/build-with-libtirpc.patch +++ a/files/build-with-libtirpc.patch @@ -0,0 +1,32 @@ +diff --git a/Makefile.linux b/Makefile.linux +index 0779af2..c5d6f4f 100644 +--- a/Makefile.linux ++++ b/Makefile.linux +@@ -40,9 +40,9 @@ HDRS= pcnfsd.h common.h + + LINTFLAGS= -hbax + # uncomment as appropriate for debugging +-CFLAGS = -O2 -fexpensive-optimizations -pipe -DOSVER_BSD386 $(RPM_OPT_FLAGS) ++CFLAGS = -O2 -fexpensive-optimizations -pipe -DOSVER_BSD386 -I/usr/include/tirpc $(RPM_OPT_FLAGS) + #CFLAGS = -g -DDEBUG -DOSVER_BSD386 +-LIBS = #-lrpc ++LIBS = -ltirpc + LIBCRYPT = -lcrypt + LFLAGS = + +diff --git a/pcnfsd_svc.c b/pcnfsd_svc.c +index 3c98fb5..041c95e 100644 +--- a/pcnfsd_svc.c ++++ b/pcnfsd_svc.c +@@ -441,9 +441,9 @@ getcallername() + struct sockaddr_in actual; + struct hostent *hp; + static struct in_addr prev; +- static char cname[128]; ++ static char cname[128]; + +- actual = *svc_getcaller(caller); ++ actual = *((struct sockaddr_in*)svc_getcaller(caller)); + + if (memcmp((char *)&actual.sin_addr, (char *)&prev, + sizeof(struct in_addr)) == 0)