diff options
author | dfr <dfr@FreeBSD.org> | 1997-06-03 17:22:47 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 1997-06-03 17:22:47 +0000 |
commit | 99eae7b7b1d0dfe2463f468406efaea5f7258df8 (patch) | |
tree | ac6a203d84dfbdf93133d0f9bb62f4da2d4b8804 /sys/nfsserver | |
parent | a70561d506231c0740e4c09afc2f53bc95a62073 (diff) | |
download | FreeBSD-src-99eae7b7b1d0dfe2463f468406efaea5f7258df8.zip FreeBSD-src-99eae7b7b1d0dfe2463f468406efaea5f7258df8.tar.gz |
Various fixes from NetBSD:
Use u_int for rpc procedure numbers.
Some fixes to NQNFS.
A rare NULL pointer dereference.
Ignore NFSMNT_NOCONN for TCP mounts.
Obtained from: NetBSD
Diffstat (limited to 'sys/nfsserver')
-rw-r--r-- | sys/nfsserver/nfs.h | 6 | ||||
-rw-r--r-- | sys/nfsserver/nfs_srvsock.c | 5 | ||||
-rw-r--r-- | sys/nfsserver/nfsrvcache.h | 4 | ||||
-rw-r--r-- | sys/nfsserver/nfsrvstats.h | 6 |
4 files changed, 11 insertions, 10 deletions
diff --git a/sys/nfsserver/nfs.h b/sys/nfsserver/nfs.h index 2dc19c1..3521dae 100644 --- a/sys/nfsserver/nfs.h +++ b/sys/nfsserver/nfs.h @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)nfs.h 8.4 (Berkeley) 5/1/95 - * $Id: nfs.h,v 1.26 1997/05/13 17:25:44 dfr Exp $ + * $Id: nfs.h,v 1.27 1997/05/19 14:36:46 dfr Exp $ */ #ifndef _NFS_NFS_H_ @@ -333,7 +333,7 @@ struct nfsreq { int r_retry; /* max retransmission count */ int r_rexmit; /* current retrans count */ int r_timer; /* tick counter on reply */ - int r_procnum; /* NFS procedure number */ + u_int32_t r_procnum; /* NFS procedure number */ int r_rtt; /* RTT for rpc */ struct proc *r_procp; /* Proc that did I/O system call */ }; @@ -483,7 +483,7 @@ struct nfsrv_descript { struct mbuf *nd_nam; /* and socket addr */ struct mbuf *nd_nam2; /* return socket addr */ caddr_t nd_dpos; /* Current dissect pos */ - int nd_procnum; /* RPC # */ + u_int32_t nd_procnum; /* RPC # */ int nd_stable; /* storage type */ int nd_flag; /* nd_flag */ int nd_len; /* Length of this write */ diff --git a/sys/nfsserver/nfs_srvsock.c b/sys/nfsserver/nfs_srvsock.c index c3e88e5..0ea7f69 100644 --- a/sys/nfsserver/nfs_srvsock.c +++ b/sys/nfsserver/nfs_srvsock.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)nfs_socket.c 8.5 (Berkeley) 3/30/95 - * $Id: nfs_socket.c,v 1.24 1997/04/27 20:01:21 wollman Exp $ + * $Id: nfs_socket.c,v 1.25 1997/05/13 17:25:44 dfr Exp $ */ /* @@ -1264,7 +1264,8 @@ nfs_rephead(siz, nd, slp, err, cache, frev, mrq, mbp, bposp) *tl = 0; } } - *mrq = mreq; + if (mrq != NULL) + *mrq = mreq; *mbp = mb; *bposp = bpos; if (err != 0 && err != NFSERR_RETVOID) diff --git a/sys/nfsserver/nfsrvcache.h b/sys/nfsserver/nfsrvcache.h index 7ed7e44..e7cf829 100644 --- a/sys/nfsserver/nfsrvcache.h +++ b/sys/nfsserver/nfsrvcache.h @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)nfsrvcache.h 8.3 (Berkeley) 3/30/95 - * $Id$ + * $Id: nfsrvcache.h,v 1.8 1997/02/22 09:42:51 peter Exp $ */ @@ -56,7 +56,7 @@ struct nfsrvcache { int ru_repstat; /* Reply status */ } rc_un; union nethostaddr rc_haddr; /* Host address */ - short rc_proc; /* rpc proc number */ + u_int32_t rc_proc; /* rpc proc number */ u_char rc_state; /* Current state of request */ u_char rc_flag; /* Flag bits */ }; diff --git a/sys/nfsserver/nfsrvstats.h b/sys/nfsserver/nfsrvstats.h index 2dc19c1..3521dae 100644 --- a/sys/nfsserver/nfsrvstats.h +++ b/sys/nfsserver/nfsrvstats.h @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)nfs.h 8.4 (Berkeley) 5/1/95 - * $Id: nfs.h,v 1.26 1997/05/13 17:25:44 dfr Exp $ + * $Id: nfs.h,v 1.27 1997/05/19 14:36:46 dfr Exp $ */ #ifndef _NFS_NFS_H_ @@ -333,7 +333,7 @@ struct nfsreq { int r_retry; /* max retransmission count */ int r_rexmit; /* current retrans count */ int r_timer; /* tick counter on reply */ - int r_procnum; /* NFS procedure number */ + u_int32_t r_procnum; /* NFS procedure number */ int r_rtt; /* RTT for rpc */ struct proc *r_procp; /* Proc that did I/O system call */ }; @@ -483,7 +483,7 @@ struct nfsrv_descript { struct mbuf *nd_nam; /* and socket addr */ struct mbuf *nd_nam2; /* return socket addr */ caddr_t nd_dpos; /* Current dissect pos */ - int nd_procnum; /* RPC # */ + u_int32_t nd_procnum; /* RPC # */ int nd_stable; /* storage type */ int nd_flag; /* nd_flag */ int nd_len; /* Length of this write */ |