Unlang "finally" keyword evaluation.
More...
#include <freeradius-devel/server/state.h>
#include <freeradius-devel/server/signal.h>
#include <freeradius-devel/server/pair.h>
#include <freeradius-devel/server/rcode.h>
#include <freeradius-devel/unlang/unlang_priv.h>
#include <freeradius-devel/unlang/action.h>
#include <freeradius-devel/unlang/finally.h>
#include <freeradius-devel/unlang/interpret.h>
#include <freeradius-devel/util/timer.h>
Go to the source code of this file.
|
static unlang_action_t | unlang_finally (UNUSED unlang_result_t *p_result, request_t *request, unlang_stack_frame_t *frame) |
|
void | unlang_finally_init (void) |
|
int | unlang_finally_push_instruction (request_t *request, void *instruction, fr_time_delta_t min_time, bool top_frame) |
| Push a finally instructtion on the stack, to be evaluated as the stack is unwound.
|
|
static unlang_action_t | unlang_finally_resume (UNUSED unlang_result_t *p_result, request_t *request, unlang_stack_frame_t *frame) |
|
static void | unlang_timeout_handler (UNUSED fr_timer_list_t *tl, UNUSED fr_time_t now, void *ctx) |
|
Unlang "finally" keyword evaluation.
- Id
- f65ba4085c06e70f0af5928499c59235da853247
Used for running policy after a virtual server.
- Copyright
- 2025 Network RAIDUS SAS (legal.nosp@m.@net.nosp@m.workr.nosp@m.adiu.nosp@m.s.com)
Definition in file finally.c.
◆ unlang_frame_state_finally_t
struct unlang_frame_state_finally_t |
◆ unlang_finally()
◆ unlang_finally_init()
void unlang_finally_init |
( |
void |
| ) |
|
◆ unlang_finally_push_instruction()
Push a finally instructtion on the stack, to be evaluated as the stack is unwound.
- Parameters
-
[in] | request | to push timeout onto |
[in] | instruction | to run as we unwind |
[in] | min_time | max time to wait for the finally instruction to finish. This only applies if the request timeout timer has already fired, or has less than max_time to execute. i.e. this is a guarantee of a minimum amount of time for the finally instruction to run. |
[in] | top_frame | Set to UNLANG_TOP_FRAME if the interpreter should return. Set to UNLANG_SUB_FRAME if the interprer should continue. |
- Returns
- 0 on success.
- -1 on failure.
Static instruction for performing xlat evaluations
Definition at line 128 of file finally.c.
◆ unlang_finally_resume()
◆ unlang_timeout_handler()