add oid attribute to all extension types
diff --git a/docs/x509/reference.rst b/docs/x509/reference.rst
index 61971fe..29b8268 100644
--- a/docs/x509/reference.rst
+++ b/docs/x509/reference.rst
@@ -918,6 +918,14 @@
     be used for more than one operation is to be restricted. It corresponds to
     :data:`OID_KEY_USAGE`.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
     .. attribute:: digital_signature
 
         :type: bool
@@ -1010,6 +1018,14 @@
     length restrictions may exist. It corresponds to
     :data:`OID_BASIC_CONSTRAINTS`.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
     .. attribute:: ca
 
         :type: bool
@@ -1038,6 +1054,15 @@
     purposes indicated in the key usage extension. The object is
     iterable to obtain the list of :ref:`extended key usage OIDs <eku_oids>`.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
+
 .. class:: OCSPNoCheck
 
     .. versionadded:: 1.0
@@ -1051,6 +1076,14 @@
     extension is only relevant when the certificate is an authorized OCSP
     responder.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
 .. class:: NameConstraints
 
     .. versionadded:: 1.0
@@ -1060,6 +1093,14 @@
     beneath the CA certificate must (or must not) be in. For specific details
     on the way this extension should be processed see :rfc:`5280`.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
     .. attribute:: permitted_subtrees
 
         :type: list of :class:`GeneralName` objects or None
@@ -1087,6 +1128,14 @@
     certificate chain. For more information about generation and use of this
     extension see `RFC 5280 section 4.2.1.1`_.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
     .. attribute:: key_identifier
 
         :type: bytes
@@ -1113,6 +1162,14 @@
     The subject key identifier extension provides a means of identifying
     certificates that contain a particular public key.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
     .. attribute:: digest
 
         :type: bytes
@@ -1128,6 +1185,14 @@
     of identities for which the certificate is valid. The object is iterable to
     get every element.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
     .. method:: get_values_for_type(type)
 
         :param type: A :class:`GeneralName` provider. This is one of the
@@ -1158,6 +1223,14 @@
     of identities for the certificate issuer. The object is iterable to
     get every element.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
     .. method:: get_values_for_type(type)
 
         :param type: A :class:`GeneralName` provider. This is one of the
@@ -1176,6 +1249,14 @@
     validation services (such as OCSP) and issuer data. It is an iterable,
     containing one or more :class:`AccessDescription` instances.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
 
 .. class:: AccessDescription
 
@@ -1206,6 +1287,14 @@
     obtained. It is an iterable, containing one or more
     :class:`DistributionPoint` instances.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
 .. class:: DistributionPoint
 
     .. versionadded:: 0.9
@@ -1304,6 +1393,14 @@
     certificates issued by the subject of this certificate, but not in
     additional certificates in the path.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
     .. attribute:: skip_certs
 
         :type: int
@@ -1315,6 +1412,14 @@
     The certificate policies extension is an iterable, containing one or more
     :class:`PolicyInformation` instances.
 
+    .. attribute:: oid
+
+        .. versionadded:: 1.0
+
+        :type: :class:`ObjectIdentifier`
+
+        The OID associated with this extension type.
+
 Certificate Policies Classes
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~