SCCS-vsn: sbin/fsck/dir.c 3.8
SCCS-vsn: sbin/fsck/inode.c 3.7
SCCS-vsn: sbin/fsck/pass1.c 3.5
SCCS-vsn: sbin/fsck/pass3.c 3.4
-static char version[] = "@(#)dir.c 3.7 (Berkeley) %G%";
+static char version[] = "@(#)dir.c 3.8 (Berkeley) %G%";
#endif
#include <sys/param.h>
#endif
#include <sys/param.h>
curino.id_func = parentino->id_func;
curino.id_parent = parentino->id_number;
curino.id_number = inumber;
curino.id_func = parentino->id_func;
curino.id_parent = parentino->id_number;
curino.id_number = inumber;
- curino.id_filesize = dp->di_size;
(void)ckinode(dp, &curino);
}
(void)ckinode(dp, &curino);
}
idesc.id_type = DATA;
idesc.id_func = findino;
idesc.id_number = ROOTINO;
idesc.id_type = DATA;
idesc.id_func = findino;
idesc.id_number = ROOTINO;
- idesc.id_filesize = dp->di_size;
(void)ckinode(dp, &idesc);
if (idesc.id_parent >= ROOTINO && idesc.id_parent < imax) {
lfdir = idesc.id_parent;
(void)ckinode(dp, &idesc);
if (idesc.id_parent >= ROOTINO && idesc.id_parent < imax) {
lfdir = idesc.id_parent;
if (preen || reply("CREATE")) {
idesc.id_func = mkentry;
idesc.id_parent = allocdir(ROOTINO, 0);
if (preen || reply("CREATE")) {
idesc.id_func = mkentry;
idesc.id_parent = allocdir(ROOTINO, 0);
- idesc.id_filesize = dp->di_size;
if (idesc.id_parent != 0) {
if (makeentry(dp, &idesc) != 0) {
lfdir = idesc.id_parent;
if (idesc.id_parent != 0) {
if (makeentry(dp, &idesc) != 0) {
lfdir = idesc.id_parent;
idesc.id_type = DATA;
idesc.id_func = mkentry;
idesc.id_number = lfdir;
idesc.id_type = DATA;
idesc.id_func = mkentry;
idesc.id_number = lfdir;
- idesc.id_filesize = dp->di_size;
idesc.id_parent = orphan; /* this is the inode to enter */
idesc.id_fix = DONTKNOW;
idesc.id_name = tempname;
idesc.id_parent = orphan; /* this is the inode to enter */
idesc.id_fix = DONTKNOW;
idesc.id_name = tempname;
idesc.id_type = DATA;
idesc.id_func = chgino;
idesc.id_number = orphan;
idesc.id_type = DATA;
idesc.id_func = chgino;
idesc.id_number = orphan;
- idesc.id_filesize = dp->di_size;
idesc.id_fix = DONTKNOW;
idesc.id_name = "..";
idesc.id_parent = lfdir; /* new value for ".." */
idesc.id_fix = DONTKNOW;
idesc.id_name = "..";
idesc.id_parent = lfdir; /* new value for ".." */
return (1);
if (expanddir(dp) == 0)
return (0);
return (1);
if (expanddir(dp) == 0)
return (0);
- idesc->id_filesize = dp->di_size;
return (ckinode(dp, idesc) & ALTERED);
}
return (ckinode(dp, idesc) & ALTERED);
}
-static char version[] = "@(#)inode.c 3.6 (Berkeley) %G%";
+static char version[] = "@(#)inode.c 3.7 (Berkeley) %G%";
#endif
#include <sys/param.h>
#endif
#include <sys/param.h>
dino = *dp;
idesc->id_fix = DONTKNOW;
idesc->id_entryno = 0;
dino = *dp;
idesc->id_fix = DONTKNOW;
idesc->id_entryno = 0;
+ idesc->id_filesize = dp->di_size;
ndb = howmany(dino.di_size, sblock.fs_bsize);
for (ap = &dino.di_db[0]; ap < &dino.di_db[NDADDR]; ap++) {
if (--ndb == 0 && (offset = blkoff(&sblock, dino.di_size)) != 0)
ndb = howmany(dino.di_size, sblock.fs_bsize);
for (ap = &dino.di_db[0]; ap < &dino.di_db[NDADDR]; ap++) {
if (--ndb == 0 && (offset = blkoff(&sblock, dino.di_size)) != 0)
-static char version[] = "@(#)pass1.c 3.4 (Berkeley) %G%";
+static char version[] = "@(#)pass1.c 3.5 (Berkeley) %G%";
#endif
#include <sys/param.h>
#endif
#include <sys/param.h>
statemap[inumber] = DIRCT(dp) ? DSTATE : FSTATE;
badblk = dupblk = 0; maxblk = 0;
idesc.id_number = inumber;
statemap[inumber] = DIRCT(dp) ? DSTATE : FSTATE;
badblk = dupblk = 0; maxblk = 0;
idesc.id_number = inumber;
(void)ckinode(dp, &idesc);
(void)ckinode(dp, &idesc);
- idesc.id_filesize *= btodb(sblock.fs_fsize);
- if (dp->di_blocks != idesc.id_filesize) {
+ idesc.id_entryno *= btodb(sblock.fs_fsize);
+ if (dp->di_blocks != idesc.id_entryno) {
pwarn("INCORRECT BLOCK COUNT I=%u (%ld should be %ld)",
pwarn("INCORRECT BLOCK COUNT I=%u (%ld should be %ld)",
- inumber, dp->di_blocks, idesc.id_filesize);
+ inumber, dp->di_blocks, idesc.id_entryno);
if (preen)
printf(" (CORRECTED)\n");
else if (reply("CORRECT") == 0)
continue;
if (preen)
printf(" (CORRECTED)\n");
else if (reply("CORRECT") == 0)
continue;
- dp->di_blocks = idesc.id_filesize;
+ dp->di_blocks = idesc.id_entryno;
+ /*
+ * count the number of blocks found in id_entryno
+ */
+ idesc->id_entryno++;
-static char version[] = "@(#)pass3.c 3.3 (Berkeley) %G%";
+static char version[] = "@(#)pass3.c 3.4 (Berkeley) %G%";
#endif
#include <sys/param.h>
#endif
#include <sys/param.h>
break;
dp = ginode(orphan);
idesc.id_parent = 0;
break;
dp = ginode(orphan);
idesc.id_parent = 0;
- idesc.id_filesize = dp->di_size;
idesc.id_number = orphan;
(void)ckinode(dp, &idesc);
if (idesc.id_parent == 0)
idesc.id_number = orphan;
(void)ckinode(dp, &idesc);
if (idesc.id_parent == 0)