Date: Sat, 4 Nov 1995 19:21:06 +0100 (MET) From: J Wunsch <j@uriah.heep.sax.de> To: freebsd-hackers@freebsd.org (FreeBSD hackers) Subject: RPC oddities Message-ID: <199511041821.TAA02527@uriah.heep.sax.de>
next in thread | raw e-mail | index | archive | help
<rpc/rpc.h> includes definitions for several constants that are inside enum's. To the contrary, <nfs/rpcv2.h> #define's just the very same constants. The result is that the compiler sees something like: enum auth_stat { AUTH_OK=0, 1 =1, AUTH_REJECTEDCRED=2, 3 =3, AUTH_REJECTEDVERF=4, 5 =5, AUTH_INVALIDRESP=6, AUTH_FAILED=7 }; or even worse: enum clnt_stat { RPC_SUCCESS=0, RPC_CANTENCODEARGS=1, RPC_CANTDECODERES=2, RPC_CANTSEND=3, RPC_CANTRECV=4, RPC_TIMEDOUT=5, RPC_VERSMISMATCH=6, RPC_AUTHERROR=7, 1 =8, RPC_PROGVERSMISMATCH=9, 3 =10, ... }; What would be the correct way to resolve the conflicts? The number of prerequisites to succesfully #include <nfs/nfs.h> is ridiculous. nfsd.c uses for example: #include <sys/param.h> #include <sys/syslog.h> #include <sys/ioctl.h> #include <sys/stat.h> #include <sys/wait.h> #include <sys/uio.h> #include <sys/ucred.h> #include <sys/mount.h> #include <sys/socket.h> #include <sys/socketvar.h> #include <rpc/rpc.h> #include <rpc/pmap_clnt.h> #include <rpc/pmap_prot.h> #ifdef ISO #include <netiso/iso.h> #endif #include <nfs/rpcv2.h> #include <nfs/nfsproto.h> #include <nfs/nfs.h> I have yet to find which of them could be omitted; but it seems that at least half a dozen of headers will remain in the list. :-( -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199511041821.TAA02527>