8#define ICMP_ENDPOINT_H 1
31 asio_endpoint_placeholder_(new boost::asio::ip::icmp::endpoint()),
32 asio_endpoint_(*asio_endpoint_placeholder_)
39 asio_endpoint_placeholder_(
40 new boost::asio::ip::icmp::endpoint(boost::asio::ip::make_address(address.toText()), 0)),
41 asio_endpoint_(*asio_endpoint_placeholder_)
50 explicit ICMPEndpoint(boost::asio::ip::icmp::endpoint& asio_endpoint) :
51 asio_endpoint_placeholder_(0), asio_endpoint_(asio_endpoint)
60 explicit ICMPEndpoint(
const boost::asio::ip::icmp::endpoint& asio_endpoint) :
61 asio_endpoint_placeholder_(new boost::asio::ip::icmp::endpoint(asio_endpoint)),
62 asio_endpoint_(*asio_endpoint_placeholder_)
73 return (asio_endpoint_.address());
80 return (*asio_endpoint_.data());
87 return (asio_endpoint_.port());
94 return (asio_endpoint_.protocol().protocol());
101 return (asio_endpoint_.protocol().family());
111 return (asio_endpoint_);
121 return (asio_endpoint_);
126 boost::asio::ip::icmp::endpoint* asio_endpoint_placeholder_;
129 boost::asio::ip::icmp::endpoint& asio_endpoint_;
The IOAddress class represents an IP addresses (version agnostic)
The IOEndpoint class is an abstract base class to represent a communication endpoint.
ICMPEndpoint(boost::asio::ip::icmp::endpoint &asio_endpoint)
Copy Constructor from an ASIO ICMP endpoint.
ICMPEndpoint()
Default Constructor.
const boost::asio::ip::icmp::endpoint & getASIOEndpoint() const
Fetches the underlying ASIO endpoint implementation.
virtual asiolink::IOAddress getAddress() const
Fetches the IP address of the endpoint.
boost::asio::ip::icmp::endpoint & getASIOEndpoint()
Fetches the underlying ASIO endpoint implementation.
virtual short getProtocol() const
Fetches the network protocol of the endpoint.
ICMPEndpoint(const asiolink::IOAddress &address)
Constructor from an address.
virtual uint16_t getPort() const
Fetches the IP port number of the endpoint.
virtual short getFamily() const
Fetches the network protocol family of the endpoint.
ICMPEndpoint(const boost::asio::ip::icmp::endpoint &asio_endpoint)
Constructor from a const ASIO ICMP endpoint.
virtual const struct sockaddr & getSockAddr() const
Fetches the IP address of the endpoint in native form.
virtual ~ICMPEndpoint()
The destructor.
Defines the logger used by the top-level component of kea-lfc.