senf::emu::detail::TunnelServerController Class Reference

#include <senf/Ext/NetEmu/P2PTunnel/TunnelController.hh>

Inheritance diagram for senf::emu::detail::TunnelServerController:

Public Types

typedef TunnelServerInterface Interface
 
- Public Types inherited from senf::emu::detail::TunnelControllerBase
typedef UDPv6ClientSocketHandle Handle
 
typedef EthernetPacket PacketType
 

Public Member Functions

 TunnelServerController (TunnelServerInterface &interface)
 
virtual ~TunnelServerController ()
 
void terminateAllClients (Handle handle)
 
unsigned capacity (MACAddress const &clientAddr, tunnel::CapacityDirection direction) const
 
unsigned fragmentationThreshold (MACAddress const &clientAddr) const
 
void fragmentationThreshold (MACAddress const &clientAddr, unsigned mtu)
 
- Public Member Functions inherited from senf::emu::detail::TunnelControllerBase
PacketType readPacket (Handle &handle)
 
bool writePacket (Handle &handle, PacketType packet)
 
ClockService::clock_type timeout () const
 
void timeout (ClockService::clock_type t)
 
ppi::QueueingAlgorithmqAlgorithm () const
 
void qAlgorithm (ppi::QueueingAlgorithm::ptr qAlgorithm)
 
void dumpInfo (std::ostream &os)
 
unsigned fragmentationCount ()
 

Protected Member Functions

void v_prependTHdr (EthernetPacket &eth) override
 
std::pair< INet6SocketAddress, unsigned > v_getTxInfo (Packet const &eth) const override
 
- Protected Member Functions inherited from senf::emu::detail::TunnelControllerBase
 TunnelControllerBase (TunnelInterfaceBase &interface)
 
virtual ~TunnelControllerBase ()
 
bool sendPkt (Handle &handle, MACAddress const &dstMAC, senf::EthernetPacket pkt)
 
void do_sendPkt (Handle &handle, senf::EthernetPacket &pkt, std::pair< senf::INet6SocketAddress, unsigned > const &txInfo)
 
void do_sendPkt (Handle &handle, senf::EthernetPacket &pkt)
 
void flushQueue (Handle &handle)
 
void sendCtrlPacket (Handle &handle, MACAddress const &dstMAC, boost::uint8_t code)
 
void sendCtrlPacket (Handle &handle, MACAddress const &dstMAC, TunnelCtrlPacket ctrlPacket)
 

Additional Inherited Members

- Static Public Attributes inherited from senf::emu::detail::TunnelControllerBase
static const unsigned TunnelOverhead = 46u
 
- Static Protected Member Functions inherited from senf::emu::detail::TunnelControllerBase
static bool isTunnelCtrlPacket (EthernetPacket const &eth)
 
- Protected Attributes inherited from senf::emu::detail::TunnelControllerBase
senf::Detail::DifferenceSigned seqNoDiff_
 

Detailed Description

Definition at line 130 of file TunnelController.hh.

Member Typedef Documentation

◆ Interface

Constructor & Destructor Documentation

◆ TunnelServerController()

senf::emu::detail::TunnelServerController::TunnelServerController ( TunnelServerInterface interface)

Definition at line 337 of file TunnelController.cc.

◆ ~TunnelServerController()

virtual senf::emu::detail::TunnelServerController::~TunnelServerController ( )
inlinevirtual

Definition at line 137 of file TunnelController.hh.

Member Function Documentation

◆ capacity()

unsigned senf::emu::detail::TunnelServerController::capacity ( MACAddress const &  clientAddr,
tunnel::CapacityDirection  direction 
) const

Definition at line 532 of file TunnelController.cc.

◆ fragmentationThreshold() [1/2]

unsigned senf::emu::detail::TunnelServerController::fragmentationThreshold ( MACAddress const &  clientAddr) const

Definition at line 554 of file TunnelController.cc.

◆ fragmentationThreshold() [2/2]

void senf::emu::detail::TunnelServerController::fragmentationThreshold ( MACAddress const &  clientAddr,
unsigned  mtu 
)

Definition at line 539 of file TunnelController.cc.

◆ terminateAllClients()

void senf::emu::detail::TunnelServerController::terminateAllClients ( Handle  handle)

Definition at line 518 of file TunnelController.cc.

◆ v_getTxInfo()

std::pair< senf::INet6SocketAddress, unsigned > senf::emu::detail::TunnelServerController::v_getTxInfo ( Packet const &  eth) const
overrideprotectedvirtual

Implements senf::emu::detail::TunnelControllerBase.

Definition at line 378 of file TunnelController.cc.

◆ v_prependTHdr()

void senf::emu::detail::TunnelServerController::v_prependTHdr ( EthernetPacket eth)
overrideprotectedvirtual

Implements senf::emu::detail::TunnelControllerBase.

Definition at line 362 of file TunnelController.cc.


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