Fix a tiny mistake in last patch

It was affecting hardlink extraction w/o visible consequences.

Resolves: RHEL-121245
This commit is contained in:
Pavel Cahyna 2025-12-19 17:08:50 +01:00
parent 7da0138a60
commit de366f7469

View File

@ -1,6 +1,6 @@
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/aclocal.m4 tar-1.35-rhel-10.2-clean/aclocal.m4
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/aclocal.m4 tar-1.35-rhel-10.2-clean/aclocal.m4
--- tar-1.35-rhel-10.1/aclocal.m4 2025-12-03 14:00:07.905275300 +0100
+++ tar-1.35-rhel-10.2-clean/aclocal.m4 2025-12-03 15:02:33.841903373 +0100
+++ tar-1.35-rhel-10.2-clean/aclocal.m4 2025-12-19 16:56:06.180341993 +0100
@@ -1339,6 +1339,7 @@
m4_include([m4/open-slash.m4])
m4_include([m4/open.m4])
@ -9,188 +9,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
m4_include([m4/opendir.m4])
m4_include([m4/parse-datetime.m4])
m4_include([m4/pathmax.m4])
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/configure tar-1.35-rhel-10.2-clean/configure
--- tar-1.35-rhel-10.1/configure 2025-12-03 14:00:09.533325171 +0100
+++ tar-1.35-rhel-10.2-clean/configure 2025-12-03 15:02:35.473950516 +0100
@@ -1070,6 +1070,8 @@
PARSE_DATETIME_BISON
GL_COND_OBJ_OPENDIR_FALSE
GL_COND_OBJ_OPENDIR_TRUE
+GL_COND_OBJ_OPENAT2_FALSE
+GL_COND_OBJ_OPENAT2_TRUE
GL_COND_OBJ_OPENAT_FALSE
GL_COND_OBJ_OPENAT_TRUE
GL_COND_OBJ_OPEN_FALSE
@@ -1587,6 +1589,7 @@
NEXT_FCNTL_H
GL_GNULIB_MDA_OPEN
GL_GNULIB_MDA_CREAT
+GL_GNULIB_OPENAT2
GL_GNULIB_OPENAT
GL_GNULIB_OPEN
GL_GNULIB_NONBLOCKING
@@ -1598,6 +1601,7 @@
REPLACE_OPEN
REPLACE_FCNTL
REPLACE_CREAT
+HAVE_OPENAT2
HAVE_OPENAT
HAVE_FCNTL
GL_COND_OBJ_FCHOWNAT_FALSE
@@ -4535,6 +4539,9 @@
as_fn_append ac_func_c_list " mprotect HAVE_MPROTECT"
as_fn_append ac_func_c_list " mkdirat HAVE_MKDIRAT"
as_fn_append ac_func_c_list " mknod HAVE_MKNOD"
+as_fn_append ac_func_c_list " openat2 HAVE_OPENAT2"
+as_fn_append ac_func_c_list " fstatfs HAVE_FSTATFS"
+as_fn_append ac_header_c_list " sys/vfs.h sys_vfs_h HAVE_SYS_VFS_H"
as_fn_append ac_func_c_list " pipe HAVE_PIPE"
as_fn_append ac_header_c_list " priv.h priv_h HAVE_PRIV_H"
as_fn_append ac_header_c_list " malloc.h malloc_h HAVE_MALLOC_H"
@@ -8292,6 +8299,7 @@
# Code from module openat-die:
# Code from module openat-h:
# Code from module openat-safer:
+ # Code from module openat2:
# Code from module opendir:
# Code from module opendirat:
# Code from module parse-datetime:
@@ -15189,6 +15197,7 @@
HAVE_FCNTL=1;
HAVE_OPENAT=1;
+ HAVE_OPENAT2=0;
REPLACE_CREAT=0;
REPLACE_FCNTL=0;
REPLACE_OPEN=0;
@@ -15217,6 +15226,10 @@
+ GL_GNULIB_OPENAT2=0
+
+
+
GL_GNULIB_MDA_CREAT=1
@@ -17899,8 +17912,8 @@
LIBS=$save_LIBS
test $gl_pthread_api = yes && break
done
- echo "$as_me:17902: gl_pthread_api=$gl_pthread_api" >&5
- echo "$as_me:17903: LIBPTHREAD=$LIBPTHREAD" >&5
+ echo "$as_me:17915: gl_pthread_api=$gl_pthread_api" >&5
+ echo "$as_me:17916: LIBPTHREAD=$LIBPTHREAD" >&5
gl_pthread_in_glibc=no
# On Linux with glibc >= 2.34, libc contains the fully functional
@@ -17926,7 +17939,7 @@
;;
esac
- echo "$as_me:17929: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
+ echo "$as_me:17942: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5
# Test for libpthread by looking for pthread_kill. (Not pthread_self,
# since it is defined as a macro on OSF/1.)
@@ -18080,7 +18093,7 @@
fi
fi
- echo "$as_me:18083: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
+ echo "$as_me:18096: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5
fi
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5
printf %s "checking whether POSIX threads API is available... " >&6; }
@@ -22254,6 +22267,9 @@
+
+
+
: ${YACC='bison -o y.tab.c'}
@@ -39815,6 +39831,76 @@
+
+
+
+
+ case $ac_cv_func_openat2 in #(
+ yes) :
+ HAVE_OPENAT2=1 ;; #(
+ *) :
+ ;;
+esac
+
+
+ if test $HAVE_OPENAT2 = 0; then
+ GL_COND_OBJ_OPENAT2_TRUE=
+ GL_COND_OBJ_OPENAT2_FALSE='#'
+else
+ GL_COND_OBJ_OPENAT2_TRUE='#'
+ GL_COND_OBJ_OPENAT2_FALSE=
+fi
+:
+ if test -z "${GL_COND_OBJ_OPENAT2_TRUE}" && test -z "${GL_COND_OBJ_OPENAT2_FALSE}"; then
+ GL_COND_OBJ_OPENAT2_TRUE='#'
+ GL_COND_OBJ_OPENAT2_FALSE='#'
+ fi
+
+ if test -z "$GL_COND_OBJ_OPENAT_TRUE"; then :
+
+
+
+
+ case $ac_cv_func_fstatfs,$ac_cv_header_sys_vfs_h in #(
+ yes,yes) :
+ ac_fn_c_check_member "$LINENO" "struct statfs" "f_type" "ac_cv_member_struct_statfs_f_type" "$ac_includes_default
+ #include <sys/vfs.h>
+
+"
+if test "x$ac_cv_member_struct_statfs_f_type" = xyes
+then :
+
+printf "%s\n" "#define HAVE_STRUCT_STATFS_F_TYPE 1" >>confdefs.h
+
+
+fi
+ ;; #(
+ *) :
+ ;;
+esac
+
+
+fi
+
+
+
+
+
+
+
+
+
+ GL_GNULIB_OPENAT2=1
+
+
+
+
+
+printf "%s\n" "#define GNULIB_TEST_OPENAT2 1" >>confdefs.h
+
+
+
+
ac_fn_c_check_func "$LINENO" "opendir" "ac_cv_func_opendir"
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/doc/tar.texi tar-1.35-rhel-10.2-clean/doc/tar.texi
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/doc/tar.texi tar-1.35-rhel-10.2-clean/doc/tar.texi
--- tar-1.35-rhel-10.1/doc/tar.texi 2025-12-03 13:55:36.036944349 +0100
+++ tar-1.35-rhel-10.2-clean/doc/tar.texi 2025-12-03 14:40:02.627364006 +0100
@@ -12952,26 +12952,31 @@
@ -259,7 +78,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
@item
Do not let untrusted users access files extracted from untrusted
archives without checking first for problems such as setuid programs.
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/gnu/fcntl.in.h tar-1.35-rhel-10.2-clean/gnu/fcntl.in.h
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/gnu/fcntl.in.h tar-1.35-rhel-10.2-clean/gnu/fcntl.in.h
--- tar-1.35-rhel-10.1/gnu/fcntl.in.h 2025-12-03 13:59:51.584775360 +0100
+++ tar-1.35-rhel-10.2-clean/gnu/fcntl.in.h 2025-12-03 15:02:17.653435608 +0100
@@ -238,6 +238,46 @@
@ -325,7 +144,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
#endif /* _@GUARD_PREFIX@_FCNTL_H */
#endif /* _@GUARD_PREFIX@_FCNTL_H */
#endif
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/gnu/Makefile.am tar-1.35-rhel-10.2-clean/gnu/Makefile.am
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/gnu/Makefile.am tar-1.35-rhel-10.2-clean/gnu/Makefile.am
--- tar-1.35-rhel-10.1/gnu/Makefile.am 2025-12-03 14:00:01.585081698 +0100
+++ tar-1.35-rhel-10.2-clean/gnu/Makefile.am 2025-12-03 15:02:27.665724946 +0100
@@ -86,6 +86,7 @@
@ -364,7 +183,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
## begin gnulib module opendir
if GL_COND_OBJ_OPENDIR
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/gnu/openat2.c tar-1.35-rhel-10.2-clean/gnu/openat2.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/gnu/openat2.c tar-1.35-rhel-10.2-clean/gnu/openat2.c
--- tar-1.35-rhel-10.1/gnu/openat2.c 1970-01-01 01:00:00.000000000 +0100
+++ tar-1.35-rhel-10.2-clean/gnu/openat2.c 2025-12-03 15:02:17.941443932 +0100
@@ -0,0 +1,596 @@
@ -964,7 +783,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
+ }
+ return r;
+}
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/m4/fcntl_h.m4 tar-1.35-rhel-10.2-clean/m4/fcntl_h.m4
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/m4/fcntl_h.m4 tar-1.35-rhel-10.2-clean/m4/fcntl_h.m4
--- tar-1.35-rhel-10.1/m4/fcntl_h.m4 2025-12-03 13:59:52.312797661 +0100
+++ tar-1.35-rhel-10.2-clean/m4/fcntl_h.m4 2025-12-03 15:02:18.381456650 +0100
@@ -1,6 +1,6 @@
@ -1002,7 +821,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
REPLACE_CREAT=0; AC_SUBST([REPLACE_CREAT])
REPLACE_FCNTL=0; AC_SUBST([REPLACE_FCNTL])
REPLACE_OPEN=0; AC_SUBST([REPLACE_OPEN])
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/m4/gnulib-comp.m4 tar-1.35-rhel-10.2-clean/m4/gnulib-comp.m4
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/m4/gnulib-comp.m4 tar-1.35-rhel-10.2-clean/m4/gnulib-comp.m4
--- tar-1.35-rhel-10.1/m4/gnulib-comp.m4 2025-12-03 13:59:54.620868365 +0100
+++ tar-1.35-rhel-10.2-clean/m4/gnulib-comp.m4 2025-12-03 15:02:20.701523703 +0100
@@ -237,6 +237,7 @@
@ -1043,7 +862,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
m4/opendir.m4
m4/parse-datetime.m4
m4/pathmax.m4
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/m4/openat2.m4 tar-1.35-rhel-10.2-clean/m4/openat2.m4
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/m4/openat2.m4 tar-1.35-rhel-10.2-clean/m4/openat2.m4
--- tar-1.35-rhel-10.1/m4/openat2.m4 1970-01-01 01:00:00.000000000 +0100
+++ tar-1.35-rhel-10.2-clean/m4/openat2.m4 2025-12-03 15:02:18.549461506 +0100
@@ -0,0 +1,33 @@
@ -1080,7 +899,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
+ #include <sys/vfs.h>
+ ]])])
+])
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/NEWS tar-1.35-rhel-10.2-clean/NEWS
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/NEWS tar-1.35-rhel-10.2-clean/NEWS
--- tar-1.35-rhel-10.1/NEWS 2025-12-03 13:55:36.028944104 +0100
+++ tar-1.35-rhel-10.2-clean/NEWS 2025-12-03 14:40:02.623363898 +0100
@@ -1,6 +1,17 @@
@ -1102,7 +921,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
version 1.35 - Sergey Poznyakoff, 2023-07-18
* Fail when building GNU tar, if the platform supports 64-bit time_t
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/common.h tar-1.35-rhel-10.2-clean/src/common.h
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/common.h tar-1.35-rhel-10.2-clean/src/common.h
--- tar-1.35-rhel-10.1/src/common.h 2025-12-03 13:55:36.040944472 +0100
+++ tar-1.35-rhel-10.2-clean/src/common.h 2025-12-03 14:40:02.631364114 +0100
@@ -401,7 +401,7 @@
@ -1141,7 +960,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
int chdir_count (void);
void close_diag (char const *name);
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/compare.c tar-1.35-rhel-10.2-clean/src/compare.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/compare.c tar-1.35-rhel-10.2-clean/src/compare.c
--- tar-1.35-rhel-10.1/src/compare.c 2025-12-03 13:55:36.040944472 +0100
+++ tar-1.35-rhel-10.2-clean/src/compare.c 2025-12-03 14:40:02.631364114 +0100
@@ -218,7 +218,9 @@
@ -1196,7 +1015,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
if (fd < 0)
{
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/create.c tar-1.35-rhel-10.2-clean/src/create.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/create.c tar-1.35-rhel-10.2-clean/src/create.c
--- tar-1.35-rhel-10.1/src/create.c 2025-12-03 13:55:36.040944472 +0100
+++ tar-1.35-rhel-10.2-clean/src/create.c 2025-12-03 14:40:02.631364114 +0100
@@ -1376,8 +1376,10 @@
@ -1395,7 +1214,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
}
else if (S_ISSOCK (st->stat.st_mode))
{
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/exclist.c tar-1.35-rhel-10.2-clean/src/exclist.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/exclist.c tar-1.35-rhel-10.2-clean/src/exclist.c
--- tar-1.35-rhel-10.1/src/exclist.c 2025-12-03 13:55:36.040944472 +0100
+++ tar-1.35-rhel-10.2-clean/src/exclist.c 2025-12-03 14:40:02.631364114 +0100
@@ -79,7 +79,7 @@
@ -1421,9 +1240,9 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
if ((result = excluded_file_name (ep->excluded, rname)))
break;
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/extract.c tar-1.35-rhel-10.2-clean/src/extract.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/extract.c tar-1.35-rhel-10.2-clean/src/extract.c
--- tar-1.35-rhel-10.1/src/extract.c 2025-12-03 13:55:36.040944472 +0100
+++ tar-1.35-rhel-10.2-clean/src/extract.c 2025-12-03 14:40:02.635364223 +0100
+++ tar-1.35-rhel-10.2-clean/src/extract.c 2025-12-19 16:50:16.334289994 +0100
@@ -246,7 +246,8 @@
if (result == 0 || implemented (errno))
return result;
@ -1694,7 +1513,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
+ && fstatat (f.fd, f.base, &st, AT_SYMLINK_NOFOLLOW) == 0
+ && st1.st_dev == st.st_dev
+ && st1.st_ino == st.st_ino))
+ return true;
+ return 0;
errno = e;
}
while ((rc = maybe_recoverable (file_name, false, &interdir_made))
@ -1815,7 +1634,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
e = errno;
}
break;
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/misc.c tar-1.35-rhel-10.2-clean/src/misc.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/misc.c tar-1.35-rhel-10.2-clean/src/misc.c
--- tar-1.35-rhel-10.1/src/misc.c 2025-12-03 13:55:36.040944472 +0100
+++ tar-1.35-rhel-10.2-clean/src/misc.c 2025-12-03 14:40:02.635364223 +0100
@@ -269,6 +269,30 @@
@ -2341,7 +2160,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
if (fd < 0)
{
if (!must_exist && errno == ENOENT)
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/names.c tar-1.35-rhel-10.2-clean/src/names.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/names.c tar-1.35-rhel-10.2-clean/src/names.c
--- tar-1.35-rhel-10.1/src/names.c 2025-12-03 13:55:36.040944472 +0100
+++ tar-1.35-rhel-10.2-clean/src/names.c 2025-12-03 14:40:02.635364223 +0100
@@ -1797,8 +1797,9 @@
@ -2356,7 +2175,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
if (dir_fd < 0)
open_diag (name->name);
else
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/tar.c tar-1.35-rhel-10.2-clean/src/tar.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/tar.c tar-1.35-rhel-10.2-clean/src/tar.c
--- tar-1.35-rhel-10.1/src/tar.c 2025-12-03 13:55:36.044944594 +0100
+++ tar-1.35-rhel-10.2-clean/src/tar.c 2025-12-03 14:40:02.635364223 +0100
@@ -2614,16 +2614,29 @@
@ -2398,7 +2217,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
}
fstatat_flags = dereference_option ? 0 : AT_SYMLINK_NOFOLLOW;
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/unlink.c tar-1.35-rhel-10.2-clean/src/unlink.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/unlink.c tar-1.35-rhel-10.2-clean/src/unlink.c
--- tar-1.35-rhel-10.1/src/unlink.c 2025-12-03 13:55:36.044944594 +0100
+++ tar-1.35-rhel-10.2-clean/src/unlink.c 2025-12-03 14:40:02.635364223 +0100
@@ -117,7 +117,10 @@
@ -2443,7 +2262,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
dunlink_reclaim (p);
dunlink_count--;
p = next;
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/update.c tar-1.35-rhel-10.2-clean/src/update.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/update.c tar-1.35-rhel-10.2-clean/src/update.c
--- tar-1.35-rhel-10.1/src/update.c 2025-12-03 13:55:36.044944594 +0100
+++ tar-1.35-rhel-10.2-clean/src/update.c 2025-12-03 14:40:02.635364223 +0100
@@ -49,7 +49,8 @@
@ -2456,7 +2275,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
if (handle < 0)
{
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/xattrs.c tar-1.35-rhel-10.2-clean/src/xattrs.c
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/src/xattrs.c tar-1.35-rhel-10.2-clean/src/xattrs.c
--- tar-1.35-rhel-10.1/src/xattrs.c 2025-12-03 13:55:36.044944594 +0100
+++ tar-1.35-rhel-10.2-clean/src/xattrs.c 2025-12-03 14:40:02.635364223 +0100
@@ -299,7 +299,8 @@
@ -2520,7 +2339,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
sysname = "lsetfileconat";
}
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/tests/extrac31.at tar-1.35-rhel-10.2-clean/tests/extrac31.at
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/tests/extrac31.at tar-1.35-rhel-10.2-clean/tests/extrac31.at
--- tar-1.35-rhel-10.1/tests/extrac31.at 1970-01-01 01:00:00.000000000 +0100
+++ tar-1.35-rhel-10.2-clean/tests/extrac31.at 2025-12-03 14:40:02.639364330 +0100
@@ -0,0 +1,55 @@
@ -2579,7 +2398,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
+tar: Exiting with failure status due to previous errors
+])
+AT_CLEANUP
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/tests/Makefile.am tar-1.35-rhel-10.2-clean/tests/Makefile.am
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/tests/Makefile.am tar-1.35-rhel-10.2-clean/tests/Makefile.am
--- tar-1.35-rhel-10.1/tests/Makefile.am 2025-12-03 13:55:36.044944594 +0100
+++ tar-1.35-rhel-10.2-clean/tests/Makefile.am 2025-12-03 14:40:02.635364223 +0100
@@ -126,6 +126,7 @@
@ -2590,7 +2409,7 @@ diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnuli
filerem01.at\
filerem02.at\
dirrem01.at\
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' --unidirectional-new-file -ur tar-1.35-rhel-10.1/tests/testsuite.at tar-1.35-rhel-10.2-clean/tests/testsuite.at
diff -x '*~' -x autom4te.cache -x gnulib -x build-aux -x gnulib.modules -x gnulib-cache.m4 -x .git -x '*.in' -x configure -x .gitmodules --unidirectional-new-file -ur tar-1.35-rhel-10.1/tests/testsuite.at tar-1.35-rhel-10.2-clean/tests/testsuite.at
--- tar-1.35-rhel-10.1/tests/testsuite.at 2025-12-03 13:55:36.052944840 +0100
+++ tar-1.35-rhel-10.2-clean/tests/testsuite.at 2025-12-03 14:40:02.643364439 +0100
@@ -350,6 +350,7 @@