From: card@masi.ibp.fr (Remy CARD) Subject: ANNOUNCE: efsprogs a10.1 Date: Tue, 17 Nov 1992 10:02:25 GMT
In article <1992Nov16.170625.28675@jussieu.fr> I wrote :
>
> The new release (alpha 10) of the extended file system programs (efsck
>and mkefs) is available for anonymous ftp from ftp-masi.ibp.fr [132.227.64.26]
>in the directory pub/linux/ALPHA/extfs. It should be available soon on
>tsx-11.mit.edu [18.172.1.2] in the directory pub/linux/ALPHA/extfs.
Well, there is a bug in this release so I have released version alpha
10.1 today. In version alpha 10, when efsck corrected bad directory entries,
it didn't write changes back to the disk so corrections were not recorded 8-(
I strongly apologize for this bug. The new release which corrects this
bug is now available for anonymous ftp from ftp-masi.ibp.fr [132.227.64.26] in
the directory pub/linux/ALPHA/extfs and should be available soon on
tsx-11.mit.edu.
People who have already retrieved version alpha 10 can use the patch
enclosed in this mail to upgrade to alpha 10.1.
I feel sorry for the inconvenience and I hope that this version will
FINALLY be able to correct bad directories.
Remy
---8<------8<------8<------8<---cut here--->8------>8------>8------>8---
*** efsprogs10/efsck.c Sun Nov 15 19:00:10 1992
--- efsprogs/efsck.c Tue Nov 17 10:29:35 1992
***************
*** 1033,1038 ****
--- 1033,1040 ----
* (unsigned long *) (name - 8) = 0;
* (unsigned short *) (name - 4) = rec_len;
* (unsigned short *) (name - 2) = rec_len - 8;
+ write_block(last_block_read, blkbuf);
+ changed = 1;
}
else
printf ("Skipping to next block\n");
***************
*** 1057,1062 ****
--- 1059,1065 ----
/* Zero the inode and write out the dir block */
* (unsigned long *) (name - 8) = 0;
write_block(last_block_read, blkbuf);
+ changed = 1;
}
goto exit;
}
***************
*** 1086,1091 ****
--- 1089,1095 ----
{
* (unsigned long *) (name - 8) = 0;
write_block (last_block_read, blkbuf);
+ changed = 1;
}
}
if (!inode)
***************
*** 1842,1848 ****
int count;
char c;
! printf ("efsck version alpha 10 - 15.11.92\n");
if (argc && *argv)
program_name = *argv;
if (INODE_SIZE * EXT_INODES_PER_BLOCK != BLOCK_SIZE)
--- 1846,1852 ----
int count;
char c;
! printf ("efsck version alpha 10.1 - 17.11.92\n");
if (argc && *argv)
program_name = *argv;
if (INODE_SIZE * EXT_INODES_PER_BLOCK != BLOCK_SIZE)
---8<------8<------8<------8<---cut here--->8------>8------>8------>8---