26#include <freeradius-devel/io/base.h>
27#include <freeradius-devel/server/cf_util.h>
28#include <freeradius-devel/server/dl_module.h>
29#include <freeradius-devel/server/virtual_servers.h>
104#include <freeradius-devel/io/app_io.h>
static int const char char buffer[256]
module_t common
Common fields to all loadable modules.
int(* fr_app_open_t)(void *instance, fr_schedule_t *sc, CONF_SECTION *cs)
Open a new socket or other packet source.
virtual_server_compile_t const * compile_list
list of processing sections
void(* fr_app_event_list_set_t)(fr_listen_t *li, fr_event_list_t *el, void *nr)
Called by the network thread to pass an event list for the module to use for timer events.
fr_app_priority_get_t priority
Assign a priority to the packet.
module_t common
Common fields provided by all modules.
module_method_t entry_point
Entry point into the protocol subtype's state machine.
fr_io_decode_t decode
Translate raw bytes into fr_pair_ts and metadata.
fr_io_encode_t encode
Pack fr_pair_ts back into a byte array.
fr_app_open_t open
Callback to allow the fr_app_t to build an fr_listen_t and register it with the scheduler so we can r...
fr_dict_t const ** dict
default dictionary for this application.
int(* fr_app_priority_get_t)(void const *instance, uint8_t const *buffer, size_t buflen)
Set the priority of a packet.
Describes a new application (protocol)
Public structure describing an application (protocol) specialisation.
A section grouping multiple CONF_PAIR.
int(* fr_io_decode_t)(void const *instance, request_t *request, uint8_t *const data, size_t data_len)
Decode a raw packet and convert it into a request.
ssize_t(* fr_io_encode_t)(void const *instance, request_t *request, uint8_t *buffer, size_t buffer_len)
Encode data from a request_t into a raw packet.
Stores all information relating to an event list.
CONF_SECTION * cs
thread pool configuration section
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.
static const uchar sc[16]
static fr_event_list_t * el
Processing sections which are allowed in this virtual server.