[GIT PULL 7/7] xfs_scrub: handle emoji filenames better

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Andrey,

Please pull this branch with changes for xfsprogs for 6.14-rc1.

As usual, I did a test-merge with the main upstream branch as of a few
minutes ago, and didn't see any conflicts.  Please let me know if you
encounter any problems.

The following changes since commit 8c4e704f370e0361c3e3dae5f8751ff580fa95a4:

xfs_db: add command to copy directory trees out of filesystems (2025-02-25 09:16:03 -0800)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfsprogs-dev.git tags/scrub-emoji-fixes-6.14_2025-02-25

for you to fetch changes up to 195777d3d64f3a567da56f2e63f073448b8995d0:

xfs_scrub: use the display mountpoint for reporting file corruptions (2025-02-25 09:16:03 -0800)

----------------------------------------------------------------
xfs_scrub: handle emoji filenames better [7/7]

Ted told me about some bugs that the ext4 Unicode casefolding code has
suffered over the past year -- they tried stripping out zero width
joiner (ZWJ) codepoints to try to eliminate casefolded lookup comparison
issues, but doing so corrupts compound emoji handling in filenames.

XFS of course persists names with byte accuracy (aka it doesn't do
casefolding or normalization) so it's not affected by those problems.
However, xfs_scrub has the ability to warn about confusing names and
other utf8 shenanigans so I decided to expand fstests.

I wired up Ted's confusing names into generic/453 in fstests and it
promptly crashed when trying to warn about filenames that consist
entirely of compound emoji (e.g. heart + zwj + bandaid render as a heart
with a bandaid over it).  So there's a patch to fix that buffer
overflow.  There's a second patch to avoid complaining about ZWJ unless
it results in confusing names in the same namespace.  The third patch
fixes a minor reporting problem when parent pointers are enabled.

Signed-off-by: "Darrick J. Wong" <djwong@xxxxxxxxxx>

----------------------------------------------------------------
Darrick J. Wong (3):
xfs_scrub: fix buffer overflow in string_escape
xfs_scrub: don't warn about zero width joiner control characters
xfs_scrub: use the display mountpoint for reporting file corruptions

scrub/common.c   | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++--
scrub/unicrash.c | 10 ++++++++--
2 files changed, 58 insertions(+), 4 deletions(-)





[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux