26 RCSIDH(protocol_h,
"$Id: b0d31a8b4bf5f53462736f0d83e7c234558caf7b $")
61 #define TRANSPORT_TCP (1 << IPPROTO_TCP)
62 #define TRANSPORT_UDP (1 << IPPROTO_UDP)
63 #define TRANSPORT_DUAL (TRANSPORT_UDP | TRANSPORT_TCP)
int common_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
void common_packet_debug(REQUEST *request, RADIUS_PACKET *packet, bool received)
rad_listen_encode_t encode
void(* rad_listen_debug_t)(REQUEST *, RADIUS_PACKET *, bool received)
Defines a CONF_PAIR to C data type mapping.
int(* rad_listen_encode_t)(rad_listen_t *, REQUEST *)
CONF_PARSER * proto_config
int(* rad_listen_decode_t)(rad_listen_t *, REQUEST *)
int(* rad_listen_print_t)(rad_listen_t const *, char *, size_t)
struct fr_protocol_t fr_protocol_t
int common_socket_open(CONF_SECTION *cs, rad_listen_t *this)
rad_listen_decode_t decode
void(* rad_listen_free_t)(rad_listen_t *)
ssize_t(* rad_listen_size_t)(uint8_t const *data, size_t data_len)
int(* rad_listen_parse_t)(CONF_SECTION *, rad_listen_t *)
char const * name
The name of the protocol.
uint64_t magic
Used to validate loaded library.
int(* rad_listen_recv_t)(rad_listen_t *)
int(* rad_listen_send_t)(rad_listen_t *, REQUEST *)
int common_socket_print(rad_listen_t const *this, char *buffer, size_t bufsize)