Merge pull request #30 from rhykw/tcpserver-reuseaddr

Use TCPServer SO_REUSEADDR
This commit is contained in:
Tomoyuki Sahara
2016-05-30 10:42:30 +09:00
+3
View File
@@ -262,6 +262,9 @@ class TCPServer
ai = Addrinfo.getaddrinfo(host, service, nil, nil, nil, Socket::AI_PASSIVE)[0]
@init_with_fd = true
super(Socket._socket(ai.afamily, Socket::SOCK_STREAM, 0), "r+")
if Socket.const_defined?(:SO_REUSEADDR)
self.setsockopt(Socket::SOL_SOCKET, Socket::SO_REUSEADDR, true)
end
Socket._bind(self.fileno, ai.to_sockaddr)
listen(5)
self