diff --git a/daemon/src/ip_utils.cpp b/daemon/src/ip_utils.cpp index 38edb40de751ac94889626a683b4f7f0cf2bbf46..59e5d3e12016602dddf2dfe15162b8e4debf86a6 100644 --- a/daemon/src/ip_utils.cpp +++ b/daemon/src/ip_utils.cpp @@ -104,12 +104,12 @@ ip_utils::addrToStr(const std::string& ip_str, bool include_port, bool force_ipv } pj_sockaddr -ip_utils::strToAddr(const std::string& str) +ip_utils::strToAddr(const std::string& str, pj_uint16_t family) { pj_str_t pjstring; pj_cstr(&pjstring, str.c_str()); pj_sockaddr ip; - auto status = pj_sockaddr_parse(pj_AF_UNSPEC(), 0, &pjstring, &ip); + auto status = pj_sockaddr_parse(family, 0, &pjstring, &ip); if (status != PJ_SUCCESS) ip.addr.sa_family = pj_AF_UNSPEC(); return ip; diff --git a/daemon/src/ip_utils.h b/daemon/src/ip_utils.h index d48da727227856796aeb47469bff8e3a6d940e2e..0f9fa82fe2789cf9cd478abaaf026d815452297b 100644 --- a/daemon/src/ip_utils.h +++ b/daemon/src/ip_utils.h @@ -59,10 +59,10 @@ namespace ip_utils { /** * Convert a string representation of an IP adress to its binary counterpart. * - * Performs hostname resolution if necessary. + * Performs hostname resolution if necessary (with given address family). * If conversion fails, returned adress will have its family set to PJ_AF_UNSPEC. */ - pj_sockaddr strToAddr(const std::string& str); + pj_sockaddr strToAddr(const std::string& str, pj_uint16_t family = pj_AF_UNSPEC()); /** * Return the generic "any host" IP address of the specified family.