Kea 3.2.0-git
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 Dhcp6to4Ipc & instance ()
 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.

References isc::dhcp::Dhcp4o6IpcBase::Dhcp4o6IpcBase().

Referenced by handler(), and instance().

Here is the call graph for this function:

◆ ~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.

References Dhcp6to4Ipc().

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

Here is the call graph for this function:

◆ 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: