diff options
Diffstat (limited to 'ipapython')
| -rw-r--r-- | ipapython/ipautil.py | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/ipapython/ipautil.py b/ipapython/ipautil.py index 1c95a81f6..f85fa0d1d 100644 --- a/ipapython/ipautil.py +++ b/ipapython/ipautil.py @@ -894,77 +894,6 @@ def host_port_open(host, port, socket_type=socket.SOCK_STREAM, socket_timeout=No return False -def bind_port_responder(port, socket_type=socket.SOCK_STREAM, socket_timeout=None, responder_data=None): - host = None # all available interfaces - last_socket_error = None - - # At first try to create IPv6 socket as it is able to accept both IPv6 and - # IPv4 connections (when not turned off) - families = (socket.AF_INET6, socket.AF_INET) - s = None - - for family in families: - try: - addr_infos = socket.getaddrinfo(host, port, family, socket_type, 0, - socket.AI_PASSIVE) - except socket.error as e: - last_socket_error = e - continue - for res in addr_infos: - af, socktype, proto, _canonname, sa = res - try: - s = socket.socket(af, socktype, proto) - except socket.error as e: - last_socket_error = e - s = None - continue - - if socket_timeout is not None: - s.settimeout(1) - - if af == socket.AF_INET6: - try: - # Make sure IPv4 clients can connect to IPv6 socket - s.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 0) - except socket.error: - pass - - if socket_type == socket.SOCK_STREAM: - s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - - try: - s.bind(sa) - - while True: - if socket_type == socket.SOCK_STREAM: - s.listen(1) - connection, _client_address = s.accept() - try: - if responder_data: - connection.sendall(responder_data) - finally: - connection.close() - elif socket_type == socket.SOCK_DGRAM: - _data, addr = s.recvfrom(1) - - if responder_data: - s.sendto(responder_data, addr) - except socket.timeout: - # Timeout is expectable as it was requested by caller, raise - # the exception back to him - raise - except socket.error as e: - last_socket_error = e - s.close() - s = None - continue - finally: - if s: - s.close() - - if s is None and last_socket_error is not None: - raise last_socket_error # pylint: disable=E0702 - def reverse_record_exists(ip_address): """ |
