summaryrefslogtreecommitdiff
path: root/src/core/execute.c
diff options
context:
space:
mode:
authorSangjung Woo <sangjung.woo@samsung.com>2015-09-23 20:53:09 +0900
committerSangjung Woo <sangjung.woo@samsung.com>2015-09-23 22:11:38 +0900
commitb213e1c11d5a383faf5c456a31389d5c0c0f039b (patch)
treef9c8a91030641383a82a6234403cbd27119455d5 /src/core/execute.c
parent6bf6e43e7e214a4bd03008a91a7fc77ce6934d65 (diff)
exec: move mac_smack_apply_pid() and setup_pam() to same condition block
This cleans up exec_child() function by moving mac_smack_apply_pid() and setup_pam() to the same condition block, since both of them have the same condition (i.e params->apply_permissions). It improves readability without changing its operation.
Diffstat (limited to 'src/core/execute.c')
-rw-r--r--src/core/execute.c22
1 files changed, 9 insertions, 13 deletions
diff --git a/src/core/execute.c b/src/core/execute.c
index eef2dacc54..a7e2362236 100644
--- a/src/core/execute.c
+++ b/src/core/execute.c
@@ -1582,18 +1582,15 @@ static int exec_child(
}
}
+ umask(context->umask);
+
if (params->apply_permissions) {
r = enforce_groups(context, username, gid);
if (r < 0) {
*exit_status = EXIT_GROUP;
return r;
}
- }
-
- umask(context->umask);
-
#ifdef HAVE_SMACK
- if (params->apply_permissions) {
if (context->smack_process_label) {
r = mac_smack_apply_pid(0, context->smack_process_label);
if (r < 0) {
@@ -1617,19 +1614,18 @@ static int exec_child(
return r;
}
}
- }
#endif
#endif
-
#ifdef HAVE_PAM
- if (params->apply_permissions && context->pam_name && username) {
- r = setup_pam(context->pam_name, username, uid, context->tty_path, &pam_env, fds, n_fds);
- if (r < 0) {
- *exit_status = EXIT_PAM;
- return r;
+ if (context->pam_name && username) {
+ r = setup_pam(context->pam_name, username, uid, context->tty_path, &pam_env, fds, n_fds);
+ if (r < 0) {
+ *exit_status = EXIT_PAM;
+ return r;
+ }
}
- }
#endif
+ }
if (context->private_network && runtime && runtime->netns_storage_socket[0] >= 0) {
r = setup_netns(runtime->netns_storage_socket);