12#include <boost/shared_ptr.hpp>
94 const bool receive_bcast,
95 const bool send_bcast) = 0;
140 const uint16_t port);
This is a base class for exceptions thrown from the DNS library module.
virtual const char * what() const
Returns a C-style character string of the cause of the exception.
The IOAddress class represents an IP addresses (version agnostic)
Represents a single network interface.
Exception thrown when invalid packet filter object specified.
InvalidPacketFilter(const char *file, size_t line, const char *what)
Abstract packet handling class.
virtual SocketInfo openSocket(Iface &iface, const isc::asiolink::IOAddress &addr, const uint16_t port, const bool receive_bcast, const bool send_bcast)=0
Open primary and fallback socket.
virtual int openFallbackSocket(const isc::asiolink::IOAddress &addr, const uint16_t port)
Default implementation to open a fallback socket.
virtual Pkt4Ptr receive(Iface &iface, const SocketInfo &socket_info)=0
Receive packet over specified socket.
virtual ~PktFilter()
Virtual Destructor.
virtual int send(const Iface &iface, uint16_t sockfd, const Pkt4Ptr &pkt)=0
Send packet over specified socket.
virtual bool isDirectResponseSupported() const =0
Check if packet can be sent to the host without address directly.
virtual bool isSocketReceivedTimeSupported() const =0
Check if the socket received time is supported.
boost::shared_ptr< Pkt4 > Pkt4Ptr
A pointer to Pkt4 object.
boost::shared_ptr< PktFilter > PktFilterPtr
Pointer to a PktFilter object.
Defines the logger used by the top-level component of kea-lfc.
Holds information about socket.