MySQL 8.3.0
Source Code Documentation
internet.h File Reference
#include <algorithm>
#include <array>
#include <bitset>
#include <cstddef>
#include <cstring>
#include <forward_list>
#include <sstream>
#include <stdexcept>
#include <system_error>
#include <arpa/inet.h>
#include <netdb.h>
#include <netinet/in.h>
#include <netinet/ip6.h>
#include <netinet/tcp.h>
#include <sys/ioctl.h>
#include "mysql/harness/net_ts/impl/resolver.h"
#include "mysql/harness/net_ts/io_context.h"
#include "mysql/harness/net_ts/socket.h"
#include "mysql/harness/stdx/bit.h"
#include "mysql/harness/stdx/expected.h"
#include "mysql/harness/stdx/type_traits.h"

Go to the source code of this file.

Classes

class  net::ip::address_v4
 
struct  net::ip::address_v4::bytes_type
 
class  net::ip::address_v6
 IPv6 address with scope_id. More...
 
struct  net::ip::address_v6::bytes_type
 
class  net::ip::bad_address_cast
 
class  net::ip::address
 
class  net::ip::basic_resolver_entry< InternetProtocol >
 endpoint of IPv4/IPv6 based connection. More...
 
class  net::ip::basic_resolver_results< InternetProtocol >
 
class  net::ip::resolver_base
 
class  net::ip::basic_resolver< InternetProtocol >
 
class  net::ip::basic_endpoint< InternetProtocol >
 
class  net::ip::basic_address_iterator< address_v4 >
 
class  net::ip::basic_address_iterator< address_v6 >
 
class  net::ip::basic_address_range< address_v4 >
 
class  net::ip::basic_address_range< address_v6 >
 
class  net::ip::network_v4
 
class  net::ip::network_v6
 
class  net::ip::tcp
 TCP protocol. More...
 
class  net::ip::udp
 

Namespaces

namespace  net
 
namespace  net::ip
 

Typedefs

using net::ip::v6_only = socket_option::boolean< IPPROTO_IPV6, IPV6_V6ONLY >
 
using net::ip::port_type = uint_least16_t
 
using net::ip::scope_id_type = uint_least32_t
 
using net::ip::address_v4_iterator = basic_address_iterator< address_v4 >
 
using net::ip::address_v6_iterator = basic_address_iterator< address_v6 >
 
using net::ip::address_v4_range = basic_address_range< address_v4 >
 
using net::ip::address_v6_range = basic_address_range< address_v6 >
 

Functions

template<class T >
constexpr T net::ip::host_to_network (const T t) noexcept
 convert an integer from host-endianness into network endianness. More...
 
template<class T >
constexpr T net::ip::network_to_host (const T t) noexcept
 convert an integer from network-endianness into host endianness. More...
 
constexpr bool net::ip::operator== (const address_v4 &a, const address_v4 &b) noexcept
 
constexpr bool net::ip::operator!= (const address_v4 &a, const address_v4 &b) noexcept
 
constexpr bool net::ip::operator< (const address_v4 &a, const address_v4 &b) noexcept
 
constexpr bool net::ip::operator> (const address_v4 &a, const address_v4 &b) noexcept
 
constexpr bool net::ip::operator<= (const address_v4 &a, const address_v4 &b) noexcept
 
constexpr bool net::ip::operator>= (const address_v4 &a, const address_v4 &b) noexcept
 
constexpr bool net::ip::operator== (const address_v6 &a, const address_v6 &b) noexcept
 
constexpr bool net::ip::operator!= (const address_v6 &a, const address_v6 &b) noexcept
 
constexpr bool net::ip::operator< (const address_v6 &a, const address_v6 &b) noexcept
 
constexpr bool net::ip::operator> (const address_v6 &a, const address_v6 &b) noexcept
 
constexpr bool net::ip::operator<= (const address_v6 &a, const address_v6 &b) noexcept
 
constexpr bool net::ip::operator>= (const address_v6 &a, const address_v6 &b) noexcept
 
stdx::expected< address_v6, std::error_code > net::ip::make_address_v6 (const char *str)
 make address_v6 from a string. More...
 
stdx::expected< address_v4, std::error_code > net::ip::make_address_v4 (const char *str)
 make address_v4 from a string. More...
 
stdx::expected< address, std::error_code > net::ip::make_address (const char *str)
 make address from a c-string. More...
 
stdx::expected< address, std::error_code > net::ip::make_address (const std::string &str)
 make address from a string. More...
 
template<class CharT , class Traits >
std::basic_ostream< CharT, Traits > & net::ip::operator<< (std::basic_ostream< CharT, Traits > &os, const address &addr)
 
constexpr bool net::ip::operator== (const address &a, const address &b) noexcept
 
constexpr bool net::ip::operator!= (const address &a, const address &b) noexcept
 
constexpr bool net::ip::operator< (const address &a, const address &b) noexcept
 
template<class CharT , class Traits , class InternetProtocol >
std::basic_ostream< CharT, Traits > & net::ip::operator<< (std::basic_ostream< CharT, Traits > &os, const basic_endpoint< InternetProtocol > &ep)
 
template<class InternetProtocol >
constexpr bool net::ip::operator== (const basic_endpoint< InternetProtocol > &a, const basic_endpoint< InternetProtocol > &b) noexcept
 
template<class InternetProtocol >
constexpr bool net::ip::operator!= (const basic_endpoint< InternetProtocol > &a, const basic_endpoint< InternetProtocol > &b) noexcept
 
constexpr bool net::ip::operator== (const network_v4 &a, const network_v4 &b) noexcept
 
template<class CharT , class Traits >
std::basic_ostream< CharT, Traits > & net::ip::operator<< (std::basic_ostream< CharT, Traits > &os, const network_v4 &net)
 
constexpr bool net::ip::operator== (const network_v6 &a, const network_v6 &b) noexcept
 
template<class CharT , class Traits >
std::basic_ostream< CharT, Traits > & net::ip::operator<< (std::basic_ostream< CharT, Traits > &os, const network_v6 &net)
 
constexpr bool net::ip::operator== (const tcp &a, const tcp &b) noexcept
 
constexpr bool net::ip::operator!= (const tcp &a, const tcp &b) noexcept
 
constexpr bool net::ip::operator== (const udp &a, const udp &b) noexcept
 
constexpr bool net::ip::operator!= (const udp &a, const udp &b) noexcept