Main Page | Class List | File List | Class Members

RadiusClientConnection Class Reference

Connection between client RADIUS stack and single RADIUS server. More...

#include <RadiusClientConnection.h>

List of all members.

Public Member Functions

 RadiusClientConnection (RadiusClientStack *p_stack, const RadiusSecret &p_secret, const char *p_hostname, uint16_t p_port=D_RADIUS_AUTHENTICATION_PORT, int p_responseTimeout=5, int p_retransmitCount=4)
 Constructor.
RadiusPacketsendPacket (RadiusPacket &p_packet)
 Send RADIUS packet.

Private Attributes

RadiusClientStackm_stack
 RADIUS stack that this connection belongs to.
RadiusSecret m_secret
 RADIUS secret key.
RadiusPacket m_packet
 RADIUS packet that is being currently received.
RadiusAddress m_serverAddress
 Server address.
int m_responseTimeout
 RADIUS server response timeout (in seconds).
int m_retransmitCount
 Max number of packet retransmits towards specific connection.


Detailed Description

Connection between client RADIUS stack and single RADIUS server.

Each connection has it's own secret key and retransmission settings. Multiple connections can be used within the same RadiusClientStack for high-availability purposes (see documentation in RadiusClientStack class for details).


Constructor & Destructor Documentation

RadiusClientConnection::RadiusClientConnection RadiusClientStack p_stack,
const RadiusSecret p_secret,
const char *  p_hostname,
uint16_t  p_port = D_RADIUS_AUTHENTICATION_PORT,
int  p_responseTimeout = 5,
int  p_retransmitCount = 4
 

Constructor.

Parameters:
[in] p_stack - RADIUS client stack that this connection belongs to
[in] p_secret - secret key
[in] p_hostname - RADIUS server hostname
[in] p_port - RADIUS server port
[in] p_responseTimeout - RADIUS server response timeout (in sec)
[in] p_retransmitCount - max number of packet retransmits


Member Function Documentation

RadiusPacket * RadiusClientConnection::sendPacket RadiusPacket p_packet  ) 
 

Send RADIUS packet.

Send packet to RADIUS server and wait for response. Retransmit packet as needed, if no response is received. Note that this method is blocking - i.e. all (re)transmission is performed on the context of the calling thread.

Parameters:
[in] p_data - RADIUS packet to be sent
Returns:
response packet (if packet was successfully transmitted and response was received); NULL otherwise


The documentation for this class was generated from the following files:
Generated on Tue Aug 11 18:35:07 2009 for ace-radius by doxygen 1.3.7-20040704