/** * @par Examples * To initialise an IPv4 TCP endpoint for port 1234, use: * @code * boost::asio::ip::tcp::endpoint ep(boost::asio::ip::tcp::v4(), 1234); * @endcode * * To specify an IPv6 UDP endpoint for port 9876, use: * @code * boost::asio::ip::udp::endpoint ep(boost::asio::ip::udp::v6(), 9876); * @endcode */ basic_endpoint(const InternetProtocol& protocol, unsigned short port_num) : data_() { using namespace std; // For memcpy. if (protocol.family() == PF_INET) { data_.v4.sin_family = AF_INET; data_.v4.sin_port = boost::asio::detail::socket_ops::host_to_network_short(port_num); data_.v4.sin_addr.s_addr = INADDR_ANY; } else { data_.v6.sin6_family = AF_INET6; data_.v6.sin6_port = boost::asio::detail::socket_ops::host_to_network_short(port_num); data_.v6.sin6_flowinfo = 0; boost::asio::detail::in6_addr_type tmp_addr = IN6ADDR_ANY_INIT; data_.v6.sin6_addr = tmp_addr; data_.v6.sin6_scope_id = 0; } }
/** * @par Examples * To initialise an IPv4 TCP endpoint for port 1234, use: * @code * boost::asio::ip::tcp::endpoint ep(boost::asio::ip::tcp::v4(), 1234); * @endcode * * To specify an IPv6 UDP endpoint for port 9876, use: * @code * boost::asio::ip::udp::endpoint ep(boost::asio::ip::udp::v6(), 9876); * @endcode */ basic_endpoint(const InternetProtocol& protocol, unsigned short port_num) : impl_(protocol.family(), port_num) { }