From 9dce0b2cb7edd0fcea3ea243410976729210752f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com>
Date: Wed, 16 Apr 2014 13:48:29 -0400
Subject: [PATCH] ip_utils: allow to specify address family when resolving
 domains

---
 daemon/src/ip_utils.cpp | 4 ++--
 daemon/src/ip_utils.h   | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/daemon/src/ip_utils.cpp b/daemon/src/ip_utils.cpp
index 38edb40de7..59e5d3e120 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 d48da72722..0f9fa82fe2 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.
-- 
GitLab