All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Member Functions | List of all members
CMACProxy Class Reference

#include <mac_proxy.h>

Collaboration diagram for CMACProxy:
Collaboration graph

Classes

struct  TPortConfig
 

Public Member Functions

 CMACProxy ()
 
void Init (uint32_t ui32PortNr, uint16_t ui16NrOfCacheEntries, uint16_t ui16NrOfInterfaceEntries, uint16_t ui16NrOfRouterEntries, uint16_t ui16NrOfPrefixEntries, CCoremask *pcCormask, bool bUseATOMIC_LOCK, bool bSlaacEnabled)
 
void Shutdown (void)
 
void ResetTables (void)
 
void ProcessTables ()
 
bool AddVlan (uint16_t ui16Vlan)
 
bool RemoveVlan (uint16_t ui16Vlan)
 
bool AddIpAddress (uint16_t ui16Vlan, TIPAddr *ptAddr, uint8_t bMaskBits, TIPAddr *ptGateway)
 
bool RemoveIpAddress (uint16_t ui16Vlan, TIPAddr *ptAddr)
 
int GetPortNr ()
 
bool GetMac (TIPAddr *ptSrcIp, TIPAddr *ptDstIp, uint16_t vlan, TMac *ptMac)
 
void HandleICMP (TICMP6Header *pIcmp, int iLen, TIPv6Header *pIpHeader, uint16_t vlan)
 
bool SearchForVlanInIP (TIPAddr *ptAddr, uint16_t *pVlan, TIPAddr *ptGateway)
 
bool CheckIncomingIp (TIPAddr *ptAddr, uint16_t Vlan)
 
void ShowTables ()
 
bool InterfaceIpIsOwn (TIPAddr *ptAddr, uint16_t *pVlan, int *piStartIndex)
 
bool InterfaceIpIsOwn (TIPAddr *ptAddr)
 
bool IsLocal (TIPAddr *ptAddr)
 
bool PrefixTableFindBestMatch (const TIPAddr *ptDstIp, uint16_t *pui16Vlan, uint8_t *pui8MaxBits, TIPAddr *ptMask)
 
bool InterfaceTableFindIp (const TIPAddr *ptDstIp, TIPAddr *ptMask, uint16_t ui16Vlan, TIPAddr *ptIpIf)
 
bool GetPortConfig (int iIndex, int *piNextIndex, CMACProxy::TPortConfig *pConfig)
 

Detailed Description

Definition at line 27 of file mac_proxy.h.

Constructor & Destructor Documentation

CMACProxy::CMACProxy ( )

Member Function Documentation

bool CMACProxy::AddIpAddress ( uint16_t  ui16Vlan,
TIPAddr ptAddr,
uint8_t  bMaskBits,
TIPAddr ptGateway 
)
bool CMACProxy::AddVlan ( uint16_t  ui16Vlan)
bool CMACProxy::CheckIncomingIp ( TIPAddr ptAddr,
uint16_t  Vlan 
)
bool CMACProxy::GetMac ( TIPAddr ptSrcIp,
TIPAddr ptDstIp,
uint16_t  vlan,
TMac ptMac 
)
bool CMACProxy::GetPortConfig ( int  iIndex,
int *  piNextIndex,
CMACProxy::TPortConfig pConfig 
)
int CMACProxy::GetPortNr ( )
void CMACProxy::HandleICMP ( TICMP6Header pIcmp,
int  iLen,
TIPv6Header pIpHeader,
uint16_t  vlan 
)
void CMACProxy::Init ( uint32_t  ui32PortNr,
uint16_t  ui16NrOfCacheEntries,
uint16_t  ui16NrOfInterfaceEntries,
uint16_t  ui16NrOfRouterEntries,
uint16_t  ui16NrOfPrefixEntries,
CCoremask pcCormask,
bool  bUseATOMIC_LOCK,
bool  bSlaacEnabled 
)
bool CMACProxy::InterfaceIpIsOwn ( TIPAddr ptAddr,
uint16_t *  pVlan,
int *  piStartIndex 
)
bool CMACProxy::InterfaceIpIsOwn ( TIPAddr ptAddr)
bool CMACProxy::InterfaceTableFindIp ( const TIPAddr ptDstIp,
TIPAddr ptMask,
uint16_t  ui16Vlan,
TIPAddr ptIpIf 
)
bool CMACProxy::IsLocal ( TIPAddr ptAddr)
bool CMACProxy::PrefixTableFindBestMatch ( const TIPAddr ptDstIp,
uint16_t *  pui16Vlan,
uint8_t *  pui8MaxBits,
TIPAddr ptMask 
)
void CMACProxy::ProcessTables ( )
bool CMACProxy::RemoveIpAddress ( uint16_t  ui16Vlan,
TIPAddr ptAddr 
)
bool CMACProxy::RemoveVlan ( uint16_t  ui16Vlan)
void CMACProxy::ResetTables ( void  )
bool CMACProxy::SearchForVlanInIP ( TIPAddr ptAddr,
uint16_t *  pVlan,
TIPAddr ptGateway 
)
void CMACProxy::ShowTables ( )
void CMACProxy::Shutdown ( void  )

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