From 511dcd1a78e9a4c24b6f3d7a2a4fe2941106efff615f5e72e04223a728562d05 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Tue, 9 Jun 2020 11:54:52 +0000 Subject: [PATCH] - add https://salsa.debian.org/clint/fakeroot/-/commit/55e12cb8b02d65b9fc9c3e607794db5e01e2f94f.diff - skip testsuite on Tumbleweed until underlying issue has been fixed OBS-URL: https://build.opensuse.org/package/show/devel:tools/fakeroot?expand=0&rev=22 --- fakeroot-1.24-fix-chown.patch | 22 ++++++++++++++++++++++ fakeroot.changes | 6 ++++++ fakeroot.spec | 4 ++++ 3 files changed, 32 insertions(+) create mode 100644 fakeroot-1.24-fix-chown.patch diff --git a/fakeroot-1.24-fix-chown.patch b/fakeroot-1.24-fix-chown.patch new file mode 100644 index 0000000..a12c612 --- /dev/null +++ b/fakeroot-1.24-fix-chown.patch @@ -0,0 +1,22 @@ +diff --git a/libfakeroot.c b/libfakeroot.c +index f867758febd679370e70b493f1003fd3c9450573..977a4d933fa590fc1faefbe63a25e4fad6ebfcf6 100644 +--- a/libfakeroot.c ++++ b/libfakeroot.c +@@ -880,7 +880,7 @@ int fchownat(int dir_fd, const char *path, uid_t owner, gid_t group, int flags) + /* If AT_SYMLINK_NOFOLLOW is set in the fchownat call it should + be when we stat it. */ + INT_STRUCT_STAT st; +- r=INT_NEXT_FSTATAT(dir_fd, path, &st, (flags & AT_SYMLINK_NOFOLLOW)); ++ r=INT_NEXT_FSTATAT(dir_fd, path, &st, (flags & (AT_SYMLINK_NOFOLLOW | AT_EMPTY_PATH | AT_NO_AUTOMOUNT))); + + if(r) + return(r); +@@ -1017,7 +1017,7 @@ int fchmodat(int dir_fd, const char *path, mode_t mode, int flags) { + + /* If AT_SYMLINK_NOFOLLOW is set in the fchownat call it should + be when we stat it. */ +- r=INT_NEXT_FSTATAT(dir_fd, path, &st, flags & AT_SYMLINK_NOFOLLOW); ++ r=INT_NEXT_FSTATAT(dir_fd, path, &st, flags & (AT_SYMLINK_NOFOLLOW | AT_EMPTY_PATH | AT_NO_AUTOMOUNT)); + + if(r) + return(r); diff --git a/fakeroot.changes b/fakeroot.changes index 3dd5bbc..99c61c9 100644 --- a/fakeroot.changes +++ b/fakeroot.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Jun 9 11:54:31 UTC 2020 - Dirk Mueller + +- add https://salsa.debian.org/clint/fakeroot/-/commit/55e12cb8b02d65b9fc9c3e607794db5e01e2f94f.diff +- skip testsuite on Tumbleweed until underlying issue has been fixed + ------------------------------------------------------------------- Wed Jan 22 11:14:14 UTC 2020 - Dominique Leuenberger diff --git a/fakeroot.spec b/fakeroot.spec index 8f2068b..5ce50d0 100644 --- a/fakeroot.spec +++ b/fakeroot.spec @@ -32,6 +32,8 @@ Patch3: %{name}-1.21-hide-dlsym-error.patch # PATCH-FIX-UPSTREAM fakeroot-1.21-fix-shell-in-fakeroot.patch (deb#828810) Patch4: %{name}-1.21-fix-shell-in-fakeroot Patch5: fakeroot-drop-tartest.patch +# PATCH-FIX-UPSTREAM https://salsa.debian.org/clint/fakeroot/-/commit/55e12cb8b02d65b9fc9c3e607794db5e01e2f94f.diff +Patch6: fakeroot-1.24-fix-chown.patch BuildRequires: automake BuildRequires: fdupes # user(daemon)/group(sys) is required for t.tar testsuite @@ -108,9 +110,11 @@ mkdir -p %{buildroot}%{_sysconfdir}/alternatives touch %{buildroot}%{_sysconfdir}/alternatives/{faked,fakeroot}{,.1%{ext_man}} %check +%if %{suse_version} < 1315 for type in sysv tcp; do make %{?_smp_mflags} -C obj-$type check done +%endif %post %{_sbindir}/update-alternatives --install %{_bindir}/fakeroot fakeroot %{_bindir}/fakeroot-sysv 20 \