summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--xlators/storage/posix/src/posix.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/xlators/storage/posix/src/posix.c b/xlators/storage/posix/src/posix.c
index 1219620f197..2bcdd0d0a30 100644
--- a/xlators/storage/posix/src/posix.c
+++ b/xlators/storage/posix/src/posix.c
@@ -3110,6 +3110,7 @@ posix_getxattr (call_frame_t *frame, xlator_t *this,
size_t size = 0;
size_t remaining_size = 0;
char key[1024] = {0,};
+ char gen_key[1024] = {0,};
char * value = NULL;
char * list = NULL;
char * real_path = NULL;
@@ -3189,6 +3190,8 @@ posix_getxattr (call_frame_t *frame, xlator_t *this,
goto out;
}
+ ret = snprintf (gen_key, 1023, "trusted.%s.gen", this->name);
+
size = sys_llistxattr (real_path, list, size);
remaining_size = size;
@@ -3214,7 +3217,9 @@ posix_getxattr (call_frame_t *frame, xlator_t *this,
break;
value [op_ret] = '\0';
- dict_set (dict, key, data_from_dynptr (value, op_ret));
+ if (strcmp (key, gen_key) != 0)
+ dict_set (dict, key, data_from_dynptr (value, op_ret));
+
remaining_size -= strlen (key) + 1;
list_offset += strlen (key) + 1;