Commit Graph

11 Commits (da1a022670074686a0cae9363582d51547cbd42e)

Author SHA1 Message Date
Theodore Ts'o 813bbb25a2 ChangeLog, dir_iterate.c:
dir_iterate.c (ext2fs_process_dir_block): Check for corrupted
  	directory entry before calling the callback function.  This should
  	prevent some core dumps of insufficiently paranoid callback functions.
ChangeLog, unix.c:
  unix.c (main): Add missing space in the disk write-protected message.
1999-06-22 03:17:45 +00:00
Theodore Ts'o 2eb374c940 Many files:
rw_bitmaps.c: Fixed signed/unsigned warnings.
  fileio.c (ext2fs_file_set_size): Remove unneeded extern from the
  	function declaration.
  dblist.c (make_dblist): Add safety check in case the dblist pointer
  	passed in is null (in which case, assign it to fs->dblist).  Fixed
  	some signed/unsigned warnings.
  bmap.c: Make addr_per_block be of type blk_t to avoid signed/unsigned
  	warnings.
  namei.c (ext2fs_follow_link): Remove uneeded extern from the function
  	declaration.
  get_pathname.c (get_pathname_proc): Use return value from
  	ext2fs_get_mem, instead of checking if &gp->name is NULL.
  dir_iterate.c (ext2fs_process_dir_block):
  dblist_dir.c (ext2fs_dblist_dir_iterate): Remove uneeded extern from
  	the function declaration.
  block.c (ext2fs_block_iterate2): If the read_inode call fails, return
  	the error directly instead of jumping to the cleanup routine, since we
  	don't need to do any cleanup.
  alloc_table.c (ext2fs_allocate_group_table): Make this function take a
  	dgrp_t for its group argument.
  ext2fs.h: Make dgrp_t an __u32 type, and make fs->desc_group_count be
  	of type dgrp_t.
1998-09-03 01:22:57 +00:00
Theodore Ts'o 03673dbb04 Many files:
alloc_tables.c (ext2fs_allocate_group_table): Fix bug so that if the
  	stride length hits a bad value, we retry the block allocation starting
  	at the beginning of the block group.
  ext2fs.h, bb_inode.c, block.c, bmove.c, dir_iterate.c, expanddir.c,
  	ext2fsP.h, read_bb.c: Change blkcnt_t to be e2_blkcnt_t to avoid
  	collision with LFS API.
1998-06-10 20:39:43 +00:00
Theodore Ts'o 36a43d675e Many files:
block.c (ext2fs_block_iterate3): Make the ref_offset field contain the
  	offset into the inode.i_blocks array when ref_block is zero.  Since we
  	haven't done a formal release of e2fsprogs since block_iterate2 was
  	first introduced, I removed block_iterate2, and renamed block_iterate3
  	to be block_iterate2.
  bb_inode.c, bmove.c, dblist_dir.c, dir_iterate.c, expanddir.c,
  	ext2fs.h, ext2fsP.h, read_bb.c: Change use of block_iterate and
  	block_iterate2 to block_iterate2 with the new prototype for the
  	interator function.  (using blkcnt_t forr blockcount)
ChangeLog, debugfs.c, ls.c, lsdel.c:
  debugfs.c, ls.c, lsdel.c: Add support for large files.  (The high 32
  	bits share space with the i_dir_acl field.)
1998-03-24 16:17:51 +00:00
Theodore Ts'o 674a4ee1e3 Many files:
ext2fs.h: Add new superblock fields (s_algorithm_usage_bitmap,
  	s_prealloc_blocks, s_prealloc_dir_blocks).  Added conditional defines
  	of new features COMPAT_DIR_PREALLOC, RO_COMPAT_LARGE_FILE
  	RO_COMPAT_BTREE_DIR, INCOMPAT_COMPRESSION, INCOMPAT_DIRNAME_SIZE.
  	Changed the library to declare that we support COMPAT_DIR_PREALLOC,
  	INCOMPAT_DIRNAME_SIZE, RO_COMPAT_LARGE_FILE.
  fileio.c: Rename function ext2fs_file_llseek to be ext2fs_file_lseek,
  	which is more accurate.
  block.c: Add new function ext2fs_block_iterate3 which calls the
  	iterator function with the blockcount argument of type blkcnt_t.  This
  	version of the function is allowed to handle large files; the other
  	fucntions are not.
  ext2fs.h: Add new type blkcnt_t
  ext2_err.et.in: Add error code EXT2_ET_FILE_TOO_BIG
  block.c (ext2fs_block_iterate2): Fix bug where the block count field
  	wasn't getting correctly incremented for sparse files when the
  	indirect or doubly-indirect block specified in the inode was zero.
  unlink.c (unlink_proc):
  lookup.c (lookup_proc):
  link.c (link_proc):
  get_pathname.c (get_pathname_proc):
  dir_iterate.c (ext2fs_process_dir_block): Mask off high 8 bits from
  	dirent->name_len, so it can be used for other purposes.
  ext2fs.h: Add definition of EXT2_FEATURE_INCOMPAT_DIRNAME_SIZE, and
  	indicate that we have support for this incompatible option.
