diff options
author | Niels de Vos <ndevos@redhat.com> | 2015-05-22 13:20:06 +0200 |
---|---|---|
committer | Niels de Vos <ndevos@redhat.com> | 2015-06-01 02:20:23 -0700 |
commit | a25529a0980b17567060eae8b40524381ca025d3 (patch) | |
tree | 12f013e56d22e9789f4f2ea2b2665d85a3755e6d /xlators | |
parent | 4c630a77e1325349adb369f9a7c83557007eda56 (diff) |
gfapi: zero size issue in glfs_h_acl_set()
When setting the stringified ACLs in the xattr dict through
pub_glfs_h_setxattrs(), the size of the string is always passed as 0.
The correct way is to pass the length of the ACL in text form.
Backport of:
> Change-Id: Ia7a7fa1f3a7d615a813c703057dc97b09a0bbb34
> BUG: 789278
> Reviewd-on: http://review.gluster.org/10782
> Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
Change-Id: Ia7a7fa1f3a7d615a813c703057dc97b09a0bbb34
BUG: 1224241
Signed-off-by: Niels de Vos <ndevos@redhat.com>
Reviewed-on: http://review.gluster.org/10890
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Shyamsundar Ranganathan <srangana@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/storage/posix/src/posix-helpers.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/xlators/storage/posix/src/posix-helpers.c b/xlators/storage/posix/src/posix-helpers.c index e1bd5b127fd..9018a739f83 100644 --- a/xlators/storage/posix/src/posix-helpers.c +++ b/xlators/storage/posix/src/posix-helpers.c @@ -964,6 +964,10 @@ posix_pacl_set (const char *path, const char *key, const char *acl_s) acl = acl_from_text (acl_s); ret = acl_set_file (path, type, acl); + if (ret) + /* posix_handle_pair expects ret to be the errno */ + ret = -errno; + acl_free (acl); return ret; |