Use autoclass for PKey
diff --git a/OpenSSL/crypto.py b/OpenSSL/crypto.py
index 3a69bea..6cc5ff2 100644
--- a/OpenSSL/crypto.py
+++ b/OpenSSL/crypto.py
@@ -152,6 +152,9 @@
class PKey(object):
+ """
+ A class representing an DSA or RSA public key or key pair.
+ """
_only_public = False
_initialized = True
@@ -163,12 +166,19 @@
def generate_key(self, type, bits):
"""
- Generate a key of a given type, with a given number of a bits
+ Generate a key pair of the given type, with the given number of a bits.
- :param type: The key type (TYPE_RSA or TYPE_DSA)
- :param bits: The number of bits
+ This generates a key "into" the this object.
- :return: None
+ :param type: The key type.
+ :type type: :py:data:`TYPE_RSA` or :py:data:`TYPE_DSA`
+ :param bits: The number of bits.
+ :type bits: :py:data:`int` ``>= 0``
+ :raises TypeError: If :py:data:`type` or :py:data:`bits` isn't
+ of the appropriate type.
+ :raises ValueError: If the number of bits isn't an integer of
+ the appropriate size.
+ :return: :py:data:`None`
"""
if not isinstance(type, int):
raise TypeError("type must be an integer")
@@ -225,6 +235,8 @@
"""
Check the consistency of an RSA private key.
+ This is the Python equivalent of OpenSSL's ``RSA_check_key``.
+
:return: True if key is consistent.
:raise Error: if the key is inconsistent.
:raise TypeError: if the key is of a type which cannot be checked.
@@ -1353,7 +1365,7 @@
"""
Adds the certificate :py:data:`cert` to this store.
- This is the Python equivalent of OpenSSL's X509_STORE_add_cert.
+ This is the Python equivalent of OpenSSL's ``X509_STORE_add_cert``.
:param X509 cert: The certificate to add to this store.
:raises TypeError: If the certificate is not an :py:class:`X509`.