On 2025-02-12 15:00, Christian Franke via Cygwin wrote:
Brian Inglis via Cygwin wrote:
On 2025-02-09 08:01, Christian Franke via Cygwin wrote:
Testcase:
$ uname -r
3.5.7-1.x86_64
$ cygcheck -f /bin/chmod
coreutils-9.0-1
$ mkdir dir
$ touch dir/file
$ chmod -R -v g-w dir; echo $?
mode of 'dir' retained as 0755 (rwxr-xr-x)
mode of 'dir/file' retained as 0644 (rw-r--r--)
0
$ ln -s file dir/link
$ chmod -R -v g-w dir; echo $?
mode of 'dir' retained as 0755 (rwxr-xr-x)
mode of 'dir/file' retained as 0644 (rw-r--r--)
neither symbolic link 'dir/link' nor referent has been changed
1
$ chmod -R g-w dir; echo $?
1
$ chmod -v g-w dir dir/file dir/link; echo $?
mode of 'dir' retained as 0755 (rwxr-xr-x)
mode of 'dir/file' retained as 0644 (rw-r--r--)
mode of 'dir/link' retained as 0644 (rw-r--r--)
0
$ chmod -R -v g+w dir; echo $?
mode of 'dir' changed from 0755 (rwxr-xr-x) to 0775 (rwxrwxr-x)
mode of 'dir/file' changed from 0644 (rw-r--r--) to 0664 (rw-rw-r--)
neither symbolic link 'dir/link' nor referent has been changed
1
$ chmod -R g-w dir; echo $?
1
Exit status 1 does not occur with chmod from coreutils 8.32-1.
A major change in coreutils 9 was to use the f...at() directory relative
functions, so the error may be related to that symlink, unreported due to a
bug (in our/my patches, underlying, or upstream):
EOPNOTSUPP The AT_SYMLINK_NOFOLLOW bit is set in the flag argument, path
names a symbolic link, and the system does not support changing the mode of a
symbolic link.
Appears that it is a known bug and should have been fixed upstream; see the
test release announcement for many chmod fixes and changes including more
options:
https://cygwin.com/pipermail/cygwin-announce/2025-January/012042.html
"...
2022-04-15 9.1
Bug fixes
- chmod -R no longer exits with error status when encountering symlinks.
All files would be processed correctly, but the exit status was incorrect.
[bug introduced in coreutils-9.0]
..."
If you can, please check again with coreutils test 9.5.
I am working on updating to 9.6, will recheck as part of that, and fix or
report a regression, if an issue.
Problem does no longer occur with 9.5-1 and 9.6-1 test releases.
Thank you very much for testing and reporting.
--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
La perfection est atteinte Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher but when there is no more to cut
-- Antoine de Saint-Exupéry
--
Problem reports: https://cygwin.com/problems.html
FAQ: https://cygwin.com/faq/
Documentation: https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple