summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
authormckusick <mckusick@FreeBSD.org>2002-06-22 22:01:13 +0000
committermckusick <mckusick@FreeBSD.org>2002-06-22 22:01:13 +0000
commitf09d0a42d99d4e0dba5962289c4fdcb4cdb85975 (patch)
tree8cb225afbd1eba02f5fda95d839c0659da36165c /sys/kern
parentf7dadfce1b27c3260abfeeae1055fb47e2c02a3e (diff)
downloadFreeBSD-src-f09d0a42d99d4e0dba5962289c4fdcb4cdb85975.zip
FreeBSD-src-f09d0a42d99d4e0dba5962289c4fdcb4cdb85975.tar.gz
This patch fixes a size problem with the stat structure for
64-bit architectures that was introduced in the UFS2 code merge two days ago. The stat structure change that caused the problem was the addition of the file create time. Submitted by: Bruce Evans <bde@zeta.org.au> Sponsored by: DARPA & NAI Labs.
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/vfs_extattr.c2
-rw-r--r--sys/kern/vfs_syscalls.c2
-rw-r--r--sys/kern/vfs_vnops.c3
3 files changed, 3 insertions, 4 deletions
diff --git a/sys/kern/vfs_extattr.c b/sys/kern/vfs_extattr.c
index 7637dcd..6d37e9c 100644
--- a/sys/kern/vfs_extattr.c
+++ b/sys/kern/vfs_extattr.c
@@ -2596,6 +2596,7 @@ cvtnstat(sb, nsb)
struct stat *sb;
struct nstat *nsb;
{
+ bzero(nsb, sizeof nsb);
nsb->st_dev = sb->st_dev;
nsb->st_ino = sb->st_ino;
nsb->st_mode = sb->st_mode;
@@ -2612,7 +2613,6 @@ cvtnstat(sb, nsb)
nsb->st_flags = sb->st_flags;
nsb->st_gen = sb->st_gen;
nsb->st_createtimespec = sb->st_createtimespec;
- nsb->st_qspare = sb->st_qspare;
}
#ifndef _SYS_SYSPROTO_H_
diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c
index 7637dcd..6d37e9c 100644
--- a/sys/kern/vfs_syscalls.c
+++ b/sys/kern/vfs_syscalls.c
@@ -2596,6 +2596,7 @@ cvtnstat(sb, nsb)
struct stat *sb;
struct nstat *nsb;
{
+ bzero(nsb, sizeof nsb);
nsb->st_dev = sb->st_dev;
nsb->st_ino = sb->st_ino;
nsb->st_mode = sb->st_mode;
@@ -2612,7 +2613,6 @@ cvtnstat(sb, nsb)
nsb->st_flags = sb->st_flags;
nsb->st_gen = sb->st_gen;
nsb->st_createtimespec = sb->st_createtimespec;
- nsb->st_qspare = sb->st_qspare;
}
#ifndef _SYS_SYSPROTO_H_
diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c
index 8dcf5c3..bba159a7 100644
--- a/sys/kern/vfs_vnops.c
+++ b/sys/kern/vfs_vnops.c
@@ -562,8 +562,7 @@ vn_stat(vp, sb, td)
/*
* Zero the spare stat fields
*/
- sb->st_lspare = 0;
- sb->st_qspare = 0;
+ bzero(sb, sizeof sb);
/*
* Copy from vattr table
OpenPOWER on IntegriCloud