Example #1
0
 def connection_factory(host, port):
     return create_https_connection(
         host, port,
         cafile=cafile,
         client_certfile=client_certfile,
         client_keyfile=client_keyfile,
         tls_version_min=api.env.tls_version_min,
         tls_version_max=api.env.tls_version_max)
Example #2
0
 def connection_factory(host, port):
     return create_https_connection(host,
                                    port,
                                    cafile=cafile,
                                    client_certfile=client_certfile,
                                    client_keyfile=client_keyfile,
                                    tls_version_min=api.env.tls_version_min,
                                    tls_version_max=api.env.tls_version_max)
Example #3
0
def test_tls_version_span(minver, maxver, opt, expected):
    assert get_proper_tls_version_span(minver, maxver) == expected
    # file must exist and contain certs
    cafile = ssl.get_default_verify_paths().cafile
    conn = create_https_connection("invalid.test",
                                   cafile=cafile,
                                   tls_version_min=minver,
                                   tls_version_max=maxver)
    ctx = getattr(conn, "_context")
    assert ctx.options == BASE_OPT | opt
    assert ctx.get_ciphers() == BASE_CTX.get_ciphers()
Example #4
0
 def page_raw_source(self):
     """
     Retrieve a raw source of the web page
     """
     host = api.env.host
     cacert = api.env.tls_ca_cert
     conn = util.create_https_connection(host, cafile=cacert)
     conn.request('GET', self.url)
     response = conn.getresponse()
     # check successful response from a server
     assert response.status == 200
     return response.read().decode('utf-8')
Example #5
0
    def make_connection(self, host):
        host, self._extra_headers, _x509 = self.get_host_info(host)

        if self._connection and host == self._connection[0]:
            logger.debug("HTTP connection keep-alive (%s)", host)
            return self._connection[1]

        conn = create_https_connection(host,
                                       443,
                                       getattr(context, 'ca_certfile', None),
                                       tls_version_min=api.env.tls_version_min,
                                       tls_version_max=api.env.tls_version_max)

        conn.connect()
        logger.debug("New HTTP connection (%s)", host)

        self._connection = host, conn
        return self._connection[1]
Example #6
0
File: rpc.py Project: stlaz/freeipa
    def make_connection(self, host):
        host, self._extra_headers, _x509 = self.get_host_info(host)

        if self._connection and host == self._connection[0]:
            logger.debug("HTTP connection keep-alive (%s)", host)
            return self._connection[1]

        conn = create_https_connection(
            host, 443,
            getattr(context, 'ca_certfile', None),
            tls_version_min=api.env.tls_version_min,
            tls_version_max=api.env.tls_version_max)

        conn.connect()
        logger.debug("New HTTP connection (%s)", host)

        self._connection = host, conn
        return self._connection[1]
Example #7
0
    def send_request(self, method='POST', params=None):
        """
        Send a request to HTTP server

        :param key When not None, overrides default app_uri
        """
        if params is not None:
            # urlencode *can* take two arguments
            # pylint: disable=too-many-function-args
            params = urllib.parse.urlencode(params, True)
        url = 'https://' + self.host + self.app_uri

        headers = {'Content-Type' : self.content_type,
                   'Referer' : url}

        conn = util.create_https_connection(
                self.host, cafile=self.cacert)
        conn.request(method, self.app_uri, params, headers)
        return conn.getresponse()
Example #8
0
    def send_request(self, method='POST', params=None):
        """
        Send a request to HTTP server

        :param key When not None, overrides default app_uri
        """
        if params is not None:
            if self.content_type == 'application/x-www-form-urlencoded':
                params = urllib.parse.urlencode(params, True)
        url = 'https://' + self.host + self.app_uri

        headers = {
            'Content-Type': self.content_type,
            'Accept-Language': self.accept_language,
            'Referer': url
        }

        conn = util.create_https_connection(self.host, cafile=self.cacert)
        conn.request(method, self.app_uri, params, headers)
        return conn.getresponse()
Example #9
0
 def __inner(self, host, **kwargs):
     tmp = self.__kwargs.copy()
     tmp.update(kwargs)
     return create_https_connection(host, **tmp)