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

#include <vnswif_listener_base_nix.h>

Inheritance diagram for VnswInterfaceListenerBaseNix:
Collaboration diagram for VnswInterfaceListenerBaseNix:

Public Member Functions

 VnswInterfaceListenerBaseNix (Agent *agent)
 
virtual ~VnswInterfaceListenerBaseNix ()
 
void Init ()
 
void Shutdown ()
 
virtual void UpdateLinkLocalRouteAndCount (const Ip4Address &addr, uint8_t plen, bool del_rt)
 
- Public Member Functions inherited from VnswInterfaceListenerBase
bool AddIpam (const Ip4Address &ip, uint8_t plen)
 
bool DelIpam (const Ip4Address &ip, uint8_t plen)
 
Agentagent ()
 
 VnswInterfaceListenerBase (Agent *agent)
 
virtual ~VnswInterfaceListenerBase ()
 
void Init ()
 
void Shutdown ()
 
bool IsValidLinkLocalAddress (const Ip4Address &addr) const
 
void Enqueue (Event *event)
 
uint32_t GetHostInterfaceCount () const
 
HostInterfaceEntryGetHostInterfaceEntry (const std::string &name)
 
uint32_t vhost_update_count () const
 
uint32_t ll_add_count () const
 
uint32_t ll_del_count () const
 
bool IsHostLinkStateUp (const std::string &name) const
 

Protected Member Functions

virtual int CreateSocket ()=0
 
virtual void SyncCurrentState ()=0
 
virtual void RegisterAsyncReadHandler ()=0
 
virtual void UpdateLinkLocalRoute (const Ip4Address &addr, uint8_t plen, bool del_rt)=0
 
- Protected Member Functions inherited from VnswInterfaceListenerBase
void InterfaceNotify (DBTablePartBase *part, DBEntryBase *e)
 
void FabricRouteNotify (DBTablePartBase *part, DBEntryBase *e)
 
void VnNotify (DBTablePartBase *part, DBEntryBase *e)
 
bool ProcessEvent (Event *re)
 
void LinkLocalRouteFromLinkLocalEvent (Event *event)
 
void LinkLocalRouteFromRouteEvent (Event *event)
 
void AddLinkLocalRoutes ()
 
void DelLinkLocalRoutes ()
 
void AddIpamRoutes ()
 
void SetSeen (const std::string &name, bool oper, uint32_t oper_idx)
 
void ResetSeen (const std::string &name, bool oper)
 
void Activate (const std::string &name, const HostInterfaceEntry *entry)
 
void DeActivate (const std::string &name, const HostInterfaceEntry *entry)
 
void SetLinkState (const std::string &name, bool link_up)
 
bool IsInterfaceActive (const HostInterfaceEntry *entry)
 
void HandleInterfaceEvent (const Event *event)
 
void SetAddress (const Event *event)
 
void ResetAddress (const Event *event)
 
void HandleAddressEvent (const Event *event)
 
 DISALLOW_COPY_AND_ASSIGN (VnswInterfaceListenerBase)
 

Protected Attributes

int sock_fd_
 
local::datagram_protocol::socket sock_
 
- Protected Attributes inherited from VnswInterfaceListenerBase
Agentagent_
 
uint8_t * read_buf_
 
uint8_t tx_buf_ [kMaxBufferSize]
 
DBTableBase::ListenerId intf_listener_id_
 
DBTableBase::ListenerId fabric_listener_id_
 
DBTableBase::ListenerId vn_listener_id_
 
int seqno_
 
bool vhost_intf_up_
 
LinkLocalAddressTable ll_addr_table_
 
HostInterfaceTable host_interface_table_
 
WorkQueue< Event * > * revent_queue_
 
uint32_t vhost_update_count_
 
uint32_t ll_add_count_
 
uint32_t ll_del_count_
 
IpamSubnetMap ipam_subnet_
 

Additional Inherited Members

- Public Types inherited from VnswInterfaceListenerBase
enum  bond_intf_type { VR_FABRIC = 1, VR_BOND_SLAVES }
 
- Static Public Attributes inherited from VnswInterfaceListenerBase
static const int kVnswRtmProto = 109
 
static const uint32_t kMaxBufferSize = 4096
 
- Protected Types inherited from VnswInterfaceListenerBase
typedef std::map< std::string,
HostInterfaceEntry * > 
HostInterfaceTable
 
typedef std::set< Ip4AddressLinkLocalAddressTable
 
typedef std::map< IpSubnet,
uint32_t > 
IpamSubnetMap
 

Detailed Description

Definition at line 13 of file vnswif_listener_base_nix.h.

Constructor & Destructor Documentation

VnswInterfaceListenerBaseNix::VnswInterfaceListenerBaseNix ( Agent agent)

Definition at line 3 of file vnswif_listener_base_nix.cc.

VnswInterfaceListenerBaseNix::~VnswInterfaceListenerBaseNix ( )
virtual

Definition at line 47 of file vnswif_listener_base_nix.cc.

Member Function Documentation

virtual int VnswInterfaceListenerBaseNix::CreateSocket ( )
protectedpure virtual
void VnswInterfaceListenerBaseNix::Init ( )

Definition at line 7 of file vnswif_listener_base_nix.cc.

Here is the call graph for this function:

virtual void VnswInterfaceListenerBaseNix::RegisterAsyncReadHandler ( )
protectedpure virtual
void VnswInterfaceListenerBaseNix::Shutdown ( void  )

Definition at line 36 of file vnswif_listener_base_nix.cc.

Here is the call graph for this function:

virtual void VnswInterfaceListenerBaseNix::SyncCurrentState ( )
protectedpure virtual
virtual void VnswInterfaceListenerBaseNix::UpdateLinkLocalRoute ( const Ip4Address addr,
uint8_t  plen,
bool  del_rt 
)
protectedpure virtual
void VnswInterfaceListenerBaseNix::UpdateLinkLocalRouteAndCount ( const Ip4Address addr,
uint8_t  plen,
bool  del_rt 
)
virtual

Reimplemented from VnswInterfaceListenerBase.

Definition at line 26 of file vnswif_listener_base_nix.cc.

Here is the call graph for this function:

Member Data Documentation

local::datagram_protocol::socket VnswInterfaceListenerBaseNix::sock_
protected

Definition at line 30 of file vnswif_listener_base_nix.h.

int VnswInterfaceListenerBaseNix::sock_fd_
protected

Definition at line 29 of file vnswif_listener_base_nix.h.


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