|
@@ -80,7 +80,8 @@ static void push_group_info(struct lvfs_run_ctxt *save,
|
|
|
struct cred *cred;
|
|
|
task_lock(current);
|
|
|
save->group_info = current_cred()->group_info;
|
|
|
- if ((cred = prepare_creds())) {
|
|
|
+ cred = prepare_creds();
|
|
|
+ if (cred) {
|
|
|
cred->group_info = ginfo;
|
|
|
commit_creds(cred);
|
|
|
}
|
|
@@ -96,7 +97,8 @@ static void pop_group_info(struct lvfs_run_ctxt *save,
|
|
|
} else {
|
|
|
struct cred *cred;
|
|
|
task_lock(current);
|
|
|
- if ((cred = prepare_creds())) {
|
|
|
+ cred = prepare_creds();
|
|
|
+ if (cred) {
|
|
|
cred->group_info = save->group_info;
|
|
|
commit_creds(cred);
|
|
|
}
|
|
@@ -137,7 +139,8 @@ void push_ctxt(struct lvfs_run_ctxt *save, struct lvfs_run_ctxt *new_ctx,
|
|
|
save->luc.luc_fsgid = current_fsgid();
|
|
|
save->luc.luc_cap = current_cap();
|
|
|
|
|
|
- if ((cred = prepare_creds())) {
|
|
|
+ cred = prepare_creds();
|
|
|
+ if (cred) {
|
|
|
cred->uid = uc->luc_uid;
|
|
|
cred->gid = uc->luc_gid;
|
|
|
cred->fsuid = uc->luc_fsuid;
|
|
@@ -180,7 +183,8 @@ void pop_ctxt(struct lvfs_run_ctxt *saved, struct lvfs_run_ctxt *new_ctx,
|
|
|
current->fs->umask = saved->luc.luc_umask;
|
|
|
if (uc) {
|
|
|
struct cred *cred;
|
|
|
- if ((cred = prepare_creds())) {
|
|
|
+ cred = prepare_creds();
|
|
|
+ if (cred) {
|
|
|
cred->uid = saved->luc.luc_uid;
|
|
|
cred->gid = saved->luc.luc_gid;
|
|
|
cred->fsuid = saved->luc.luc_fsuid;
|