25#include <freeradius-devel/server/request.h>
74 void const *session_unique_ptr;
88 rlm_rcode_t *p_result,
unsigned int *sibling_count,
void const *unique_session_ptr,
bool free_child);
request_t * request
Child request. The actual request the child will run.
int unlang_child_request_op_init(void)
fr_table_num_ordered_t const unlang_child_states_table[]
char const * name
Cache the request name.
unlang_child_request_state_t state
State of the child.
unsigned int * sibling_count
Number of siblings.
unlang_child_request_state_t
Parallel child states.
@ CHILD_RUNNABLE
Running/runnable.
@ CHILD_DETACHED
Child has detached, we can't signal it or communicate with it anymore.
@ CHILD_INIT
Initial state, has no request allocated.
@ CHILD_EXITED
Child has run to completion, and is waiting to be reaped.
@ CHILD_CANCELLED
Child was cancelled.
@ CHILD_FREED
The child has been freed.
@ CHILD_DONE
The child has been processed by the parent the request should still exist, and should be freed.
int unlang_child_request_init(TALLOC_CTX *ctx, unlang_child_request_t *out, request_t *child, rlm_rcode_t *p_result, unsigned int *sibling_count, void const *unique_session_ptr, bool free_child)
Initialize a child request.
size_t unlang_child_states_table_len
Each child has a state, a number, a request, and a count of their siblings.
static const conf_parser_t config[]
rlm_rcode_t
Return codes indicating the result of the module call.
An element in an arbitrarily ordered array of name to num mappings.
static size_t char ** out