Compare commits
No commits in common. "c8" and "c8s" have entirely different histories.
|
@ -1 +1 @@
|
||||||
6c9e46602adece1c2dae91ed065899d7f810bf01 SOURCES/acl-2.2.53.tar.gz
|
6c9e46602adece1c2dae91ed065899d7f810bf01 acl-2.2.53.tar.gz
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
SOURCES/acl-2.2.53.tar.gz
|
/acl-2.2.*.tar.gz
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -0,0 +1,44 @@
|
||||||
|
From 085cc4ff56857d234e80f37d0316c13eb5718696 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kamil Dudka <kdudka@redhat.com>
|
||||||
|
Date: Tue, 3 Jul 2018 10:46:58 +0200
|
||||||
|
Subject: [PATCH] test/runwrapper: copy the preloaded library
|
||||||
|
|
||||||
|
... to a temporary directory because the original location might
|
||||||
|
not be accessible by other users.
|
||||||
|
---
|
||||||
|
test/runwrapper | 20 ++++++++++++++++++--
|
||||||
|
1 file changed, 18 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test/runwrapper b/test/runwrapper
|
||||||
|
index 6e0e899..de4555a 100755
|
||||||
|
--- a/test/runwrapper
|
||||||
|
+++ b/test/runwrapper
|
||||||
|
@@ -1,7 +1,23 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
-if [ -e "$PWD/.libs/libtestlookup.so" ]; then
|
||||||
|
- export LD_PRELOAD="$PWD/.libs/libtestlookup.so"
|
||||||
|
+src="$PWD/.libs/libtestlookup.so"
|
||||||
|
+dst=
|
||||||
|
+if [ -e "$src" ]; then
|
||||||
|
+ # copy the preloaded library to a temporary directory because
|
||||||
|
+ # the original location might not be accessible by other users
|
||||||
|
+ tmp="$(mktemp -d)"
|
||||||
|
+ chmod 0755 "$tmp"
|
||||||
|
+ dst="${tmp}/libtestlookup.so"
|
||||||
|
+ cp -L "$src" "$dst"
|
||||||
|
+ export LD_PRELOAD="$dst"
|
||||||
|
fi
|
||||||
|
|
||||||
|
"${srcdir:-${PWD}}"/test/run "$@"
|
||||||
|
+ec="$?"
|
||||||
|
+
|
||||||
|
+if [ -n "$dst" ]; then
|
||||||
|
+ # remove the temporary location
|
||||||
|
+ rm -rf "$dst"
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+exit "$ec"
|
||||||
|
--
|
||||||
|
2.14.4
|
||||||
|
|
Binary file not shown.
|
@ -1,9 +1,9 @@
|
||||||
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: 3%{?dist}
|
||||||
BuildRequires: gawk
|
BuildRequires: gawk
|
||||||
BuildRequires: gettext
|
BuildRequires: gettext-devel
|
||||||
BuildRequires: libattr-devel
|
BuildRequires: libattr-devel
|
||||||
BuildRequires: libtool
|
BuildRequires: libtool
|
||||||
Requires: libacl = %{version}-%{release}
|
Requires: libacl = %{version}-%{release}
|
||||||
|
@ -12,6 +12,13 @@ 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
|
||||||
|
|
||||||
|
# avoid permission denied problem with LD_PRELOAD in the test-suite
|
||||||
|
Patch1: 0001-acl-2.2.53-test-runwrapper.patch
|
||||||
|
|
||||||
|
# preserve failed setfacl return code (RHEL-3909)
|
||||||
|
# https://git.savannah.nongnu.org/cgit/acl.git/commit/?id=7ce89c695e76ec41fcebd83f8b728f63b0361a2d
|
||||||
|
Patch2: 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.
|
||||||
|
@ -41,6 +48,9 @@ defined in POSIX 1003.1e draft standard 17.
|
||||||
%prep
|
%prep
|
||||||
%autosetup -p1
|
%autosetup -p1
|
||||||
|
|
||||||
|
# newer autoconf fixes rpath warnings from rpminspect
|
||||||
|
autoreconf -fvi
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure
|
%configure
|
||||||
|
|
||||||
|
@ -48,7 +58,7 @@ defined in POSIX 1003.1e draft standard 17.
|
||||||
# sed -i 's/-O2/-O0/' libtool include/builddefs
|
# sed -i 's/-O2/-O0/' libtool include/builddefs
|
||||||
# unset CFLAGS
|
# unset CFLAGS
|
||||||
|
|
||||||
make %{?_smp_mflags}
|
%make_build
|
||||||
|
|
||||||
%check
|
%check
|
||||||
if ./setfacl -m "u:$(id -u):rwx" .; then
|
if ./setfacl -m "u:$(id -u):rwx" .; then
|
||||||
|
@ -69,14 +79,14 @@ if ./setfacl -m "u:$(id -u):rwx" .; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# run the upstream test-suite
|
# run the upstream test-suite
|
||||||
make check || exit $?
|
%make_build check || exit $?
|
||||||
else
|
else
|
||||||
echo '*** ACLs are probably not supported by the file system,' \
|
echo '*** ACLs are probably not supported by the file system,' \
|
||||||
'the test-suite will NOT run ***'
|
'the test-suite will NOT run ***'
|
||||||
fi
|
fi
|
||||||
|
|
||||||
%install
|
%install
|
||||||
make install DESTDIR=$RPM_BUILD_ROOT
|
%make_install
|
||||||
|
|
||||||
# get rid of libacl.a and libacl.la
|
# get rid of libacl.a and libacl.la
|
||||||
rm -f $RPM_BUILD_ROOT%{_libdir}/libacl.a
|
rm -f $RPM_BUILD_ROOT%{_libdir}/libacl.a
|
||||||
|
@ -113,6 +123,13 @@ 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-3
|
||||||
|
- fix RPATH rpminspect reports
|
||||||
|
- actually apply an included patch
|
||||||
|
|
||||||
|
* 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
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
--- !Policy
|
||||||
|
product_versions:
|
||||||
|
- rhel-8
|
||||||
|
decision_context: osci_compose_gate
|
||||||
|
rules:
|
||||||
|
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
||||||
|
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
|
|
@ -0,0 +1 @@
|
||||||
|
SHA512 (acl-2.2.53.tar.gz) = 176b7957fe0e7618e0b7bf2ac5071f7fa29417df718cce977661a576fa184e4af9d303b591c9d556b6ba8923e799457343afa401f5a9f7ecd9022185a4e06716
|
|
@ -0,0 +1,88 @@
|
||||||
|
# Copyright (c) 2006 Red Hat, Inc. All rights reserved. This copyrighted material
|
||||||
|
# is made available to anyone wishing to use, modify, copy, or
|
||||||
|
# redistribute it subject to the terms and conditions of the GNU General
|
||||||
|
# Public License v.2.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
|
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
# PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
#
|
||||||
|
# Author: Milos Malik <mmalik@redhat.com>
|
||||||
|
|
||||||
|
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
|
||||||
|
# Example Makefile for RHTS #
|
||||||
|
# This example is geared towards a test for a specific package #
|
||||||
|
# It does most of the work for you, but may require further coding #
|
||||||
|
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
|
||||||
|
|
||||||
|
# The toplevel namespace within which the test lives.
|
||||||
|
# FIXME: You will need to change this:
|
||||||
|
TOPLEVEL_NAMESPACE=CoreOS
|
||||||
|
|
||||||
|
# The name of the package under test:
|
||||||
|
# FIXME: you wil need to change this:
|
||||||
|
PACKAGE_NAME=acl
|
||||||
|
|
||||||
|
# The path of the test below the package:
|
||||||
|
# FIXME: you wil need to change this:
|
||||||
|
RELATIVE_PATH=Sanity/cmd-line-options
|
||||||
|
|
||||||
|
# Version of the test. Used with make tag.
|
||||||
|
export TESTVERSION=1.0
|
||||||
|
|
||||||
|
# The combined namespace of the test.
|
||||||
|
export TEST=/$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)
|
||||||
|
|
||||||
|
|
||||||
|
# A phony target is one that is not really the name of a file.
|
||||||
|
# It is just a name for some commands to be executed when you
|
||||||
|
# make an explicit request. There are two reasons to use a
|
||||||
|
# phony target: to avoid a conflict with a file of the same
|
||||||
|
# name, and to improve performance.
|
||||||
|
.PHONY: all install download clean
|
||||||
|
|
||||||
|
# executables to be built should be added here, they will be generated on the system under test.
|
||||||
|
BUILT_FILES=
|
||||||
|
|
||||||
|
# data files, .c files, scripts anything needed to either compile the test and/or run it.
|
||||||
|
FILES=$(METADATA) runtest.sh Makefile PURPOSE test-core.sh
|
||||||
|
|
||||||
|
run: $(FILES) build
|
||||||
|
./runtest.sh
|
||||||
|
|
||||||
|
build: $(BUILT_FILES)
|
||||||
|
chmod a+x ./runtest.sh ./test-core.sh
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *~ *.rpm $(BUILT_FILES)
|
||||||
|
|
||||||
|
# You may need to add other targets e.g. to build executables from source code
|
||||||
|
# Add them here:
|
||||||
|
|
||||||
|
|
||||||
|
# Include Common Makefile
|
||||||
|
include /usr/share/rhts/lib/rhts-make.include
|
||||||
|
|
||||||
|
# Generate the testinfo.desc here:
|
||||||
|
$(METADATA): Makefile
|
||||||
|
@touch $(METADATA)
|
||||||
|
# Change to the test owner's name
|
||||||
|
@echo "Owner: Milos Malik <mmalik@redhat.com>" > $(METADATA)
|
||||||
|
@echo "Name: $(TEST)" >> $(METADATA)
|
||||||
|
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||||
|
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||||
|
@echo "Type: Sanity" >> $(METADATA)
|
||||||
|
@echo "Description: utilities are tested if they support basic command line options" >> $(METADATA)
|
||||||
|
@echo "TestTime: 2m" >> $(METADATA)
|
||||||
|
@echo "RunFor: $(PACKAGE_NAME)" >> $(METADATA)
|
||||||
|
# add any other packages for which your test ought to run here
|
||||||
|
@echo "Requires: $(PACKAGE_NAME)" >> $(METADATA)
|
||||||
|
# add any other requirements for the script to run here
|
||||||
|
@echo "License: GPLv2" >> $(METADATA)
|
||||||
|
|
||||||
|
# You may need other fields here; see the documentation
|
||||||
|
rhts-lint $(METADATA)
|
|
@ -0,0 +1,5 @@
|
||||||
|
Test Name: cmd-line-options
|
||||||
|
Author: Milos Malik <mmalik@redhat.com>
|
||||||
|
Location: /CoreOS/acl/Sanity/cmd-line-options
|
||||||
|
Short Description: Utilities are tested if they support basic command line options.
|
||||||
|
Safe: yes
|
|
@ -0,0 +1,18 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Copyright (c) 2006 Red Hat, Inc. All rights reserved. This copyrighted material
|
||||||
|
# is made available to anyone wishing to use, modify, copy, or
|
||||||
|
# redistribute it subject to the terms and conditions of the GNU General
|
||||||
|
# Public License v.2.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
||||||
|
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
# PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
#
|
||||||
|
# Author: Milos Malik <mmalik@redhat.com>
|
||||||
|
|
||||||
|
rhts-run-simple-test $TEST ./test-core.sh
|
|
@ -0,0 +1,113 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Description: sanity test for acl package
|
||||||
|
# Author: Milos Malik <mmalik@redhat.com>
|
||||||
|
|
||||||
|
##### Variable Declaration #####
|
||||||
|
VERSION=1.0
|
||||||
|
|
||||||
|
# FAIL unless test explicitly passes
|
||||||
|
RESULT=FAIL
|
||||||
|
|
||||||
|
# Each pass increases SCORE by 1
|
||||||
|
SCORE=0
|
||||||
|
TOTAL=8
|
||||||
|
|
||||||
|
# Set language so we know what results to test for
|
||||||
|
set_lang=0
|
||||||
|
old_lang=$LANG
|
||||||
|
new_lang=en_US.UTF-8
|
||||||
|
|
||||||
|
# Which package and which utility do we test?
|
||||||
|
PACKAGE=acl
|
||||||
|
|
||||||
|
##### Function Declaration #####
|
||||||
|
|
||||||
|
log () {
|
||||||
|
printf "\n:: $1 ::\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
check_exit_code () {
|
||||||
|
echo -e "\t* exit code: $1"
|
||||||
|
if [ $1 $2 $3 ] ; then
|
||||||
|
let "SCORE += 1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
##### Begin Test #####
|
||||||
|
|
||||||
|
log "[`date +%H:%M:%S`] Begin Test - $TEST-$VERSION"
|
||||||
|
|
||||||
|
# Warn if not running as root that test might fail
|
||||||
|
e_user=$(whoami)
|
||||||
|
if [[ x"${e_user}" != x"root" ]]; then
|
||||||
|
log "Warning, not running as root! This test might fail."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Temporarily set LANG to value we can trust results from
|
||||||
|
if [[ x"${LANG}" != x"${new_lang}" ]]; then
|
||||||
|
log "Warning, LANG not set to ${new_lang}!"
|
||||||
|
log "Temporarily setting LANG to ${new_lang}, was ${old_lang}"
|
||||||
|
|
||||||
|
set_lang=1
|
||||||
|
export LANG=${new_lang}
|
||||||
|
log "Done, LANG=${new_lang}."
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "getfacl -h"
|
||||||
|
getfacl -h >& /dev/null
|
||||||
|
check_exit_code $? -eq 0
|
||||||
|
|
||||||
|
log "getfacl --help"
|
||||||
|
getfacl --help >& /dev/null
|
||||||
|
check_exit_code $? -eq 0
|
||||||
|
|
||||||
|
log "getfacl -v"
|
||||||
|
getfacl -v >& /dev/null
|
||||||
|
check_exit_code $? -eq 0
|
||||||
|
|
||||||
|
log "getfacl --version"
|
||||||
|
getfacl --version >& /dev/null
|
||||||
|
check_exit_code $? -eq 0
|
||||||
|
|
||||||
|
log "setfacl -h"
|
||||||
|
setfacl -h >& /dev/null
|
||||||
|
check_exit_code $? -eq 0
|
||||||
|
|
||||||
|
log "setfacl --help"
|
||||||
|
setfacl --help >& /dev/null
|
||||||
|
check_exit_code $? -eq 0
|
||||||
|
|
||||||
|
log "setfacl -v"
|
||||||
|
setfacl -v >& /dev/null
|
||||||
|
check_exit_code $? -eq 0
|
||||||
|
|
||||||
|
log "setfacl --version"
|
||||||
|
setfacl --version >& /dev/null
|
||||||
|
check_exit_code $? -eq 0
|
||||||
|
|
||||||
|
# Reset LANG to original value
|
||||||
|
if [[ ${set_lang} == 1 ]]; then
|
||||||
|
log "Resetting LANG to ${old_lang}."
|
||||||
|
export LANG=${old_lang}
|
||||||
|
log "Done, LANG=${old_lang}."
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "[`date +%H:%M:%S`] End Test - $TEST-$VERSION"
|
||||||
|
|
||||||
|
##### Report results #####
|
||||||
|
|
||||||
|
log "SCORE: ${SCORE}/${TOTAL}"
|
||||||
|
|
||||||
|
if [ ${SCORE} -eq ${TOTAL} ] ; then
|
||||||
|
# everything was OK
|
||||||
|
log "RESULT: PASS"
|
||||||
|
printf "\n\n"
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
# something failed
|
||||||
|
log "RESULT: FAIL"
|
||||||
|
printf "\n\n"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
##### End Test #####
|
|
@ -0,0 +1,13 @@
|
||||||
|
---
|
||||||
|
# This first play always runs on the local staging system
|
||||||
|
- hosts: localhost
|
||||||
|
roles:
|
||||||
|
- role: standard-test-beakerlib
|
||||||
|
tags:
|
||||||
|
- classic
|
||||||
|
- container
|
||||||
|
- atomic
|
||||||
|
tests:
|
||||||
|
- cmd-line-options
|
||||||
|
required_packages:
|
||||||
|
- which # which package required for cmd-line-options
|
Loading…
Reference in New Issue