0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-06-11 06:28:55 +02:00

ircd::net: Add conf item to toggle ipv6 for ircd::net::. Auto-detect viability on net::init.

This commit is contained in:
Jason Volk 2019-03-25 15:16:24 -07:00
parent c0cbfd2d23
commit a54c5f44e4
2 changed files with 14 additions and 0 deletions

View file

@ -31,6 +31,8 @@ namespace ircd::net
// SNOMASK 'N' "net"
extern log::log log;
extern conf::item<bool> enable_ipv6;
}
#include "hostport.h"

View file

@ -37,6 +37,10 @@ ircd::net::wait_close_sockets()
/// Network subsystem initialization
ircd::net::init::init()
{
if(enable_ipv6)
if(!addrs::has_usable_ipv6_interface())
enable_ipv6.set("false");
sslv23_client.set_verify_mode(asio::ssl::verify_peer);
sslv23_client.set_default_verify_paths();
}
@ -60,6 +64,14 @@ ircd::net::log
"net", 'N'
};
decltype(ircd::net::enable_ipv6)
ircd::net::enable_ipv6
{
{ "name", "ircd.net.enable_ipv6" },
{ "default", true },
{ "persist", false },
};
ircd::string_view
ircd::net::peer_cert_der_sha256_b64(const mutable_buffer &buf,
const socket &socket)