From fed29e0ae382ef24f4d3dff3623daefc57dab6ce Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Fri, 14 Oct 2011 18:28:27 +0530 Subject: cluster/afr: Prevent truncation of mask uint64_t->gf_boolean_t Change-Id: If67f726f21b713fa9312dc499a1aca4cb00f71de BUG: 3682 Reviewed-on: http://review.gluster.com/589 Tested-by: Gluster Build System Reviewed-by: Vijay Bellur --- xlators/cluster/afr/src/afr-common.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'xlators/cluster/afr/src/afr-common.c') diff --git a/xlators/cluster/afr/src/afr-common.c b/xlators/cluster/afr/src/afr-common.c index 7c38d65ed..e6b0881fc 100644 --- a/xlators/cluster/afr/src/afr-common.c +++ b/xlators/cluster/afr/src/afr-common.c @@ -210,11 +210,15 @@ afr_inode_get_ctx (xlator_t *this, inode_t *inode, afr_inode_params_t *params) fresh_children[i] = ctx->fresh_children[i]; break; case AFR_INODE_GET_OPENDIR_DONE: - params->u.value = ctx->masks & - AFR_ICTX_OPENDIR_DONE_MASK; + params->u.value = _gf_false; + if (ctx->masks & AFR_ICTX_OPENDIR_DONE_MASK) + params->u.value = _gf_true; break; case AFR_INODE_GET_SPLIT_BRAIN: - params->u.value = ctx->masks & AFR_ICTX_SPLIT_BRAIN_MASK; + params->u.value = _gf_false; + if (ctx->masks & AFR_ICTX_SPLIT_BRAIN_MASK) + params->u.value = _gf_true; + ; break; default: GF_ASSERT (0); @@ -225,7 +229,7 @@ unlock: UNLOCK (&inode->lock); } -uint64_t +gf_boolean_t afr_is_split_brain (xlator_t *this, inode_t *inode) { afr_inode_params_t params = {0}; -- cgit