The FreeRADIUS server  $Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
Data Structures | Macros | Functions | Variables
base.c File Reference

VMPS processing. More...

#include <freeradius-devel/io/application.h>
#include <freeradius-devel/server/protocol.h>
#include <freeradius-devel/util/dict.h>
#include <freeradius-devel/util/debug.h>
#include <freeradius-devel/vmps/vmps.h>
#include <freeradius-devel/protocol/vmps/vmps.h>
#include <freeradius-devel/server/process.h>
+ Include dependency graph for base.c:

Go to the source code of this file.

Data Structures

struct  process_vmps_sections_t
 
struct  process_vmps_t
 

Macros

#define PROCESS_CODE_DO_NOT_RESPOND   FR_VMPS_DO_NOT_RESPOND
 
#define PROCESS_CODE_MAX   FR_VMPS_CODE_MAX
 
#define PROCESS_INST   process_vmps_t
 
#define PROCESS_PACKET_CODE_VALID   FR_VMPS_PACKET_CODE_VALID
 
#define PROCESS_PACKET_TYPE   fr_vmps_packet_code_t
 

Functions

static unlang_action_t mod_process (rlm_rcode_t *p_result, module_ctx_t const *mctx, request_t *request)
 
static void vmps_packet_debug (request_t *request, fr_packet_t const *packet, fr_pair_list_t const *list, bool received)
 

Variables

static fr_dict_attr_t const * attr_packet_type
 
static const virtual_server_compile_t compile_list []
 
static fr_dict_t const * dict_vmps
 
static fr_process_state_t const process_state []
 
fr_process_module_t process_vmps
 
fr_dict_autoload_t process_vmps_dict []
 
fr_dict_attr_autoload_t process_vmps_dict_attr []
 

Detailed Description

VMPS processing.

Id
8947eee3063fef9c9ba85f85d68087aba05e02b5

Definition in file base.c.


Data Structure Documentation

◆ process_vmps_sections_t

struct process_vmps_sections_t

Definition at line 49 of file base.c.

+ Collaboration diagram for process_vmps_sections_t:
Data Fields
CONF_SECTION * do_not_respond
CONF_SECTION * join_request
CONF_SECTION * join_response
uint64_t nothing
CONF_SECTION * reconfirm_request
CONF_SECTION * reconfirm_response

◆ process_vmps_t

struct process_vmps_t

Definition at line 59 of file base.c.

+ Collaboration diagram for process_vmps_t:
Data Fields
process_vmps_sections_t sections

Macro Definition Documentation

◆ PROCESS_CODE_DO_NOT_RESPOND

#define PROCESS_CODE_DO_NOT_RESPOND   FR_VMPS_DO_NOT_RESPOND

Definition at line 65 of file base.c.

◆ PROCESS_CODE_MAX

#define PROCESS_CODE_MAX   FR_VMPS_CODE_MAX

Definition at line 64 of file base.c.

◆ PROCESS_INST

#define PROCESS_INST   process_vmps_t

Definition at line 67 of file base.c.

◆ PROCESS_PACKET_CODE_VALID

#define PROCESS_PACKET_CODE_VALID   FR_VMPS_PACKET_CODE_VALID

Definition at line 66 of file base.c.

◆ PROCESS_PACKET_TYPE

#define PROCESS_PACKET_TYPE   fr_vmps_packet_code_t

Definition at line 63 of file base.c.

Function Documentation

◆ mod_process()

static unlang_action_t mod_process ( rlm_rcode_t p_result,
module_ctx_t const *  mctx,
request_t request 
)
static

Definition at line 204 of file base.c.

+ Here is the call graph for this function:

◆ vmps_packet_debug()

static void vmps_packet_debug ( request_t request,
fr_packet_t const *  packet,
fr_pair_list_t const *  list,
bool  received 
)
static

Definition at line 165 of file base.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ attr_packet_type

fr_dict_attr_t const* attr_packet_type
static

Definition at line 41 of file base.c.

◆ compile_list

const virtual_server_compile_t compile_list[]
static
Initial value:
= {
{
.section = SECTION_NAME("recv", "Join-Request"),
.actions = &mod_actions_authorize,
.offset = PROCESS_CONF_OFFSET(join_request),
},
{
.section = SECTION_NAME("send", "Join-Response"),
.actions = &mod_actions_postauth,
.offset = PROCESS_CONF_OFFSET(join_response),
},
{
.section = SECTION_NAME("recv", "Reconfirm-Request"),
.actions = &mod_actions_authorize,
.offset = PROCESS_CONF_OFFSET(reconfirm_request),
},
{
.section = SECTION_NAME("send", "Reconfirm-Response"),
.actions = &mod_actions_postauth,
.offset = PROCESS_CONF_OFFSET(reconfirm_response),
},
{
.section = SECTION_NAME("send", "Do-Not-Respond"),
.actions = &mod_actions_postauth,
.offset = PROCESS_CONF_OFFSET(do_not_respond),
},
}
unlang_mod_actions_t const mod_actions_authorize
Definition: mod_action.c:44
unlang_mod_actions_t const mod_actions_postauth
Definition: mod_action.c:88
#define SECTION_NAME(_name1, _name2)
Define a section name consisting of a verb and a noun.
Definition: section.h:40
#define COMPILE_TERMINATOR

Definition at line 229 of file base.c.

◆ dict_vmps

fr_dict_t const* dict_vmps
static

Definition at line 33 of file base.c.

◆ process_state

fr_process_state_t const process_state[]
static

Definition at line 70 of file base.c.

◆ process_vmps

fr_process_module_t process_vmps
Initial value:
= {
.common = {
.name = "vmps",
.inst_size = sizeof(process_vmps_t)
},
.process = mod_process,
.compile_list = compile_list,
.dict = &dict_vmps,
}
#define MODULE_MAGIC_INIT
Stop people using different module/library/server versions together.
Definition: dl_module.h:63
static unlang_action_t mod_process(rlm_rcode_t *p_result, module_ctx_t const *mctx, request_t *request)
Definition: base.c:204
static const virtual_server_compile_t compile_list[]
Definition: base.c:229
static fr_dict_t const * dict_vmps
Definition: base.c:33

Definition at line 261 of file base.c.

◆ process_vmps_dict

fr_dict_autoload_t process_vmps_dict
Initial value:
= {
{ .out = &dict_vmps, .proto = "vmps" },
{ NULL }
}

Definition at line 36 of file base.c.

◆ process_vmps_dict_attr

fr_dict_attr_autoload_t process_vmps_dict_attr
Initial value:
= {
{ .out = &attr_packet_type, .name = "Packet-Type", .type = FR_TYPE_UINT32, .dict = &dict_vmps },
{ NULL }
}
fr_dict_attr_t const * attr_packet_type
Definition: base.c:91
@ FR_TYPE_UINT32
32 Bit unsigned integer.
Definition: merged_model.c:99

Definition at line 44 of file base.c.