From f48b80ff26e331b5ab8fce69396914a65bb05b9a Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 18 Feb 2023 13:27:45 -0800 Subject: [PATCH] tests: port better to macOS group numbers * init.cfg (groups): Port better to macOS 12, where group 4294967295 (nogroup) is special: you can be a member without being able to chgrp files to the group. --- init.cfg | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/init.cfg b/init.cfg index eaef53a57b..8b2d68b228 100644 --- a/init.cfg +++ b/init.cfg @@ -488,7 +488,19 @@ require_membership_in_two_groups_() { test $# = 0 || framework_failure_ - groups=${COREUTILS_GROUPS-$( (id -G || /usr/xpg4/bin/id -G) 2>/dev/null)} + groups= + for group_ in 1 \ + ${COREUTILS_GROUPS-$( (id -G || /usr/xpg4/bin/id -G) 2>/dev/null)} + do + # Skip group numbers equal to 2**N - 1 for common N, + # as they are possibly reserved groups like 'nogroup'. + case $group_ in + 1 | 32767 | 65535 | 2147483647 | 4294967295) ;; + 9223372036854775807 | 18446744073709551615) ;; + *) test -z "$groups" || groups="$groups " + groups="$groups$group_";; + esac + done case "$groups" in *' '*) ;; *) skip_ 'requires membership in two groups -- 2.47.3