Merge branch 'development' into Xenon_Removal

This commit is contained in:
Areloch 2017-04-18 20:47:43 -05:00 committed by GitHub
commit c443e7a4ae
124 changed files with 663 additions and 653 deletions

View file

@ -771,7 +771,8 @@ NetSocket Net::openConnectTo(const char *addressString)
error = Net::WrongProtocolType;
}
if (error != NoError || error == NeedHostLookup)
// Open socket
if (error == NoError || error == NeedHostLookup)
{
handleFd = openSocket();
}
@ -785,13 +786,16 @@ NetSocket Net::openConnectTo(const char *addressString)
if (socketFd != InvalidSocketHandle)
{
setBlocking(handleFd, false);
if (::connect(socketFd, (struct sockaddr *)&ipAddr, sizeof(ipAddr)) == -1 &&
errno != EINPROGRESS)
if (::connect(socketFd, (struct sockaddr *)&ipAddr, sizeof(ipAddr)) == -1)
{
Con::errorf("Error connecting %s: %s",
addressString, strerror(errno));
closeSocket(handleFd);
handleFd = NetSocket::INVALID;
Net::Error err = PlatformNetState::getLastError();
if (err != Net::WouldBlock)
{
Con::errorf("Error connecting to %s: %u",
addressString, err);
closeSocket(handleFd);
handleFd = NetSocket::INVALID;
}
}
}
else
@ -811,14 +815,20 @@ NetSocket Net::openConnectTo(const char *addressString)
sockaddr_in6 ipAddr6;
NetAddressToIPSocket6(&address, &ipAddr6);
SOCKET socketFd = PlatformNetState::smReservedSocketList.activate(handleFd, AF_INET6, false, true);
if (::connect(socketFd, (struct sockaddr *)&ipAddr6, sizeof(ipAddr6)) == -1 &&
errno != EINPROGRESS)
if (socketFd != InvalidSocketHandle)
{
setBlocking(handleFd, false);
Con::errorf("Error connecting %s: %s",
addressString, strerror(errno));
closeSocket(handleFd);
handleFd = NetSocket::INVALID;
if (::connect(socketFd, (struct sockaddr *)&ipAddr6, sizeof(ipAddr6)) == -1)
{
Net::Error err = PlatformNetState::getLastError();
if (err != Net::WouldBlock)
{
Con::errorf("Error connecting to %s: %u",
addressString, err);
closeSocket(handleFd);
handleFd = NetSocket::INVALID;
}
}
}
else
{