]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Fail on internal exec error
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Tue, 15 Nov 2022 14:20:43 +0000 (08:20 -0600)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Tue, 15 Nov 2022 14:20:43 +0000 (08:20 -0600)
src/lib/server/exec.c
src/modules/rlm_exec/rlm_exec.c

index 24e20c3c4ac5a07205649455733e478a015be9e5..1a883a2bfdfd4e0c462a600dbff7afa56f3985db 100644 (file)
@@ -596,7 +596,7 @@ void fr_exec_cleanup(fr_exec_state_t *exec, int signal)
        if (exec->pid >= 0) {
                RDEBUG3("Cleaning up exec state for PID %u", exec->pid);
        } else {
-               RDEBUG3("Cleaning up failed exec for PID %u", exec->pid);
+               RDEBUG3("Cleaning up failed exec");
        }
 
        /*
index b6f578d3f7f72c6612f7f2543ca1146d9f3125bc..6197a6d79d36b407fa961a72af338f450e35913b 100644 (file)
@@ -452,6 +452,8 @@ static unlang_action_t CC_HINT(nonnull) mod_exec_dispatch(rlm_rcode_t *p_result,
        }
 
        MEM(m = talloc_zero(ctx, rlm_exec_ctx_t));
+       m->status = 2;  /* Fail if we couldn't exec */
+
        fr_value_box_list_init(&m->box);
        return unlang_module_yield_to_tmpl(m, &m->box,
                                           request, inst->tmpl,