From 5e83ec3b339aefe1f578c1f5840907aad63de17a Mon Sep 17 00:00:00 2001 From: Fred Nicolson Date: Thu, 11 May 2017 14:11:44 +0100 Subject: [PATCH] Compatability with mbedtls fork --- src/SSLListener.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/SSLListener.cpp b/src/SSLListener.cpp index 4ace920..bee42f1 100644 --- a/src/SSLListener.cpp +++ b/src/SSLListener.cpp @@ -70,8 +70,18 @@ namespace fr Socket::Status fr::SSLListener::listen(const std::string &port) { + int mbed_addr_family = 0; + if(ai_family == fr::Socket::IP::v4) + mbed_addr_family = MBEDTLS_NET_ADDR_FAMILY_4; + else if(ai_family == fr::Socket::IP::v6) + mbed_addr_family = MBEDTLS_NET_ADDR_FAMILY_6; + else if(ai_family == fr::Socket::IP::any) + mbed_addr_family = MBEDTLS_NET_ADDR_FAMILY_ANY; + else + return fr::Socket::Error; + //Bind to port - if(mbedtls_net_bind(&listen_fd, NULL, port.c_str(), MBEDTLS_NET_PROTO_TCP) != 0) + if(mbedtls_net_bind(&listen_fd, NULL, port.c_str(), MBEDTLS_NET_PROTO_TCP, mbed_addr_family) != 0) { return Socket::BindFailed; }