diff options
author | dfr <dfr@FreeBSD.org> | 1995-06-27 11:07:30 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 1995-06-27 11:07:30 +0000 |
commit | 666343f7f055c064375d48bb9a608730d7145beb (patch) | |
tree | 372bad41f8c547f40d0826ed596c53dc772ab986 /sys/nfs/xdr_subs.h | |
parent | 6da3ef32238f37b3b45cf709205fcff60bcbda7f (diff) | |
download | FreeBSD-src-666343f7f055c064375d48bb9a608730d7145beb.zip FreeBSD-src-666343f7f055c064375d48bb9a608730d7145beb.tar.gz |
Changes to support version 3 of the NFS protocol.
The version 2 support has been tested (client+server) against FreeBSD-2.0,
IRIX 5.3 and FreeBSD-current (using a loopback mount). The version 2 support
is stable AFAIK.
The version 3 support has been tested with a loopback mount and minimally
against an IRIX 5.3 server. It needs more testing and may have problems.
I have patched amd to support the new variable length filehandles although
it will still only use version 2 of the protocol.
Before booting a kernel with these changes, nfs clients will need to at least
build and install /usr/sbin/mount_nfs. Servers will need to build and
install /usr/sbin/mountd.
NFS diskless support is untested.
Obtained from: Rick Macklem <rick@snowhite.cis.uoguelph.ca>
Diffstat (limited to 'sys/nfs/xdr_subs.h')
-rw-r--r-- | sys/nfs/xdr_subs.h | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/sys/nfs/xdr_subs.h b/sys/nfs/xdr_subs.h index ac00385..e8c3636 100644 --- a/sys/nfs/xdr_subs.h +++ b/sys/nfs/xdr_subs.h @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)xdr_subs.h 8.1 (Berkeley) 6/10/93 - * $Id: xdr_subs.h,v 1.3 1994/08/21 06:50:16 paul Exp $ + * $Id: xdr_subs.h,v 1.4 1995/01/10 13:11:42 davidg Exp $ */ #ifndef _NFS_XDR_SUBS_H_ @@ -54,28 +54,28 @@ #define fxdr_unsigned(t, v) ((t)ntohl((long)(v))) #define txdr_unsigned(v) (htonl((long)(v))) -#define fxdr_nfstime(f, t) { \ - (t)->ts_sec = ntohl(((struct nfsv2_time *)(f))->nfs_sec); \ - if (((struct nfsv2_time *)(f))->nfs_usec != 0xffffffff) \ - (t)->ts_nsec = 1000 * ntohl(((struct nfsv2_time *)(f))->nfs_usec); \ +#define fxdr_nfsv2time(f, t) { \ + (t)->ts_sec = ntohl(((struct nfsv2_time *)(f))->nfsv2_sec); \ + if (((struct nfsv2_time *)(f))->nfsv2_usec != 0xffffffff) \ + (t)->ts_nsec = 1000 * ntohl(((struct nfsv2_time *)(f))->nfsv2_usec); \ else \ - (t)->ts_nsec = -1; \ + (t)->ts_nsec = 0; \ } -#define txdr_nfstime(f, t) { \ - ((struct nfsv2_time *)(t))->nfs_sec = htonl((f)->ts_sec); \ +#define txdr_nfsv2time(f, t) { \ + ((struct nfsv2_time *)(t))->nfsv2_sec = htonl((f)->ts_sec); \ if ((f)->ts_nsec != -1) \ - ((struct nfsv2_time *)(t))->nfs_usec = htonl((f)->ts_nsec / 1000); \ + ((struct nfsv2_time *)(t))->nfsv2_usec = htonl((f)->ts_nsec / 1000); \ else \ - ((struct nfsv2_time *)(t))->nfs_usec = 0xffffffff; \ + ((struct nfsv2_time *)(t))->nfsv2_usec = 0xffffffff; \ } -#define fxdr_nqtime(f, t) { \ - (t)->ts_sec = ntohl(((struct nqnfs_time *)(f))->nq_sec); \ - (t)->ts_nsec = ntohl(((struct nqnfs_time *)(f))->nq_nsec); \ +#define fxdr_nfsv3time(f, t) { \ + (t)->ts_sec = ntohl(((struct nfsv3_time *)(f))->nfsv3_sec); \ + (t)->ts_nsec = ntohl(((struct nfsv3_time *)(f))->nfsv3_nsec); \ } -#define txdr_nqtime(f, t) { \ - ((struct nqnfs_time *)(t))->nq_sec = htonl((f)->ts_sec); \ - ((struct nqnfs_time *)(t))->nq_nsec = htonl((f)->ts_nsec); \ +#define txdr_nfsv3time(f, t) { \ + ((struct nfsv3_time *)(t))->nfsv3_sec = htonl((f)->ts_sec); \ + ((struct nfsv3_time *)(t))->nfsv3_nsec = htonl((f)->ts_nsec); \ } #define fxdr_hyper(f, t) { \ |