From aac6aba66c75dc2010a8a11f21aaadbec2881f1c Mon Sep 17 00:00:00 2001 From: Guenter Obiltschnig Date: Tue, 8 Sep 2015 17:49:02 +0200 Subject: [PATCH] check if specified address fits specified address family --- Net/src/SocketAddress.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Net/src/SocketAddress.cpp b/Net/src/SocketAddress.cpp index 324dfa9b5..72520be09 100644 --- a/Net/src/SocketAddress.cpp +++ b/Net/src/SocketAddress.cpp @@ -257,15 +257,18 @@ void SocketAddress::init(const std::string& hostAddress, Poco::UInt16 portNumber } -void SocketAddress::init(Family family, const std::string& address) +void SocketAddress::init(Family fam, const std::string& address) { - if (family == UNIX_LOCAL) +#if defined(POCO_OS_FAMILY_UNIX) + if (fam == UNIX_LOCAL) { newLocal(address); } else +#endif { init(address); + if (fam != family()) throw Poco::InvalidArgumentException("address does not fit family"); } }