The FreeRADIUS server  $Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
Data Structures | Typedefs | Functions
id.h File Reference

RADIUS bio handlers for tracking 8-bit IDs. More...

#include <freeradius-devel/radius/radius.h>
+ Include dependency graph for id.h:

Go to the source code of this file.

Data Structures

struct  fr_radius_id_ctx_t
 

Typedefs

typedef fr_radius_id_tfr_radius_code_id_t[FR_RADIUS_CODE_MAX]
 
typedef struct fr_radius_id_s fr_radius_id_t
 

Functions

static int fr_radius_code_id_alloc (TALLOC_CTX *ctx, fr_radius_code_id_t codes, int code)
 
static fr_radius_id_ctx_tfr_radius_code_id_find (fr_radius_code_id_t codes, int code, int id)
 
static int fr_radius_code_id_force (fr_radius_code_id_t codes, int code, int id)
 
static fr_radius_id_ctx_tfr_radius_code_id_pop (fr_radius_code_id_t codes, fr_packet_t *packet)
 
static void fr_radius_code_id_push (fr_radius_code_id_t codes, fr_packet_t const *packet)
 
fr_radius_id_tfr_radius_id_alloc (TALLOC_CTX *ctx)
 Allocate a tracking structure for one packet code. More...
 
fr_radius_id_ctx_tfr_radius_id_find (fr_radius_id_t *track, int id)
 
int fr_radius_id_force (fr_radius_id_t *track, int id)
 Forces the next ID to be the given one. More...
 
fr_radius_id_ctx_tfr_radius_id_pop (fr_radius_id_t *track, fr_packet_t *packet)
 Allocate an ID for a packet, using LRU. More...
 
void fr_radius_id_push (fr_radius_id_t *track, fr_packet_t const *packet)
 De-allocate an ID for a packet, using LRU. More...
 

Detailed Description

RADIUS bio handlers for tracking 8-bit IDs.

Id
badc5703e37123d6b4d96e406194b41add796bea

Definition in file id.h.


Data Structure Documentation

◆ fr_radius_id_ctx_t

struct fr_radius_id_ctx_t

Definition at line 34 of file id.h.

+ Collaboration diagram for fr_radius_id_ctx_t:
Data Fields
fr_packet_t * packet outgoing packet
void * request_ctx for the application to track
fr_packet_t * response response to outgoing packet
void * retry_ctx to find the retry information

Typedef Documentation

◆ fr_radius_code_id_t

typedef fr_radius_id_t* fr_radius_code_id_t[FR_RADIUS_CODE_MAX]

Definition at line 32 of file id.h.

◆ fr_radius_id_t

Definition at line 1 of file id.h.

Function Documentation

◆ fr_radius_code_id_alloc()

static int fr_radius_code_id_alloc ( TALLOC_CTX *  ctx,
fr_radius_code_id_t  codes,
int  code 
)
inlinestatic

Definition at line 51 of file id.h.

+ Here is the call graph for this function:

◆ fr_radius_code_id_find()

static fr_radius_id_ctx_t* fr_radius_code_id_find ( fr_radius_code_id_t  codes,
int  code,
int  id 
)
inlinestatic

Definition at line 84 of file id.h.

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

◆ fr_radius_code_id_force()

static int fr_radius_code_id_force ( fr_radius_code_id_t  codes,
int  code,
int  id 
)
inlinestatic

Definition at line 94 of file id.h.

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

◆ fr_radius_code_id_pop()

static fr_radius_id_ctx_t* fr_radius_code_id_pop ( fr_radius_code_id_t  codes,
fr_packet_t packet 
)
inlinestatic

Definition at line 64 of file id.h.

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

◆ fr_radius_code_id_push()

static void fr_radius_code_id_push ( fr_radius_code_id_t  codes,
fr_packet_t const *  packet 
)
inlinestatic

Definition at line 74 of file id.h.

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

◆ fr_radius_id_alloc()

fr_radius_id_t* fr_radius_id_alloc ( TALLOC_CTX *  ctx)

Allocate a tracking structure for one packet code.

Definition at line 45 of file id.c.

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

◆ fr_radius_id_find()

fr_radius_id_ctx_t* fr_radius_id_find ( fr_radius_id_t track,
int  id 
)

Definition at line 139 of file id.c.

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

◆ fr_radius_id_force()

int fr_radius_id_force ( fr_radius_id_t track,
int  id 
)

Forces the next ID to be the given one.

Definition at line 150 of file id.c.

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

◆ fr_radius_id_pop()

fr_radius_id_ctx_t* fr_radius_id_pop ( fr_radius_id_t track,
fr_packet_t packet 
)

Allocate an ID for a packet, using LRU.

Definition at line 89 of file id.c.

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

◆ fr_radius_id_push()

void fr_radius_id_push ( fr_radius_id_t track,
fr_packet_t const *  packet 
)

De-allocate an ID for a packet, using LRU.

Definition at line 118 of file id.c.

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