summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Halley <halley@dnspython.org>2020-05-09 14:33:53 -0700
committerBob Halley <halley@dnspython.org>2020-05-09 14:33:53 -0700
commit4717dfbd97a0aa3900832f2458583baf522f6f54 (patch)
tree366e8a940827c2041132cee1270c3a83674059d0
parent07e81b80e628d5b74580efb00c7caa93c6bd7b9f (diff)
downloaddnspython-4717dfbd97a0aa3900832f2458583baf522f6f54.tar.gz
checkpoint rdata subclasses doco
-rw-r--r--dns/rdtypes/ANY/CAA.py10
-rw-r--r--dns/rdtypes/ANY/CERT.py14
-rw-r--r--dns/rdtypes/ANY/CSYNC.py9
-rw-r--r--dns/rdtypes/dnskeybase.py11
-rw-r--r--dns/rdtypes/dsbase.py12
-rw-r--r--dns/rdtypes/euibase.py6
-rw-r--r--dns/rdtypes/mxbase.py7
-rw-r--r--dns/rdtypes/nsbase.py5
-rw-r--r--doc/rdata-subclasses.rst301
9 files changed, 248 insertions, 127 deletions
diff --git a/dns/rdtypes/ANY/CAA.py b/dns/rdtypes/ANY/CAA.py
index 9b202e3..8e59800 100644
--- a/dns/rdtypes/ANY/CAA.py
+++ b/dns/rdtypes/ANY/CAA.py
@@ -24,15 +24,9 @@ import dns.tokenizer
class CAA(dns.rdata.Rdata):
- """CAA (Certification Authority Authorization) record
+ """CAA (Certification Authority Authorization) record"""
- @ivar flags: the flags
- @type flags: int
- @ivar tag: the tag
- @type tag: string
- @ivar value: the value
- @type value: string
- @see: RFC 6844"""
+ # see: RFC 6844
__slots__ = ['flags', 'tag', 'value']
diff --git a/dns/rdtypes/ANY/CERT.py b/dns/rdtypes/ANY/CERT.py
index ab937da..1432295 100644
--- a/dns/rdtypes/ANY/CERT.py
+++ b/dns/rdtypes/ANY/CERT.py
@@ -56,17 +56,9 @@ def _ctype_to_text(what):
class CERT(dns.rdata.Rdata):
- """CERT record
-
- @ivar certificate_type: certificate type
- @type certificate_type: int
- @ivar key_tag: key tag
- @type key_tag: int
- @ivar algorithm: algorithm
- @type algorithm: int
- @ivar certificate: the certificate or CRL
- @type certificate: string
- @see: RFC 2538"""
+ """CERT record"""
+
+ # see RFC 2538
__slots__ = ['certificate_type', 'key_tag', 'algorithm', 'certificate']
diff --git a/dns/rdtypes/ANY/CSYNC.py b/dns/rdtypes/ANY/CSYNC.py
index 1579284..e258fda 100644
--- a/dns/rdtypes/ANY/CSYNC.py
+++ b/dns/rdtypes/ANY/CSYNC.py
@@ -24,14 +24,7 @@ import dns.name
class CSYNC(dns.rdata.Rdata):
- """CSYNC record
-
- @ivar serial: the SOA serial number
- @type serial: int
- @ivar flags: the CSYNC flags
- @type flags: int
- @ivar windows: the windowed bitmap list
- @type windows: list of (window number, string) tuples"""
+ """CSYNC record"""
__slots__ = ['serial', 'flags', 'windows']
diff --git a/dns/rdtypes/dnskeybase.py b/dns/rdtypes/dnskeybase.py
index 48ff6ac..345bade 100644
--- a/dns/rdtypes/dnskeybase.py
+++ b/dns/rdtypes/dnskeybase.py
@@ -75,16 +75,7 @@ def flags_from_text_set(texts_set):
class DNSKEYBase(dns.rdata.Rdata):
- """Base class for rdata that is like a DNSKEY record
-
- @ivar flags: the key flags
- @type flags: int
- @ivar protocol: the protocol for which this key may be used
- @type protocol: int
- @ivar algorithm: the algorithm used for the key
- @type algorithm: int
- @ivar key: the public key
- @type key: string"""
+ """Base class for rdata that is like a DNSKEY record"""
__slots__ = ['flags', 'protocol', 'algorithm', 'key']
diff --git a/dns/rdtypes/dsbase.py b/dns/rdtypes/dsbase.py
index 22df924..8da007b 100644
--- a/dns/rdtypes/dsbase.py
+++ b/dns/rdtypes/dsbase.py
@@ -24,17 +24,7 @@ import dns.rdatatype
class DSBase(dns.rdata.Rdata):
- """Base class for rdata that is like a DS record
-
- @ivar key_tag: the key tag
- @type key_tag: int
- @ivar algorithm: the algorithm
- @type algorithm: int
- @ivar digest_type: the digest type
- @type digest_type: int
- @ivar digest: the digest
- @type digest: int
- @see: draft-ietf-dnsext-delegation-signer-14.txt"""
+ """Base class for rdata that is like a DS record"""
__slots__ = ['key_tag', 'algorithm', 'digest_type', 'digest']
diff --git a/dns/rdtypes/euibase.py b/dns/rdtypes/euibase.py
index fdb20af..db4e56b 100644
--- a/dns/rdtypes/euibase.py
+++ b/dns/rdtypes/euibase.py
@@ -21,11 +21,9 @@ import dns.rdata
class EUIBase(dns.rdata.Rdata):
- """EUIxx record
+ """EUIxx record"""
- @ivar fingerprint: xx-bit Extended Unique Identifier (EUI-xx)
- @type fingerprint: string
- @see: rfc7043.txt"""
+ # see: rfc7043.txt
__slots__ = ['eui']
# define these in subclasses
diff --git a/dns/rdtypes/mxbase.py b/dns/rdtypes/mxbase.py
index 7e586f6..a238b51 100644
--- a/dns/rdtypes/mxbase.py
+++ b/dns/rdtypes/mxbase.py
@@ -27,12 +27,7 @@ import dns.name
class MXBase(dns.rdata.Rdata):
- """Base class for rdata that is like an MX record.
-
- @ivar preference: the preference value
- @type preference: int
- @ivar exchange: the exchange name
- @type exchange: dns.name.Name object"""
+ """Base class for rdata that is like an MX record."""
__slots__ = ['preference', 'exchange']
diff --git a/dns/rdtypes/nsbase.py b/dns/rdtypes/nsbase.py
index 6334ce2..aab57fa 100644
--- a/dns/rdtypes/nsbase.py
+++ b/dns/rdtypes/nsbase.py
@@ -26,10 +26,7 @@ import dns.name
class NSBase(dns.rdata.Rdata):
- """Base class for rdata that is like an NS record.
-
- @ivar target: the target name of the rdata
- @type target: dns.name.Name object"""
+ """Base class for rdata that is like an NS record."""
__slots__ = ['target']
diff --git a/doc/rdata-subclasses.rst b/doc/rdata-subclasses.rst
index aa9470b..a15f78b 100644
--- a/doc/rdata-subclasses.rst
+++ b/doc/rdata-subclasses.rst
@@ -3,172 +3,343 @@
Rdata Subclass Reference
========================
-XXXRTH This is just a placeholder for proper documentation of all
-the subclasses, which will basically just be documenting the attributes
-of the subclass, as well as any method specific to the subclass.
-
.. autoclass:: dns.rdata.GenericRdata
- :members:
-.. automodule:: dns.rdtypes.dnskeybase
- :members:
+ .. attribute:: data
-.. automodule:: dns.rdtypes.dsbase
- :members:
+ A ``bytes`` containing the rdata's value.
-.. automodule:: dns.rdtypes.euibase
+.. autoclass:: dns.rdtypes.ANY.AFSDB.AFSDB
:members:
-.. automodule:: dns.rdtypes.mxbase
- :members:
+ .. attribute:: subtype
-.. automodule:: dns.rdtypes.nsbase
- :members:
+ An ``int``, the AFSDB subtype
-.. automodule:: dns.rdtypes.txtbase
- :members:
+ .. attribute:: hostname
-.. automodule:: dns.rdtypes.ANY.AFSDB
- :members:
+ A ``dns.name.Name``, the AFSDB hostname.
-.. automodule:: dns.rdtypes.ANY.AVC
+.. autoclass:: dns.rdtypes.ANY.AVC.AVC
:members:
-.. automodule:: dns.rdtypes.ANY.CAA
+ .. attribute:: strings
+
+ A tuple of ``bytes``, the list of strings.
+
+.. autoclass:: dns.rdtypes.ANY.CAA.CAA
:members:
-.. automodule:: dns.rdtypes.ANY.CDNSKEY
+ .. attribute:: flags
+
+ An ``int``, the flags
+
+ .. attribute:: tag
+
+ A ``bytes``, the tag
+
+ .. attribute:: value
+
+ A ``bytes``, the value
+
+.. autoclass:: dns.rdtypes.ANY.CDNSKEY.CDNSKEY
:members:
-.. automodule:: dns.rdtypes.ANY.CDS
+ .. attribute:: flags
+
+ An ``int``, the key's flags.
+
+ .. attribute:: protocol
+
+ An ``int``, the protocol for which this key may be used.
+
+ .. attribute:: algorithm:
+
+ An ``int``, the algorithm used for the key.
+
+ .. attribute:: key
+
+ A ``bytes``, the public key.
+
+.. autoclass:: dns.rdtypes.ANY.CDS.CDS
:members:
-.. automodule:: dns.rdtypes.ANY.CERT
+ .. attribute:: key_tag
+
+ An ``int``, the key tag.
+
+ .. attribute:: algorithm
+
+ An ``int``, the algorithm used for the key.
+
+ .. attribute:: digest_type
+
+ An ``int``, the digest type.
+
+ .. attribute:: digest
+
+ A ``bytes``, the digest of the key.
+
+.. autoclass:: dns.rdtypes.ANY.CERT.CERT
:members:
-.. automodule:: dns.rdtypes.ANY.CNAME
+ .. attribute:: certificate_type
+
+ An ``int``, the certificate type.
+
+ .. attribute:: key_tag
+
+ An ``int``, the key tag.
+
+ .. attribute:: algorithm
+
+ An ``int``, the algorithm.
+
+ .. attribute:: certificate
+
+ A ``bytes``, the certificate or CRL.
+
+.. autoclass:: dns.rdtypes.ANY.CNAME.CNAME
:members:
-.. automodule:: dns.rdtypes.ANY.CSYNC
+ .. attribute:: target
+
+ A ``dns.name.Name``, the target name.
+
+.. autoclass:: dns.rdtypes.ANY.CSYNC.CSYNC
:members:
-.. automodule:: dns.rdtypes.ANY.DLV
+ .. attribute:: serial
+
+ An ``int``, the SOA serial number.
+
+ .. attribute:: flags
+
+ An ``int``, the CSYNC flags.
+
+ .. attribute:: windows
+
+ A tuple of ``(int, bytes)`` tuples.
+
+.. autoclass:: dns.rdtypes.ANY.DLV.DLV
:members:
-.. automodule:: dns.rdtypes.ANY.DNAME
+ .. attribute:: key_tag
+
+ An ``int``, the key tag.
+
+ .. attribute:: algorithm
+
+ An ``int``, the algorithm used for the key.
+
+ .. attribute:: digest_type
+
+ An ``int``, the digest type.
+
+ .. attribute:: digest
+
+ A ``bytes``, the digest of the key.
+
+.. autoclass:: dns.rdtypes.ANY.DNAME.DNAME
:members:
-.. automodule:: dns.rdtypes.ANY.DNSKEY
+ .. attribute:: target
+
+ A ``dns.name.Name``, the target name.
+
+.. autoclass:: dns.rdtypes.ANY.DNSKEY.DNSKEY
:members:
-.. automodule:: dns.rdtypes.ANY.DS
+ .. attribute:: flags
+
+ An ``int``, the key's flags.
+
+ .. attribute:: protocol
+
+ An ``int``, the protocol for which this key may be used.
+
+ .. attribute:: algorithm:
+
+ An ``int``, the algorithm used for the key.
+
+ .. attribute:: key
+
+ A ``bytes``, the public key.
+
+.. autoclass:: dns.rdtypes.ANY.DS.DS
:members:
-.. automodule:: dns.rdtypes.ANY.EUI48
+ .. attribute:: key_tag
+
+ An ``int``, the key tag.
+
+ .. attribute:: algorithm
+
+ An ``int``, the algorithm used for the key.
+
+ .. attribute:: digest_type
+
+ An ``int``, the digest type.
+
+ .. attribute:: digest
+
+ A ``bytes``, the digest of the key.
+
+.. autoclass:: dns.rdtypes.ANY.EUI48.EUI48
:members:
-.. automodule:: dns.rdtypes.ANY.EUI64
+ .. attribute:: eui
+
+ A ``bytes``, 48-bit Extended Unique Identifier (EUI-48).
+
+.. autoclass:: dns.rdtypes.ANY.EUI64.EUI64
:members:
-.. automodule:: dns.rdtypes.ANY.GPOS
+ .. attribute:: eui
+
+ A ``bytes``, 64-bit Extended Unique Identifier (EUI-64).
+
+.. autoclass:: dns.rdtypes.ANY.GPOS
:members:
-.. automodule:: dns.rdtypes.ANY.HINFO
+.. autoclass:: dns.rdtypes.ANY.HINFO
:members:
-.. automodule:: dns.rdtypes.ANY.HIP
+.. autoclass:: dns.rdtypes.ANY.HIP
:members:
-.. automodule:: dns.rdtypes.ANY.ISDN
+.. autoclass:: dns.rdtypes.ANY.ISDN
:members:
-.. automodule:: dns.rdtypes.ANY.LOC
+.. autoclass:: dns.rdtypes.ANY.LOC
:members:
-.. automodule:: dns.rdtypes.ANY.MX
+.. autoclass:: dns.rdtypes.ANY.MX.MX
:members:
-.. automodule:: dns.rdtypes.ANY.NS
+ .. attribute:: preference
+
+ An ``int``, the preference value
+
+ .. attribute:: exchange
+
+ A ``dns.name.Name``, the exchange name.
+
+.. autoclass:: dns.rdtypes.ANY.NINFO.NINFO
+
+ .. attribute:: strings
+
+ A tuple of ``bytes``, the list of strings.
+
+.. autoclass:: dns.rdtypes.ANY.NS.NS
:members:
-.. automodule:: dns.rdtypes.ANY.NSEC
+ .. attribute:: target
+
+ A ``dns.name.Name``, the target name.
+
+.. autoclass:: dns.rdtypes.ANY.NSEC
:members:
-.. automodule:: dns.rdtypes.ANY.NSEC3
+.. autoclass:: dns.rdtypes.ANY.NSEC3
:members:
-.. automodule:: dns.rdtypes.ANY.NSEC3PARAM
+.. autoclass:: dns.rdtypes.ANY.NSEC3PARAM
:members:
-.. automodule:: dns.rdtypes.ANY.OPENPGPKEY
+.. autoclass:: dns.rdtypes.ANY.OPENPGPKEY
:members:
-.. automodule:: dns.rdtypes.ANY.PTR
+.. autoclass:: dns.rdtypes.ANY.PTR.PTR
:members:
-.. automodule:: dns.rdtypes.ANY.RP
+ .. attribute:: target
+
+ A ``dns.name.Name``, the target name.
+
+.. autoclass:: dns.rdtypes.ANY.RP
:members:
-.. automodule:: dns.rdtypes.ANY.RRSIG
+.. autoclass:: dns.rdtypes.ANY.RRSIG
:members:
-.. automodule:: dns.rdtypes.ANY.RT
+.. autoclass:: dns.rdtypes.ANY.RT.RT
:members:
-.. automodule:: dns.rdtypes.ANY.SOA
+ .. attribute:: preference
+
+ An ``int``, the preference value
+
+ .. attribute:: exchange
+
+ A ``dns.name.Name``, the exchange name.
+
+.. autoclass:: dns.rdtypes.ANY.SOA
:members:
-.. automodule:: dns.rdtypes.ANY.SPF
+.. autoclass:: dns.rdtypes.ANY.SPF.SPF
:members:
-.. automodule:: dns.rdtypes.ANY.SSHFP
+ .. attribute:: strings
+
+ A tuple of ``bytes``, the list of strings.
+
+.. autoclass:: dns.rdtypes.ANY.SSHFP
:members:
-.. automodule:: dns.rdtypes.ANY.TLSA
+.. autoclass:: dns.rdtypes.ANY.TLSA
:members:
-.. automodule:: dns.rdtypes.ANY.TXT
+.. autoclass:: dns.rdtypes.ANY.TXT.TXT
:members:
-.. automodule:: dns.rdtypes.ANY.URI
+ .. attribute:: strings
+
+ A tuple of ``bytes``, the list of strings.
+
+.. autoclass:: dns.rdtypes.ANY.URI
:members:
-.. automodule:: dns.rdtypes.ANY.X25
+.. autoclass:: dns.rdtypes.ANY.X25
:members:
-.. automodule:: dns.rdtypes.IN.A
+.. autoclass:: dns.rdtypes.IN.A
:members:
-.. automodule:: dns.rdtypes.IN.AAAA
+.. autoclass:: dns.rdtypes.IN.AAAA
:members:
-.. automodule:: dns.rdtypes.IN.APL
+.. autoclass:: dns.rdtypes.IN.APL
:members:
-.. automodule:: dns.rdtypes.IN.DHCID
+.. autoclass:: dns.rdtypes.IN.DHCID
:members:
-.. automodule:: dns.rdtypes.IN.IPSECKEY
+.. autoclass:: dns.rdtypes.IN.IPSECKEY
:members:
-.. automodule:: dns.rdtypes.IN.KX
+.. autoclass:: dns.rdtypes.IN.KX
:members:
-.. automodule:: dns.rdtypes.IN.NAPTR
+.. autoclass:: dns.rdtypes.IN.NAPTR
:members:
-.. automodule:: dns.rdtypes.IN.NSAP
+.. autoclass:: dns.rdtypes.IN.NSAP
:members:
-.. automodule:: dns.rdtypes.IN.NSAP_PTR
+.. autoclass:: dns.rdtypes.IN.NSAP_PTR.NSAP_PTR
:members:
-.. automodule:: dns.rdtypes.IN.PX
+ .. attribute:: target
+
+ A ``dns.name.Name``, the target name.
+
+.. autoclass:: dns.rdtypes.IN.PX
:members:
-.. automodule:: dns.rdtypes.IN.SRV
+.. autoclass:: dns.rdtypes.IN.SRV
:members:
-.. automodule:: dns.rdtypes.IN.WKS
+.. autoclass:: dns.rdtypes.IN.WKS
:members: