### ip::icmp

Encapsulates the flags needed for ICMP.

    class icmp

##### Types

Name | Description
--- | ---
endpoint | The type of a ICMP endpoint.
resolver | The ICMP resolver type.
socket | The ICMP socket type.

##### Member Functions

Name | Description
--- | ---
family | Obtain an identifier for the protocol family.
protocol | Obtain an identifier for the protocol.
type | Obtain an identifier for the type of the protocol.
v4 | Construct to represent the IPv4 ICMP protocol.
v6 | Construct to represent the IPv6 ICMP protocol.

##### Friends

Name | Description
--- | ---
operator!= | Compare two protocols for inequality.
operator== | Compare two protocols for equality.

The `ip::icmp` class contains flags necessary for ICMP sockets.

##### Thread Safety

Distinct objects: Safe.

Shared objects: Safe.

##### Requirements

Header: `asio/ip/icmp.hpp`

Convenience header: `asio.hpp`