From 65a8c0260d2e60016e3992bd675635cb6d9c56d3 Mon Sep 17 00:00:00 2001 From: Kamil Dudka Date: Mar 10 2010 14:10:14 +0000 Subject: - run the test-suite if possible --- diff --git a/acl-2.2.49-tests.patch b/acl-2.2.49-tests.patch new file mode 100644 index 0000000..d48b998 --- /dev/null +++ b/acl-2.2.49-tests.patch @@ -0,0 +1,136 @@ +diff --git a/test/cp.test b/test/cp.test +index a888c04..4a75ffd 100644 +--- a/test/cp.test ++++ b/test/cp.test +@@ -9,7 +9,7 @@ The cp utility should only copy ACLs if `-p' is given. + > -rw-rw-r--+ + + $ cp f g +- $ ls -l g | awk -- '{ print $1 }' ++ $ ls -l g | awk -- '{ print $1 }' | sed 's/\\.$//' + > -rw-r--r-- + + $ rm g +diff --git a/test/getfacl-recursive.test b/test/getfacl-recursive.test +index b88c211..a72192e 100644 +--- a/test/getfacl-recursive.test ++++ b/test/getfacl-recursive.test +@@ -1,5 +1,6 @@ + Tests for proper path recursion + ++ $ umask 022 + $ mkdir -p 1/2/3 + $ mkdir 1/link + $ touch 1/link/file +diff --git a/test/misc.test b/test/misc.test +index 7c62c64..e6140da 100644 +--- a/test/misc.test ++++ b/test/misc.test +@@ -253,7 +253,7 @@ Add some users and groups + Symlink in directory with default ACL? + + $ ln -s d d/l +- $ ls -dl d/l | awk '{print $1}' ++ $ ls -dl d/l | awk '{print $1}' | sed 's/\\.$//' + > lrwxrwxrwx + + $ ls -dl -L d/l | awk '{print $1}' +@@ -342,7 +342,7 @@ Remove the default ACL + Reset to base entries + + $ setfacl -b d +- $ ls -dl d | awk '{print $1}' ++ $ ls -dl d | awk '{print $1}' | sed 's/\\.$//' + > drwxr-x--- + + $ getfacl --omit-header d +@@ -354,7 +354,7 @@ Reset to base entries + Now, chmod should change the group_obj entry + + $ chmod 775 d +- $ ls -dl d | awk '{print $1}' ++ $ ls -dl d | awk '{print $1}' | sed 's/\\.$//' + > drwxrwxr-x + + $ getfacl --omit-header d +diff --git a/test/root/permissions.test b/test/root/permissions.test +index afaf5f0..4880bd2 100644 +--- a/test/root/permissions.test ++++ b/test/root/permissions.test +@@ -20,7 +20,7 @@ defined permissions. + $ cd d + $ umask 027 + $ touch f +- $ ls -l f | awk -- '{ print $1, $3, $4 }' ++ $ ls -l f | awk -- '{ print $1, $3, $4 }' | sed 's/---\\./---/' + > -rw-r----- root root + + +@@ -40,7 +40,7 @@ Now, change the ownership of the file to bin:bin and verify that this + gives user bin write access. + + $ chown bin:bin f +- $ ls -l f | awk -- '{ print $1, $3, $4 }' ++ $ ls -l f | awk -- '{ print $1, $3, $4 }' | sed 's/---\\./---/' + > -rw-r----- bin bin + $ su bin + $ echo bin >> f +@@ -257,12 +257,12 @@ directories if the file has an ACL and only CAP_FOWNER would grant them. + $ mkdir -m 600 x + $ chown daemon:daemon x + $ echo j > x/j +- $ ls -l x/j | awk -- '{ print $1, $3, $4 }' ++ $ ls -l x/j | awk -- '{ print $1, $3, $4 }' | sed 's/---\\./---/' + > -rw-r----- root root + + $ setfacl -m u:daemon:r x + +- $ ls -l x/j | awk -- '{ print $1, $3, $4 }' ++ $ ls -l x/j | awk -- '{ print $1, $3, $4 }' | sed 's/---\\./---/' + > -rw-r----- root root + (With the bug this gives: `ls: x/j: Permission denied'.) + +diff --git a/test/root/restore.test b/test/root/restore.test +index 6003cd4..5dbf73c 100644 +--- a/test/root/restore.test ++++ b/test/root/restore.test +@@ -17,7 +17,7 @@ Ensure setuid bit is restored when the owner changes + $ chown bin passwd + $ chmod u+s passwd + $ setfacl --restore passwd.acl +- $ ls -dl passwd | awk '{print $1 " " $3 " " $4}' ++ $ ls -dl passwd | awk '{print $1 " " $3 " " $4}' | sed 's/\\. root/ root/' + > -rwsr-xr-x root root + + $ rm passwd passwd.acl +diff --git a/test/root/setfacl.test b/test/root/setfacl.test +index 630e9fb..dd7fe08 100644 +--- a/test/root/setfacl.test ++++ b/test/root/setfacl.test +@@ -8,7 +8,7 @@ Setfacl utility tests. Run these tests on a filesystem with ACL support. + $ sg bin + $ umask 027 + $ touch g +- $ ls -dl g | awk '{print $1}' ++ $ ls -dl g | awk '{print $1}' | sed 's/\\.$//' + > -rw-r----- + + $ setfacl -m m:- g +diff --git a/test/sbits-restore.test b/test/sbits-restore.test +index e5e4fb2..abdb58a 100644 +--- a/test/sbits-restore.test ++++ b/test/sbits-restore.test +@@ -13,10 +13,10 @@ Ensure setting of SUID/SGID/sticky via --restore works + $ touch d/g + $ touch d/u + $ setfacl --restore d.acl +- $ ls -dl d | awk '{print $1}' ++ $ ls -dl d | awk '{print $1}' | sed 's/\\.$//' + > drwxr-xr-t +- $ ls -dl d/u | awk '{print $1}' ++ $ ls -dl d/u | awk '{print $1}' | sed 's/\\.$//' + > -rwSr--r-- +- $ ls -dl d/g | awk '{print $1}' ++ $ ls -dl d/g | awk '{print $1}' | sed 's/\\.$//' + > -rw-r-Sr-- + $ rm -Rf d diff --git a/acl.spec b/acl.spec index 418984a..56f60cf 100644 --- a/acl.spec +++ b/acl.spec @@ -1,7 +1,7 @@ Summary: Access control list utilities Name: acl Version: 2.2.49 -Release: 4%{?dist} +Release: 5%{?dist} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: gawk BuildRequires: gettext @@ -9,8 +9,16 @@ BuildRequires: libattr-devel BuildRequires: libtool Source: http://download.savannah.gnu.org/releases-noredirect/acl/acl-%{version}.src.tar.gz Patch1: acl-2.2.39-build.patch + +# bz #488674 Patch2: acl-2.2.49-setfacl-walk.patch + +# bz #467936 Patch3: acl-2.2.49-bz467936.patch + +# prepare the test-suite for SELinux and arbitrary umask +Patch4: acl-2.2.49-tests.patch + License: GPLv2+ Group: System Environment/Base URL: http://oss.sgi.com/projects/xfs/ @@ -48,6 +56,7 @@ defined in POSIX 1003.1e draft standard 17. %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 %build touch .census @@ -55,6 +64,17 @@ touch .census %configure --libdir=/%{_lib} --libexecdir=%{_libdir} make %{?_smp_mflags} LIBTOOL="libtool --tag=CC" +%check +if ./setfacl/setfacl -m u:`id -u`:rwx .; then + make tests || exit $? + if test 0 = `id -u`; then + make root-tests || exit $? + fi +else + echo '*** ACLs are probably not supported by the file system,' \ + 'the test-suite will NOT run ***' +fi + %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT @@ -105,6 +125,9 @@ rm -rf $RPM_BUILD_ROOT /%{_lib}/libacl.so.* %changelog +* Wed Mar 10 2010 Kamil Dudka 2.2.49-5 +- run the test-suite if possible + * Tue Jan 19 2010 Kamil Dudka 2.2.49-4 - do not package a static library (#556036) - remove multilib patch no longer useful