Mention the number of child args.
[rsync/rsync.git] / acls.c
diff --git a/acls.c b/acls.c
index ef2751c..90279fc 100644 (file)
--- a/acls.c
+++ b/acls.c
@@ -589,9 +589,9 @@ static void send_ida_entries(int f, const ida_entries *idal)
                const char *name;
                if (ida->access & NAME_IS_USER) {
                        xbits |= XFLAG_NAME_IS_USER;
-                       name = add_uid(ida->id);
+                       name = numeric_ids ? NULL : add_uid(ida->id);
                } else
-                       name = add_gid(ida->id);
+                       name = numeric_ids ? NULL : add_gid(ida->id);
                write_varint(f, ida->id);
                if (inc_recurse && name) {
                        int len = strlen(name);
@@ -1101,6 +1101,9 @@ int default_perms_for_dir(const char *dir)
        if (sacl == NULL) {
                /* Couldn't get an ACL.  Darn. */
                switch (errno) {
+               case EINVAL:
+                       /* If SMB_ACL_TYPE_DEFAULT isn't valid, then the ACLs must be non-POSIX. */
+                       break;
 #ifdef ENOTSUP
                case ENOTSUP:
 #endif