Kea 2.7.6
isc::dhcp::Dhcp6to4Ipc Class Reference

Handles DHCPv4-over-DHCPv6 IPC on the DHCPv6 server side. More...

#include <dhcp6to4_ipc.h>

+ Inheritance diagram for isc::dhcp::Dhcp6to4Ipc:

Public Member Functions

virtual void open ()
 Open communication socket.
 
- Public Member Functions inherited from isc::dhcp::Dhcp4o6IpcBase
void close ()
 Close communication socket.
 
Pkt6Ptr receive ()
 Receive message over IPC.
 
void send (const Pkt6Ptr &pkt)
 Send message over IPC.
 

Static Public Member Functions

static void handler (int)
 On receive handler.
 
static Dhcp6to4Ipcinstance ()
 Returns pointer to the sole instance of Dhcp6to4Ipc.
 

Static Public Attributes

static uint16_t client_port = 0
 

Protected Member Functions

 Dhcp6to4Ipc ()
 Constructor.
 
virtual ~Dhcp6to4Ipc ()
 Destructor.
 
- Protected Member Functions inherited from isc::dhcp::Dhcp4o6IpcBase
 Dhcp4o6IpcBase ()
 Constructor.
 
virtual ~Dhcp4o6IpcBase ()
 Destructor.
 
int open (uint16_t port, EndpointType endpoint_type)
 Open communication socket (from base class).
 

Additional Inherited Members

- Public Types inherited from isc::dhcp::Dhcp4o6IpcBase
enum  EndpointType { ENDPOINT_TYPE_V4 = 4 , ENDPOINT_TYPE_V6 = 6 }
 Endpoint type: DHCPv4 or DHCPv6 server. More...
 
- Protected Attributes inherited from isc::dhcp::Dhcp4o6IpcBase
uint16_t port_
 Port number configured for IPC communication.
 
int socket_fd_
 Socket descriptor.
 

Detailed Description

Handles DHCPv4-over-DHCPv6 IPC on the DHCPv6 server side.

Definition at line 21 of file dhcp6to4_ipc.h.

Constructor & Destructor Documentation

◆ Dhcp6to4Ipc()

isc::dhcp::Dhcp6to4Ipc::Dhcp6to4Ipc ( )
protected

Constructor.

Default constructor

Definition at line 32 of file dhcp6to4_ipc.cc.

◆ ~Dhcp6to4Ipc()

virtual isc::dhcp::Dhcp6to4Ipc::~Dhcp6to4Ipc ( )
inlineprotectedvirtual

Destructor.

Definition at line 29 of file dhcp6to4_ipc.h.

Member Function Documentation

◆ handler()

◆ instance()

Dhcp6to4Ipc & isc::dhcp::Dhcp6to4Ipc::instance ( )
static

Returns pointer to the sole instance of Dhcp6to4Ipc.

Dhcp6to4Ipc is a singleton class

Returns
the only existing instance of DHCP4o6 IPC

Definition at line 34 of file dhcp6to4_ipc.cc.

Referenced by isc::dhcp::Dhcpv6Srv::Dhcpv6Srv(), isc::dhcp::Dhcpv6Srv::~Dhcpv6Srv(), handler(), isc::dhcp::ControlledDhcpv6Srv::processConfig(), and isc::dhcp::Dhcpv6Srv::processDhcp4Query().

◆ open()

void isc::dhcp::Dhcp6to4Ipc::open ( )
virtual

Open communication socket.

Call base open method and sets the handler/callback when needed

Implements isc::dhcp::Dhcp4o6IpcBase.

Definition at line 39 of file dhcp6to4_ipc.cc.

References isc::dhcp::IfaceMgr::addExternalSocket(), isc::dhcp::Dhcp4o6IpcBase::close(), isc::dhcp::Dhcp4o6IpcBase::ENDPOINT_TYPE_V6, isc::dhcp::CfgMgr::getStagingCfg(), handler(), isc::dhcp::CfgMgr::instance(), isc::dhcp::IfaceMgr::instance(), isc_throw, isc::dhcp::Dhcp4o6IpcBase::open(), and isc::dhcp::Dhcp4o6IpcBase::socket_fd_.

Referenced by isc::dhcp::ControlledDhcpv6Srv::processConfig().

+ Here is the call graph for this function:

Member Data Documentation

◆ client_port

uint16_t isc::dhcp::Dhcp6to4Ipc::client_port = 0
static
Parameters
client_portUDP port where all responses are sent to. Not zero is mostly useful for testing purposes.

Definition at line 51 of file dhcp6to4_ipc.h.

Referenced by isc::dhcp::Dhcpv6Srv::Dhcpv6Srv(), and handler().


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