diff --git a/include/ircd/net/ipport.h b/include/ircd/net/ipport.h index 398b2bf74..c1d348561 100644 --- a/include/ircd/net/ipport.h +++ b/include/ircd/net/ipport.h @@ -57,6 +57,7 @@ struct ircd::net::ipport template ipport(iparg&&, const uint16_t &port); template ipport(iparg&&, const string_view &port); + ipport(const string_view &amalgam); ipport(); }; @@ -84,6 +85,14 @@ ircd::net::ipport::ipport() } {} +inline +ircd::net::ipport::ipport(const string_view &amalgam) +:std::pair +{ + rfc3986::host(amalgam), rfc3986::port(amalgam) +} +{} + template ircd::net::ipport::ipport(iparg&& arg, const string_view &port)