Hello all,
I've been using cygwin for a long time but this is my first attempt at
this process so please be gentle :)
I noticed that the current rsync package (3.2.3+20200903+git9f9240b-4)
is trailing on security updates and also still using the g-b-s method.
I pinged the listed maintainer directly last week asking if they were
planning to do any updates but have not heard back. I hope this was not
a faux pas as I didn't read until later that it's best to raise the
issue on the list first.
I've attempted to update the port here:
https://github.com/crd477/cygports/tree/main/rsync
The package files were built by doing:
cygport rsync.cygport prep compile test install package-test
cygport test reported the following:
...
/home/crd/rsync-3.2.6-1.x86_64/src/rsync-3.2.6/runtests.sh running in
/home/crd/rsync-3.2.6-1.x86_64/build
rsync_bin=/home/crd/rsync-3.2.6-1.x86_64/build/rsync.exe
srcdir=/home/crd/rsync-3.2.6-1.x86_64/src/rsync-3.2.6
TLS_ARGS= -l -L
testuser=crd
os=CYGWIN_NT-10.0-22000 x13 3.3.6-341.x86_64 2022-09-05 11:15 UTC
x86_64 Cygwin
preserve_scratch=no
scratchbase=/home/crd/rsync-3.2.6-1.x86_64/build/testtmp
PASS 00-hello
SKIP acls-default (Your filesystem has ACLs disabled)
SKIP acls (Your filesystem has ACLs disabled)
PASS alt-dest
PASS atimes
PASS backup
PASS batch-mode
PASS chgrp
PASS chmod-option
SKIP chmod-temp-dir (Can't find a tmp dir on a different file system)
PASS chmod
SKIP chown-fake (Can't chown (probably need root))
SKIP chown (Can't chown (probably need root))
PASS crtimes
PASS daemon-gzip-download
PASS daemon-gzip-upload
PASS daemon
PASS delay-updates
PASS delete
SKIP devices-fake (Can't create char device node)
SKIP devices (Rsync needs root/fakeroot for device tests)
SKIP dir-sgid (The default ACL mode interferes with this test)
PASS duplicates
PASS exclude
PASS executability
PASS files-from
PASS fuzzy
PASS hands
PASS hardlinks
PASS itemize
PASS longdir
PASS merge
PASS missing
PASS mkpath
SKIP protected-regular (Can't find protected_regular setting (only
available on Linux))
PASS relative
PASS ssh-basic
PASS symlink-ignore
PASS trimslash
PASS unsafe-byname
PASS unsafe-links
PASS wildmatch
SKIP xattrs-hlink (Unable to set an xattr)
SKIP xattrs (Unable to set an xattr)
------------------------------------------------------------
----- overall results:
33 passed
11 skipped
------------------------------------------------------------
overall result is 0
...
Here is the reported feature comparison between the existing and updated
packages. This is one area where some things might need to be fixed
with the update.
Existing pacakge:
$ rsync --version
rsync version 3.2.4dev protocol version 31
Copyright (C) 1996-2020 by Andrew Tridgell, Wayne Davison, and others.
Web site: https://rsync.samba.org/
Capabilities:
64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
socketpairs, hardlinks, no hardlink-specials, symlinks, IPv6, atimes,
batchfiles, inplace, append, ACLs, xattrs, optional protect-args,
iconv,
symtimes, prealloc, stop-at, no crtimes
Optimizations:
no SIMD, asm, openssl-crypto
Checksum list:
xxh128 xxh3 xxh64 (xxhash) md5 md4 none
Compress list:
zstd lz4 zlibx zlib none
rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you
are welcome to redistribute it under certain conditions. See the GNU
General Public Licence for details.
Updated package:
$ rsync --version
rsync version 3.2.6 protocol version 31
Copyright (C) 1996-2022 by Andrew Tridgell, Wayne Davison, and others.
Web site: https://rsync.samba.org/
Capabilities:
64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
socketpairs, symlinks, symtimes, hardlinks, no hardlink-specials,
hardlink-symlinks, IPv6, atimes, batchfiles, inplace, append, ACLs,
xattrs, optional secluded-args, no iconv, prealloc, stop-at, crtimes
Optimizations:
no SIMD-roll, no asm-roll, openssl-crypto, no asm-MD5
Checksum list:
xxh128 xxh3 xxh64 (xxhash) md5 md4 none
Compress list:
zstd lz4 zlibx zlib none
rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you
are welcome to redistribute it under certain conditions. See the GNU
General Public Licence for details.
This package also seemed to work OK with some casual real testing.
Thanks in advance.
--
-Chad