summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
authorgpalmer <gpalmer@FreeBSD.org>1997-03-07 07:42:41 +0000
committergpalmer <gpalmer@FreeBSD.org>1997-03-07 07:42:41 +0000
commit7293d8e7d62cc304bd645cea07696ceb5cf71e41 (patch)
tree279c606f98bb5517fc436c54597281260fdfc69b /sys/kern
parent62d7ba8abfeb9f9037305ee9b0dcfb89762843ea (diff)
downloadFreeBSD-src-7293d8e7d62cc304bd645cea07696ceb5cf71e41.zip
FreeBSD-src-7293d8e7d62cc304bd645cea07696ceb5cf71e41.tar.gz
Fix (I hope) the NFS hole. This is only compile tested.
Submitted by: (partly) davids@SECNET.COM via BUGTRAQ
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/vfs_vnops.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c
index 77b0430..ed3a4d9 100644
--- a/sys/kern/vfs_vnops.c
+++ b/sys/kern/vfs_vnops.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)vfs_vnops.c 8.2 (Berkeley) 1/21/94
- * $Id$
+ * $Id: vfs_vnops.c,v 1.30 1997/02/22 09:39:36 peter Exp $
*/
#include <sys/param.h>
@@ -411,7 +411,12 @@ vn_stat(vp, sb, p)
sb->st_ctimespec = vap->va_ctime;
sb->st_blksize = vap->va_blocksize;
sb->st_flags = vap->va_flags;
- sb->st_gen = vap->va_gen;
+ if (suser (p->p_cred->pc_ucred, &p->p_acflag)) {
+ sb->st_gen = 0;
+ } else {
+ sb->st_gen = vap->va_gen;
+ }
+
#if (S_BLKSIZE == 512)
/* Optimize this case */
sb->st_blocks = vap->va_bytes >> 9;
OpenPOWER on IntegriCloud