17 #include <freeradius-devel/io/atomic_queue.h>
18 #include <freeradius-devel/server/base.h>
19 #include <freeradius-devel/server/map.h>
20 #include <freeradius-devel/server/module_rlm.h>
21 #include <freeradius-devel/server/trunk.h>
22 #include <freeradius-devel/util/dlist.h>
23 #include <freeradius-devel/util/retry.h>
24 #include <freeradius-devel/unlang/module.h>
25 #include <freeradius-devel/radius/radius.h>
unlang_action_t
Returned by unlang_op_t calls, determine the next action of the interpreter.
@ FR_RADIUS_CODE_MAX
Maximum possible protocol code.
fr_radius_require_ma_t
Control whether Message-Authenticator is required in Access-Requests.
rlm_rcode_t
Return codes indicating the result of the module call.
fr_radius_require_ma_t require_message_authenticator
Require Message-Authenticator in responses.
bool replicate
Ignore responses.
uint32_t num_answers_to_alive
How many status check responses we need to mark the connection as alive.
map_list_t status_check_map
attributes for the status-server checks
fr_time_delta_t revive_interval
rlm_radius_io_enqueue_t enqueue
Enqueue a request_t with an IO submodule.
uint32_t proxy_state
Unique ID (mostly) of this module.
module_t common
Common fields to all loadable modules.
fr_retry_config_t retry[FR_RADIUS_CODE_MAX]
bool originate
Originating packets, instead of proxying existing ones.
uint32_t status_check
code of status-check type
bool * received_message_authenticator
Received Message-Authenticator in responses.
uint32_t * types
array of allowed packet types
fr_time_delta_t response_window
uint32_t max_attributes
Maximum number of attributes to decode in response.
bool allowed[FR_RADIUS_CODE_MAX]
module_instance_t * io_submodule
trunk_conf_t trunk_conf
trunk configuration
unlang_action_t(* rlm_radius_io_enqueue_t)(rlm_rcode_t *p_result, void **rctx, void *instance, void *thread, request_t *request)
Enqueue a request_t to an IO submodule.
rlm_radius_io_t const * io
Public symbol exported by the submodule.
fr_time_delta_t zombie_period
unlang_module_signal_t signal
Send a signal to an IO module.
bool synchronous
Retransmit when receiving a duplicate request.
module_method_t resume
Resume a request, and get rcode.
Public structure describing an I/O path for an outgoing socket.
unlang_action_t(* module_method_t)(rlm_rcode_t *p_result, module_ctx_t const *mctx, request_t *request)
Module section callback.
Struct exported by a rlm_* module.
A time delta, a difference in time measured in nanoseconds.
Common configuration parameters for a trunk.
void(* unlang_module_signal_t)(module_ctx_t const *mctx, request_t *request, fr_signal_t action)
A callback when the request gets a fr_signal_t.