From: DaeMyung Kang <charsyam@gmail.com>
To: Namjae Jeon <linkinjeon@kernel.org>, Hyunchul Lee <hyc.lee@gmail.com>
Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
DaeMyung Kang <charsyam@gmail.com>
Subject: [PATCH v4 0/6] ntfs: validate attribute values on lookup
Date: Sat, 30 May 2026 23:35:08 +0900 [thread overview]
Message-ID: <20260530143514.3083601-1-charsyam@gmail.com> (raw)
This v4 supersedes the previous single-patch v3. Per review, it expands
the lookup-time attribute value validation into a series so $VOLUME_NAME
and $INDEX_ROOT can be validated safely.
The first patch keeps the original $FILE_NAME corruption fix and moves
the duplicated non-resident mapping-pairs metadata checks into the common
attribute value validator. It also keeps resident value matching in the
external attribute lookup path on the actual value length and fixes the
matching attrlist duplicate check for resident attributes. The next
patches prepare the volume label write and mount read paths to cope with
a rejected $VOLUME_NAME, add $VOLUME_NAME validation, fix the
ntfs_ir_truncate() shrink ordering issue, and then enable $INDEX_ROOT
validation.
Changes since v3:
- Expand the single patch into a 6-patch series as requested.
- Keep corruption messages using numeric attribute types and drop the
attribute type name helper.
- Move non-resident mapping-pairs metadata validation into the shared
ntfs_attr_value_is_valid() helper.
- Preserve resident @val matching in ntfs_external_attr_find() using the
actual resident value length, and avoid reading the non-resident
lowest_vcn union member when checking resident attrlist duplicates.
- Make ntfs_write_volume_label() add a replacement only after successful
removal or after -ENOENT, and propagate other lookup/removal errors.
- Reinitialize the mount-time search context before the
$VOLUME_INFORMATION lookup, since a rejected $VOLUME_NAME leaves the
context in an undefined state.
- Add $VOLUME_NAME-specific validation, and reject non-resident
$VOLUME_NAME records like non-resident $FILE_NAME.
- Include the ntfs_ir_truncate() shrink ordering fix.
- Add $INDEX_ROOT-specific validation on top of the shrink fix.
DaeMyung Kang (6):
ntfs: validate attribute values on lookup
ntfs: do not replace volume name after lookup errors
ntfs: reinit search context before volume information lookup
ntfs: validate resident volume name values on lookup
ntfs: update index root allocated size before shrink
ntfs: validate resident index root values on lookup
fs/ntfs/attrib.c | 203 +++++++++++++++++++++++++++++++++++++----------------
fs/ntfs/attrlist.c | 11 ++-
fs/ntfs/index.c | 18 ++++-
fs/ntfs/super.c | 12 +++-
4 files changed, 174 insertions(+), 70 deletions(-)
base-commit: 8553f258a57607dbde0b8baab47459aa28eb92f7
--
2.43.0
next reply other threads:[~2026-05-30 14:35 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-30 14:35 DaeMyung Kang [this message]
2026-05-30 14:35 ` [PATCH v4 1/6] " DaeMyung Kang
2026-05-30 14:35 ` [PATCH v4 2/6] ntfs: do not replace volume name after lookup errors DaeMyung Kang
2026-05-30 14:35 ` [PATCH v4 3/6] ntfs: reinit search context before volume information lookup DaeMyung Kang
2026-05-30 14:35 ` [PATCH v4 4/6] ntfs: validate resident volume name values on lookup DaeMyung Kang
2026-05-30 14:35 ` [PATCH v4 5/6] ntfs: update index root allocated size before shrink DaeMyung Kang
2026-05-30 14:35 ` [PATCH v4 6/6] ntfs: validate resident index root values on lookup DaeMyung Kang
2026-06-01 4:37 ` Namjae Jeon
2026-06-01 7:51 ` CharSyam
2026-06-01 8:46 ` Namjae Jeon
2026-06-06 1:40 ` Namjae Jeon
2026-06-05 15:30 ` [PATCH v4 0/6] ntfs: validate attribute " Namjae Jeon
2026-06-07 0:00 ` CharSyam
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260530143514.3083601-1-charsyam@gmail.com \
--to=charsyam@gmail.com \
--cc=hyc.lee@gmail.com \
--cc=linkinjeon@kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome