The FreeRADIUS server
$Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
|
RADIUS master protocol handler. More...
#include <freeradius-devel/radius/radius.h>
#include <freeradius-devel/io/listen.h>
#include <freeradius-devel/unlang/xlat_func.h>
#include <freeradius-devel/server/module_rlm.h>
#include <stdbool.h>
#include "proto_radius.h"
Go to the source code of this file.
Functions | |
static int | mod_decode (void const *instance, request_t *request, uint8_t *const data, size_t data_len) |
Decode the packet. More... | |
static ssize_t | mod_encode (UNUSED void const *instance, request_t *request, uint8_t *buffer, size_t buffer_len) |
static int | mod_instantiate (module_inst_ctx_t const *mctx) |
Instantiate the application. More... | |
static int | mod_load (void) |
static int | mod_open (void *instance, fr_schedule_t *sc, UNUSED CONF_SECTION *conf) |
Open listen sockets/connect to external event source. More... | |
static int | mod_priority_set (void const *instance, uint8_t const *buffer, UNUSED size_t buflen) |
static void | mod_unload (void) |
static xlat_action_t | packet_vector_xlat (TALLOC_CTX *ctx, fr_dcursor_t *out, UNUSED xlat_ctx_t const *xctx, request_t *request, UNUSED fr_value_box_list_t *in) |
Get the authentication vector. More... | |
static int | transport_parse (TALLOC_CTX *ctx, void *out, void *parent, CONF_ITEM *ci, conf_parser_t const *rule) |
static int | type_parse (TALLOC_CTX *ctx, void *out, UNUSED void *parent, CONF_ITEM *ci, conf_parser_t const *rule) |
static int | type_parse (UNUSED TALLOC_CTX *ctx, void *out, void *parent, CONF_ITEM *ci, UNUSED conf_parser_t const *rule) |
Translates the packet-type into a submodule name. More... | |
Variables | |
static fr_dict_attr_t const * | attr_message_authenticator |
static fr_dict_attr_t const * | attr_packet_type |
static fr_dict_attr_t const * | attr_proxy_state |
static fr_dict_attr_t const * | attr_state |
static fr_dict_attr_t const * | attr_user_name |
static fr_dict_t const * | dict_radius |
static conf_parser_t const | limit_config [] |
static const conf_parser_t | priority_config [] |
fr_app_t | proto_radius |
static conf_parser_t const | proto_radius_config [] |
How to parse a RADIUS listen section. More... | |
fr_dict_autoload_t | proto_radius_dict [] |
fr_dict_attr_autoload_t | proto_radius_dict_attr [] |
RADIUS master protocol handler.
Definition in file proto_radius.c.
|
static |
Decode the packet.
Definition at line 180 of file proto_radius.c.
|
static |
Instantiate the application.
Instantiate I/O and type submodules.
Definition at line 564 of file proto_radius.c.
|
static |
|
static |
Open listen sockets/connect to external event source.
[in] | instance | Ctx data for this application. |
[in] | sc | to add our file descriptor to. |
[in] | conf | Listen section parsed to give us instance. |
Definition at line 545 of file proto_radius.c.
|
static |
|
static |
Get the authentication vector.
Note that we don't allow people to get the reply vector, because it doesn't exist until the reply is sent.
Definition at line 642 of file proto_radius.c.
|
static |
|
static |
|
static |
Translates the packet-type into a submodule name.
If we found a Packet-Type = Access-Request CONF_PAIR for example, here's we'd load the proto_radius_auth module.
[in] | ctx | to allocate data in (instance of proto_radius). |
[out] | out | Where to write a module_instance_t containing the module handle and instance. |
[in] | parent | Base structure address. |
[in] | ci | CONF_PAIR specifying the name of the type module. |
[in] | rule | unused. |
Definition at line 138 of file proto_radius.c.
|
static |
Definition at line 112 of file proto_radius.c.
|
static |
Definition at line 108 of file proto_radius.c.
|
static |
Definition at line 111 of file proto_radius.c.
|
static |
Definition at line 110 of file proto_radius.c.
|
static |
Definition at line 109 of file proto_radius.c.
|
static |
Definition at line 100 of file proto_radius.c.
|
static |
Definition at line 37 of file proto_radius.c.
|
static |
Definition at line 55 of file proto_radius.c.
fr_app_t proto_radius |
Definition at line 682 of file proto_radius.c.
|
static |
How to parse a RADIUS listen section.
Definition at line 73 of file proto_radius.c.
fr_dict_autoload_t proto_radius_dict |
Definition at line 103 of file proto_radius.c.
fr_dict_attr_autoload_t proto_radius_dict_attr |
Definition at line 115 of file proto_radius.c.