Exemple #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))
Exemple #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))
Exemple #3
0
def get_server_certificate (addr, ssl_version=PROTOCOL_SSLv3, 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."""

    host, port = addr
    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)
Exemple #4
0
def get_server_certificate(addr, ssl_version=PROTOCOL_SSLv3, 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."""

    host, port = addr
    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)