OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
KSyncBridgeMemory Class Reference

#include <ksync_bridge_table.h>

Inheritance diagram for KSyncBridgeMemory:
Collaboration diagram for KSyncBridgeMemory:

Public Member Functions

 KSyncBridgeMemory (KSync *ksync, uint32_t minor_id)
 
virtual ~KSyncBridgeMemory ()
 
virtual void InitTest ()
 
virtual void Shutdown ()
 
virtual int get_entry_size ()
 
virtual bool IsInactiveEntry (uint32_t idx, uint8_t &gen_id)
 
virtual void SetTableSize ()
 
virtual int EncodeReq (nl_client *nl, uint32_t attr_len)
 
virtual void CreateProtoAuditEntry (uint32_t index, uint8_t gen_id)
 
vr_bridge_entry * GetBridgeEntry (uint32_t idx)
 
- Public Member Functions inherited from KSyncMemory
 KSyncMemory (KSync *ksync, uint32_t minor_id)
 
virtual ~KSyncMemory ()
 
virtual void Init ()
 
void InitMem (void *hpmem)
 
bool AuditProcess ()
 
void MapSharedMemory ()
 
void GetTableSize ()
 
int GetKernelTableSize ()
 
void UnmapMemTest ()
 
virtual void DecrementHoldFlowCounter ()
 
virtual void IncrementHoldFlowCounter ()
 
virtual void UpdateAgentHoldFlowCounter ()
 
KSyncksync () const
 
void set_major_devid (int id)
 
void set_table_size (int count)
 
void set_table_path (const std::string &path)
 
uint32_t audit_timeout () const
 
void Mmap (bool unlink, void *khpmem, bool kernel_mode)
 
uint32_t table_entries_count ()
 

Private Attributes

vr_bridge_entry * bridge_table_
 

Additional Inherited Members

- Static Public Attributes inherited from KSyncMemory
static const uint32_t kAuditSweepTime = 180
 
static const uint32_t kAuditYieldTimer = 100
 
static const uint32_t kAuditTimeout = (5 * 1000 * 1000)
 
static const uint32_t kAuditYieldMax = (1024)
 
static const uint32_t kAuditYieldMin = (100)
 
- Protected Attributes inherited from KSyncMemory
KSyncksync_
 
void * table_
 
std::string table_path_
 
int major_devid_
 
int minor_devid_
 
int table_size_
 
uint32_t table_entries_count_
 
Timeraudit_timer_
 
uint32_t audit_timeout_
 
uint32_t audit_yield_
 
uint32_t audit_interval_
 
uint32_t audit_idx_
 
std::list< AuditEntryaudit_list_
 

Detailed Description

Definition at line 18 of file ksync_bridge_table.h.

Constructor & Destructor Documentation

KSyncBridgeMemory::KSyncBridgeMemory ( KSync ksync,
uint32_t  minor_id 
)

Definition at line 41 of file ksync_bridge_table.cc.

KSyncBridgeMemory::~KSyncBridgeMemory ( )
virtual

Definition at line 46 of file ksync_bridge_table.cc.

Member Function Documentation

void KSyncBridgeMemory::CreateProtoAuditEntry ( uint32_t  index,
uint8_t  gen_id 
)
virtual

Implements KSyncMemory.

Definition at line 74 of file ksync_bridge_table.cc.

Here is the call graph for this function:

int KSyncBridgeMemory::EncodeReq ( nl_client *  nl,
uint32_t  attr_len 
)
virtual

Implements KSyncMemory.

Definition at line 49 of file ksync_bridge_table.cc.

int KSyncBridgeMemory::get_entry_size ( )
virtual

Implements KSyncMemory.

Definition at line 115 of file ksync_bridge_table.cc.

vr_bridge_entry * KSyncBridgeMemory::GetBridgeEntry ( uint32_t  idx)

Definition at line 94 of file ksync_bridge_table.cc.

void KSyncBridgeMemory::InitTest ( )
virtual

Reimplemented from KSyncMemory.

Definition at line 101 of file ksync_bridge_table.cc.

Here is the call graph for this function:

bool KSyncBridgeMemory::IsInactiveEntry ( uint32_t  idx,
uint8_t &  gen_id 
)
virtual

Implements KSyncMemory.

Definition at line 63 of file ksync_bridge_table.cc.

Here is the call graph for this function:

void KSyncBridgeMemory::SetTableSize ( )
virtual

Reimplemented from KSyncMemory.

Definition at line 119 of file ksync_bridge_table.cc.

void KSyncBridgeMemory::Shutdown ( void  )
virtual

Reimplemented from KSyncMemory.

Definition at line 110 of file ksync_bridge_table.cc.

Here is the call graph for this function:

Member Data Documentation

vr_bridge_entry* KSyncBridgeMemory::bridge_table_
private

Definition at line 32 of file ksync_bridge_table.h.


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