1998-03-23 02:06:52 +00:00
Theodore Ts'o b5abe6fac9 Many files:
inode.c (ext2fs_open_inode_scan): Initialize the group variables
  	so that we don't need to call get_next_blockgroup() the first
  	time around.  Saves a bit of time, and prevents us from
  	needing to assign -1 to current_group (which is an unsigned
  	value).
  icount.c (insert_icount_el): Cast the estimated number of inodes
  	from a float to an ino_t.
  alloc.c, alloc_tables.c, badlbocks.c, bb_compat.c, bb_inode.c,
  	bitmaps.c, bitops.c, block.c, bmap.c, bmove.c, brel_ma.c,
  	check_desc.c, closefs.c, cmp_bitmaps.c, dblist.c,
  	dblist_dir.c, dir_iterate.c, dirblock.c, dupfs.c, expanddir.c,
  	ext2fs.h, fileio.c, freefs.c, get_pathname.c, getsize.c,
  	icount.c, initialize.c, inline.c, inode.c, irel_ma.c,
  	ismounted.c, link.c, lookup.c, mkdir.c, namei.c, native.c,
  	newdir.c, openfs.c, read_bb.c, read_bb_file.c, rs_bitmap.c,
  	rw_bitmaps.c, swapfs.c, test_io.c, tst_badblocks.c,
  	tst_getsize.c, tst_iscan.c, unix_io.c, unlink.c, valid_blk.c,
  	version.c: If EXT2_FLAT_INCLUDES is defined, then assume all
  	of the ext2-specific header files are in a flat directory.
  block.c, bmove.c, dirblock.c, fileio.c: Explicitly cast
  	all assignments from void * to be compatible with C++.
  closefs.c (ext2fs_flush): Add a call to io_channel_flush() to
  	make sure the contents of the disk are flushed to disk.
  dblist.c (ext2fs_add_dir_block): Change new to be new_entry to
  	avoid C++ namespace clash.
  bitmaps.c (ext2fs_copy_bitmap): Change new to be new_map to
  	avoid C++ namespace clash.
  ext2fs.h, bb_inode.c, block.c, bmove.c, brel.h, brel_ma.c,
  	irel.h, irel_ma.c, dblist.c, dblist_dir.c, dir_iterate.c,
  	ext2fsP.h, expanddir.c, get_pathname.c, inode.c, link.c,
  	unlink.c: Change private to be priv_data (to avoid C++
  	namespace clash)
1998-01-19 14:47:53 +00:00
Theodore Ts'o 5be8dc2143 Many files:
dblist.c (ext2fs_get_num_dirs): Make ext2fs_get_num_dirs more paranoid
  	about validating the directory counts from the block group
  	information.
  all files: Don't include stdlib.h anymore; include it in ext2_fs.h,
  	since that file requires stdlib.h
ChangeLog, Makefile.in, dirinfo.c:
  dirinfo.c (e2fsck_add_dir_info): Use ext2fs_get_num_dirs instead of
  	e2fsck_get_num_dirs, which has been removed.
  Makefile.in (PROGS): Remove @EXTRA_PROGS@, since we don't want to
  	compile and install flushb.
ChangeLog, configure.in:
  Remove @EXTRA_PROGS@, since we aren't using it in 2fsck/Makefile.in anymore
ChangeLog, Makefile.in:
  Install debugfs in /sbin, instead of /usr/sbin.
libext2fs.texinfo:
  Update version string to be 1.12
Makefile.in:
  Fix bug in find script which made the exclusion list, where a '-' was
  missing from an -name option.
1997-12-01 18:24:10 +00:00
Theodore Ts'o 7b4e4534f9 Many files:
Added definition of ext2fs_get_mem, ext2fs_free_mem, and
  ext2fs_resize_mem in ext2fs.h, and changed all library routines to use
  these wrapper functions.
1997-10-26 03:41:24 +00:00
Theodore Ts'o c555aebde4 Many files:
alloc.c (ext2fs_alloc_block): New function which allocates a
  	block and updates the filesystem accounting records
  	appropriately.
  ext2_err.et.in: Added new error codes: EXT2_NO_MEMORY,
  	EXT2_INVALID_ARGUMENT, EXT2_BLOCK_ALLOC_FAIL, EXT2_INODE_ALLOC_FAIL,
  	EXT2_NOT_DIRECTORY
  Change various library files to use these functions instead of EINVAL,
  ENOENT, etc.
ChangeLog, pass1.c, pass3.c:
  pass3.c (get_lost_and_found): Check error return of
  	EXT2_FILE_NOT_FOUND instead of ENOTDIR
  pass1.c (pass1_check_directory): Return EXT2_NO_DIRECTORY instead of
  	ENOTDIR
expect.icount:
  Change expected error string to be "Invalid argument passed to ext2 library"
  instead of just "Invalid argument"
1997-10-25 04:16:53 +00:00
Theodore Ts'o 4cbe8af4b0 Many files:
block.c (ext2fs_block_iterate2): Use retval which is a errcode_t type.
  bitmaps.c (make_bitmap): Use size_t instead of int where appropriate.
  bb_inode.c (set_bad_block_proc): Add #pragma argsused for Turbo C.
  alloc.c (ext2fs_new_inode): Use ino_t instead of int for the group number.
  get_pathname.c: Use ino_t instead of int where appropriate.
  ext2fs.h: Make the magic structure element be errcode_t instead of int.
  alloc.c alloc_tables.c badblocks.c bb_compat.c bb_inode.c
  	bitmaps.c block.c bmove.c brel_ma.c check_desc.c closefs.c
  	cmp_bitmaps.c dblist.c dblist_dir.c dir_iterate.c dirblock.c
  	dupfs.c expanddir.c freefs.c get_pathname.c icount.c
  	initialize.c inline.c inode.c irel_ma.c link.c llseek.c
  	lookup.c mkdir.c namei.c newdir.c read_bb.c read_bb_file.c
  	rs_bitmap.c rw_bitmaps.c swapfs.c test_io.c tst_badblocks.c
  	tst_iscan.c unix_io.c unlink.c valid_blk.c version.c: Add an
  	#ifdef for HAVE_UNISTD_H
1997-08-10 23:07:40 +00:00
Theodore Ts'o 21c84b71e2 Many files:
Checked in e2fsprogs-1.07
1997-04-29 16:15:03 +00:00