E2fsprogs 1.43.5 (August 4, 2017)
=================================

Fix a bug which could cause e2fsck to loop forever when rebuilding an
encrypted directory with entries with identical prefixes up to an
embedded NUL character.

Fix build when configured with --disable-threads or --enable-profile.

Fix ext2fs_sync_device() so it returns the proper error code if the
BLKFLSBUF ioctl fails for some reason.

Fix a potential crash in tune2fs when enabling project quota when the
file system has no inodes by fixing error handling in the
quota_write_inode() in libsupport.

Fix a bug in debugfs's "ls -p" handling which could cause it to print
garbage after a file name in a directory entry.

Fix a number of bugs in debugfs, dumpe2fs, e2fsck, tune2fs, and
resize2fs where a carefully/maliciously corrupted file systems (found
by American Fuzzy Lop) could these programs to crash or hang.
(Addresses Debian Bug #868489)

E2fsck no longer issues some harmless bitmap warnings caused by a
corrupted file system; since those corruptions will be fixed up by
e2fsck later, there's no point issuing these internal warnings.

E2fsck will now notice invalid quota inode numbers, and offer to fix
them.

Fix a regression introduced in e2fsprogs 1.43 which broke mke2fs's
hugefile creation so that they aren't contiguous.  (Addresses Google
Bugs 62791459 and 638037607)

Fix how backup superblocks are written in big endian systems so they
are all correctly byte swapped.

Fixed tune2fs's support for enabling and disabling project quota.

The badblock program now properly handles languages which have
multi-column wide character such as Chinese.  (Addresses Debian Bug:
#860926)

The mke2fs -U option now accepts "null", "clear", "random", or "time"
just as tune2fs's -U option.

Fix e2fsck's -E bmap2extent feature (which converts a file to use
extents from indirect block maps) so that it handles sparse files correctly.

Fix libext2fs to correctly handle accounting for an external xattr
block on bigalloc file systems.

Fix e2fsck to correctly handle quota accounting when deleting files
that have multiply-claimed blocks pass 1b.

Fix potential buffer overrun bug in e2fsck when using 128 byte inodes.
(Addresses Google Bug 37326362).

E2fsck's extent tree optimization can now be disabled via an
command-line extended option or via an e2fsck.conf configuration
parameter.

The e2fsck program now properly updates the quota accounting when
optimizing the extent tree.  (Addresses Google Bug 36391645)

Fix some error handling in e4crypt when operating on keyring ID's.

Fix e2fsck's quota handling when the bigalloc feature is enabled.

The libext2fs file system now uses readahead when opening file systems
to speed up opening very large file systems with the meta_bg option.

If e2fsck logging is enabled, e2fsck will report the exit code in the
last line of the log file.

Debugfs can now open file systems with a bad superblock checksum, and
the show_super_stats command will print the expected checksum.

Fix a regression introduced in e2fsprogs 1.43.4 where tune2fs was not
able to correctly enable the quota feature.  (Addresses Debian Bug
#855417)

E2fsck will only return an exit status code of 1 if it has fixed a
file system corruption.  If it only performed an optimal optimization
of internal file system metadata, it will now return 0.

Fix e2fsck so it won't check inode fields of deleted inodes.  This was
mostly harmless, but the addition of a check in 1.43.4 to enforce the
requirement that inline data inodes have a system.data attribute
caused a regression in xfstests generic/079.  Fix this and a number of
other checks which could lead to false positive reports of file system
corruption.

Removed a debugging printf in libsupport which could result to some
extraneous and confusing output if the user specifies a quota type.

The debugfs logdump command now accepts a new -S option which will
cause it to print information about the journal superblock.

Added a missing space in debugfs's ls -l output to separate the size
and date fields.

Update the Czech, Danish, Dutch, French, Hungarian, Polish, Serbian,
Spanish, Swedish, Ukrainian, and Vietnamese translations.

Update various man pages.  (Addresses Debian Bugs #867895 and #865584)

Fix various compiler and UBSAN warnings.

Fixed various Debian Packaging Issues.  (Addresses Debian Bugs
#864144 and #866623)


Programming notes
-----------------

The blkid library can now recognize exfat file systems.

Add new test, j_recover_csum3_64bit, which checks to make sure we
correctly recovering 64-bit journals using the v3 checksum format.

Fix portability assumption in tests; don't depend on the existence of
/dev/stdin.

Fix portability with newer versions of glibc and with Cygwin builds on
Windows 8 and Windows 10.

Clean up the comments in problem.c match the message that will
actually be printed.

Removed an unused an obsolete header file.