forked from uncloud/uncloud
13 lines
354 B
Python
13 lines
354 B
Python
import socket
|
|
from contextlib import closing
|
|
|
|
|
|
def find_free_port():
|
|
with closing(socket.socket(socket.AF_INET, socket.SOCK_STREAM)) as s:
|
|
try:
|
|
s.bind(('', 0))
|
|
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
|
except Exception:
|
|
return None
|
|
else:
|
|
return s.getsockname()[1]
|