From f1dec6b720a506f39418a7116d779e68083f0bba Mon Sep 17 00:00:00 2001 From: vitaly Date: Mon, 15 Sep 2008 18:30:54 +0000 Subject: [PATCH] Branch b1_8_gate b=15949 i=adilger i=shadow --- lustre/mds/mds_lib.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/lustre/mds/mds_lib.c b/lustre/mds/mds_lib.c index 4c0797a..5221a1c 100644 --- a/lustre/mds/mds_lib.c +++ b/lustre/mds/mds_lib.c @@ -155,7 +155,7 @@ static int mds_setattr_unpack(struct ptlrpc_request *req, int offset, r->ur_uc.luc_fsuid = rec->sa_fsuid; r->ur_uc.luc_fsgid = rec->sa_fsgid; - r->ur_uc.luc_cap = rec->sa_cap; + cfs_kernel_cap_unpack(&r->ur_uc.luc_cap, rec->sa_cap); r->ur_uc.luc_suppgid1 = rec->sa_suppgid; r->ur_uc.luc_suppgid2 = -1; r->ur_fid1 = &rec->sa_fid; @@ -205,7 +205,7 @@ static int mds_create_unpack(struct ptlrpc_request *req, int offset, r->ur_uc.luc_fsuid = rec->cr_fsuid; r->ur_uc.luc_fsgid = rec->cr_fsgid; - r->ur_uc.luc_cap = rec->cr_cap; + cfs_kernel_cap_unpack(&r->ur_uc.luc_cap, rec->cr_cap); r->ur_uc.luc_suppgid1 = rec->cr_suppgid; r->ur_uc.luc_suppgid2 = -1; r->ur_fid1 = &rec->cr_fid; @@ -258,7 +258,7 @@ static int mds_link_unpack(struct ptlrpc_request *req, int offset, r->ur_uc.luc_fsuid = rec->lk_fsuid; r->ur_uc.luc_fsgid = rec->lk_fsgid; - r->ur_uc.luc_cap = rec->lk_cap; + cfs_kernel_cap_unpack(&r->ur_uc.luc_cap, rec->lk_cap); r->ur_uc.luc_suppgid1 = rec->lk_suppgid1; r->ur_uc.luc_suppgid2 = rec->lk_suppgid2; r->ur_fid1 = &rec->lk_fid1; @@ -293,7 +293,7 @@ static int mds_unlink_unpack(struct ptlrpc_request *req, int offset, r->ur_uc.luc_fsuid = rec->ul_fsuid; r->ur_uc.luc_fsgid = rec->ul_fsgid; - r->ur_uc.luc_cap = rec->ul_cap; + cfs_kernel_cap_unpack(&r->ur_uc.luc_cap, rec->ul_cap); r->ur_uc.luc_suppgid1 = rec->ul_suppgid; r->ur_uc.luc_suppgid2 = -1; r->ur_mode = rec->ul_mode; @@ -329,7 +329,7 @@ static int mds_rename_unpack(struct ptlrpc_request *req, int offset, r->ur_uc.luc_fsuid = rec->rn_fsuid; r->ur_uc.luc_fsgid = rec->rn_fsgid; - r->ur_uc.luc_cap = rec->rn_cap; + cfs_kernel_cap_unpack(&r->ur_uc.luc_cap, rec->rn_cap); r->ur_uc.luc_suppgid1 = rec->rn_suppgid1; r->ur_uc.luc_suppgid2 = rec->rn_suppgid2; r->ur_fid1 = &rec->rn_fid1; @@ -370,7 +370,7 @@ static int mds_open_unpack(struct ptlrpc_request *req, int offset, r->ur_uc.luc_fsuid = rec->cr_fsuid; r->ur_uc.luc_fsgid = rec->cr_fsgid; - r->ur_uc.luc_cap = rec->cr_cap; + cfs_kernel_cap_unpack(&r->ur_uc.luc_cap, rec->cr_cap); r->ur_uc.luc_suppgid1 = rec->cr_suppgid; r->ur_uc.luc_suppgid2 = -1; r->ur_fid1 = &rec->cr_fid; @@ -438,7 +438,7 @@ int mds_update_unpack(struct ptlrpc_request *req, int offset, } void mds_root_squash(struct mds_obd *mds, lnet_nid_t *peernid, - __u32 *fsuid, __u32 *fsgid, __u32 *cap, + __u32 *fsuid, __u32 *fsgid, cfs_kernel_cap_t *kcap, __u32 *suppgid, __u32 *suppgid2) { if (!mds->mds_squash_uid || *fsuid) @@ -447,13 +447,13 @@ void mds_root_squash(struct mds_obd *mds, lnet_nid_t *peernid, if (*peernid == mds->mds_nosquash_nid) return; - CDEBUG(D_OTHER, "squash req from %s, (%d:%d/%x)=>(%d:%d/%x)\n", - libcfs_nid2str(*peernid), *fsuid, *fsgid, *cap, - mds->mds_squash_uid, mds->mds_squash_gid, 0); + CDEBUG(D_OTHER, "squash req from %s, (%d:%d)=>(%d:%d)\n", + libcfs_nid2str(*peernid), *fsuid, *fsgid, + mds->mds_squash_uid, mds->mds_squash_gid); *fsuid = mds->mds_squash_uid; *fsgid = mds->mds_squash_gid; - *cap = 0; + cfs_kernel_cap_unpack(kcap, 0); *suppgid = -1; if (suppgid2) *suppgid2 = -1; @@ -477,13 +477,13 @@ int mds_init_ucred(struct lvfs_ucred *ucred, struct ptlrpc_request *req, } else #endif { + cfs_kernel_cap_unpack(&ucred->luc_cap, body->capability); mds_root_squash(mds, &req->rq_peer.nid, &body->fsuid, - &body->fsgid, &body->capability, + &body->fsgid, &ucred->luc_cap, &body->suppgid, NULL); ucred->luc_fsuid = body->fsuid; ucred->luc_fsgid = body->fsgid; - ucred->luc_cap = body->capability; } ucred->luc_uce = upcall_cache_get_entry(mds->mds_group_hash, -- 1.8.3.1