linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH e2fsprogs 00/11] Improvements for Case-insensitive handling
@ 2020-03-25 21:18 Gabriel Krisman Bertazi
  2020-03-25 21:18 ` [PATCH e2fsprogs 01/11] tune2fs: Allow enabling casefold feature after fs creation Gabriel Krisman Bertazi
                   ` (11 more replies)
  0 siblings, 12 replies; 14+ messages in thread
From: Gabriel Krisman Bertazi @ 2020-03-25 21:18 UTC (permalink / raw)
  To: tytso; +Cc: linux-ext4, Gabriel Krisman Bertazi

Hi,

This patchset introduces my lastest improvements to handling casefolded
directories in e2fsprogs.  It is split in 3 parts:

Patch 1 and 2 provide tune2fs with the capability to enable the CASEFOLD
feature on existing filesystems.  The reasoning why this was not the
default since ever, and why it is safe to do so now, is on the commit
message.

Patch 3 and 4 implement some NLS/UTF-8 methods important to the fsck
validations done after.

Patch 5 and higher, improve e2fsck to fix the following issues in
case-insensitive directories: badly encoded filenames, duplicated
filenames, differing only by case.

The final patches also introduce documentation to the new
functionalities and tests for the new fsck features.

This series was tested agains the e2fsprogs testsuite and didn't trigger
any regressions.

Gabriel Krisman Bertazi (11):
  tune2fs: Allow enabling casefold feature after fs creation
  tune2fs: Fix casefold+encrypt error message
  ext2fs: Add method to validate casefolded strings
  ext2fs: Implement faster CI comparison of strings
  e2fsck: Fix entries with invalid encoded characters
  e2fsck: Support casefold directories when rehashing
  dict: Support comparison with context
  e2fsck: Detect duplicated casefolded direntries for rehash
  e2fsck: Add option to force encoded filename verification
  e2fsck.8.in: Document check_encoding extended option
  tests: f_bad_fname: Validate fix of invalid  filenames and duplicates

 e2fsck/e2fsck.8.in         |   4 ++
 e2fsck/e2fsck.c            |   4 ++
 e2fsck/e2fsck.h            |   2 +
 e2fsck/pass1.c             |  17 +++++++
 e2fsck/pass1b.c            |   2 +-
 e2fsck/pass2.c             |  68 ++++++++++++++++++++++++++--
 e2fsck/rehash.c            |  88 ++++++++++++++++++++++++++++++-------
 e2fsck/unix.c              |   4 ++
 lib/ext2fs/ext2fs.h        |   6 +++
 lib/ext2fs/ext2fsP.h       |   6 +++
 lib/ext2fs/nls_utf8.c      |  69 +++++++++++++++++++++++++++++
 lib/support/dict.c         |  22 +++++++---
 lib/support/dict.h         |   4 +-
 lib/support/mkquota.c      |   2 +-
 misc/tune2fs.c             |  18 +++++++-
 tests/f_bad_fname/expect.1 |  22 ++++++++++
 tests/f_bad_fname/expect.2 |   7 +++
 tests/f_bad_fname/image.gz | Bin 0 -> 802 bytes
 tests/f_bad_fname/name     |   1 +
 19 files changed, 316 insertions(+), 30 deletions(-)
 create mode 100644 tests/f_bad_fname/expect.1
 create mode 100644 tests/f_bad_fname/expect.2
 create mode 100644 tests/f_bad_fname/image.gz
 create mode 100644 tests/f_bad_fname/name

-- 
2.25.0


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2020-03-26 17:25 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-25 21:18 [PATCH e2fsprogs 00/11] Improvements for Case-insensitive handling Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 01/11] tune2fs: Allow enabling casefold feature after fs creation Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 02/11] tune2fs: Fix casefold+encrypt error message Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 03/11] ext2fs: Add method to validate casefolded strings Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 04/11] ext2fs: Implement faster CI comparison of strings Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 05/11] e2fsck: Fix entries with invalid encoded characters Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 06/11] e2fsck: Support casefold directories when rehashing Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 07/11] dict: Support comparison with context Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 08/11] e2fsck: Detect duplicated casefolded direntries for rehash Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 09/11] e2fsck: Add option to force encoded filename verification Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 10/11] e2fsck.8.in: Document check_encoding extended option Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 11/11] tests: f_bad_fname: Test fixes of invalid filenames and duplicates Gabriel Krisman Bertazi
2020-03-25 21:18 ` [PATCH e2fsprogs 11/11] tests: f_bad_fname: Validate fix " Gabriel Krisman Bertazi
2020-03-26 17:25   ` Gabriel Krisman Bertazi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).