diff options
author | 2013-04-17 03:33:06 +0000 | |
---|---|---|
committer | 2013-04-17 03:33:06 +0000 | |
commit | 3917bbad35fcc1de247c0e2bf09bd6c882a9c867 (patch) | |
tree | 110baee09536f6bc61c8d6f4e0ea93271e76928f | |
parent | use CLOCK_MONOTONIC, and repair future time_t overflow (diff) | |
download | wireguard-openbsd-3917bbad35fcc1de247c0e2bf09bd6c882a9c867.tar.xz wireguard-openbsd-3917bbad35fcc1de247c0e2bf09bd6c882a9c867.zip |
ext2fs has a 32-bit time fields. store a u_int32_t of the real time_t --
that should tide us over for a long time.
ok guenther
-rw-r--r-- | sbin/fsck_ext2fs/inode.c | 6 | ||||
-rw-r--r-- | sbin/newfs_ext2fs/mke2fs.c | 24 |
2 files changed, 15 insertions, 15 deletions
diff --git a/sbin/fsck_ext2fs/inode.c b/sbin/fsck_ext2fs/inode.c index 713f0fd7407..e3235b8dbd1 100644 --- a/sbin/fsck_ext2fs/inode.c +++ b/sbin/fsck_ext2fs/inode.c @@ -1,4 +1,4 @@ -/* $OpenBSD: inode.c,v 1.17 2011/03/12 17:50:47 deraadt Exp $ */ +/* $OpenBSD: inode.c,v 1.18 2013/04/17 03:33:06 deraadt Exp $ */ /* $NetBSD: inode.c,v 1.8 2000/01/28 16:01:46 bouyer Exp $ */ /* @@ -573,7 +573,7 @@ pinode(ino_t ino) if (preen) printf("%s: ", cdevname()); printf("SIZE=%llu ", (long long)inosize(dp)); - t = fs2h32(dp->e2di_mtime); + t = (time_t)fs2h32(dp->e2di_mtime); p = ctime(&t); printf("MTIME=%12.12s %4.4s ", &p[4], &p[20]); } @@ -645,7 +645,7 @@ allocino(ino_t request, int type) } dp->e2di_mode = h2fs16(type); (void)time(&t); - dp->e2di_atime = h2fs32(t); + dp->e2di_atime = (u_int32_t)h2fs32(t); dp->e2di_mtime = dp->e2di_ctime = dp->e2di_atime; dp->e2di_dtime = 0; inossize(dp, sblock.e2fs_bsize); diff --git a/sbin/newfs_ext2fs/mke2fs.c b/sbin/newfs_ext2fs/mke2fs.c index c066e244d7c..c3d8f5a81f3 100644 --- a/sbin/newfs_ext2fs/mke2fs.c +++ b/sbin/newfs_ext2fs/mke2fs.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mke2fs.c,v 1.4 2012/12/04 02:27:00 deraadt Exp $ */ +/* $OpenBSD: mke2fs.c,v 1.5 2013/04/17 03:33:13 deraadt Exp $ */ /* $NetBSD: mke2fs.c,v 1.13 2009/10/19 18:41:08 bouyer Exp $ */ /*- @@ -347,7 +347,7 @@ mke2fs(const char *fsys, int fi, int fo) sblock.e2fs.e2fs_ipg = inodes_per_cg; sblock.e2fs.e2fs_mtime = 0; - sblock.e2fs.e2fs_wtime = tv.tv_sec; + sblock.e2fs.e2fs_wtime = (u_int32_t)tv.tv_sec; sblock.e2fs.e2fs_mnt_count = 0; /* XXX: should add some entropy to avoid checking all fs at once? */ sblock.e2fs.e2fs_max_mnt_count = EXT2_DEF_MAX_MNT_COUNT; @@ -356,7 +356,7 @@ mke2fs(const char *fsys, int fi, int fo) sblock.e2fs.e2fs_state = E2FS_ISCLEAN; sblock.e2fs.e2fs_beh = E2FS_BEH_DEFAULT; sblock.e2fs.e2fs_minrev = 0; - sblock.e2fs.e2fs_lastfsck = tv.tv_sec; + sblock.e2fs.e2fs_lastfsck = (u_int32_t)tv.tv_sec; sblock.e2fs.e2fs_fsckintv = EXT2_DEF_FSCKINTV; /* @@ -925,9 +925,9 @@ fsinit(const struct timeval *tv) node.e2di_mode = EXT2_IFDIR | EXT2_LOSTFOUNDUMASK; node.e2di_uid_low = geteuid(); node.e2di_size = sblock.e2fs_bsize * nblks_lostfound; - node.e2di_atime = tv->tv_sec; - node.e2di_ctime = tv->tv_sec; - node.e2di_mtime = tv->tv_sec; + node.e2di_atime = (u_int32_t)tv->tv_sec; + node.e2di_ctime = (u_int32_t)tv->tv_sec; + node.e2di_mtime = (u_int32_t)tv->tv_sec; node.e2di_gid_low = getegid(); node.e2di_nlink = PREDEFDIR; /* e2di_nblock is a number of disk blocks, not ext2fs blocks */ @@ -971,9 +971,9 @@ fsinit(const struct timeval *tv) node.e2di_mode = EXT2_IFDIR | EXT2_UMASK; node.e2di_uid_low = geteuid(); node.e2di_size = makedir(root_dir, nitems(root_dir)); - node.e2di_atime = tv->tv_sec; - node.e2di_ctime = tv->tv_sec; - node.e2di_mtime = tv->tv_sec; + node.e2di_atime = (u_int32_t)tv->tv_sec; + node.e2di_ctime = (u_int32_t)tv->tv_sec; + node.e2di_mtime = (u_int32_t)tv->tv_sec; node.e2di_gid_low = getegid(); node.e2di_nlink = PREDEFROOTDIR; /* e2di_nblock is a number of disk block, not ext2fs block */ @@ -1064,9 +1064,9 @@ init_resizeino(const struct timeval *tv) */ node.e2di_mode = EXT2_IFREG | EXT2_RESIZEINOUMASK; node.e2di_uid_low = geteuid(); - node.e2di_atime = tv->tv_sec; - node.e2di_ctime = tv->tv_sec; - node.e2di_mtime = tv->tv_sec; + node.e2di_atime = (u_int32_t)tv->tv_sec; + node.e2di_ctime = (u_int32_t)tv->tv_sec; + node.e2di_mtime = (u_int32_t)tv->tv_sec; node.e2di_gid_low = getegid(); node.e2di_nlink = 1; |