diff options
author | Amar Tumballi <amarts@redhat.com> | 2017-12-27 16:14:30 +0530 |
---|---|---|
committer | Pranith Kumar Karampuri <pkarampu@redhat.com> | 2018-01-05 09:35:07 +0000 |
commit | 92430596d697381d5f49ff69eb24d9ff3e291da8 (patch) | |
tree | 2a393ce9a5032f207ca38464a2db9bfc9f3c7045 /xlators | |
parent | 01caa839ebda29c2fe209c4767626f2f49ea3e71 (diff) |
dict: add more types for values
Added 2 more types which are present in gluster codebase, mainly
IATT and UUID.
Updates #203
Change-Id: Ib6d6d6aefb88c3494fbf93dcbe08d9979484968f
Signed-off-by: Amar Tumballi <amarts@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/mount/fuse/src/fuse-bridge.c | 2 | ||||
-rw-r--r-- | xlators/mount/fuse/src/fuse-resolve.c | 4 | ||||
-rw-r--r-- | xlators/storage/posix/src/posix-entry-ops.c | 12 | ||||
-rw-r--r-- | xlators/storage/posix/src/posix-helpers.c | 8 | ||||
-rw-r--r-- | xlators/storage/posix/src/posix.h | 4 |
5 files changed, 15 insertions, 15 deletions
diff --git a/xlators/mount/fuse/src/fuse-bridge.c b/xlators/mount/fuse/src/fuse-bridge.c index 4e075904936..ddf6d59eb3e 100644 --- a/xlators/mount/fuse/src/fuse-bridge.c +++ b/xlators/mount/fuse/src/fuse-bridge.c @@ -4257,7 +4257,7 @@ fuse_first_lookup (xlator_t *this) memset (gfid, 0, 16); gfid[15] = 1; - ret = dict_set_static_bin (dict, "gfid-req", gfid, 16); + ret = dict_set_gfuuid (dict, "gfid-req", gfid, true); if (ret) { gf_log (xl->name, GF_LOG_ERROR, "failed to set 'gfid-req'"); goto out; diff --git a/xlators/mount/fuse/src/fuse-resolve.c b/xlators/mount/fuse/src/fuse-resolve.c index 7d3494f5419..ed25bf034b8 100644 --- a/xlators/mount/fuse/src/fuse-resolve.c +++ b/xlators/mount/fuse/src/fuse-resolve.c @@ -585,8 +585,8 @@ fuse_gfid_set (fuse_state_t *state) goto out; } - ret = dict_set_static_bin (state->xdata, "gfid-req", - state->gfid, sizeof (state->gfid)); + ret = dict_set_gfuuid (state->xdata, "gfid-req", + state->gfid, true); out: return ret; } diff --git a/xlators/storage/posix/src/posix-entry-ops.c b/xlators/storage/posix/src/posix-entry-ops.c index 050fea4c255..5fb3a4b09c8 100644 --- a/xlators/storage/posix/src/posix-entry-ops.c +++ b/xlators/storage/posix/src/posix-entry-ops.c @@ -314,7 +314,7 @@ posix_mknod (call_frame_t *frame, xlator_t *this, gid_t gid = 0; struct iatt preparent = {0,}; struct iatt postparent = {0,}; - void * uuid_req = NULL; + uuid_t uuid_req = {0,}; int32_t nlink_samepgfid = 0; char *pgfid_xattr_key = NULL; gf_boolean_t entry_created = _gf_false, gfid_set = _gf_false; @@ -366,7 +366,7 @@ posix_mknod (call_frame_t *frame, xlator_t *this, linkfile may be for a hardlinked file */ if (dict_get (xdata, GLUSTERFS_INTERNAL_FOP_KEY)) { dict_del (xdata, GLUSTERFS_INTERNAL_FOP_KEY); - op_ret = dict_get_ptr (xdata, "gfid-req", &uuid_req); + op_ret = dict_get_gfuuid (xdata, "gfid-req", &uuid_req); if (op_ret) { gf_msg_debug (this->name, 0, "failed to get the gfid from " "dict for %s", loc->path); @@ -523,7 +523,7 @@ posix_mkdir (call_frame_t *frame, xlator_t *this, struct iatt preparent = {0,}; struct iatt postparent = {0,}; gf_boolean_t entry_created = _gf_false, gfid_set = _gf_false; - void *uuid_req = NULL; + uuid_t uuid_req = {0,}; ssize_t size = 0; dict_t *xdata_rsp = NULL; void *disk_xattr = NULL; @@ -580,7 +580,7 @@ posix_mkdir (call_frame_t *frame, xlator_t *this, mode = posix_override_umask (mode, mode_bit); if (xdata) { - op_ret = dict_get_ptr (xdata, "gfid-req", &uuid_req); + op_ret = dict_get_gfuuid (xdata, "gfid-req", &uuid_req); if (!op_ret && !gf_uuid_compare (stbuf.ia_gfid, uuid_req)) { op_ret = -1; op_errno = EEXIST; @@ -588,7 +588,7 @@ posix_mkdir (call_frame_t *frame, xlator_t *this, } } - if (uuid_req && !gf_uuid_is_null (uuid_req)) { + if (!gf_uuid_is_null (uuid_req)) { op_ret = posix_istat (this, uuid_req, NULL, &stbuf); if ((op_ret == 0) && IA_ISDIR (stbuf.ia_type)) { size = posix_handle_path (this, uuid_req, NULL, NULL, @@ -624,7 +624,7 @@ posix_mkdir (call_frame_t *frame, xlator_t *this, * new dir.*/ posix_handle_unset (this, stbuf.ia_gfid, NULL); } - } else if (!uuid_req && frame->root->pid != GF_SERVER_PID_TRASH) { + } else if (frame->root->pid != GF_SERVER_PID_TRASH) { op_ret = -1; op_errno = EPERM; gf_msg_callingfn (this->name, GF_LOG_WARNING, op_errno, diff --git a/xlators/storage/posix/src/posix-helpers.c b/xlators/storage/posix/src/posix-helpers.c index e299dcb837c..fa9a120ebcd 100644 --- a/xlators/storage/posix/src/posix-helpers.c +++ b/xlators/storage/posix/src/posix-helpers.c @@ -856,7 +856,7 @@ posix_gfid_unset (xlator_t *this, dict_t *xdata) if (xdata == NULL) goto out; - ret = dict_get_ptr (xdata, "gfid-req", (void **)&uuid); + ret = dict_get_gfuuid (xdata, "gfid-req", &uuid); if (ret) { goto out; } @@ -869,7 +869,7 @@ out: int posix_gfid_set (xlator_t *this, const char *path, loc_t *loc, dict_t *xattr_req) { - void *uuid_req = NULL; + uuid_t uuid_req; uuid_t uuid_curr; int ret = 0; ssize_t size = 0; @@ -888,7 +888,7 @@ posix_gfid_set (xlator_t *this, const char *path, loc_t *loc, dict_t *xattr_req) goto verify_handle; } - ret = dict_get_ptr (xattr_req, "gfid-req", &uuid_req); + ret = dict_get_gfuuid (xattr_req, "gfid-req", &uuid_req); if (ret) { gf_msg_debug (this->name, 0, "failed to get the gfid from dict for %s", @@ -2705,7 +2705,7 @@ posix_set_iatt_in_dict (dict_t *dict, struct iatt *in_stbuf) memcpy (stbuf, in_stbuf, len); - ret = dict_set_bin (dict, DHT_IATT_IN_XDATA_KEY, stbuf, len); + ret = dict_set_iatt (dict, DHT_IATT_IN_XDATA_KEY, stbuf, false); if (ret) GF_FREE (stbuf); diff --git a/xlators/storage/posix/src/posix.h b/xlators/storage/posix/src/posix.h index c4c28d59977..330ed20b480 100644 --- a/xlators/storage/posix/src/posix.h +++ b/xlators/storage/posix/src/posix.h @@ -81,14 +81,14 @@ #define GFID_NULL_CHECK_AND_GOTO(frame, this, loc, xattr_req, op_ret, \ op_errno, out) \ do { \ - void *_uuid_req = NULL; \ + uuid_t _uuid_req; \ int _ret = 0; \ /* TODO: Remove pid check once trash implements client side \ * logic to assign gfid for entry creations inside .trashcan \ */ \ if (frame->root->pid == GF_SERVER_PID_TRASH) \ break; \ - _ret = dict_get_ptr (xattr_req, "gfid-req", &_uuid_req); \ + _ret = dict_get_gfuuid (xattr_req, "gfid-req", &_uuid_req); \ if (_ret) { \ gf_msg (this->name, GF_LOG_ERROR, EINVAL, \ P_MSG_NULL_GFID, "failed to get the gfid from" \ |