Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Dec 2008 14:49:54 +0000 (UTC)
From:      Doug Rabson <dfr@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r185860 - head/sys/nfsserver
Message-ID:  <200812101449.mBAEntQs033107@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dfr
Date: Wed Dec 10 14:49:54 2008
New Revision: 185860
URL: http://svn.freebsd.org/changeset/base/185860

Log:
  We need to pass a structure with enough space for an NFSv2 filehandle to
  nfs_srvmtofh_xx otherwise bad things happen when an NFSv2 client tries to
  make a request.

Modified:
  head/sys/nfsserver/nfs_fha.c

Modified: head/sys/nfsserver/nfs_fha.c
==============================================================================
--- head/sys/nfsserver/nfs_fha.c	Wed Dec 10 14:06:08 2008	(r185859)
+++ head/sys/nfsserver/nfs_fha.c	Wed Dec 10 14:49:54 2008	(r185860)
@@ -162,7 +162,7 @@ static void
 fha_extract_info(struct svc_req *req, struct fha_info *i)
 {
 	struct mbuf *md = req->rq_args;
-	fhandle_t fh;
+	nfsfh_t fh;
 	caddr_t dpos = mtod(md, caddr_t);
 	static u_int64_t random_fh = 0;
 	int error;
@@ -205,11 +205,11 @@ fha_extract_info(struct svc_req *req, st
 		goto out;
 	
 	/* Grab the filehandle. */
-	error = nfsm_srvmtofh_xx(&fh, v3, &md, &dpos);
+	error = nfsm_srvmtofh_xx(&fh.fh_generic, v3, &md, &dpos);
 	if (error)
 		goto out;
 
-	i->fh = *(const u_int64_t *)(fh.fh_fid.fid_data);
+	i->fh = *(const u_int64_t *)(fh.fh_generic.fh_fid.fid_data);
 
 	/* Content ourselves with zero offset for all but reads. */
 	if (procnum != NFSPROC_READ)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200812101449.mBAEntQs033107>