summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_vnops.c
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2008-09-20 19:43:22 +0000
committerkib <kib@FreeBSD.org>2008-09-20 19:43:22 +0000
commitc6232cabbebca4c41ec2707ec6848c87507d2929 (patch)
treebef81a2ff36c636857733bbde7137ca18c3d22aa /sys/kern/vfs_vnops.c
parent40cfead11a8617c58ccb1dc4a551c238f64c7fe2 (diff)
downloadFreeBSD-src-c6232cabbebca4c41ec2707ec6848c87507d2929.zip
FreeBSD-src-c6232cabbebca4c41ec2707ec6848c87507d2929.tar.gz
Initialize birthtime fields in vn_stat() to prevent stat(2) from
returning uninitialized birthtime. Most file systems don't initialize birthtime properly in their VOP_GETTATTR(). Submitted by: Jaakko Heinonen <jh saunalahti fi> Reviewed by: bde Discussed on: freebsd-fs MFC after: 1 month
Diffstat (limited to 'sys/kern/vfs_vnops.c')
-rw-r--r--sys/kern/vfs_vnops.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c
index c66e49c..2fb2e80 100644
--- a/sys/kern/vfs_vnops.c
+++ b/sys/kern/vfs_vnops.c
@@ -703,6 +703,15 @@ vn_stat(vp, sb, active_cred, file_cred, td)
#endif
vap = &vattr;
+
+ /*
+ * Initialize defaults for new and unusual fields, so that file
+ * systems which don't support these fields don't need to know
+ * about them.
+ */
+ vap->va_birthtime.tv_sec = -1;
+ vap->va_birthtime.tv_nsec = 0;
+
error = VOP_GETATTR(vp, vap, active_cred);
if (error)
return (error);
OpenPOWER on IntegriCloud