Skip to content

Commit b2a0c9c

Browse files
committed
Merge pull request iij#30 from rhykw/tcpserver-reuseaddr
Use TCPServer SO_REUSEADDR
2 parents 18f7b45 + 4f67032 commit b2a0c9c

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

mrblib/socket.rb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,9 @@ def initialize(host=nil, service)
262262
ai = Addrinfo.getaddrinfo(host, service, nil, nil, nil, Socket::AI_PASSIVE)[0]
263263
@init_with_fd = true
264264
super(Socket._socket(ai.afamily, Socket::SOCK_STREAM, 0), "r+")
265+
if Socket.const_defined?(:SO_REUSEADDR)
266+
self.setsockopt(Socket::SOL_SOCKET, Socket::SO_REUSEADDR, true)
267+
end
265268
Socket._bind(self.fileno, ai.to_sockaddr)
266269
listen(5)
267270
self

0 commit comments

Comments
 (0)