OpenSDN source code
DiagEntry Class Referenceabstract

#include <diag.h>

Inheritance diagram for DiagEntry:
Collaboration diagram for DiagEntry:

Public Types

typedef uint16_t DiagKey
 
typedef Timer DiagTimer
 

Public Member Functions

 DiagEntry (const std::string &sip, const std::string &dip, uint8_t proto, uint16_t sport, uint16_t dport, const std::string &vrf_name, int timeout, int count, DiagTable *diag_table)
 
virtual ~DiagEntry ()
 
void Init ()
 
void EnqueueForceDelete ()
 
virtual void SendRequest ()=0
 
virtual void HandleReply (DiagPktHandler *handler)=0
 
virtual void RequestTimedOut (uint32_t seq_no)=0
 
virtual void SendSummary ()
 
bool TimerExpiry (uint32_t seqno)
 
void RestartTimer ()
 
virtual bool IsDone ()
 
virtual bool ResendOnTimerExpiry ()
 
DiagKey GetKey ()
 
uint32_t GetSeqNo ()
 
uint32_t GetMaxAttempts ()
 
void SetKey (DiagKey key)
 
virtual void Retry ()
 
bool TimerCancel ()
 
DiagTablediag_table () const
 
uint32_t HashValUdpSourcePort ()
 
void FillOamPktHeader (OverlayOamPktData *pktdata, uint32_t vxlan_id, const boost::posix_time::ptime &time)
 

Protected Attributes

IpAddress sip_
 
IpAddress dip_
 
uint8_t proto_
 
uint16_t sport_
 
uint16_t dport_
 
std::string vrf_name_
 
boost::system::error_code ec_
 
DiagTablediag_table_
 
DiagKey key_
 
int timeout_
 
DiagTimertimer_
 
uint32_t max_attempts_
 
uint32_t seq_no_
 

Detailed Description

Definition at line 21 of file diag.h.

Member Typedef Documentation

◆ DiagKey

typedef uint16_t DiagEntry::DiagKey

Definition at line 23 of file diag.h.

◆ DiagTimer

Definition at line 24 of file diag.h.

Constructor & Destructor Documentation

◆ DiagEntry()

DiagEntry::DiagEntry ( const std::string &  sip,
const std::string &  dip,
uint8_t  proto,
uint16_t  sport,
uint16_t  dport,
const std::string &  vrf_name,
int  timeout,
int  count,
DiagTable diag_table 
)

Definition at line 25 of file diag.cc.

◆ ~DiagEntry()

DiagEntry::~DiagEntry ( )
virtual

Definition at line 40 of file diag.cc.

Here is the call graph for this function:

Member Function Documentation

◆ diag_table()

DiagTable* DiagEntry::diag_table ( ) const
inline

Definition at line 48 of file diag.h.

◆ EnqueueForceDelete()

void DiagEntry::EnqueueForceDelete ( )

Definition at line 52 of file diag.cc.

Here is the call graph for this function:

◆ FillOamPktHeader()

void DiagEntry::FillOamPktHeader ( OverlayOamPktData pktdata,
uint32_t  vxlan_id,
const boost::posix_time::ptime &  time 
)

Definition at line 173 of file diag.cc.

◆ GetKey()

DiagKey DiagEntry::GetKey ( )
inline

Definition at line 40 of file diag.h.

◆ GetMaxAttempts()

uint32_t DiagEntry::GetMaxAttempts ( )
inline

Definition at line 42 of file diag.h.

◆ GetSeqNo()

uint32_t DiagEntry::GetSeqNo ( )
inline

Definition at line 41 of file diag.h.

◆ HandleReply()

virtual void DiagEntry::HandleReply ( DiagPktHandler handler)
pure virtual

◆ HashValUdpSourcePort()

uint32_t DiagEntry::HashValUdpSourcePort ( )

Definition at line 163 of file diag.cc.

◆ Init()

void DiagEntry::Init ( )

Definition at line 47 of file diag.cc.

Here is the call graph for this function:

◆ IsDone()

bool DiagEntry::IsDone ( )
virtual

Reimplemented in TraceRoute, SegmentHealthCheckPkt, and OverlayTraceRoute.

Definition at line 63 of file diag.cc.

Here is the call graph for this function:

◆ RequestTimedOut()

virtual void DiagEntry::RequestTimedOut ( uint32_t  seq_no)
pure virtual

◆ ResendOnTimerExpiry()

virtual bool DiagEntry::ResendOnTimerExpiry ( )
inlinevirtual

Reimplemented in SegmentHealthCheckPkt.

Definition at line 39 of file diag.h.

◆ RestartTimer()

void DiagEntry::RestartTimer ( )

Definition at line 57 of file diag.cc.

Here is the call graph for this function:

◆ Retry()

void DiagEntry::Retry ( )
virtual

Reimplemented in SegmentHealthCheckPkt.

Definition at line 84 of file diag.cc.

Here is the call graph for this function:

◆ SendRequest()

virtual void DiagEntry::SendRequest ( )
pure virtual

◆ SendSummary()

virtual void DiagEntry::SendSummary ( )
inlinevirtual

Reimplemented in TraceRoute, Ping, and OverlayPing.

Definition at line 35 of file diag.h.

◆ SetKey()

void DiagEntry::SetKey ( DiagKey  key)
inline

Definition at line 43 of file diag.h.

◆ TimerCancel()

bool DiagEntry::TimerCancel ( )
inline

Definition at line 45 of file diag.h.

Here is the call graph for this function:

◆ TimerExpiry()

bool DiagEntry::TimerExpiry ( uint32_t  seqno)

Definition at line 67 of file diag.cc.

Here is the call graph for this function:

Member Data Documentation

◆ diag_table_

DiagTable* DiagEntry::diag_table_
protected

Definition at line 64 of file diag.h.

◆ dip_

IpAddress DiagEntry::dip_
protected

Definition at line 57 of file diag.h.

◆ dport_

uint16_t DiagEntry::dport_
protected

Definition at line 60 of file diag.h.

◆ ec_

boost::system::error_code DiagEntry::ec_
protected

Definition at line 62 of file diag.h.

◆ key_

DiagKey DiagEntry::key_
protected

Definition at line 65 of file diag.h.

◆ max_attempts_

uint32_t DiagEntry::max_attempts_
protected

Definition at line 69 of file diag.h.

◆ proto_

uint8_t DiagEntry::proto_
protected

Definition at line 58 of file diag.h.

◆ seq_no_

uint32_t DiagEntry::seq_no_
protected

Definition at line 70 of file diag.h.

◆ sip_

IpAddress DiagEntry::sip_
protected

Definition at line 56 of file diag.h.

◆ sport_

uint16_t DiagEntry::sport_
protected

Definition at line 59 of file diag.h.

◆ timeout_

int DiagEntry::timeout_
protected

Definition at line 67 of file diag.h.

◆ timer_

DiagTimer* DiagEntry::timer_
protected

Definition at line 68 of file diag.h.

◆ vrf_name_

std::string DiagEntry::vrf_name_
protected

Definition at line 61 of file diag.h.


The documentation for this class was generated from the following files: