parent
81bb0ba0de
commit
750a03c708
|
@ -0,0 +1,60 @@
|
||||||
|
From 7ce89c695e76ec41fcebd83f8b728f63b0361a2d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Renaud Metrich <rmetrich@redhat.com>
|
||||||
|
Date: Thu, 5 Oct 2023 11:17:51 +0200
|
||||||
|
Subject: [PATCH] setfacl: preserve the failed status when processing multiple
|
||||||
|
files
|
||||||
|
|
||||||
|
Resolves the following bug:
|
||||||
|
```
|
||||||
|
$ mkdir FOO
|
||||||
|
$ setfacl -m d:g:user:rwX -m g:user:rwX ./FOO/bar ./FOO
|
||||||
|
setfacl: ./FOO/bar: No such file or directory
|
||||||
|
$ echo $?
|
||||||
|
0
|
||||||
|
```
|
||||||
|
|
||||||
|
(Cleanup added while applying.)
|
||||||
|
|
||||||
|
Upstream-commit: 7ce89c695e76ec41fcebd83f8b728f63b0361a2d
|
||||||
|
---
|
||||||
|
tools/setfacl.c | 10 +++++++---
|
||||||
|
1 file changed, 7 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/tools/setfacl.c b/tools/setfacl.c
|
||||||
|
index fd0bf2e..4140276 100644
|
||||||
|
--- a/tools/setfacl.c
|
||||||
|
+++ b/tools/setfacl.c
|
||||||
|
@@ -332,7 +332,7 @@ int main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
int opt;
|
||||||
|
int saw_files = 0;
|
||||||
|
- int status = 0;
|
||||||
|
+ int status = 0, status2;
|
||||||
|
FILE *file;
|
||||||
|
int which;
|
||||||
|
int lineno;
|
||||||
|
@@ -555,7 +555,9 @@ int main(int argc, char *argv[])
|
||||||
|
goto synopsis;
|
||||||
|
saw_files = 1;
|
||||||
|
|
||||||
|
- status = next_file(optarg, seq);
|
||||||
|
+ status2 = next_file(optarg, seq);
|
||||||
|
+ if (status == 0)
|
||||||
|
+ status = status2;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'B': /* restore ACL backup */
|
||||||
|
@@ -642,7 +644,9 @@ int main(int argc, char *argv[])
|
||||||
|
goto synopsis;
|
||||||
|
saw_files = 1;
|
||||||
|
|
||||||
|
- status = next_file(argv[optind++], seq);
|
||||||
|
+ status2 = next_file(argv[optind++], seq);
|
||||||
|
+ if (status == 0)
|
||||||
|
+ status = status2;
|
||||||
|
}
|
||||||
|
if (!saw_files)
|
||||||
|
goto synopsis;
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
9
acl.spec
9
acl.spec
|
@ -1,7 +1,7 @@
|
||||||
Summary: Access control list utilities
|
Summary: Access control list utilities
|
||||||
Name: acl
|
Name: acl
|
||||||
Version: 2.2.53
|
Version: 2.2.53
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
BuildRequires: gawk
|
BuildRequires: gawk
|
||||||
BuildRequires: gettext
|
BuildRequires: gettext
|
||||||
BuildRequires: libattr-devel
|
BuildRequires: libattr-devel
|
||||||
|
@ -12,6 +12,10 @@ Source: https://download-mirror.savannah.gnu.org/releases/acl/acl-%{version}.tar
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
URL: https://savannah.nongnu.org/projects/acl
|
URL: https://savannah.nongnu.org/projects/acl
|
||||||
|
|
||||||
|
# preserve failed setfacl return code (RHEL-3909)
|
||||||
|
# https://git.savannah.nongnu.org/cgit/acl.git/commit/?id=7ce89c695e76ec41fcebd83f8b728f63b0361a2d
|
||||||
|
Patch1: 0001-acl-2.2.53-setfacl-preserve-failed-status.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
This package contains the getfacl and setfacl utilities needed for
|
This package contains the getfacl and setfacl utilities needed for
|
||||||
manipulating access control lists.
|
manipulating access control lists.
|
||||||
|
@ -113,6 +117,9 @@ rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}*
|
||||||
%{_libdir}/libacl.so.*
|
%{_libdir}/libacl.so.*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Oct 06 2023 Lukáš Zaoral <lzaoral@redhat.com> - 2.2.53-2
|
||||||
|
- preserve failed setfacl return code (RHEL-3909)
|
||||||
|
|
||||||
* Mon Jul 02 2018 Kamil Dudka <kdudka@redhat.com> 2.2.53-1
|
* Mon Jul 02 2018 Kamil Dudka <kdudka@redhat.com> 2.2.53-1
|
||||||
- new upstream release
|
- new upstream release
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue