OpenSDN source code
|
#include <bfd_session.h>
Public Member Functions | |
Session (Discriminator localDiscriminator, const SessionKey &key, EventManager *evm, const SessionConfig &config, Connection *communicator) | |
virtual | ~Session () |
void | Stop () |
ResultCode | ProcessControlPacket (const ControlPacket *packet) |
void | InitPollSequence () |
void | RegisterChangeCallback (ClientId client_id, ChangeCb cb) |
void | UnregisterChangeCallback (ClientId client_id) |
void | UpdateConfig (const SessionConfig &config) |
std::string | toString () const |
const SessionKey & | key () const |
BFDState | local_state () const |
SessionConfig | config () const |
BFDRemoteSessionState | remote_state () const |
Discriminator | local_discriminator () const |
bool | Up () const |
BFDStats & | Stats () |
TimeInterval | detection_time () |
TimeInterval | tx_interval () |
int | reference_count () |
Session () | |
Protected Member Functions | |
bool | RecvTimerExpired () |
Private Types | |
typedef std::map< ClientId, ChangeCb > | Callbacks |
Private Member Functions | |
bool | SendTimerExpired () |
void | ScheduleSendTimer () |
void | ScheduleRecvDeadlineTimer () |
void | PreparePacket (const SessionConfig &config, ControlPacket *packet) |
void | SendPacket (const ControlPacket *packet) |
void | CallStateChangeCallbacks (const SessionKey &key, const BFD::BFDState &new_state) |
boost::asio::ip::udp::endpoint | GetRandomLocalEndPoint () const |
uint16_t | GetRandomLocalPort () const |
BFDState | local_state_non_locking () const |
Private Attributes | |
Discriminator | localDiscriminator_ |
SessionKey | key_ |
Timer * | sendTimer_ |
Timer * | recvTimer_ |
SessionConfig | currentConfig_ |
SessionConfig | nextConfig_ |
BFDRemoteSessionState | remoteSession_ |
boost::scoped_ptr< StateMachine > | sm_ |
bool | pollSequence_ |
Connection * | communicator_ |
boost::asio::ip::udp::endpoint | local_endpoint_ |
boost::asio::ip::udp::endpoint | remote_endpoint_ |
bool | started_ |
bool | stopped_ |
Callbacks | callbacks_ |
BFDStats | stats_ |
Definition at line 52 of file bfd_session.h.
|
private |
Definition at line 97 of file bfd_session.h.
BFD::Session::Session | ( | Discriminator | localDiscriminator, |
const SessionKey & | key, | ||
EventManager * | evm, | ||
const SessionConfig & | config, | ||
Connection * | communicator | ||
) |
|
virtual |
|
inline |
Definition at line 84 of file bfd_session.h.
|
private |
Definition at line 297 of file bfd_session.cc.
SessionConfig BFD::Session::config | ( | ) | const |
Definition at line 285 of file bfd_session.cc.
TimeInterval BFD::Session::detection_time | ( | ) |
Definition at line 245 of file bfd_session.cc.
|
private |
|
private |
Definition at line 44 of file bfd_session.cc.
void BFD::Session::InitPollSequence | ( | ) |
const SessionKey & BFD::Session::key | ( | ) | const |
Definition at line 271 of file bfd_session.cc.
Discriminator BFD::Session::local_discriminator | ( | ) | const |
Definition at line 293 of file bfd_session.cc.
BFDState BFD::Session::local_state | ( | ) | const |
|
private |
Definition at line 139 of file bfd_session.cc.
|
private |
ResultCode BFD::Session::ProcessControlPacket | ( | const ControlPacket * | packet | ) |
|
protected |
int BFD::Session::reference_count | ( | ) |
Definition at line 320 of file bfd_session.cc.
Definition at line 305 of file bfd_session.cc.
BFDRemoteSessionState BFD::Session::remote_state | ( | ) | const |
Definition at line 289 of file bfd_session.cc.
|
private |
|
private |
|
private |
|
private |
|
inline |
Definition at line 73 of file bfd_session.h.
void BFD::Session::Stop | ( | ) |
std::string BFD::Session::toString | ( | ) | const |
TimeInterval BFD::Session::tx_interval | ( | ) |
Definition at line 251 of file bfd_session.cc.
void BFD::Session::UnregisterChangeCallback | ( | ClientId | client_id | ) |
Definition at line 309 of file bfd_session.cc.
bool BFD::Session::Up | ( | ) | const |
void BFD::Session::UpdateConfig | ( | const SessionConfig & | config | ) |
Definition at line 313 of file bfd_session.cc.
|
private |
Definition at line 124 of file bfd_session.h.
|
private |
Definition at line 119 of file bfd_session.h.
|
private |
Definition at line 114 of file bfd_session.h.
|
private |
Definition at line 111 of file bfd_session.h.
|
private |
Definition at line 120 of file bfd_session.h.
|
private |
Definition at line 110 of file bfd_session.h.
|
private |
Definition at line 115 of file bfd_session.h.
|
private |
Definition at line 118 of file bfd_session.h.
|
private |
Definition at line 113 of file bfd_session.h.
|
private |
Definition at line 121 of file bfd_session.h.
|
private |
Definition at line 116 of file bfd_session.h.
|
private |
Definition at line 112 of file bfd_session.h.
|
private |
Definition at line 117 of file bfd_session.h.
|
private |
Definition at line 122 of file bfd_session.h.
|
private |
Definition at line 125 of file bfd_session.h.
|
private |
Definition at line 123 of file bfd_session.h.