This commit is contained in:
Hackerpilot 2016-01-21 15:44:40 -08:00
parent f226487b33
commit d26ce5ed20
2 changed files with 19 additions and 10 deletions

View File

@ -314,7 +314,8 @@ Socket createSocket(string socketFile, ushort port)
{
version(Windows)
{
throw new Exception("Cannot use UNIX domain sockets on Windows.");
// should never be called with non-null socketFile on Windows
assert(false);
}
else
{

View File

@ -128,17 +128,25 @@ int main(string[] args)
}
else
{
socket = new Socket(AddressFamily.UNIX, SocketType.STREAM);
if (exists(socketFile))
version(Windows)
{
info("Cleaning up old socket file at ", socketFile);
remove(socketFile);
fatal("UNIX domain sockets not supported on Windows");
return 1;
}
else
{
socket = new Socket(AddressFamily.UNIX, SocketType.STREAM);
if (exists(socketFile))
{
info("Cleaning up old socket file at ", socketFile);
remove(socketFile);
}
socket.blocking = true;
socket.setOption(SocketOptionLevel.SOCKET, SocketOption.REUSEADDR, true);
socket.bind(new UnixAddress(socketFile));
setAttributes(socketFile, S_IRUSR | S_IWUSR);
info("Listening at ", socketFile);
}
socket.blocking = true;
socket.setOption(SocketOptionLevel.SOCKET, SocketOption.REUSEADDR, true);
socket.bind(new UnixAddress(socketFile));
setAttributes(socketFile, S_IRUSR | S_IWUSR);
info("Listening at ", socketFile);
}
socket.listen(0);