diff options
author | Bob Halley <halley@dnspython.org> | 2023-02-25 12:01:03 -0800 |
---|---|---|
committer | Bob Halley <halley@dnspython.org> | 2023-02-25 12:01:03 -0800 |
commit | e37866650cbba14ffc1947430494660ec3a405fd (patch) | |
tree | 76fce4b4f287ffed99de05a3dbcbe0a25f8f6e10 | |
parent | f7daeb87eac0a2727d5366cdff02fe08843678dd (diff) | |
download | dnspython-e37866650cbba14ffc1947430494660ec3a405fd.tar.gz |
Make a few nameserver changes that missed getting added to the PR.
-rw-r--r-- | dns/resolver.py | 14 | ||||
-rw-r--r-- | doc/resolver-nameserver.rst | 10 | ||||
-rw-r--r-- | doc/whatsnew.rst | 2 |
3 files changed, 16 insertions, 10 deletions
diff --git a/dns/resolver.py b/dns/resolver.py index 4fc5bfd..63a57ee 100644 --- a/dns/resolver.py +++ b/dns/resolver.py @@ -671,7 +671,9 @@ class _Resolution: request.flags = self.resolver.flags self.nameservers = self.resolver._enrich_nameservers( - self.resolver._nameservers + self.resolver._nameservers, + self.resolver.nameserver_ports, + self.resolver.port, ) if self.resolver.rotate: random.shuffle(self.nameservers) @@ -1117,8 +1119,12 @@ class BaseResolver: self.flags = flags + @classmethod def _enrich_nameservers( - self, nameservers: List[Union[str, dns.nameserver.Nameserver]] + cls, + nameservers: List[Union[str, dns.nameserver.Nameserver]], + nameserver_ports: Dict[str, int], + default_port: int, ) -> List[dns.nameserver.Nameserver]: enriched_nameservers = [] if isinstance(nameservers, list): @@ -1127,7 +1133,7 @@ class BaseResolver: if isinstance(nameserver, dns.nameserver.Nameserver): enriched_nameserver = nameserver elif dns.inet.is_address(nameserver): - port = self.nameserver_ports.get(nameserver, self.port) + port = nameserver_ports.get(nameserver, default_port) enriched_nameserver = dns.nameserver.Do53Nameserver( nameserver, port ) @@ -1169,7 +1175,7 @@ class BaseResolver: Raises ``ValueError`` if *nameservers* is not a list of nameservers. """ # We just call _enrich_nameservers() for checking - self._enrich_nameservers(nameservers) + self._enrich_nameservers(nameservers, self.nameserver_ports, self.port) self._nameservers = nameservers diff --git a/doc/resolver-nameserver.rst b/doc/resolver-nameserver.rst index 06f4a1b..d537439 100644 --- a/doc/resolver-nameserver.rst +++ b/doc/resolver-nameserver.rst @@ -12,8 +12,8 @@ and is used by the stub resolver to answer queries. The dns.nameserver.Do53Nameserver Class --------------------------------------- -The ``dns.nameserver.Do53Nameserver`` class is a ``dns.nameserver.Nameserver`` class use -to make regular port 53 (Do53) DNS queries to a recursive server. +The ``dns.nameserver.Do53Nameserver`` class is a ``dns.nameserver.Nameserver`` class used +to make regular UDP/TCP DNS queries, typically over port 53, to a recursive server. .. autoclass:: dns.nameserver.Do53Nameserver :members: @@ -21,7 +21,7 @@ to make regular port 53 (Do53) DNS queries to a recursive server. The dns.nameserver.DoTNameserver Class --------------------------------------- -The ``dns.nameserver.DoTNameserver`` class is a ``dns.nameserver.Nameserver`` class use +The ``dns.nameserver.DoTNameserver`` class is a ``dns.nameserver.Nameserver`` class used to make DNS-over-TLS (DoT) queries to a recursive server. .. autoclass:: dns.nameserver.DoTNameserver @@ -30,7 +30,7 @@ to make DNS-over-TLS (DoT) queries to a recursive server. The dns.nameserver.DoHNameserver Class --------------------------------------- -The ``dns.nameserver.DoHNameserver`` class is a ``dns.nameserver.Nameserver`` class use +The ``dns.nameserver.DoHNameserver`` class is a ``dns.nameserver.Nameserver`` class used to make DNS-over-HTTPS (DoH) queries to a recursive server. .. autoclass:: dns.nameserver.DoHNameserver @@ -39,7 +39,7 @@ to make DNS-over-HTTPS (DoH) queries to a recursive server. The dns.nameserver.DoQNameserver Class --------------------------------------- -The ``dns.nameserver.DoQNameserver`` class is a ``dns.nameserver.Nameserver`` class use +The ``dns.nameserver.DoQNameserver`` class is a ``dns.nameserver.Nameserver`` class used to make DNS-over-QUIC (DoQ) queries to a recursive server. .. autoclass:: dns.nameserver.DoQNameserver diff --git a/doc/whatsnew.rst b/doc/whatsnew.rst index 95fa691..07b800a 100644 --- a/doc/whatsnew.rst +++ b/doc/whatsnew.rst @@ -8,7 +8,7 @@ What's New in dnspython * The stub resolver now uses instances of ``dns.nameserver.Nameserver`` to represent remote recursive resolvers, and can communicate using - DNS over port 53, HTTPS, TLS, and QUIC. In additional to being able to specify + DNS over UDP/TCP, HTTPS, TLS, and QUIC. In additional to being able to specify an IPv4, IPv6, or HTTPS URL as a nameserver, instances of ``dns.nameserver.Nameserver`` are now permitted. |