From 3474d192add07e1f2122515580a987a5da22e974 Mon Sep 17 00:00:00 2001 From: Li Dongyang Date: Tue, 4 Mar 2014 17:10:49 +1100 Subject: [PATCH] LU-4703 mdd: do not skip xattr sanity check for all cases xattr sanity check should be done at all times. Otherwise we are risking letting a non root user setting access acl on any file. Signed-off-by: Li Dongyang Change-Id: I5f44d38f2589f0758548d8ccae5efef27205f0a0 Reviewed-on: http://review.whamcloud.com/9469 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: Nathaniel Clark Reviewed-by: Bob Glossman Reviewed-by: John L. Hammond Reviewed-by: Andreas Dilger --- lustre/mdd/mdd_object.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lustre/mdd/mdd_object.c b/lustre/mdd/mdd_object.c index ef887cf..b44f6f1 100644 --- a/lustre/mdd/mdd_object.c +++ b/lustre/mdd/mdd_object.c @@ -1041,15 +1041,15 @@ static int mdd_xattr_set(const struct lu_env *env, struct md_object *obj, if (rc) RETURN(rc); + rc = mdd_xattr_sanity_check(env, mdd_obj, attr); + if (rc) + RETURN(rc); + if (!strcmp(name, XATTR_NAME_ACL_ACCESS)) { rc = mdd_acl_set(env, mdd_obj, attr, buf, fl); RETURN(rc); } - rc = mdd_xattr_sanity_check(env, mdd_obj, attr); - if (rc) - RETURN(rc); - handle = mdd_trans_create(env, mdd); if (IS_ERR(handle)) RETURN(PTR_ERR(handle)); -- 1.8.3.1