net/SocketDescriptor: socketpair() is unavailable on Windows

This commit is contained in:
Max Kellermann 2017-08-10 13:18:59 +02:00
parent b180604422
commit 73b15c1bee
3 changed files with 8 additions and 0 deletions

View File

@ -131,6 +131,8 @@ SocketDescriptor::CreateNonBlock(int domain, int type, int protocol)
return true; return true;
} }
#ifndef _WIN32
bool bool
SocketDescriptor::CreateSocketPair(int domain, int type, int protocol, SocketDescriptor::CreateSocketPair(int domain, int type, int protocol,
SocketDescriptor &a, SocketDescriptor &b) SocketDescriptor &a, SocketDescriptor &b)
@ -168,6 +170,8 @@ SocketDescriptor::CreateSocketPairNonBlock(int domain, int type, int protocol,
return true; return true;
} }
#endif
int int
SocketDescriptor::GetError() SocketDescriptor::GetError()
{ {

View File

@ -125,10 +125,12 @@ public:
*/ */
bool CreateNonBlock(int domain, int type, int protocol); bool CreateNonBlock(int domain, int type, int protocol);
#ifndef _WIN32
static bool CreateSocketPair(int domain, int type, int protocol, static bool CreateSocketPair(int domain, int type, int protocol,
SocketDescriptor &a, SocketDescriptor &b); SocketDescriptor &a, SocketDescriptor &b);
static bool CreateSocketPairNonBlock(int domain, int type, int protocol, static bool CreateSocketPairNonBlock(int domain, int type, int protocol,
SocketDescriptor &a, SocketDescriptor &b); SocketDescriptor &a, SocketDescriptor &b);
#endif
int GetError(); int GetError();

View File

@ -83,6 +83,7 @@ public:
return UniqueSocketDescriptor(SocketDescriptor::AcceptNonBlock(address)); return UniqueSocketDescriptor(SocketDescriptor::AcceptNonBlock(address));
} }
#ifndef _WIN32
static bool CreateSocketPair(int domain, int type, int protocol, static bool CreateSocketPair(int domain, int type, int protocol,
UniqueSocketDescriptor &a, UniqueSocketDescriptor &a,
UniqueSocketDescriptor &b) { UniqueSocketDescriptor &b) {
@ -98,6 +99,7 @@ public:
protocol, protocol,
a, b); a, b);
} }
#endif
}; };
#endif #endif