Re: [PATCH v2] generic/062: filter setfattr --restore symlink-safety warning
Zorro Lang <[email protected]> Fri, 17 Jul 2026 17:22:11 +0800
| Newsgroups | org.kernel.vger.fstests |
|---|---|
| Message-ID | <alnu6gq9a1bJJF8b@zlang-mailbox> |
On Mon, Jul 06, 2026 at 09:13:26PM +0200, Avinesh Kumar wrote: > From: Avinesh Kumar <[email protected]> > > attr 2.6.0 (CVE-2026-54371 fix)[0] makes "setfattr --restore" warn when > used without -P and the dump contains a symlink, which generic/062 does. > The warning leaks into the compared output via the setfattr() wrapper > and fails the test. Adding -P isn't portable (older attr doesn't have it), > so filter the warning in the wrapper instead. > > [0] https://cgit.git.savannah.nongnu.org/cgit/attr.git/commit/?id=3fb06b9ba314d37035d0877e6de313de754f1ac8 For generic/062, modifying the g/062 itself seems fine and logical, as _extend_test_bed() explicitly introduces complex symlink paths for testing purposes. Have you run xfstests on XFS with attr 2.6.0? There are quite a few setfattr --restore invocations in common/populate. If those also trigger the new unsafe restore warnings, we might want to consider introducing a helper function, such as _setfattr or _setfattr_restore to handle to -h and -P things. Reviewed-by: Zorro Lang <[email protected]> > > Signed-off-by: Avinesh Kumar <[email protected]> > --- > tests/generic/062 | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/tests/generic/062 b/tests/generic/062 > index 89659040..ddf0a478 100755 > --- a/tests/generic/062 > +++ b/tests/generic/062 > @@ -30,7 +30,12 @@ getfattr() > > setfattr() > { > - $SETFATTR_PROG $@ 2>&1 | _filter_scratch > + # attr >= 2.6.0 (CVE-2026-54371 fix) warns that "setfattr --restore" without > + # -P/--physical is unsafe because it can traverse symlinks. Older attr does > + # not accept -P, so just filter the warning to stay version-agnostic. > + $SETFATTR_PROG $@ 2>&1 | \ > + sed -e '/^Warning: option --restore=file is unsafe without option/d' | \ > + _filter_scratch > } > > _create_test_bed() > -- > 2.54.0 >