in src/mount_efs/__init__.py [0:0]
def choose_tls_port_and_get_bind_sock(config, options, state_file_dir):
if "tlsport" in options:
ports_to_try = [int(options["tlsport"])]
else:
lower_bound, upper_bound = get_tls_port_range(config)
ports_to_try = list(range(lower_bound, upper_bound))
# shuffle the ports_to_try to reduce possibility of multiple mounts starting from same port range
random.shuffle(ports_to_try)
if "netns" not in options:
tls_port_sock = find_tls_port_in_range_and_get_bind_sock(
ports_to_try, state_file_dir
)
else:
with NetNS(nspath=options["netns"]):
tls_port_sock = find_tls_port_in_range_and_get_bind_sock(
ports_to_try, state_file_dir
)
if tls_port_sock:
return tls_port_sock
if "tlsport" in options:
fatal_error(
"Specified port [%s] is unavailable. Try selecting a different port."
% options["tlsport"]
)
else:
fatal_error(
"Failed to locate an available port in the range [%d, %d], try specifying a different port range in %s"
% (lower_bound, upper_bound, CONFIG_FILE)
)