svn commit: r338900 - projects/nfsv42/sys/fs/nfsserver

Rick Macklem rmacklem at FreeBSD.org
Mon Sep 24 00:53:58 UTC 2018


Author: rmacklem
Date: Mon Sep 24 00:53:57 2018
New Revision: 338900
URL: https://svnweb.freebsd.org/changeset/base/338900

Log:
  Add a sanity check for v_type == VREG to the NFSv4.2 IO Advise operation.

Modified:
  projects/nfsv42/sys/fs/nfsserver/nfs_nfsdserv.c

Modified: projects/nfsv42/sys/fs/nfsserver/nfs_nfsdserv.c
==============================================================================
--- projects/nfsv42/sys/fs/nfsserver/nfs_nfsdserv.c	Sun Sep 23 19:00:06 2018	(r338899)
+++ projects/nfsv42/sys/fs/nfsserver/nfs_nfsdserv.c	Mon Sep 24 00:53:57 2018	(r338900)
@@ -4829,6 +4829,13 @@ nfsrvd_ioadvise(struct nfsrv_descript *nd, __unused in
 	}
 	if (len < 0)
 		len = 0;
+	if (vp->v_type != VREG) {
+		if (vp->v_type == VDIR)
+			nd->nd_repstat = NFSERR_ISDIR;
+		else
+			nd->nd_repstat = NFSERR_WRONGTYPE;
+		goto nfsmout;
+	}
 
 	/*
 	 * For now, we can only handle WILLNEED and DONTNEED and don't use


More information about the svn-src-projects mailing list