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

RADIUS bio handlers for outgoing RADIUS client sockets. More...

#include <freeradius-devel/radius/radius.h>
#include <freeradius-devel/radius/bio.h>
#include <freeradius-devel/bio/packet.h>
#include <freeradius-devel/bio/fd.h>
#include <freeradius-devel/bio/retry.h>
+ Include dependency graph for client.h:

Go to the source code of this file.

Data Structures

struct  fr_radius_client_bio_info_t
 
struct  fr_radius_client_config_t
 

Functions

fr_bio_packet_tfr_radius_client_bio_alloc (TALLOC_CTX *ctx, fr_radius_client_config_t *cfg, fr_bio_fd_config_t const *fd_cfg)
 
void fr_radius_client_bio_connect (fr_event_list_t *el, int fd, int flags, void *uctx)
 
int fr_radius_client_bio_force_id (fr_bio_packet_t *bio, int code, int id)
 
fr_radius_client_bio_info_t const * fr_radius_client_bio_info (fr_bio_packet_t *bio)
 
size_t fr_radius_client_bio_outstanding (fr_bio_packet_t *bio)
 
int fr_radius_client_fd_bio_cancel (fr_bio_packet_t *bio, fr_packet_t *packet)
 Cancel one packet. More...
 

Detailed Description

RADIUS bio handlers for outgoing RADIUS client sockets.

Id
c5fd9bb799851ac25e770eea71cfe918c8306e07

Definition in file client.h.


Data Structure Documentation

◆ fr_radius_client_bio_info_t

struct fr_radius_client_bio_info_t

Definition at line 54 of file client.h.

+ Collaboration diagram for fr_radius_client_bio_info_t:
Data Fields
bool connected
fr_bio_fd_info_t const * fd_info
fr_time_t first_sent first time we sent a packet since going idle
fr_time_t last_idle last time we had nothing to do
fr_time_t last_reply When we last received a reply.
fr_time_t last_sent last time we sent a packet.
fr_time_t mrs_time Most recent sent time which had a reply.
size_t outstanding total number of outstanding packets.
fr_bio_retry_info_t const * retry_info

◆ fr_radius_client_config_t

struct fr_radius_client_config_t

Definition at line 34 of file client.h.

+ Collaboration diagram for fr_radius_client_config_t:
Data Fields
bool add_proxy_state
fr_time_delta_t connection_timeout
fr_event_list_t * el
fr_log_t * log
bool outgoing[FR_RADIUS_CODE_MAX] allowed outgoing packet types
fr_bio_packet_cb_funcs_t packet_cb_cfg
uint32_t proxy_state
fr_retry_config_t retry[FR_RADIUS_CODE_MAX] default retry configuration for each packet type
fr_bio_retry_config_t retry_cfg
fr_radius_bio_verify_t verify

Function Documentation

◆ fr_radius_client_bio_alloc()

fr_bio_packet_t* fr_radius_client_bio_alloc ( TALLOC_CTX *  ctx,
fr_radius_client_config_t cfg,
fr_bio_fd_config_t const *  fd_cfg 
)

Definition at line 50 of file client.c.

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

◆ fr_radius_client_bio_connect()

void fr_radius_client_bio_connect ( fr_event_list_t el,
int  fd,
int  flags,
void *  uctx 
)

◆ fr_radius_client_bio_force_id()

int fr_radius_client_bio_force_id ( fr_bio_packet_t bio,
int  code,
int  id 
)

Definition at line 671 of file client.c.

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

◆ fr_radius_client_bio_info()

fr_radius_client_bio_info_t const* fr_radius_client_bio_info ( fr_bio_packet_t bio)

Definition at line 663 of file client.c.

+ Here is the caller graph for this function:

◆ fr_radius_client_bio_outstanding()

size_t fr_radius_client_bio_outstanding ( fr_bio_packet_t bio)

Definition at line 651 of file client.c.

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

◆ fr_radius_client_fd_bio_cancel()

int fr_radius_client_fd_bio_cancel ( fr_bio_packet_t bio,
fr_packet_t packet 
)

Cancel one packet.

The packet can have a reply, or not. It doesn't matter.

This also frees any IDs associated with the packet.

Definition at line 566 of file client.c.

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