On 01/24/2014 01:43 AM, Pádraig Brady wrote: > On 01/24/2014 01:38 AM, Assaf Gordon wrote: >> This patch makes the test skip on my server (did not test it on other >> systems). >> >> On 01/23/2014 08:09 PM, Pádraig Brady wrote: >>> On 01/23/2014 11:41 PM, Assaf Gordon wrote: >> >>>> So I guess this is not a bug, and can be closed. >>>> I'll just ignore this failure on this system. >>> >>> It is a false failure though so would be worth avoiding. >>> It's important to have robust tests we and builders can rely on. >>> >>> Would something along the following be possible? >>> >>> test $(getent group $group | wc -l) != 1 || skip_ "multiple ids for group >>> $group: $(getent group $group)" >>> >> >> >> From 3737105eacbb23cbe453a3d210359fea614b7154 Mon Sep 17 00:00:00 2001 >> From: =?UTF-8?q?P=C3=A1draig=20Brady?= <p...@draigbrady.com> >> Date: Thu, 23 Jan 2014 20:34:52 -0500 >> Subject: [PATCH] tests: skip chown/separator with duplicated groups >> >> * tests/chwon/separator.sh: skip test if the user's group has > > s/chwon/chown/ > >> multiple entries. >> Fixes http://bugs.gnu.org/16532 >> --- >> tests/chown/separator.sh | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/tests/chown/separator.sh b/tests/chown/separator.sh >> index f64b738..ec33f4a 100755 >> --- a/tests/chown/separator.sh >> +++ b/tests/chown/separator.sh >> @@ -31,6 +31,9 @@ test -n "$id_g" || framework_failure_ >> id_gn=$(id -gn) || framework_failure_ >> test -n "$id_gn" || framework_failure_ >> >> +test $(getent group $id_gn | wc -l) != 1 ||
Actually I messed up the login in the suggestion. I think the above should be s/!=/=/ which I've done in the attached patch. If you could confirm it was skipped on your system it would be great. I'll push soon anyway. >> + skip_ "multiple ids for group $id_gn: $(getent group $id_gn)" I also protected the $id_gn with quotes in case there were spaces in the group name or something. thanks, Pádraig.
>From 9ad5f9f8d8e15c9f47173427714bfd6bcff2730e Mon Sep 17 00:00:00 2001 From: Assaf Gordon <assafgor...@gmail.com> Date: Thu, 23 Jan 2014 20:34:52 -0500 Subject: [PATCH] tests: skip chown/separator with conflicting group IDs * tests/chown/separator.sh: skip test if the user's group has multiple entries. Fixes http://bugs.gnu.org/16532 --- tests/chown/separator.sh | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/tests/chown/separator.sh b/tests/chown/separator.sh index f64b738..ed3635d 100755 --- a/tests/chown/separator.sh +++ b/tests/chown/separator.sh @@ -31,6 +31,11 @@ test -n "$id_g" || framework_failure_ id_gn=$(id -gn) || framework_failure_ test -n "$id_gn" || framework_failure_ +# Systems with both local and external groups with conflicting IDs, +# were seen to fail this test erroneously with EPERM errors. +test $(getent group "$id_gn" | wc -l) = 1 || + skip_ "multiple IDs for group '$id_gn': $(getent group "$id_gn")" + # FreeBSD 6.x's getgrnam fails to look up a group name containing # a space. On such a system, skip this test if the group name contains # a byte not in the portable filename character set. -- 1.7.7.6