summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Halley <halley@dnspython.org>2023-02-25 12:01:03 -0800
committerBob Halley <halley@dnspython.org>2023-02-25 12:01:03 -0800
commite37866650cbba14ffc1947430494660ec3a405fd (patch)
tree76fce4b4f287ffed99de05a3dbcbe0a25f8f6e10
parentf7daeb87eac0a2727d5366cdff02fe08843678dd (diff)
downloaddnspython-e37866650cbba14ffc1947430494660ec3a405fd.tar.gz
Make a few nameserver changes that missed getting added to the PR.
-rw-r--r--dns/resolver.py14
-rw-r--r--doc/resolver-nameserver.rst10
-rw-r--r--doc/whatsnew.rst2
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.