summaryrefslogtreecommitdiff
path: root/dns/resolver.py
Commit message (Collapse)AuthorAgeFilesLines
* Change ChainingResult "rrset" to "answer"; fix typo.resolve_chainingBob Halley2020-12-211-2/+2
|
* resolve_chaining() now returns a ChainingResult object.Bob Halley2020-12-211-2/+6
|
* Separate common resolver functionality into a BaseResolver class.Bob Halley2020-08-271-62/+67
|
* pylint lintingBob Halley2020-07-311-12/+23
|
* Apply the resolver search list, domain, and ndots settings in the same wayBob Halley2020-07-271-8/+34
| | | | that the BIND stub resolver library does.
* more resolver override testingBob Halley2020-07-261-2/+1
|
* Adjust no cover pragmas to better reflect what the Azure pipeline hits/misses.Bob Halley2020-07-221-10/+10
|
* Make resolver use_edns() conform to its docstring; slightly improve ↵Bob Halley2020-07-221-1/+3
| | | | use_edns() logic.
* unify chaining codeBob Halley2020-07-211-63/+27
|
* Set EDNS default payload to 1232.Bob Halley2020-07-201-1/+2
|
* Fix resolver EDNS0 payload size when EDNS0 enabled by resolv.conf.Bob Halley2020-07-201-2/+2
| | | | [Issue #546]
* Remove unneeded str conversion; fix comment typo.Bob Halley2020-07-201-3/+4
|
* Add canonical_name() method to resolver.Bob Halley2020-07-201-0/+33
|
* rename statistics class; add documentationcache_statsBob Halley2020-07-191-3/+3
|
* cache statisticsBob Halley2020-07-191-4/+67
|
* Remove unneeded to_text/from_text in NXDOMAIN.canonical_name.Bob Halley2020-07-181-2/+2
|
* In gethostbyaddr(), remove unneeded workarounds for getfqdn().Bob Halley2020-07-061-7/+7
|
* Fix incompatibility in getfqdn() revealed by dnspython web site change.Bob Halley2020-07-061-2/+5
|
* Add dns.tsig.Key class.Brian Wellington2020-07-011-19/+4
| | | | | | | | | | | | | | | | | | | | This creates a new class to represent a TSIG key, containing name, secret, and algorithm. The keyring format is changed to be {name : key}, and the methods in dns.tsigkeyring are updated to deal with old and new formats. The Message class is updated to use dns.tsig.Key, although (to avoid breaking existing code), it stores them in the keyring field. Message.use_tsig() can accept either explicit keys, or keyrings; it will extract and/or create a key. dns.message.from_wire() can accept either a key or a keyring in the keyring parameter. If passed a key, it will now raise if the TSIG record in the message was signed with a different key. If passed a keyring containing keys (as opposed to bare secrets), it will check that the TSIG record's algorithm matches that of the key.
* increase resolver coverageBob Halley2020-07-011-2/+2
|
* add back no cover for things we cannot cover on windows without mockingBob Halley2020-07-011-8/+8
|
* expose windows resolver code to coverage testingBob Halley2020-07-011-11/+11
|
* remove ancient windows supportBob Halley2020-07-011-45/+25
|
* improve resolver coverageBob Halley2020-06-201-6/+6
|
* Construct socket.gaierror with an errno and a string, as doing just theBob Halley2020-06-181-9/+26
| | | | | | | errno doesn't cause the errno field in the exception to be set, and thus our exceptions were different and less useful than the stock ones. Adjust gethostbyaddr() to filter addresses like the system one does.
* Treat OSErrors during resolution as permanent failures, in line with otherBob Halley2020-06-171-3/+3
| | | | | | stub resolvers. Reduce default lifetime from 30 seconds to 5 seconds.
* Improve resolver coverage by:Bob Halley2020-06-161-16/+11
| | | | | | | | | Testing more stuff. Ignoring coverage of Windows as we have no way to integrate coverage data from windows test runs at this time. Ignoring other not important things.
* Take nameservers that are not IPv4/v6 addresses or https URLs out of theBob Halley2020-06-161-5/+4
| | | | | | mix. This also fixes the UnboundLocalError from [Issue #509].
* Remove more unneeded backwards compat, _winreg -> winregBob Halley2020-06-051-30/+27
|
* Minor Python 3 cleanups.Brian Wellington2020-06-031-11/+10
| | | | | | | Classes inherit from object by default; there's no need to explicitly include this. Replace super(Foo, self) with super().
* the prior fix for exception handling was still not right, missing a continueBob Halley2020-05-291-0/+1
|
* Fix resolve() NoAnswer problems from [Issue #488]Bob Halley2020-05-281-4/+12
|
* further tighten resolve() default settingsBob Halley2020-05-271-6/+8
|
* fix None pointers in LRU cache sentinelBob Halley2020-05-231-2/+3
|
* revision of truncation handlingBob Halley2020-05-221-1/+2
|
* add NXDOMAIN cachingBob Halley2020-05-211-43/+60
|
* pop() with no arguements means last, but I used it intending firstBob Halley2020-05-211-2/+2
|
* Remove dns.rdata{type,class}.to_enum.Brian Wellington2020-05-211-2/+2
| | | | | | | These methods (which convert a str/int into an enum/int) shouldn't be commonly used by external code, so don't need to exist at the module level. The make() method on the enum class (renamed from to_enum()) can still be used, and the internal callers have been updated to use it.
* move raise_on_no_error out of AnswerBob Halley2020-05-191-10/+6
|
* add missing backoff to next_nameserver() retry_with_tcp caseBob Halley2020-05-191-1/+1
|
* use to_enum()Bob Halley2020-05-191-4/+2
|
* It is self.resolver.retry_servfail, not self.retry_servfail; where were you ↵Bob Halley2020-05-191-1/+1
| | | | linters?
* add resolve_address() helper at module levelresrefactorBob Halley2020-05-191-0/+10
|
* lintingBob Halley2020-05-191-0/+12
|
* refactor resolver, extracting all business logicBob Halley2020-05-181-166/+197
|
* flake8 lintingBob Halley2020-05-151-17/+20
|
* Allow resolver-level control over the defaulting of search (default False).Bob Halley2020-05-151-30/+18
|
* Add resolver resolve(), deprecate query().Bob Halley2020-05-151-34/+81
|
* Reharmonize doc style as I think it looks betterBob Halley2020-05-101-2/+4
|
* in doco, text->str, binary->bytesBob Halley2020-05-081-7/+7
|