Make sure no 32 bit binaries will be found as our fakeroot only supports 64 bit. If a 32 bit binary is run under fakeroot it will error out with wrong ELF class. --- rsync-3.4.2/testsuite/chown.test.orig 2022-10-20 18:09:26.000000000 +0200 +++ rsync-3.4.2/testsuite/chown.test 2026-04-28 22:17:30.343564469 +0200 @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # Copyright (C) 2002 by Martin Pool @@ -15,15 +15,15 @@ case $0 in *fake*) - $RSYNC -VV | grep '"xattrs": true' >/dev/null || test_skipped "Rsync needs xattrs for fake device tests" + $RSYNC -VV | ggrep '"xattrs": true' >/dev/null || test_skipped "Rsync needs xattrs for fake device tests" RSYNC="$RSYNC --fake-super" TLS_ARGS="$TLS_ARGS --fake-super" case "$HOST_OS" in darwin*) - chown() { + gchown() { own=$1 shift - xattr -s 'rsync.%stat' "100644 0,0 $own" "${@}" + gxattr -s 'rsync.%stat' "100644 0,0 $own" "${@}" } ;; solaris*) @@ -31,7 +31,7 @@ own=$1 shift for fn in "${@}"; do - runat "$fn" "$SHELL_PATH" < rsync.%stat EOF done @@ -70,16 +70,16 @@ # Build some hardlinks -mkdir "$fromdir" +gmkdir "$fromdir" name1="$fromdir/name1" name2="$fromdir/name2" echo "This is the file" > "$name1" echo "This is the other file" > "$name2" -chown 5000:5002 "$name1" || test_skipped "Can't chown (probably need root)" -chown 5001:5003 "$name2" || test_skipped "Can't chown (probably need root)" +gchown 5000:5002 "$name1" || test_skipped "Can't chown (probably need root)" +gchown 5001:5003 "$name2" || test_skipped "Can't chown (probably need root)" -cd "$fromdir/.." +gcd "$fromdir/.." checkit "$RSYNC -aHvv from/ to/" "$fromdir" "$todir" # The script would have aborted on error, so getting here means we've won.