(address, options)
return sock
Given (host, port) and PoolOptions, return a configured socket.

    Can raise socket.error, ConnectionFailure, or CertificateError.

    Sets socket's SSL and timeout options.
Given (host, port) and PoolOptions, return a configured socket.
Given ( host port ) and PoolOptions return a configured socket .
def _configured_socket(address, options):
    """Given (host, port) and PoolOptions, return a configured socket.

    Can raise socket.error, ConnectionFailure, or CertificateError.

    Sets socket's SSL and timeout options.
    """
    sock = _create_connection(address, options)
    ssl_context = options.ssl_context

    if ssl_context is not None:
        host = address[0]
        try:
            # According to RFC6066, section 3, IPv4 and IPv6 literals are
            # not permitted for SNI hostname.
            if _HAVE_SNI and not is_ip_address(host):
                sock = ssl_context.wrap_socket(sock, server_hostname=host)
            else:
                sock = ssl_context.wrap_socket(sock)
        except IOError as exc:
            sock.close()
            raise ConnectionFailure("SSL handshake failed: %s" % (str(exc),))
        if ssl_context.verify_mode and options.ssl_match_hostname:
            try:
                match_hostname(sock.getpeercert(), hostname=host)
            except CertificateError:
                sock.close()
                raise

    sock.settimeout(options.socket_timeout)
    return sock
def _configured_socket ( address , options ) : sock = _create_connection ( address , options ) ssl_context = options . ssl_context if ssl_context is not None : host = address [ 0 ] try : # According to RFC6066, section 3, IPv4 and IPv6 literals are # not permitted for SNI hostname. if _HAVE_SNI and not is_ip_address ( host ) : sock = ssl_context . wrap_socket ( sock , server_hostname = host ) else : sock = ssl_context . wrap_socket ( sock ) except IOError as exc : sock . close ( ) raise ConnectionFailure ( "SSL handshake failed: %s" % ( str ( exc ) , ) ) if ssl_context . verify_mode and options . ssl_match_hostname : try : match_hostname ( sock . getpeercert ( ) , hostname = host ) except CertificateError : sock . close ( ) raise sock . settimeout ( options . socket_timeout ) return sock