![]() |
The FreeRADIUS server $Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
|
#include <freeradius-devel/unlang/interpret.h>#include <freeradius-devel/server/request.h>
Include dependency graph for child_request_priv.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | unlang_child_request_t |
| Each child has a state, a number, a request, and a count of their siblings. More... | |
| struct | unlang_child_request_t.config |
Enumerations | |
| enum | unlang_child_request_state_t { CHILD_INIT = 0 , CHILD_RUNNABLE , CHILD_EXITED , CHILD_DETACHED , CHILD_CANCELLED , CHILD_DONE , CHILD_FREED } |
| Parallel child states. More... | |
Functions | |
| int | unlang_child_request_init (TALLOC_CTX *ctx, unlang_child_request_t *out, request_t *child, unlang_result_t *p_result, unsigned int *sibling_count, void const *unique_session_ptr, bool free_child) |
| Initialize a child request. | |
| int | unlang_child_request_op_init (void) |
Variables | |
| fr_table_num_ordered_t const | unlang_child_states_table [] |
| size_t | unlang_child_states_table_len |
| struct unlang_child_request_t |
Each child has a state, a number, a request, and a count of their siblings.
Definition at line 62 of file child_request_priv.h.
Collaboration diagram for unlang_child_request_t:| Data Fields | ||
|---|---|---|
| struct unlang_child_request_t.config | config | |
| char const * | name | Cache the request name. |
| int | num | The child number. |
| unlang_result_t * | p_result |
Pointer to the result of the child request. This is a pointer to the parent's result, and should be used to store the result of the child. |
| request_t * | request | Child request. The actual request the child will run. |
| unlang_result_t | result |
The result of the child request. This is a copy of the parent's result, and should be used to store the result of the child. |
| unsigned int * | sibling_count |
Number of siblings. as a child completes, it decrements this number. once it reaches zero, the parent is signalled to resume. |
| unlang_child_request_state_t | state | State of the child. |
| struct unlang_child_request_t.config |
Definition at line 74 of file child_request_priv.h.
| Data Fields | ||
|---|---|---|
| bool | free_child | |
| void const * | session_unique_ptr |
Session unique ptr identifier. If not NULL, the child's session data will be stored in the parent, and be restored during a later request. |
Parallel child states.
Definition at line 36 of file child_request_priv.h.
| int unlang_child_request_init | ( | TALLOC_CTX * | ctx, |
| unlang_child_request_t * | out, | ||
| request_t * | child, | ||
| unlang_result_t * | p_result, | ||
| unsigned int * | sibling_count, | ||
| void const * | unique_session_ptr, | ||
| bool | free_child | ||
| ) |
Initialize a child request.
This initializes the child request result and configuration structure, and pushes a resumption frame onto the child's stack.
| [in] | ctx | Memory to use for any additional memory allocated to the unlang_child_request_t. |
| [out] | out | Child request to initialize. |
| [in] | child | The child request to initialize. |
| [in] | p_result | Where to write out the rcode from the child. |
| [in,out] | sibling_count | If non-null the bumber of siblings. This is incremented for each child created. |
| [in] | unique_session_ptr | Unique session pointer for this child. If NULL session data won't be stored/restored for the child. |
| [in] | free_child | Free the child when done? |
Definition at line 247 of file child_request.c.
Here is the call graph for this function:
Here is the caller graph for this function:| int unlang_child_request_op_init | ( | void | ) |
Definition at line 266 of file child_request.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
extern |
Definition at line 40 of file child_request.c.
|
extern |
Definition at line 48 of file child_request.c.
1.9.8