mirror of https://github.com/vitalif/e2fsprogs
774 lines
28 KiB
Plaintext
774 lines
28 KiB
Plaintext
Thu Apr 10 13:15:15 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* dblist.c (ext2fs_set_dir_block): New function which sets the
|
|
block of a dblist entry, given the directory inode and
|
|
blockcnt.
|
|
|
|
Sat Apr 5 12:42:42 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* alloc_tables.c (ext2fs_allocate_tables): Allocate the bitmap and
|
|
inode bitmaps at staggered locations across the block
|
|
groups, to avoid concentrating the bitmaps on a small
|
|
number of disks when using striped RAID arrays.
|
|
|
|
* initialize.c (ext2fs_initialize): By default, choose the maximum
|
|
possible number of blocks per group (based on the size of
|
|
the bitmaps in the blocksize).
|
|
|
|
Fri Apr 4 11:28:16 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* initialize.c (ext2fs_initialize): Add support for
|
|
EXT2_COMPAT_SPARSE_SUPER feature.
|
|
|
|
* closefs.c (ext2fs_bg_has_super): New function to determine
|
|
whether or a particular block group should have a
|
|
superblock and block group descriptor. Used for the
|
|
EXT2_COMPAT_SPARSE_SUPER feature is turned on.
|
|
(ext2fs_flush): Check ext2fs_bg_has_super to see whether
|
|
or not the superblock should be written out for the block
|
|
group.
|
|
|
|
* ext2fs.h (EXT2_COMPAT_SPARSE_SUPER): Define compatibility flag
|
|
for sparse duplicate superblocks.
|
|
|
|
* version.c (ext2fs_get_library_version): New function which
|
|
returns the library version.
|
|
|
|
* version.c (ext2fs_parse_version_string): New function which
|
|
parses a version string and returns a version number,
|
|
so application programs can compare version numbers as
|
|
integers.
|
|
|
|
Wed Mar 26 00:43:52 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* icount.c (ext2fs_create_icount): Change function so that it also
|
|
takes a new argument which contains a "hint" icount
|
|
structure. This "hint" icount allows the create function
|
|
to set up the sorted list in advance. This reduces
|
|
significantly the amount of data moving needed to insert
|
|
these inodes into the list later.
|
|
|
|
* icount.c (ext2fs_icount_validate): New function which validates
|
|
that the icount structure's rep invariant.
|
|
|
|
* icount.c (get_icount_el): Completely revamped implementation
|
|
to subsume put_icount_el(). Put_icount_el() used to
|
|
use an O(N) implementation to insert in the middle
|
|
of the icount list. It now uses a O(ln N) to search
|
|
for where the icount should be inserted, and then uses
|
|
a memcpy to move the list down (instead of a for loop).
|
|
|
|
* icount.c (ext2fs_icount_fetch, ext2fs_icount_store,
|
|
ext2fs_icount_increment, ext2fs_icount_decrement): Check
|
|
to see if the inode is within bounds; if it isn't, return
|
|
EINVAL.
|
|
|
|
* bitops.h (ext2fs_test_generic_bitmap): Fix error message given
|
|
when a bad inode number is passed to test_generic_bitmap
|
|
to be EXT2FS_TEST_ERROR instead of the wrong
|
|
EXT2FS_UNMARK_ERROR.
|
|
|
|
Wed Mar 12 13:32:05 1997 Theodore Y. Ts'o <tytso@mit.edu>
|
|
|
|
* Release of E2fsprogs version 1.07
|
|
|
|
Sun Mar 2 16:46:18 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* Makefile.in (ELF_VERSION): Change version to be 2.2
|
|
|
|
Tue Feb 11 14:54:02 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* alloc.c (ext2fs_get_free_blocks): Change routine to use
|
|
ext2fs_fast_test_block_bitmap_range().
|
|
|
|
* bitops.h (ext2fs_fast_test_block_bitmap_range,
|
|
ext2fs_test_block_bitmap_range: New inline functions which
|
|
test to see whether a contiguous range of blocks is
|
|
available.
|
|
|
|
Thu Feb 6 10:00:13 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* badblocks.c (ext2fs_badblocks_list_create): Rename sybmols to use
|
|
use ext2fs_badblocks_* instead of badblocks_*
|
|
|
|
* bb_compat.c: New file which translates between old badblocks_*()
|
|
names to ext2fs_badblocks_*()
|
|
|
|
* unlink.c (ext2fs_unlink): New file, moved ext2fs_unlink() from
|
|
link.c (since e2fsck doesn't use ext2fs_unlink()).
|
|
|
|
* rs_bitmap.c (ext2fs_resize_generic_bitmap): New file, contains
|
|
bitmap resizing routine moved from bitmaps.c, since e2fsck
|
|
doesn't need to use this function.
|
|
|
|
* lookup.c (ext2fs_lookup): Moved ext2fs_lookup to its own file,
|
|
since e2fsck only needs ext2fs_lookup.
|
|
|
|
Mon Feb 3 10:11:40 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* inode.c (ext2fs_open_inode_scan): Set fs->badblocks if it is not
|
|
already set; this is needed so that programs like dump
|
|
which use the inode scan functions will deal with
|
|
filesystems that have bad blocks in the inode table.
|
|
|
|
Sun Feb 2 00:17:36 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* ext2fs.h (struct_badblocks_list, struct_badblocks_iterate):
|
|
Moved to ext2fsP.h, since it doesn't need to be part of
|
|
the public interface.
|
|
|
|
* dir_iterate.c: Move ext2_dir_iterate out of namei.c.
|
|
|
|
Sat Feb 1 10:14:55 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* dblist.c (ext2fs_get_num_dirs): New file, which implements a
|
|
directory block list abstraction. (Code moved from
|
|
e2fsck).
|
|
|
|
* ext2fs.h, inode.c: Moved definition of ext2_struct_inode_scan to
|
|
to inode.c (since no one else should be peeking inside it!)
|
|
|
|
* valid_blk.c (ext2_inode_has_valid_blocks): New function.
|
|
|
|
* openfs.c (ext2fs_open): Check the feature set in the ext2
|
|
superblock, and refuse to open filesystems if they contain
|
|
incompatible features. (Can be overriden with the
|
|
EXT2_FLAG_FORCE
|
|
|
|
Sun Jan 12 11:31:46 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* block.c (ext2fs_block_iterate2): Added new function
|
|
ext2fs_block_iterate2 which changes the function
|
|
signature of the callback function to include the
|
|
referencing block and offset.
|
|
|
|
* inode.c (ext2fs_inode_scan_goto_blockgroup): Added new function
|
|
ext2fs_inode_scan_goto_blockgroup which allows an
|
|
application to jump to a particular block group while
|
|
doing an inode scan.
|
|
|
|
Wed Jan 1 23:50:12 1997 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* dirblock.c: Include string.h, since we use memcpy().
|
|
|
|
Tue Dec 3 12:27:29 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* getsize.c (ext2fs_get_device_size): The ioctl BLKGETSIZE returns
|
|
a long not an int; this doesn't matter on i386 machines,
|
|
but it does on Alpha's.
|
|
|
|
Fri Nov 29 20:57:37 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* inode.c (ext2fs_write_inode, ext2fs_read_inode): If the inode
|
|
table pointer is NULL, then return an error indicating
|
|
that the inode table is missing.
|
|
(get_next_blockgroup, get_next_blocks,
|
|
ext2fs_get_next_inode): Don't treat a missing inode table
|
|
as permanent error. Return MISSING_INODE_TABLE, but as an
|
|
advisory error code, much like BAD_BLOCK_IN_INODE_TABLE.
|
|
|
|
* rw_bitmaps.c (ext2fs_write_block_bitmap,
|
|
ext2fs_write_inode_bitmap): If the inode or block bitmap
|
|
block is zero, then don't write out the inode or block
|
|
bitmap. The idea here is to avoid stomping on the
|
|
superblock.
|
|
(read_bitmaps): If the inode or block bitmap block is
|
|
zero, then fill in that portion of the inode or block
|
|
bitmap with all zeros.
|
|
|
|
* inode.c (ext2fs_get_next_inode): Fix bug in handling of bad
|
|
blocks in inode table when the inode table size is
|
|
non-standard (and can therefore span blocks).
|
|
|
|
Tue Oct 29 20:13:14 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* alloc.c (ext2fs_new_block): Fix fencepost error in
|
|
ext2fs_new_block; make sure we don't try to allocate the
|
|
first block beyond the end of the filesystem.
|
|
|
|
Mon Oct 14 11:00:48 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* inode.c (check_for_inode_bad_blocks): New function called by
|
|
get_next_blocks() to avoid reading in bad blocks marked in
|
|
fs->badblocks. Inodes located in bad blocks are returned
|
|
by ext2fs_get_next_inode() returns the error code
|
|
EXT2_ET_BAD_BLOCK_IN_INODE_TABLE.
|
|
|
|
* alloc_tables.c (ext2fs_allocate_tables): New function which
|
|
performs the part of mke2fs's job of allocating the
|
|
filesystem tables.
|
|
|
|
* test_io.c (test_close): IO manager which is used for testing
|
|
purposes.
|
|
|
|
Sun Oct 13 04:31:57 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* inode.c (ext2fs_get_next_inode): Separate out the function of
|
|
setting up for a new block group to get_next_blockgroup().
|
|
Separate out the function of reading in blocks of the
|
|
inode table to get_next_blocks().
|
|
|
|
* ext2fs.h: Add the badblocks list to the ext2_filsys entry
|
|
|
|
* badblocks.c (badblocks_list_add, badblocks_list_test): Add
|
|
blocks to the badblock list in sorted order. This allows
|
|
badblocks_list_test to be coded using a binary search for
|
|
speed.
|
|
|
|
Tue Oct 8 02:02:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* Release of E2fsprogs version 1.06
|
|
|
|
Mon Oct 7 00:44:17 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* ext2fs.h, block.c, closefs.c, dirblock.c, inode.c, native.c,
|
|
open.c: Change EXT2_SWAP to EXT2_FLAG_SWAP for
|
|
consistency's sake.
|
|
|
|
* closefs.c (ext2fs_flush): If the flag EXT2_MASTER_SB_ONLY is
|
|
set, then only write out the master superblock.
|
|
|
|
Sun Oct 6 21:45:26 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* block.c (ext2fs_block_iterate): Fixed bug which caused
|
|
block_iterate to fail to handle HURD created filesystems;
|
|
it tested the inode translator field before the inode was
|
|
loaded.
|
|
|
|
Tue Sep 17 14:08:24 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* initialize.c (ext2fs_initialize): Make sure the description for
|
|
the inode bitmap is set correctly.
|
|
|
|
* bitmaps.c (ext2fs_allocate_generic_bitmap): Fix minor type typo.
|
|
|
|
Thu Sep 12 15:23:07 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* Release of E2fsprogs version 1.05
|
|
|
|
Sat Sep 7 07:36:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* initialize.c: Override the kernel's idea of default
|
|
checkinterval from 0 (never) to 180 days.
|
|
|
|
Wed Aug 28 03:20:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* namei.c (ext2fs_namei_follow): New function which follows
|
|
symbolic link (if any) at the target.
|
|
|
|
Tue Aug 27 01:48:43 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* inode.c (ext2fs_read_inode, ext2fs_write_inode): Add support
|
|
for shortcut function fs->read_inode() and fs->write_inode().
|
|
Added inode_cache to reduce CPU time spent in doing
|
|
byte swapping.
|
|
|
|
* swapfs.c (ext2fs_swap_super): Swap the new fields in a V2
|
|
superblock.
|
|
|
|
* namei.c (ext2fs_follow_link): New function.
|
|
(ext2fs_namei): Extended to have support for chasing
|
|
symbolic links. ext2fs_namei() still returns an inode
|
|
which is a symbolic link. Symbolic links are only chased
|
|
while resolving the containing directory. To chase
|
|
symbolic links of the final result, use
|
|
ext2fs_follow_link().
|
|
|
|
Mon Aug 26 23:46:07 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* ext2_err.et.in: Added new error code EXT2_ET_SYMLINK_LOOP.
|
|
|
|
* bitops.h (ext2fs_set_bit, ext2fs_celar_bit): Use asm inlines
|
|
provided by Pete A. Zaitcev (zaitcev@lab.sun.mcst.ru).
|
|
|
|
Thu Aug 22 00:40:18 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* initialize.c (ext2fs_initialize): On systems where the byte
|
|
order is not i386 compatible, set the swap_byte flag.
|
|
|
|
* inode.c (inocpy_with_swap): Check to see if inode contains a
|
|
fast symlink before swapping the inode block fields. This
|
|
required adding a new argument to inocpy_with_swap to
|
|
determine whether the mode field is in host order or not.
|
|
|
|
Wed Aug 21 00:45:42 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* bitops.h (ext2fs_set_bit, ext2fs_clear_bit, ext2fs_test_bit): On
|
|
the sparc, if EXT2_STD_BITOPS set, use the standard
|
|
i386-compatible bitmask operations, instead on the
|
|
non-standard native bitmask operators.
|
|
|
|
Fri Aug 9 11:11:35 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* block.c (ext2fs_block_iterate): Cause block iterator to return
|
|
the HURD translator block (along with everything else).
|
|
If the flag BLOCK_FLAG_DATA_ONLY is passed to the block
|
|
iterator, then don't return any meta data blocks
|
|
(including the HURD translator).
|
|
|
|
Wed Jul 17 17:13:34 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* gen_uuid.c: New file, which generates DCE-compatible UUIDs.
|
|
|
|
* uuid.c: New file, containing UUID utility functions.
|
|
|
|
Tue Jul 16 10:19:16 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* ext2fs.h: Add a definition of the "real" ext2 superblock.
|
|
|
|
Fri May 24 14:54:55 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* ext2fs.h: Fix erroneous ino_t type used in block_bitmap type.
|
|
|
|
Sun May 19 15:39:03 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* openfs.c (ext2fs_open): If the blocksize in the superblock is
|
|
zero, return the error EXT2_ET_CORRUPT_SUPERBLOCK, since
|
|
that's a basic value that must be correct for the rest of
|
|
the library to work.
|
|
|
|
* ext2_err.et.in (EXT2_ET_CORRUPT_SUPERBLOCK): Added new error
|
|
code.
|
|
|
|
Thu May 16 11:12:30 1996 Theodore Ts'o <tytso@rsts-11.mit.edu>
|
|
|
|
* Release of E2fsprogs version 1.04
|
|
|
|
Wed Mar 27 00:33:40 1996 <tytso@rsts-11.mit.edu>
|
|
|
|
* Release of E2fsprogs version 1.03
|
|
|
|
Tue Mar 26 12:06:32 1996 <tytso@rsts-11.mit.edu>
|
|
|
|
* bitops.h (ext2fs_set_bit, ext2fs_clear_bit, ext2fs_test_bit):
|
|
Change the m68k bit numbering for bitmasks to match with
|
|
the bit numbering used by all other ext2 implementations.
|
|
|
|
Thu Mar 7 03:37:00 1996 <tytso@rsts-11.mit.edu>
|
|
|
|
* inode.c (ext2fs_get_next_inode, ext2fs_close_inode_scan,
|
|
ext2fs_open_inode_scan): Support dynamically-sized inodes.
|
|
|
|
Wed Mar 6 12:26:29 1996 <tytso@rsts-11.mit.edu>
|
|
|
|
* inode.c (ext2fs_read_inode, ext2fs_write_inode): Support
|
|
dynamically-sized inodes.
|
|
|
|
* openfs.c (ext2fs_open): Allow dynamic revision filesystem to be
|
|
loaded.
|
|
|
|
Tue Mar 5 03:49:37 1996 <tytso@rsts-11.mit.edu>
|
|
|
|
* initialize.c (ext2fs_initialize): Catch an error condition where
|
|
the passed in size is *really* too small.
|
|
|
|
* alloc.c (ext2fs_new_inode):
|
|
* ext2fs.h (EXT2_FIRST_INODE): Add support for dynamic revision to
|
|
get first inode.
|
|
|
|
Wed Feb 21 15:56:17 1996 <tytso@rsts-11.mit.edu>
|
|
|
|
* getsize.c (ext2fs_get_device_size): Open the device read-only
|
|
when trying to determine its size.
|
|
|
|
Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu>
|
|
|
|
* Release of E2fsprogs version 1.02
|
|
|
|
Sat Dec 9 09:57:50 1995 <tytso@rsts-11.mit.edu>
|
|
|
|
* rw_bitops.c (ext2fs_write_block_bitmap):
|
|
* bitops.c (ext2fs_test_bit, ext2fs_clear_bit, ext2fs_set_bit):
|
|
* bitops.h (ext2fs_test_bit, ext2fs_clear_bit, ext2fs_set_bit):
|
|
Rename {test,set,clear}_bit to ext2fs_{test,set,clear}_bit,
|
|
to avoid conflicts with with kernel include files. Also
|
|
rename ADDR and CONST_ADDR to EXT2FS_ADDR and
|
|
EXT2FS_CONST_ADDR.
|
|
|
|
Thu Oct 26 12:09:16 1995 <tytso@rsts-11.mit.edu>
|
|
|
|
* ext2_err.et: Updated message in EXT2_ET_BASE to say version 0.5c
|
|
|
|
* swapfs.c (ext2fs_swap_super): Put an #ifdef check around
|
|
s_def_resuid and s_def_resgid for backwards compatibility.
|
|
|
|
Fri Oct 20 23:33:31 1995 <tytso@rsts-11.mit.edu>
|
|
|
|
* bitops.h: Added #ifdef's for Sparc.
|
|
|
|
Wed Sep 6 22:14:46 1995 <tytso@rsts-11.mit.edu>
|
|
|
|
* getsize.c: #include <sys/ioctl.h> under Linux to pick up ioctl()
|
|
declaration
|
|
|
|
* closefs.c: #include <string.h> to pick up memset() declaration
|
|
|
|
Mon Sep 4 21:45:29 1995 Remy Card <card@bbj>
|
|
|
|
* Makefile.in: Added support for BSD shared libraries.
|
|
|
|
* initialize.c (ext2fs_initialize): Correctly set the s_creator_os
|
|
flag.
|
|
|
|
Mon Sep 4 09:55:30 1995 <tytso@rsts-11.mit.edu>
|
|
|
|
* unix_io.c (unix_open): Add a double check; if the passed in name
|
|
is NULL, return EXT2_ET_BAD_DEVICE_NAME.
|
|
|
|
* ext2_err.et (EXT2_ET_BAD_DEVICE_NAME): Added new error code
|
|
|
|
Wed Aug 16 15:44:10 1995 <tytso@rsts-11.mit.edu>
|
|
|
|
* inode.c (ext2fs_check_directory): Use LINUX_S_ISDIR instead of
|
|
S_ISDIR.
|
|
|
|
Tue Aug 15 13:08:36 1995 <tytso@rsts-11.mit.edu>
|
|
|
|
* getsize.c (ext2fs_get_device_size): Add support for reading the
|
|
partition size from a BSD disk label.
|
|
|
|
Thu Aug 10 09:33:26 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
|
|
|
* getsize.c (ext2fs_get_device_size): New function that determins
|
|
the size of a device. Used by mke2fs and e2fsck.
|
|
|
|
Sat Aug 12 03:09:54 1995 Remy Card <card@bbj>
|
|
|
|
* Makefile.in (install): Install static libraries in $(ulibdir)
|
|
(/usr/lib on Linux) instead of $(libdir) (/lib on Linux).
|
|
|
|
Wed Aug 9 17:04:23 1995 Theodore Y. Ts'o <tytso@dcl>
|
|
|
|
* bitmaps.c (ext2fs_free_inode_bitmap, ext2fs_free_block_bitmap):
|
|
Move these functions to freefs.c.
|
|
|
|
* closefs.c (ext2fs_flush): If swapping blocks, clear the group
|
|
descriptors shadow memory to keep purify quiet. (This
|
|
also has the nice benefit that the unused portion of the
|
|
shadow descriptors are zeroed out.)
|
|
|
|
* dirblock.c (ext2fs_write_dir_block): We need to use
|
|
dirent->rec_len *before* it's byteswapped to find the
|
|
location of the next directory structure!
|
|
|
|
* alloc.c (ext2fs_new_inode): Fix bug which could potentially
|
|
cause ext2fs_new_inode to loop infinitely if we're trying
|
|
to allocate an inode in group #0 and there are no free
|
|
inodes at all in the system.
|
|
|
|
* closefs.c: #include <errno.h> if it exists.
|
|
|
|
Sun Aug 6 13:27:50 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
|
|
|
* ext2fs.h (BLOCK_FLAG_HOLE): Added new definition for
|
|
BLOCK_FLAG_APPEND. Added documentation for the block
|
|
interator flags.
|
|
|
|
Sat Aug 5 11:44:05 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
|
|
|
* Makefile.in (DLL_INSTALL_DIR, ELF_INSTALL_DIR): Set the
|
|
installation directories correctly.
|
|
|
|
Tue Jul 18 09:27:38 1995 <tytso@rsx-11.mit.edu>
|
|
|
|
* namei.c (process_dir_block):
|
|
* mkdir.c (ext2fs_mkdir):
|
|
* expanddir.c (expand_dir_proc): Use ext2fs_{read,write}_dir_block
|
|
to read/write the directory block.
|
|
|
|
* dirblock.c (ext2fs_read_dir_block), ext2fs_write_dir_block): New
|
|
file containing functions for reading and writing
|
|
directory blocks (byte swapping if necesssary)
|
|
|
|
* block.c (block_iterate_ind, block_iterate_dind,
|
|
block_iterate_tind): Byte swap the block addresses if
|
|
EXT2_SWAP_BYTES is set (and swap them back before writing
|
|
them out.)
|
|
|
|
* inode.c (inocpy_with_swap): New function.
|
|
(ext2fs_get_next_inode, ext2fs_read_inode, ext2fs_write_inode):
|
|
Call inocpy_with_swap if EXT2_SWAP_BYTES if set.
|
|
|
|
* closefs.c (ext2fs_flush): If EXT2_SWAP_BYTES is set, then swap
|
|
the superblock and group descriptors before writing it out.
|
|
|
|
* openfs.c (ext2fs_open): If the magic number is byte-swapped,
|
|
then set the EXT2_SWAP_BYTES and byte-swap the superblock
|
|
and group descriptors.
|
|
|
|
* swapfs.c (ext2fs_swap_super, ext2fs_swap_group_desc): New functions
|
|
to desp ext2 filesystem structures.
|
|
|
|
* bitops.c (set_bit, clear_bit, test_bit): Use modifications
|
|
supplied by Pete A. Zaitcev so that the C language
|
|
versions of these functions are more portable. They will
|
|
now work on both little and big endian systems, and the
|
|
assumption that 32-bit integers are used is gone.
|
|
|
|
* bitops.h (ext2_swab16, ext2_swab32): Added new functions for
|
|
doing byte swapping.
|
|
|
|
* ext2fs.h (EXT2_SWAP_BYTES): Add new flag which indicates that
|
|
byte swapping should take place.
|
|
|
|
Sun Jul 16 06:21:43 1995 <tytso@rsx-11.mit.edu>
|
|
|
|
* Makefile.in, cmp_bitmaps.c (ext2fs_compare_block_bitmap_end,
|
|
ext2fs_compare_inode_bitmap_end): Added new file
|
|
containing routines to compare bitmaps.
|
|
|
|
* ext2_err.et (EXT2_ET_NEQ_BLOCK_BITMAP, EXT2_ET_NEQ_INODE_BITMAP):
|
|
Added new error codes.
|
|
|
|
Sat Jul 15 04:23:37 1995 <tytso@rsx-11.mit.edu>
|
|
|
|
* inode.c (ext2fs_get_next_inode): Don't check scan->inode_buffer;
|
|
if the magic number is correct, it will be allocated.
|
|
|
|
Fri Jul 14 19:02:59 1995 <tytso@rsx-11.mit.edu>
|
|
|
|
* block.c (block_iterate_ind, block_iterate_dind,
|
|
block_iterate_tind): Don't recompute block_nr each loop;
|
|
just increment it! Factor check of BLOCK_FLAG_APPEND out
|
|
of the loop. Factor mask of BLOCK_CHANGED into changed
|
|
variable out of the loop. (block_iterate_ind, in
|
|
particular, gets called a lot, so every little
|
|
optimization helps.)
|
|
|
|
Thu Jul 13 08:02:45 1995 <tytso@rsx-11.mit.edu>
|
|
|
|
* block.c (block_iterate_ind, block_iterate_dind,
|
|
block_iterate_tind): Precompute limit of loop to speed up
|
|
block_iterate_ind and company.
|
|
|
|
* bitops.h (ext2fs_fast_mark_block_bitmap,
|
|
ext2fs_fast_unmark_block_bitmap, ext2fs_fast_test_block_bitmap,
|
|
ext2fs_fast_mark_inode_bitmap, ext2fs_fast_unmark_inode_bitmap,
|
|
ext2fs_fast_test_inode_bitmap): Add fast version of these
|
|
functions, which don't do range checking.
|
|
|
|
* bitops.h (ext2fs_get_block_bitmap_start,
|
|
ext2fs_get_inode_bitmap_start, ext2fs_get_block_bitmap_end,
|
|
ext2fs_get_inode_bitmap_end): Add new accessor functions
|
|
which return the start and end points of the bitmaps.
|
|
|
|
Tue Jul 11 18:59:41 1995 <tytso@rsx-11.mit.edu>
|
|
|
|
* llseek.c (ext2_llseek): If the offset is small enough, use lseek
|
|
instead of llseek. The errno if the offset is too large
|
|
and lseek is not supported should be EINVAL, not -EINVAL.
|
|
|
|
Thu Jun 15 23:43:02 1995 Remy Card <card@bbj>
|
|
|
|
* Makefile.in: Added support for ELF shared libraries.
|
|
Fixed typos in the compilation rules.
|
|
(distclean): Added Makefile.
|
|
|
|
* llseek.c (llseek): New function, if llseek() does not exist in the
|
|
C library.
|
|
(ext2_llseek): Changed to call llseek().
|
|
|
|
Mon Jun 12 08:29:07 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
|
|
|
* ext2fs.h: Use __u32 to define blk_t, instead of unsigned long.
|
|
|
|
Sun Jun 11 15:02:54 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
|
|
|
* mkdir.c (ext2fs_mkdir): Use LINUX_S_IFDIR instead of S_IFDIR.
|
|
|
|
* ext2fs.h (LINUX_S_IFDIR): Define a linux specific versions of
|
|
the S_*, which are normally defined in <sys/stat.h>. This
|
|
allows us to compile e2fsprogs on a non-Linux system,
|
|
which may have a different value for S_IFDIR.
|
|
|
|
Sat Jun 10 23:47:05 1995 Theodore Y. Ts'o <tytso@lurch.mit.edu>
|
|
|
|
* bitops.c (clear_bit, set_bit): Remove calls to cli() and sti();
|
|
this is a user-mode application!
|
|
|
|
Thu Jun 8 13:13:22 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu>
|
|
|
|
* llseek.c: Put the include of <linux/unistd.h> inside the #ifdef
|
|
__linux__ so that non-linux systems won't see it.
|
|
|
|
* alloc.c: Include <errno.h> if possible.
|
|
* badblocks.c: Ditto.
|
|
* bb_inode.c: Ditto.
|
|
* bitmaps.c: Ditto.
|
|
* block.c: Ditto.
|
|
* expanddir.c: Ditto.
|
|
* get_pathname.c: Ditto.
|
|
* initialize.c: Ditto.
|
|
* inode.c: Ditto.
|
|
* llseek.c: Ditto.
|
|
* mkdir.c: Ditto.
|
|
* namei.c: Ditto.
|
|
* newdir.c: Ditto.
|
|
* openfs.c: Ditto.
|
|
* rw_bitmaps.c: Ditto.
|
|
* unix_io.c: Ditto.
|
|
|
|
* Makefile.in: Rewritten to conform to GNU coding standards and
|
|
support separate compilation directories.
|
|
|
|
Thu May 11 04:13:12 1995 <tytso@rsx-11.mit.edu>
|
|
|
|
* initialize.c (ext2fs_initialize): Don't allow more than one
|
|
bitmaps's worth of inodes in a group.
|
|
|
|
Sat Mar 11 14:07:11 1995 Theodore Y. Ts'o <tytso@localhost>
|
|
|
|
* llseek.c (ext2_llseek): Added error checking to the llseek()
|
|
compat code to protect against overflow. This only
|
|
applies to 1.0 and early 1.1 kernels, which don't support
|
|
the llseek() system call.
|
|
|
|
Thu Nov 24 16:29:00 1994 Theodore Y. Ts'o (tytso@rt-11)
|
|
|
|
* unix_io.c (unix_open): Initialize the read_error and write_error
|
|
io_channel pointers to be null.
|
|
|
|
* bb_inode.c (clear_bad_block_proc): If an illegal block number is
|
|
found, clear it but don't try to update the filesystem
|
|
accounting information, since that's hopeless anyway.
|
|
|
|
* block.c (bloblock_iterate_ind, bloblock_iterate_dind,
|
|
bloblock_iterate_tind): Check to see if the indirect blocks are
|
|
valid before trying to read them.
|
|
|
|
* ext2_err.et (EXT2_ET_BAD_IND_BLOCK, EX2_ET_BAD_DIND_BLOCK,
|
|
EXT2_ET_BAD_TIND_BLOCK): Add new error codes.
|
|
|
|
* bitops.h (ext2fs_mark_block_bitmap, ext2fs_unmark_block_bitmap,
|
|
ext2fs_test_block_bitmap, ext2fs_mark_inode_bitmap,
|
|
ext2fs_unmark_inode_bitmap, ext2fs_test_inode_bitmap): If an
|
|
illegal block or inode number is passed in, return instead
|
|
of trying to test, set, or clear the bit.
|
|
|
|
Mon Nov 7 21:32:33 1994 Remy Card <card@bbj>
|
|
|
|
* Makefile: Added a dummy install target in case shared libraries
|
|
are not built.
|
|
|
|
Mon Oct 24 14:11:44 1994 (tytso@rsx-11)
|
|
|
|
* bitmaps.c (ext2fs_allocate_block_bitmap): Fix calculation of how
|
|
the real last block of the bitmap should be calculated.
|
|
|
|
Wed Sep 7 10:05:36 1994 (tytso@rsx-11)
|
|
|
|
* bitmaps.c (ext2fs_fudge_inode_bitmap_end,
|
|
ext2fs_fudge_block_bitmap_end, ext2fs_clear_inode_bitmap,
|
|
ext2fs_clear_block_bitmap, ext2fs_free_inode_bitmap,
|
|
ext2fs_free_block_bitmap): Add magic number checking for
|
|
the inode and block bitmaps.
|
|
|
|
* bitmaps.c (ext2fs_allocate_block_bitmap): Fix to set the correct
|
|
magic number for a block bitmap instead of an inode bitmap.
|
|
|
|
* inode.c (ext2fs_close_inode_scan, ext2fs_get_next_inode): Add
|
|
magic number checking for the inode_scan structure.
|
|
|
|
* badblocks.c (badblocks_list_free, badblocks_list_add,
|
|
badblocks_list_test, badblocks_list_iterate_begin,
|
|
badblocks_list_iterate, badblocks_list_iterate_end): Add
|
|
magic number checking for the badblocks_list and
|
|
badblocks_iterate structures.
|
|
|
|
* ext2_err.et (EXT2_ET_MAGIC_UNIX_IO_CHANNEL):
|
|
* unix_io.c (unix_open, unix_close, unix_set_blksize, unix_read_blk,
|
|
unix_write_blk, unix_flush): Add magic number checking
|
|
both for io_channel structure and unix_private_data
|
|
structure.
|
|
|
|
* openfs.c (ext2fs_open): Add check for io_manager structure's
|
|
magic number.
|
|
|
|
* rw_bitmaps.c (ext2fs_write_inode_bitmap, ext2fs_write_block_bitmap,
|
|
ext2fs_read_inode_bitmap, ext2fs_read_block_bitmap,
|
|
ext2fs_read_bitmaps, ext2fs_write_bitmaps):
|
|
* read_bb.c (ext2fs_read_bb_inode):
|
|
* read_bb_file.c (ext2fs_read_bb_FILE):
|
|
* newdir.c (ext2fs_new_dir_block):
|
|
* namei.c (ext2fs_dir_iterate, ext2fs_lookup, ext2fs_namei):
|
|
* link.c (ext2fs_link, ext2fs_unlink):
|
|
* inode.c (ext2fs_open_inode_scan, ext2fs_read_inode,
|
|
ext2fs_write_inode, ext2fs_get_blocks,
|
|
ext2fs_check_directory):
|
|
* get_pathname.c (ext2fs_get_pathname):
|
|
* expanddir.c (ext2fs_expand_dir):
|
|
* block.c (ext2fs_block_iterate):
|
|
* bitmaps.c (ext2fs_allocate_inode_bitmap,
|
|
ext2fs_allocate_block_bitmap):
|
|
* bb_inode.c (ext2fs_update_bb_inode):
|
|
* alloc.c (ext2fs_new_inode,ext2fs_new_block,ext2fs_get_free_blocks):
|
|
* check_desc.c (ext2fs_check_desc):
|
|
* closefs.c (ext2fs_close, ext2fs_flush):
|
|
* freefs.c (ext2fs_free): Add check for ext2_filsys magic number.
|
|
|
|
* Makefile:
|
|
* ext2fs.h:
|
|
* openfs.c:
|
|
* check_desc.c (ext2fs_check_desc): Move ext2fs_check_desc from
|
|
openfs.c into its own file.
|
|
|
|
* ext2fs.h (EXT2_CHECK_MAGIC): Added macro for checking for
|
|
structure magic numbers.
|
|
|
|
* closefs.c (ext2fs_flush): Folded in Remy Card's changes to clear
|
|
the EXT2_VALID_FS flag in the backup superblock blocks, so that if
|
|
someone uses the -b option to specify the use of the backup
|
|
superblock --- this usually means that the main superblock is
|
|
toast. :-)
|
|
|
|
* ext2fs.h:
|
|
* ext2_err.et (EXT2_ET_REV_TOO_HIGH):
|
|
* openfs.c (ext2fs_open): Folded in Remy Card's changes to add a
|
|
revision level to the superblock.
|
|
|
|
Sun Aug 21 00:50:08 1994 Theodore Y. Ts'o (tytso@rt-11)
|
|
|
|
* ext2fs.h:
|
|
* bitmaps.c:
|
|
* bitops.c
|
|
* bitops.h:
|
|
* openfs.c:
|
|
* initialize.c: Completely revamped the inode and block bitmap
|
|
structures, so that they can be better chance of being extensible
|
|
in a shared library. They are now their own type, instead of
|
|
being a char *. Also, the function signatures of
|
|
ext2fs_test_block_bitmap, ext2fs_mark_block_bitmap,
|
|
ext2fs_unmark_block_bitmap, ext2fs_test_inode_bitmap,
|
|
ext2fs_mark_inode_bitmap, and ext2fs_unmark_inode_bitmap were
|
|
changed to eliminate the ext2_filsys argument, since it is no
|
|
longer necessary.
|
|
|
|
Wed Aug 17 21:46:44 1994 Remy Card (card@bbj)
|
|
|
|
* unix_io.c (unix_read_blk and unix_write_blk): use the llseek
|
|
system call if available.
|
|
|
|
* llseek.c: new file. This is the stub calling the llseek system
|
|
call which allows supports for 2GB+ file systems.
|
|
|
|
* initialize.c (ext2fs_initialize): Ext2fs_initialize now stores
|
|
the creator operating system.
|
|
|
|
Wed Aug 17 10:03:24 1994 Theodore Y. Ts'o (tytso@rt-11)
|
|
|
|
* initialize.c (ext2fs_initialize): Ext2fs_initialize now sets up
|
|
the group descriptor statistics in addition to everything else.
|
|
This relieves mke2fs of the responsibility of doing it.
|
|
|
|
* bitops.c, bitops.h: Add assembly inline functions for the 68000.
|
|
Added a new #define, _EXT2_HAVE_ASM_BITOPS_ to control whether or
|
|
not the generic C function equivalents should be included or not.
|
|
|
|
* openfs.c (ext2fs_open): If a superblock is specified, then use
|
|
the backup group descriptors that go along with this superblock,
|
|
instead of using the primary group descriptors. This allows
|
|
e2fsck to recover filesystems where the primary group descriptors
|
|
have been trashed.
|
|
|
|
|