Пример #1
0
 def unwrap(self):
     if self._sslobj:
         s = self._sslobj_shutdown()
         self._sslobj = None
         return socket(_sock=s)
     else:
         raise ValueError("No SSL wrapper around " + str(self))
Пример #2
0
 def unwrap(self):
     if self._sslobj:
         s = self._sslobj_shutdown()
         self._sslobj = None
         return socket(_sock=s)
     else:
         raise ValueError("No SSL wrapper around " + str(self))
 def unwrap(self):
     if self._sslobj:
         s = self._sslobj_shutdown()
         self._sslobj = None
         return socket(_sock=s) # match _ssl2; critical to drop/reuse here on PyPy
     else:
         raise ValueError("No SSL wrapper around " + str(self))
Пример #4
0
 def unwrap(self):
     if self._sslobj:
         s = self._sslobj_shutdown()
         self._sslobj = None
         return socket(_sock=s) # match _ssl2; critical to drop/reuse here on PyPy
     else:
         raise ValueError("No SSL wrapper around " + str(self))
Пример #5
0
    def unwrap(self):
        if not self._sslobj:
            raise ValueError("No SSL wrapper around " + str(self))

        s = self._sslobj_shutdown()
        self._sslobj = None
        # match _ssl2; critical to drop/reuse here on PyPy
        # XXX: _ssl3 returns an SSLSocket. Is that what the standard lib does on
        # Python 2? Should we do that?
        return socket(_sock=s)
Пример #6
0
    def unwrap(self):
        if not self._sslobj:
            raise ValueError("No SSL wrapper around " + str(self))

        s = self._sslobj_shutdown()
        self._sslobj = None
        # match _ssl2; critical to drop/reuse here on PyPy
        # XXX: _ssl3 returns an SSLSocket. Is that what the standard lib does on
        # Python 2? Should we do that?
        return socket(_sock=s)
Пример #7
0
def get_server_certificate(addr, ssl_version=PROTOCOL_SSLv23, ca_certs=None):
    """Retrieve the certificate from the server at the specified address,
    and return it as a PEM-encoded string.
    If 'ca_certs' is specified, validate the server cert against it.
    If 'ssl_version' is specified, use it in the connection attempt."""

    if ca_certs is not None:
        cert_reqs = CERT_REQUIRED
    else:
        cert_reqs = CERT_NONE
    s = wrap_socket(socket(), ssl_version=ssl_version,
                    cert_reqs=cert_reqs, ca_certs=ca_certs)
    s.connect(addr)
    dercert = s.getpeercert(True)
    s.close()
    return DER_cert_to_PEM_cert(dercert)
Пример #8
0
def get_server_certificate(addr, ssl_version=PROTOCOL_SSLv23, ca_certs=None):
    """Retrieve the certificate from the server at the specified address,
    and return it as a PEM-encoded string.
    If 'ca_certs' is specified, validate the server cert against it.
    If 'ssl_version' is specified, use it in the connection attempt."""

    if ca_certs is not None:
        cert_reqs = CERT_REQUIRED
    else:
        cert_reqs = CERT_NONE
    s = wrap_socket(socket(), ssl_version=ssl_version,
                    cert_reqs=cert_reqs, ca_certs=ca_certs)
    s.connect(addr)
    dercert = s.getpeercert(True)
    s.close()
    return DER_cert_to_PEM_cert(dercert)