Bug#401189: rsync: using rltvz options spews sys_acl_get_file messages

Paul Slootman paul at debian.org
Fri Dec 1 15:20:36 GMT 2006


Hi,
I got the following bug report on the Debian rsync which has the ACL
patch applied:

On Fri 01 Dec 2006, Bryan Gartner wrote:
> 
> When using the rltvz options to mirror files from a remote server, these
> kinds of issues are reported:
> 
>     default_perms_for_dir: sys_acl_get_file(wallpaper, SMB_ACL_TYPE_DEFAULT):
>     Function not implemented, falling back on umask
> 
> This is true for both 2.6.9-1 and 2.6.9-2 versions on this (hppa) platform,
> but doesn't seem to exist on i386 versions.
> 
> A workaround is simply to use "avz" cmd-line options, but this issue is
> new to these versions of the packages (as 2.6.4-6 on sarge-hppa worked fine).
> 
> Some mention of this issue resides on the rsync mailing lists.


I'm wondering whether hppa behaves differently in the face of no ACL
support, so that it gives errno == ENOSYS instead of errno == ENOTSUP.
I've come up with the following quick patch, but have no idea whether
that is the right thing to do in these circumstances:

--- acls.c.orig	2006-12-01 16:16:07.000000000 +0100
+++ acls.c	2006-12-01 16:16:43.000000000 +0100
@@ -515,7 +515,7 @@
 				free_acl(sxp);
 				return -1;
 			}
-		} else if (errno == ENOTSUP) {
+		} else if (errno == ENOTSUP || errno == ENOSYS) {
 			/* ACLs are not supported, so pretend we have a basic ACL. */
 			if (type == SMB_ACL_TYPE_ACCESS)
 				rsync_acl_fake_perms(racl, sxp->st.st_mode);
@@ -1058,6 +1058,9 @@
 	if (sacl == NULL) {
 		/* Couldn't get an ACL.  Darn. */
 		switch (errno) {
+		case ENOSYS:
+			/* ACL functions aren't implemented... */
+			break;
 		case ENOTSUP:
 			/* ACLs are disabled.  We could yell at the user to turn them on, but... */
 			break;


Any comments?


Paul Slootman


More information about the rsync mailing list