diff options
author | Philip Guenther <guenther@cvs.openbsd.org> | 2014-09-06 04:05:41 +0000 |
---|---|---|
committer | Philip Guenther <guenther@cvs.openbsd.org> | 2014-09-06 04:05:41 +0000 |
commit | 1856cb461815dc29ef425f762867e7d638c94235 (patch) | |
tree | c6b3190a4b8c1d9b89e204808492ad4c89e9e14d /sbin/fsck_ffs/extern.h | |
parent | 97a11c5a525f97b0af66d80badd224a9c6271fd2 (diff) |
inodesc.id_entryno holds a file size, so upgrade it from int to u_int64_t;
this fixes handling of very large files on FFS2.
Correct a copy-n-pasto that rendered useless the check for allocated
fragmented that are marked free in the bitmap.
allocdir() returns an inode number, so return an ino_t.
sizeof()*N should be printed with %zu, while direct and indirect block
numbers should be cast to (long long) use %lld
inodesc.id_entryno fix based on a diff from David Vasek <vasek@fido.cz>
ok krw@ otto@
Diffstat (limited to 'sbin/fsck_ffs/extern.h')
-rw-r--r-- | sbin/fsck_ffs/extern.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sbin/fsck_ffs/extern.h b/sbin/fsck_ffs/extern.h index f03a7aeb77f..ba92e804097 100644 --- a/sbin/fsck_ffs/extern.h +++ b/sbin/fsck_ffs/extern.h @@ -1,4 +1,4 @@ -/* $OpenBSD: extern.h,v 1.12 2013/06/11 16:42:04 deraadt Exp $ */ +/* $OpenBSD: extern.h,v 1.13 2014/09/06 04:05:40 guenther Exp $ */ /* $NetBSD: extern.h,v 1.6 1996/09/27 22:45:12 christos Exp $ */ /* @@ -26,8 +26,8 @@ */ void adjust(struct inodesc *, short); -int allocblk(long); -int allocdir(ino_t, ino_t, int); +daddr_t allocblk(int); +ino_t allocdir(ino_t, ino_t, int); void blkerror(ino_t, char *, daddr_t); int bread(int, char *, daddr_t, long); void bufinit(void); @@ -47,7 +47,7 @@ void fileerror(ino_t, ino_t, char *); int findino(struct inodesc *); int findname(struct inodesc *); void flush(int, struct bufarea *); -void freeblk(daddr_t, long); +void freeblk(daddr_t, int); void freeino(ino_t); void freeinodebuf(void); int ftypeok(union dinode *); |