diff --git a/lib/run_part.c b/lib/run_part.c index 840d9511..890f837c 100644 --- a/lib/run_part.c +++ b/lib/run_part.c @@ -32,7 +32,7 @@ static int run_part(char *script_path, const char *name, const char *action) setenv("SUBJECT",name,1); execv(script_path,args); fprintf(shadow_logfd, "execv: %s\n", strerror(errno)); - exit(1); + _exit(1); } pid_status = wait(&wait_status); diff --git a/lib/spawn.c b/lib/spawn.c index 57a41219..0a2b1095 100644 --- a/lib/spawn.c +++ b/lib/spawn.c @@ -35,11 +35,11 @@ run_command(const char *cmd, const char *argv[], (void) execve (cmd, (char * const *) argv, (char * const *) envp); if (ENOENT == errno) { - exit (E_CMD_NOTFOUND); + _exit (E_CMD_NOTFOUND); } fprintf (shadow_logfd, "%s: cannot execute %s: %s\n", shadow_progname, cmd, strerror (errno)); - exit (E_CMD_NOEXEC); + _exit (E_CMD_NOEXEC); } else if ((pid_t)-1 == pid) { fprintf (shadow_logfd, "%s: cannot execute %s: %s\n", shadow_progname, cmd, strerror (errno));