This bug occurs only when temporarily setting the mode to the
intersection of old and new modes when changing ownership.
* src/copy.c (owner_failure_ok): Treat EACCES like EPERM.
** Bug fixes
- cp, mv, install no longer issue spurious "failed to preserve ownership"
- diagnostics when copying to GNU/Linux CIFS filesystems. They do
- this by working around a Linux CIFS bug.
+ cp, mv, and install no longer issue spurious diagnostics like "failed
+ to preserve ownership" when copying to GNU/Linux CIFS file systems.
+ They do this by working around some Linux CIFS bugs.
numfmt options like --suffix no longer have an arbitrary 127-byte limit.
[bug introduced with numfmt in coreutils-8.21]
static bool
owner_failure_ok (struct cp_options const *x)
{
- return ((errno == EPERM || errno == EINVAL) && !x->owner_privileges);
+ return ((errno == EPERM || errno == EINVAL || errno == EACCES)
+ && !x->owner_privileges);
}
/* Return the user's umask, caching the result.