The FreeRADIUS server  $Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
Data Structures | Typedefs | Functions
listen.h File Reference
#include <freeradius-devel/io/base.h>
#include <freeradius-devel/io/application.h>
#include <freeradius-devel/server/time_tracking.h>
+ Include dependency graph for listen.h:

Go to the source code of this file.

Data Structures

struct  fr_async_s
 Minimal data structure to use the new code. More...
 
struct  fr_listen
 

Typedefs

typedef struct fr_listen fr_listen_t
 Describes a path data takes to/from the wire to/from fr_pair_ts. More...
 

Functions

int fr_io_listen_free (fr_listen_t *li)
 

Data Structure Documentation

◆ fr_async_s

struct fr_async_s

Minimal data structure to use the new code.

Definition at line 58 of file listen.h.

+ Collaboration diagram for fr_async_s:
Data Fields
fr_channel_t * channel
fr_event_list_t * el
fr_dlist_t entry in the list of requests associated with this channel
fr_listen_t * listen How we received this request, and how we'll send the reply.
void * packet_ctx
uint32_t priority higher == higher priority
fr_time_t recv_time
uint32_t sequence higher == higher priority, too
fr_time_tracking_t tracking

◆ fr_listen

struct fr_listen

Definition at line 25 of file listen.h.

+ Collaboration diagram for fr_listen:
Data Fields
fr_app_t const * app
void const * app_instance
fr_app_io_t const * app_io I/O path functions.
fr_socket_t * app_io_addr for tracking duplicate sockets
void const * app_io_instance I/O path configuration context.
bool connected is this for a connected socket?
size_t default_message_size copied from app_io, but may be changed
int fd file descriptor for this socket - set by open
char const * name printable name for this socket - set by open
bool needs_full_setup Set to true to avoid the short cut when adding the listener.

Added for rlm_detail which requires inst->parent->sc to be populated when event_list_set callback is run which doesn't happen if the short cut is taken.

bool no_write_callback sometimes we don't need to do writes
bool non_socket_listener special internal listener that does not use sockets.
size_t num_messages for the message ring buffer
CONF_SECTION * server_cs CONF_SECTION of the server.
void * thread_instance thread / socket context
bool track_duplicates do we track duplicate packets?
fr_rb_node_t virtual_server_node Entry into the virtual server's tree of listeners.

Typedef Documentation

◆ fr_listen_t

typedef struct fr_listen fr_listen_t

Describes a path data takes to/from the wire to/from fr_pair_ts.

Definition at line 1 of file listen.h.

Function Documentation

◆ fr_io_listen_free()

int fr_io_listen_free ( fr_listen_t li)

Definition at line 2915 of file master.c.

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