diff options
author | Wayne Davison <wayned@samba.org> | 2011-05-25 08:59:47 -0700 |
---|---|---|
committer | Wayne Davison <wayned@samba.org> | 2011-05-30 08:39:07 -0700 |
commit | 0b519262c60f8decef113b86aed2599253d29ce1 (patch) | |
tree | bab84e15e3c193ddcbb553eaea8c7f56c49e31ea | |
parent | 3ef38b0d1b5efcd857b9e2f7608f288bd0439785 (diff) | |
download | rsync-0b519262c60f8decef113b86aed2599253d29ce1.tar.gz |
Expand NO_ENTRY items from fake-super ACLs in get_rsync_acl().
-rw-r--r-- | acls.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -495,9 +495,15 @@ static int get_rsync_acl(const char *fname, rsync_acl *racl, } racl->user_obj = IVAL(buf, 0); + if (racl->user_obj == NO_ENTRY) + racl->user_obj = (mode >> 6) & 7; racl->group_obj = IVAL(buf, 4); + if (racl->group_obj == NO_ENTRY) + racl->group_obj = (mode >> 3) & 7; racl->mask_obj = IVAL(buf, 8); racl->other_obj = IVAL(buf, 12); + if (racl->other_obj == NO_ENTRY) + racl->other_obj = mode & 7; if (cnt) { char *bp = buf + 4*4; |