CVE-2026-72198: ntfs: reject non-resident records for resident-only attributes
In the Linux kernel, the following vulnerability has been resolved:
ntfs: reject non-resident records for resident-only attributes
The shared lookup-time attribute validator rejects non-resident $FILENAME and $VOLUMENAME records because their formats require resident values and callers handle returned records as resident attributes. Other resident-only attribute types still pass through the generic non-resident mapping-pairs checks.
That leaves real resident/non-resident union confusion paths. Inode load looks up $STANDARDINFORMATION and then reads data.resident.valueoffset without checking a->nonresident. ntfsinodesyncstandardinformation() does the same when updating the standard information value. ntfswritevolumeflags() also looks up $VOLUMEINFORMATION and reads data.resident.valueoffset directly. $INDEXROOT callers in dir.c and index.c depend on the same lookup contract before consuming the resident index root value.
Reject non-resident records for all resident-only attribute types in the shared validator. Keep the existing $FILENAME and $VOLUMENAME behavior, but factor it through a helper and extend it to $STANDARDINFORMATION, $OBJECTID, $VOLUMEINFORMATION, $INDEXROOT, and $EAINFORMATION. For $OBJECTID and $EAINFORMATION this is contract hardening for resident-only formats; this patch only rejects the non-resident form and does not add new resident value validation for those types.