mirror of
https://github.com/matrix-construct/construct
synced 2024-06-08 13:08:56 +02:00
ircd::net::dns: Split delegate service_init/fini; fix error.
This commit is contained in:
parent
09bb1969d4
commit
120a382398
|
@ -103,5 +103,7 @@ struct ircd::net::dns::opts
|
|||
/// (internal)
|
||||
struct ircd::net::dns::init
|
||||
{
|
||||
static void service_init(), service_fini() noexcept;
|
||||
|
||||
init(), ~init() noexcept;
|
||||
};
|
||||
|
|
|
@ -33,10 +33,7 @@ ircd::net::dns::opts_default;
|
|||
|
||||
ircd::net::dns::init::init()
|
||||
{
|
||||
#ifdef HAVE_NETDB_H
|
||||
static const int stay_open {true};
|
||||
::setservent(stay_open);
|
||||
#endif
|
||||
service_init();
|
||||
|
||||
assert(!resolver_instance);
|
||||
resolver_instance = new resolver
|
||||
|
@ -51,9 +48,7 @@ noexcept
|
|||
delete resolver_instance;
|
||||
resolver_instance = nullptr;
|
||||
|
||||
#ifdef HAVE_NETDB_H
|
||||
::endservent();
|
||||
#endif
|
||||
service_fini();
|
||||
}
|
||||
|
||||
//
|
||||
|
|
|
@ -37,6 +37,25 @@ ircd::net::dns::service_names
|
|||
{ { 8448, "tcp" }, "matrix" },
|
||||
};
|
||||
|
||||
void
|
||||
ircd::net::dns::init::service_init()
|
||||
{
|
||||
static const int stay_open {true};
|
||||
|
||||
#ifdef HAVE_NETDB_H
|
||||
::setservent(stay_open);
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
ircd::net::dns::init::service_fini()
|
||||
noexcept
|
||||
{
|
||||
#ifdef HAVE_NETDB_H
|
||||
::endservent();
|
||||
#endif
|
||||
}
|
||||
|
||||
uint16_t
|
||||
ircd::net::dns::service_port(const string_view &name,
|
||||
const string_view &prot)
|
||||
|
|
Loading…
Reference in a new issue