diff --git a/mxqd.c b/mxqd.c index c3eef0ec..c8b73b3a 100644 --- a/mxqd.c +++ b/mxqd.c @@ -842,7 +842,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) if (!passwd) { mx_log_err("job=%s(%d):%lu:%lu getpwuid(): %m", group->user_name, group->user_uid, group->group_id, job->job_id); - return 0; + return -1; } if (!mx_streq(passwd->pw_name, group->user_name)) { @@ -859,7 +859,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) if (!passwd) { mx_log_err("job=%s(%d):%lu:%lu getpwnam(): %m", group->user_name, group->user_uid, group->group_id, job->job_id); - return 0; + return -1; } if (passwd->pw_uid != group->user_uid) { mx_log_fatal("job=%s(%d):%lu:%lu user_name=%s does not map to uid=%d but to pw_uid=%d. Aborting Child execution.", @@ -871,7 +871,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) group->user_uid, passwd->pw_uid); - return 0; + return -1; } } @@ -881,7 +881,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) if (res != 0) { mx_log_err("job=%s(%d):%lu:%lu clearenv(): %m", group->user_name, group->user_uid, group->group_id, job->job_id); - return 0; + return -1; } mx_setenv_forever("USER", group->user_name); @@ -933,7 +933,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) if (fh == -1) { mx_log_err("job=%s(%d):%lu:%lu open(%s) failed: %m", group->user_name, group->user_uid, group->group_id, job->job_id, "/proc/self/loginuid"); - return 0; + return -1; } dprintf(fh, "%d", group->user_uid); close(fh); @@ -972,7 +972,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) if (res == -1) { mx_log_err("job=%s(%d):%lu:%lu initgroups() failed: %m", group->user_name, group->user_uid, group->group_id, job->job_id); - return 0; + return -1; } res = setregid(group->user_gid, group->user_gid); @@ -980,7 +980,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) mx_log_err("job=%s(%d):%lu:%lu setregid(%d, %d) failed: %m", group->user_name, group->user_uid, group->group_id, job->job_id, group->user_gid, group->user_gid); - return 0; + return -1; } res = setreuid(-1, group->user_uid); @@ -988,7 +988,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) mx_log_err("job=%s(%d):%lu:%lu setreuid(%d, %d) failed: %m", group->user_name, group->user_uid, group->group_id, job->job_id, group->user_uid, group->user_uid); - return 0; + return -1; } res = chdir(job->job_workdir); @@ -996,7 +996,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) mx_log_err("job=%s(%d):%lu:%lu chdir(%s) failed: %m", group->user_name, group->user_uid, group->group_id, job->job_id, job->job_workdir); - return 0; + return -1; } umask(job->job_umask); @@ -1004,7 +1004,7 @@ static int init_child_process(struct mxq_group_list *glist, struct mxq_job *job) res=sched_setaffinity(0,sizeof(job->host_cpu_set),&job->host_cpu_set); if (res<0) mx_log_warning("sched_setaffinity: $m"); - return 1; + return 0; } /**********************************************************************/ @@ -1136,7 +1136,7 @@ static int exec_reaper(struct mxq_server *server,struct mxq_group_list *glist, s } res = init_child_process(glist, job); - if (!res) + if (res == -1) return(-1); mxq_job_set_tmpfilenames(group, job);