Up to [cvs.NetBSD.org] / pkgsrc / net / py-dns
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.20 / (download) - annotate - [select for diffs], Sat Feb 17 10:20:45 2024 UTC (2 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2024Q1-base,
pkgsrc-2024Q1,
HEAD
Changes since 1.19: +8 -5
lines
Diff to previous 1.19 (colored) to selected 1.2 (colored)
py-dns: updated to 2.6.0 2.6.0 Dnspython 2.6.0 is now available on PyPI. See WhatãàÑÔ New for details. This release addresses the potential DoS issue discussed in the ãà×µuDoorãàpaper (CVE-2023-29483). The dnspython stub resolver is vulnerable to a potential DoS if a bad-in-some-way response from the right address and port forged by an attacker arrives before a legitimate one on the UDP port dnspython is using for that query. In this situation, dnspython might switch to querying another resolver or give up entirely, possibly denying service for that resolution.
Revision 1.19 / (download) - annotate - [select for diffs], Sun Jan 21 20:25:30 2024 UTC (2 months, 4 weeks ago) by wiz
Branch: MAIN
Changes since 1.18: +1 -1
lines
Diff to previous 1.18 (colored) to selected 1.2 (colored)
py-dns: update to 2.5.0. 2.5.0 Dnspython now uses hatchling for builds. Asynchronous destinationless sockets now work on Windows. Cython is no longer supported due to various typing issues. Dnspython now explicitly canonicalizes IPv4 and IPv6 addresses. Previously it was possible for non-canonical IPv6 forms to be stored in a AAAA address, which would work correctly but possibly cause problmes if the address were used as a key in a dictionary. The number of messages in a section can be retrieved with section_count(). Truncation preferences for messages can be specified. The length of a message can be automatically prepended when rendering. dns.message.create_response() automatically adds padding when required by RFC 8467. The TLS verify parameter is now supported by dns.query.tls(), and the DoH and DoT Nameserver subclasses. The MutableMapping used to store content in a zone may now be specified by a factory when subclassing. Factories may also be provided for writable verisons and immutable versions. dns.name.Name now has predecessor() and successor() methods implementing RFC 4471. QUIC has had a number of bug fixes and also now supports session tickets for faster session resumption. The NSEC3 class now has a next_name() method for retrieving the next name as a dns.name.Name. Windows WMI interface detection should be more robust.
Revision 1.18 / (download) - annotate - [select for diffs], Sat Oct 28 19:57:12 2023 UTC (5 months, 3 weeks ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2023Q4-base,
pkgsrc-2023Q4
Changes since 1.17: +141 -3
lines
Diff to previous 1.17 (colored) to selected 1.2 (colored)
python/wheel.mk: simplify a lot, and switch to 'installer' for installation This follows the recommended bootstrap method (flit_core, build, installer). However, installer installs different files than pip, so update PLISTs for all packages using wheel.mk and bump their PKGREVISIONs.
Revision 1.17 / (download) - annotate - [select for diffs], Wed Jul 19 10:56:21 2023 UTC (9 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2023Q3-base,
pkgsrc-2023Q3
Changes since 1.16: +25 -140
lines
Diff to previous 1.16 (colored) to selected 1.2 (colored)
py-dns: update to 2.4.0. Dnspython 2.4.0 is now available on PyPI. See WhatãàÑÔ New! Thank you to all the contributors to this release. Special thanks to Jakob Schlyter for writing zone signing code and also refactoring the DNSSEC code to allow new algorithms to be added more easily. Dnspython 2.4.0 requires Python 3.8 or later. Also note that this release drops support for curio and requests (DoH is now done exclusively with httpx).
Revision 1.16 / (download) - annotate - [select for diffs], Wed May 3 18:45:05 2023 UTC (11 months, 2 weeks ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2023Q2-base,
pkgsrc-2023Q2
Changes since 1.15: +21 -25
lines
Diff to previous 1.15 (colored) to selected 1.2 (colored)
py-dns: update to 2.3.0. 2.3.0 Python 3.7 or newer is required. Type annotations are now integrated with the source code and cover far more of the library. The get_soa() method has been added to dns.zone.Zone. The minimum TLS version is now 1.2. EDNS padding is now supported. Messages with EDNS enabled and with a non-zero pad option will be automatically padded appropriately when converted to wire format. dns.zone.from_text() and dns.zone.from_file() now have an allow_directives parameter to allow finer control over how directives in zonefiles are processed. A preliminary implementation of DNS-over-QUIC has been added, and will be available if the aioquic library is present. See dns.query.quic(), dns.asyncquery.quic(), and examples/doq.py for more info. This API is subject to change in future releases. For asynchronous I/O, both asyncio and Trio are supported, but Curio is not. DNSSEC signing support has been added to the dns.dnssec module, along with a number of functions to help generate DS, CDS, and CDNSKEY RRsets. Thank you very much Jakob Schlyter! Curio asynchronous I/O support is deprecated as of this release and will be removed in a future release. The resolver object's nameserver field is planned to become a property in dnspython 2.4. Writing to this field other than by direct assignment is deprecated, and so is depending on the mutability and form of the iterable returned when it is read.
Revision 1.15 / (download) - annotate - [select for diffs], Tue Aug 23 22:04:09 2022 UTC (19 months, 3 weeks ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2023Q1-base,
pkgsrc-2023Q1,
pkgsrc-2022Q4-base,
pkgsrc-2022Q4,
pkgsrc-2022Q3-base,
pkgsrc-2022Q3
Changes since 1.14: +130 -15
lines
Diff to previous 1.14 (colored) to selected 1.2 (colored)
py-dns: update to 2.2.1. Python 3 only, upstream does not maintain a changelog any longer.
Revision 1.14 / (download) - annotate - [select for diffs], Fri Apr 17 11:24:43 2020 UTC (4 years ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2022Q2-base,
pkgsrc-2022Q2,
pkgsrc-2022Q1-base,
pkgsrc-2022Q1,
pkgsrc-2021Q4-base,
pkgsrc-2021Q4,
pkgsrc-2021Q3-base,
pkgsrc-2021Q3,
pkgsrc-2021Q2-base,
pkgsrc-2021Q2,
pkgsrc-2021Q1-base,
pkgsrc-2021Q1,
pkgsrc-2020Q4-base,
pkgsrc-2020Q4,
pkgsrc-2020Q3-base,
pkgsrc-2020Q3,
pkgsrc-2020Q2-base,
pkgsrc-2020Q2
Changes since 1.13: +16 -5
lines
Diff to previous 1.13 (colored) to selected 1.2 (colored)
py-dns: updated to 1.16.0 1.16.0 is mostly a bug fix release. It switches from the unmaintained pycrypto to pycryptodome or pycryptodomex. It has some notable new features, including support for Cython, EDNS0 client subnet, the OPENPGPKEY RR, and Python type signatures.
Revision 1.13 / (download) - annotate - [select for diffs], Fri Nov 11 09:39:05 2016 UTC (7 years, 5 months ago) by fhajny
Branch: MAIN
CVS Tags: pkgsrc-2020Q1-base,
pkgsrc-2020Q1,
pkgsrc-2019Q4-base,
pkgsrc-2019Q4,
pkgsrc-2019Q3-base,
pkgsrc-2019Q3,
pkgsrc-2019Q2-base,
pkgsrc-2019Q2,
pkgsrc-2019Q1-base,
pkgsrc-2019Q1,
pkgsrc-2018Q4-base,
pkgsrc-2018Q4,
pkgsrc-2018Q3-base,
pkgsrc-2018Q3,
pkgsrc-2018Q2-base,
pkgsrc-2018Q2,
pkgsrc-2018Q1-base,
pkgsrc-2018Q1,
pkgsrc-2017Q4-base,
pkgsrc-2017Q4,
pkgsrc-2017Q3-base,
pkgsrc-2017Q3,
pkgsrc-2017Q2-base,
pkgsrc-2017Q2,
pkgsrc-2017Q1-base,
pkgsrc-2017Q1,
pkgsrc-2016Q4-base,
pkgsrc-2016Q4
Changes since 1.12: +7 -4
lines
Diff to previous 1.12 (colored) to selected 1.2 (colored)
Update net/py-dns to 1.15.0. * IDNA 2008 support is now available if the "idna" module has been installed and IDNA 2008 is requested. The default IDNA behavior is still IDNA 2003. The new IDNA codec mechanism is currently only useful for direct calls to dns.name.from_text() or dns.name.from_unicode(), but in future releases it will be deployed throughout dnspython, e.g. so that you can read a masterfile with an IDNA 2008 codec in force. * By default, dns.name.to_unicode() is not strict about which version of IDNA the input complies with. Strictness can be requested by using one of the strict IDNA codecs. * Add AVC RR support. * Some problems with newlines in various output modes have been addressed. * dns.name.to_text() now returns text and not bytes on Python 3.x * More miscellaneous fixes for the Python 2/3 codeline merge.
Revision 1.12 / (download) - annotate - [select for diffs], Thu Jun 30 17:45:04 2016 UTC (7 years, 9 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2016Q3-base,
pkgsrc-2016Q3
Changes since 1.11: +34 -1
lines
Diff to previous 1.11 (colored) to selected 1.2 (colored)
Updated py-dns to 1.14.0. 2016-05-27 Bob Halley <halley@dnspython.org> * (Version 1.14.0 released) * Add CSYNC RR support * Fix bug in LOC which destroyed N/S and E/W distinctions within a degree of the equator or prime merdian respectively. * Misc. fixes to deal with fallout from the Python 2 & 3 merge. [issue #156], [issue #157], [issue #158], [issue #159], [issue #160]. * Running with python optimization on caused issues when stripped docstrings were referenced. [issue #154] * dns.zone.from_text() erroneously required the zone to be provided. [issue #153] 2016-05-13 Bob Halley <halley@dnspython.org> * dns/message.py (make_query): Setting any value which implies EDNS will turn on EDNS if 'use_edns' has not been specified. 2016-05-12 Bob Halley <halley@dnspython.org> * TSIG signature algorithm setting was broken by the Python 2 and Python 3 code line merge. Fixed. 2016-05-10 Bob Halley <halley@dnspython.org> * (Version 1.13.0 released) 2016-05-10 Bob Halley <halley@dnspython.org> * Dropped support for Python 2.4 and 2.5. * Zone origin can be specified as a string. * Support string representation for all DNSExceptions. * Use setuptools not distutils * A number of Unicode name bug fixes. * Added support for CAA, CDS, CDNSKEY, EUI48, EUI64, and URI RR types. * Names now support the pickle protocol. * NameDicts now keep the max-depth value correct, and update properly. * resolv.conf processing rejects lines with too few tokens. * Ports can be specified per-nameserver in the stub resolver. 2016-05-03 Arthur Gautier * Single source support for python 2.6+ and 3.3+ 2014-09-04 Bob Halley <halley@dnspython.org> * Comparing two rdata is now always done by comparing the binary data of the DNSSEC digestable forms. This corrects a number of errors where dnspython's rdata comparison order was not the DNSSEC order. * Add CAA implementation. Thanks to Brian Wellington for the patch.
Revision 1.11 / (download) - annotate - [select for diffs], Fri Jan 17 22:48:53 2014 UTC (10 years, 3 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2016Q2-base,
pkgsrc-2016Q2,
pkgsrc-2016Q1-base,
pkgsrc-2016Q1,
pkgsrc-2015Q4-base,
pkgsrc-2015Q4,
pkgsrc-2015Q3-base,
pkgsrc-2015Q3,
pkgsrc-2015Q2-base,
pkgsrc-2015Q2,
pkgsrc-2015Q1-base,
pkgsrc-2015Q1,
pkgsrc-2014Q4-base,
pkgsrc-2014Q4,
pkgsrc-2014Q3-base,
pkgsrc-2014Q3,
pkgsrc-2014Q2-base,
pkgsrc-2014Q2,
pkgsrc-2014Q1-base,
pkgsrc-2014Q1
Changes since 1.10: +10 -16
lines
Diff to previous 1.10 (colored) to selected 1.2 (colored)
Update to 1.11.1: * (Version 1.11.1 released) * dns/tsigkeyring.py (to_text): we want keyname.to_text(), not dns.name.to_text(keyname). Thangs to wangwang for the fix. * dns/tsig.py (sign): multi-message TSIGs were broken for algorithms other than HMAC-MD5 because we weren't passing the right digest module to the HMAC code. Thanks to salzmdan for reporting the bug. * dns/dnssec.py (_find_candidate_keys): we tried to extract the key from the wrong variable name. Thanks to Andrei Fokau for the fix. * dns/resolver.py: we want 'self.retry_servfail' not just retry_servfail. Reported by many, thanks! Thanks to Jeffrey C. Ollie for the fix. * tests/grange.py: fix tests to use older-style print formatting for backwards compatibility with python 2.4. Thanks to Jeffrey C. Ollie for the fix. * (Version 1.11.0 released) * dns/name.py (Name.to_wire): Do not add items with offsets >= 2^14 to the compression table. Thanks to Casey Deccio for discovering this bug. * dns/ipv6.py (inet_ntoa): We now comply with RFC 5952 section 5.2.2, by *not* using the :: syntax to shorten just one 16-bit field. Thanks to David Waitzman for reporting the bug and suggesting the fix. * lock caches in case they are shared * raise YXDOMAIN if we see one * do not print empty rdatasets * Add contributed $GENERATE support (thanks uberj) * Remove DNSKEY keytag uniqueness assumption (RFC 4034, section 8) (thanks James Dempsey) * added set_flags() method to dns.resolver.Resolver * added support for TLSA RR * dns/rdtypes/ANY/NSEC3.py (NSEC3.from_text): The NSEC3 from_text() method could erroneously emit empty bitmap windows (i.e. windows with a count of 0 bytes); such bitmaps are illegal. * (Version 1.10.0 released) * dns/message.py (make_query): All EDNS values may now be specified when calling make_query() * dns/query.py: Specifying source_port had no effect if source was not specified. We now use the appropriate wildcard source in that case. * dns/resolver.py (Resolver.query): source_port may now be specified. * dns/resolver.py (Resolver.query): Switch to TCP when a UDP response is truncated. Handle nameservers that serve on UDP but not TCP. * dns/zone.py (from_xfr): dns.zone.from_xfr() now takes a 'check_origin' parameter which defaults to True. If set to False, then dnspython will not make origin checks on the zone. Thanks to Carlos Perez for the report. * dns/rdtypes/ANY/SSHFP.py (SSHFP.from_text): Allow whitespace in the text string. Thanks to Jan Andres for the report and the patch. * dns/message.py (from_wire): dns.message.from_wire() now takes an 'ignore_trailing' parameter which defaults to False. If set to True, then trailing junk will be ignored instead of causing TrailingJunk to be raised. Thanks to Shane Huntley for contributing the patch. * dns/resolver.py: Added LRUCache. In this cache implementation, the cache size is limited to a user-specified number of nodes, and when adding a new node to a full cache the least-recently used node is removed. * dns/resolver.py: dns.resolver.override_system_resolver() overrides the socket module's versions of getaddrinfo(), getnameinfo(), getfqdn(), gethostbyname(), gethostbyname_ex() and gethostbyaddr() with an implementation which uses a dnspython stub resolver instead of the system's stub resolver. This can be useful in testing situations where you want to control the resolution behavior of python code without having to change the system's resolver settings (e.g. /etc/resolv.conf). dns.resolver.restore_system_resolver() undoes the change. * dns/ipv4.py: dnspython now provides its own, stricter, versions of IPv4 inet_ntoa() and inet_aton() instead of using the OS's versions. * dns/ipv6.py: inet_aton() now bounds checks embedded IPv4 addresses more strictly. Also, now only dns.exception.SyntaxError can be raised on bad input. * Old DNSSEC types (KEY, NXT, and SIG) have been removed. * Bounds checking of slices in rdata wire processing is now more strict, and bounds errors (e.g. we got less data than was expected) now raise dns.exception.FormError rather than IndexError.
Revision 1.10 / (download) - annotate - [select for diffs], Sun Apr 8 20:21:53 2012 UTC (12 years ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2013Q4-base,
pkgsrc-2013Q4,
pkgsrc-2013Q3-base,
pkgsrc-2013Q3,
pkgsrc-2013Q2-base,
pkgsrc-2013Q2,
pkgsrc-2013Q1-base,
pkgsrc-2013Q1,
pkgsrc-2012Q4-base,
pkgsrc-2012Q4,
pkgsrc-2012Q3-base,
pkgsrc-2012Q3,
pkgsrc-2012Q2-base,
pkgsrc-2012Q2
Changes since 1.9: +2 -2
lines
Diff to previous 1.9 (colored) to selected 1.2 (colored)
All supported python versions in pkgsrc support eggs, so remove ${PLIST.eggfile} from PLISTs and support code from lang/python.
Revision 1.9 / (download) - annotate - [select for diffs], Mon Oct 31 12:41:11 2011 UTC (12 years, 5 months ago) by obache
Branch: MAIN
CVS Tags: pkgsrc-2012Q1-base,
pkgsrc-2012Q1,
pkgsrc-2011Q4-base,
pkgsrc-2011Q4
Changes since 1.8: +2 -1
lines
Diff to previous 1.8 (colored) to selected 1.2 (colored)
* Convert PYDISTUTILSPKG to register egg-info. Bump PKGREVISION.
Revision 1.8 / (download) - annotate - [select for diffs], Mon Jul 18 16:10:32 2011 UTC (12 years, 9 months ago) by gson
Branch: MAIN
CVS Tags: pkgsrc-2011Q3-base,
pkgsrc-2011Q3
Changes since 1.7: +4 -1
lines
Diff to previous 1.7 (colored) to selected 1.2 (colored)
Update net/py-dns to 1.9.4. Changes since 1.8.0: 2011-03-24 Bob Halley <halley@dnspython.org> * dns/rdata.py (Rdata._wire_cmp): We need to specify no compression and an origin to _wire_cmp() in case names in the rdata are relative names. * dns/rdtypes/ANY/SIG.py (SIG._cmp): Add missing 'import struct'. Thanks to Arfrever Frehtes Taifersar Arahesis for reporting the problem. 2011-03-24 Bob Halley <halley@dnspython.org> * (Version 1.9.3 released) 2011-03-22 Bob Halley <halley@dnspython.org> * dns/resolver.py: a boolean parameter, 'raise_on_no_answer', has been added to the query() methods. In no-error, no-data situations, this parameter determines whether NoAnswer should be raised or not. If True, NoAnswer is raised. If False, then an Answer() object with a None rrset will be returned. * dns/resolver.py: Answer() objects now have a canonical_name field. 2011-01-11 Bob Halley <halley@dnspython.org> * Dnspython was erroneously doing case-insensitive comparisons of the names in NSEC and RRSIG RRs. Thanks to Casey Deccio for reporting this bug. 2010-12-17 Bob Halley <halley@dnspython.org> * dns/message.py (_WireReader._get_section): use "is" and not "==" when testing what section an RR is in. Thanks to James Raftery for reporting this bug. 2010-12-10 Bob Halley <halley@dnspython.org> * dns/resolver.py (Resolver.query): disallow metaqueries. * dns/rdata.py (Rdata.__hash__): Added a __hash__ method for rdata. 2010-11-23 Bob Halley <halley@dnspython.org> * (Version 1.9.2 released) 2010-11-23 Bob Halley <halley@dnspython.org> * dns/dnssec.py (_need_pycrypto): DSA and RSA are modules, not functions, and I didn't notice because the test suite masked the bug! *sigh* 2010-11-22 Bob Halley <halley@dnspython.org> * (Version 1.9.1 released) 2010-11-22 Bob Halley <halley@dnspython.org> * dns/dnssec.py: the "from" style import used to get DSA from PyCrypto trashed a DSA constant. Now a normal import is used to avoid namespace contamination. 2010-11-20 Bob Halley <halley@dnspython.org> * (Version 1.9.0 released) 2010-11-07 Bob Halley <halley@dnspython.org> * dns/dnssec.py: Added validate() to do basic DNSSEC validation (requires PyCrypto). Thanks to Brian Wellington for the patch. * dns/hash.py: Hash compatibility handling is now its own module. 2010-10-31 Bob Halley <halley@dnspython.org> * dns/resolver.py (zone_for_name): A query name resulting in a CNAME or DNAME response to a node which had an SOA was incorrectly treated as a zone origin. In these cases, we should just look higher. Thanks to Gert Berger for reporting this problem. * Added zonediff.py to examples. This program compares two zones and shows the differences either in diff-like plain text, or HTML. Thanks to Dennis Kaarsemaker for contributing this useful program. 2010-10-27 Bob Halley <halley@dnspython.org> * Incorporate a patch to use poll() instead of select() by default on platforms which support it. Thanks to Peter Schüller and Spotify for the contribution. 2010-10-17 Bob Halley <halley@dnspython.org> * Python prior to 2.5.2 doesn't compute the correct values for HMAC-SHA384 and HMAC-SHA512. We now detect attempts to use them and raise NotImplemented if the Python version is too old. Thanks to Kevin Chen for reporting the problem. * Various routines that took the string forms of rdata types and classes did not permit the strings to be Unicode strings. Thanks to Ryan Workman for reporting the issue. * dns/tsig.py: Added symbolic constants for the algorithm strings. E.g. you can now say dns.tsig.HMAC_MD5 instead of "HMAC-MD5.SIG-ALG.REG.INT". Thanks to Cillian Sharkey for suggesting this improvement. * dns/tsig.py (get_algorithm): fix hashlib compatibility; thanks to Kevin Chen for the patch. * dns/dnssec.py: Added key_id() and make_ds(). * dns/message.py: message.py needs to import dns.edns since it uses it. 2010-05-04 Bob Halley <halley@dnspython.org> * dns/rrset.py (RRset.__init__): "covers" was not passed to the superclass __init__(). Thanks to Shanmuga Rajan for reporting the problem. 2010-03-10 Bob Halley <halley@dnspython.org> * The TSIG algorithm value was passed to use_tsig() incorrectly in some cases. Thanks to 'ducciovigolo' for reporting the problem.
Revision 1.7 / (download) - annotate - [select for diffs], Sat Oct 31 02:57:30 2009 UTC (14 years, 5 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2011Q2-base,
pkgsrc-2011Q2,
pkgsrc-2011Q1-base,
pkgsrc-2011Q1,
pkgsrc-2010Q4-base,
pkgsrc-2010Q4,
pkgsrc-2010Q3-base,
pkgsrc-2010Q3,
pkgsrc-2010Q2-base,
pkgsrc-2010Q2,
pkgsrc-2010Q1-base,
pkgsrc-2010Q1,
pkgsrc-2009Q4-base,
pkgsrc-2009Q4
Changes since 1.6: +22 -1
lines
Diff to previous 1.6 (colored) to selected 1.2 (colored)
Update to 1.7.1: 2009-06-19 Bob Halley <halley@dnspython.org> * (Version 1.7.1 released) 2009-06-19 Bob Halley <halley@dnspython.org> * DLV.py was omitted from the kit * Negative prerequisites were not handled correctly in _get_section(). 2009-06-19 Bob Halley <halley@dnspython.org> * (Version 1.7.0 released) 2009-06-19 Bob Halley <halley@dnspython.org> * On Windows, the resolver set the domain incorrectly. Thanks to Brandon Carpenter for reporting this bug. * Added a to_digestable() method to rdata classes; it returns the digestable form (i.e. DNSSEC canonical form) of the rdata. For most rdata types this is the same uncompressed wire form. For certain older DNS RR types, however, domain names in the rdata are downcased. * Added support for the HIP RR type. 2009-06-18 Bob Halley <halley@dnspython.org> * Added support for the DLV RR type. * Added various DNSSEC related constants (e.g. algorithm identifiers, flag values). * dns/tsig.py: Added support for BADTRUNC result code. * dns/query.py (udp): When checking that addresses are the same, use the binary form of the address in the comparison. This ensures that we don't treat addresses as different if they have equivalent but differing textual representations. E.g. "1:00::1" and "1::1" represent the same address but are not textually equal. Thanks to Kim Davies for reporting this bug. * The resolver's query() method now has an optional 'source' parameter, allowing the source IP address to be specified. Thanks to Alexander Lind for suggesting the change and sending a patch. * Added NSEC3 and NSEC3PARAM support. 2009-06-17 Bob Halley <halley@dnspython.org> * Fixed NSEC.to_text(), which was only printing the last window. Thanks to Brian Wellington for finding the problem and fixing it. 2009-03-30 Bob Halley <halley@dnspython.org> * dns/query.py (xfr): Allow UDP IXFRs. Use "one_rr_per_rrset" mode when doing IXFR. 2009-03-30 Bob Halley <halley@dnspython.org> * Add "one_rr_per_rrset" mode switch to methods which parse messages from wire format (e.g. dns.message.from_wire(), dns.query.udp(), dns.query.tcp()). If set, each RR read is placed in its own RRset (instead of being coalesced). 2009-03-30 Bob Halley <halley@dnspython.org> * Added EDNS option support. 2008-10-16 Bob Halley <halley@dnspython.org> * dns/rdtypes/ANY/DS.py: The from_text() parser for DS RRs did not allow multiple Base64 chunks. Thanks to Rakesh Banka for finding this bug and submitting a patch. 2008-10-08 Bob Halley <halley@dnspython.org> * Add entropy module. * When validating TSIGs, we need to use the absolute name. 2008-06-03 Bob Halley <halley@dnspython.org> * dns/message.py (Message.set_rcode): The mask used preserved the extended rcode, instead of everything else in ednsflags. * dns/message.py (Message.use_edns): ednsflags was not kept coherent with the specified edns version. 2008-02-06 Bob Halley <halley@dnspython.org> * dns/ipv6.py (inet_aton): We could raise an exception other than dns.exception.SyntaxError in some cases. * dns/tsig.py: Raise an exception when the peer has set a non-zero TSIG error.
Revision 1.6 / (download) - annotate - [select for diffs], Sun Jun 14 18:09:40 2009 UTC (14 years, 10 months ago) by joerg
Branch: MAIN
CVS Tags: pkgsrc-2009Q3-base,
pkgsrc-2009Q3,
pkgsrc-2009Q2-base,
pkgsrc-2009Q2
Changes since 1.5: +1 -5
lines
Diff to previous 1.5 (colored) to selected 1.2 (colored)
Remove @dirrm entries from PLISTs
Revision 1.5 / (download) - annotate - [select for diffs], Fri Mar 9 09:41:36 2007 UTC (17 years, 1 month ago) by gson
Branch: MAIN
CVS Tags: pkgsrc-2009Q1-base,
pkgsrc-2009Q1,
pkgsrc-2008Q4-base,
pkgsrc-2008Q4,
pkgsrc-2008Q3-base,
pkgsrc-2008Q3,
pkgsrc-2008Q2-base,
pkgsrc-2008Q2,
pkgsrc-2008Q1-base,
pkgsrc-2008Q1,
pkgsrc-2007Q4-base,
pkgsrc-2007Q4,
pkgsrc-2007Q3-base,
pkgsrc-2007Q3,
pkgsrc-2007Q2-base,
pkgsrc-2007Q2,
pkgsrc-2007Q1-base,
pkgsrc-2007Q1,
cwrapper,
cube-native-xorg-base,
cube-native-xorg
Changes since 1.4: +18 -0
lines
Diff to previous 1.4 (colored) to selected 1.2 (colored)
Update py-dns to 1.5.0. Summary of changes since 1.3.3: * dns/rdtypes/IN/DHCID.py: Added support for the DHCID RR type. * dns/query.py (udp): Messages from unexpected sources can now be ignored by setting ignore_unexpected to True. * dns/query.py (udp): When raising UnexpectedSource, add more detail about what went wrong to the exception. * dns/message.py (Message.use_edns): add reasonable defaults for the ednsflags, payload, and request_payload parameters. * dns/message.py (Message.want_dnssec): add a convenience method for enabling/disabling the "DNSSEC desired" flag in requests. * dns/message.py (make_query): add "use_edns" and "want_dnssec" parameters. * dns/resolver.py (Resolver.read_resolv_conf): If /etc/resolv.conf doesn't exist, just use the default resolver configuration (i.e. the same thing we would have used if resolv.conf had existed and been empty). * dns/resolver.py (Resolver._config_win32_fromkey): fix cut-and-paste error where we passed the wrong variable to self._config_win32_search(). Thanks to David Arnold for finding the bug and submitting a patch. * dns/resolver.py (Answer): Add more support for the sequence protocol, forwarding requests to the answer object's rrset. E.g. "for a in answer" is equivalent to "for a in answer.rrset", "answer[i]" is equivalent to "answer.rrset[i]", and "answer[i:j]" is equivalent to "answer.rrset[i:j]". * dns/query.py (xfr): Add IXFR support. * dns/rdtypes/IN/IPSECKEY.py: Added support for the IPSECKEY RR type. * dns/rdtypes/ANY/SPF.py: Added support for the SPF RR type. * (Version 1.4.0 released) * dns/rrset.py (RRset.to_rdataset): Added a convenience method to convert an rrset into an rdataset. * Added dns.e164.query(). This function can be used to look for NAPTR RRs for a specified number in several domains, e.g.: dns.e164.query('16505551212', ['e164.dnspython.org.', 'e164.arpa.']) * dns/resolver.py (Resolver.query): The resolver deleted from a list while iterating it, which makes the iterator unhappy. * dns/resolver.py (Resolver.query): The resolver needlessly delayed responses for successful queries. * dns/rdata.py: added a validate() method to the rdata class. If you change an rdata by assigning to its fields, it is a good idea to call validate() when you are done making changes. For example, if 'r' is an MX record and then you execute: r.preference = 100000 # invalid, because > 65535 r.validate() The validation will fail and an exception will be raised. * dns/ttl.py: TTLs are now bounds checked to be within the closed interval [0, 2^31 - 1]. * The BIND 8 TTL syntax is now accepted in the SOA refresh, retry, expire, and minimum fields, and in the original_ttl field of SIG and RRSIG records. * dns/resolver.py: The windows registry irritatingly changes the list element delimiter in between ' ' and ',' (and vice-versa) in various versions of windows. We now cope by always looking for either one (' ' first). * dns/e164.py: Added routines to convert between E.164 numbers and their ENUM domain name equivalents. * dns/reversename.py: Added routines to convert between IPv4 and IPv6 addresses and their DNS reverse-map equivalents. * dns/rdtypes/ANY/LOC.py (_tuple_to_float): The sign was lost when converting a tuple into a float, which broke conversions of south latitudes and west longitudes. * dns/zone.py: The 'origin' parameter to from_text() and from_file() is now optional. If not specified, dnspython will use the first $ORIGIN in the text as the zone's origin. * dns/zone.py: Sanity checks of the zone's origin node can now be disabled. * dns/name.py: Preliminary Unicode support has been added for domain names. Running dns.name.from_text() on a Unicode string will now encode each label using the IDN ACE encoding. The to_unicode() method may be used to convert a dns.name.Name with IDN ACE labels back into a Unicode string. This functionality requires Python 2.3 or greater. * (Version 1.3.5 released) * dns/zone.py: Zone.iterate_rdatasets() and Zone.iterate_rdatas() did not have a default rdtype of dns.rdatatype.ANY as their docstrings said they did. They do now. * dns/name.py: Added the parent() method, which returns the parent of a name. * dns/resolver.py: Added zone_for_name() helper, which returns the name of the zone which contains the specified name. * dns/resolver.py: Added get_default_resolver(), which returns the default resolver, initializing it if necessary. * dns/resolver.py (Resolver._compute_timeout): If time goes backwards a little bit, ignore it. * (Version 1.3.4 released) * dns/message.py (make_response): Trying to respond to a response threw a NameError while trying to throw a FormErr since it used the wrong name for the FormErr exception. * dns/query.py (_connect): We needed to ignore EALREADY too. * dns/query.py: Optional "source" and "source_port" parameters have been added to udp(), tcp(), and xfr(). Thanks to Ralf Weber for suggesting the change and providing a patch. * dns/query.py: The requirement that the "where" parameter be an IPv4 or IPv6 address is now documented. * dns/resolver.py: The resolver now does exponential backoff each time it runs through all of the nameservers. * dns/resolver.py: rcodes which indicate a nameserver is likely to be a "permanent failure" for a query cause the nameserver to be removed from the mix for that query.
Revision 1.4 / (download) - annotate - [select for diffs], Sat Apr 9 16:50:03 2005 UTC (19 years ago) by gson
Branch: MAIN
CVS Tags: pkgsrc-2006Q4-base,
pkgsrc-2006Q4,
pkgsrc-2006Q3-base,
pkgsrc-2006Q3,
pkgsrc-2006Q2-base,
pkgsrc-2006Q2,
pkgsrc-2006Q1-base,
pkgsrc-2006Q1,
pkgsrc-2005Q4-base,
pkgsrc-2005Q4,
pkgsrc-2005Q3-base,
pkgsrc-2005Q3,
pkgsrc-2005Q2-base,
pkgsrc-2005Q2
Changes since 1.3: +21 -0
lines
Diff to previous 1.3 (colored) to selected 1.2 (colored)
Update py-dns to 1.3.3. Summary of changes since 1.2.0: * dns/rdtypes/ANY/TXT.py (TXT.from_text): The masterfile parser incorrectly rejected TXT records where a value was not quoted. * dns/message.py: Added make_response(), which creates a skeletal response for the specified query. Added opcode() and set_opcode() convenience methods to the Message class. Added the request_payload attribute to the Message class. * dns/zone.py (from_xfr): dns.zone.from_xfr() in relativization mode incorrectly set zone.origin to the empty name. * dns/name.py (Name.to_wire): The 'file' parameter to Name.to_wire() is now optional; if omitted, the wire form will be returned as the value of the function. * dns/message.py (Message.find_rrset): find_rrset() now uses an index, vastly improving the from_wire() performance of large messages such as zone transfers. * dns/query.py: sending queries to a nameserver via IPv6 now works. * dns/inet.py (af_for_address): Add af_for_address(), which looks at a textual-form address and attempts to determine which address family it is. * dns/query.py: the default for the 'af' parameter of the udp(), tcp(), and xfr() functions has been changed from AF_INET to None, which causes dns.inet.af_for_address() to be used to determine the address family. If dns.inet.af_for_address() can't figure it out, we fall back to AF_INET and hope for the best. * dns/rdtypes/ANY/NSEC.py (NSEC.from_text): The NSEC text format does not allow specifying types by number, so we shouldn't either. * dns/renderer.py: the renderer module didn't import random, causing an exception to be raised if a query id wasn't provided when a Renderer was created. * dns/resolver.py (Resolver.query): the resolver wasn't catching dns.exception.Timeout, so a timeout erroneously caused the whole resolution to fail instead of just going on to the next server. * dns/rdtypes/ANY/LOC.py (LOC.from_text): LOC milliseconds values were converted incorrectly if the length of the milliseconds string was less than 3. * dns/update.py (Update.delete): We erroneously specified a "deleting" value of dns.rdatatype.NONE instead of dns.rdataclass.NONE when the thing being deleted was either an Rdataset instance or an Rdata instance. * dns/rdtypes/ANY/SSHFP.py: Added support for the proposed SSHFP RR type. * dns/rdata.py (from_text): The masterfile reader did not accept the unknown RR syntax when used with a known RR type. * dns/name.py (from_text): dns.name.from_text() did not raise an exception if a backslash escape ended prematurely. * dns/zone.py (_MasterReader._rr_line): The masterfile reader erroneously treated lines starting with leading whitespace but not having any RR definition as an error. It now treats them like a blank line (which is not an error). * Added support for new DNSSEC types RRSIG, NSEC, and DNSKEY. * dns/query.py (_connect): Windows returns EWOULDBLOCK instead of EINPROGRESS when trying to connect a nonblocking socket. * dns/rdtypes/ANY/LOC.py (LOC.to_wire): We encoded and decoded LOC incorrectly, since we were interpreting the values of altitiude, size, hprec, and vprec in meters instead of centimeters. * dns/rdtypes/IN/WKS.py (WKS.from_wire): The WKS protocol value is encoded with just one octet, not two! * dns/resolver.py (Cache.maybe_clean): The cleaner deleted items from the dictionary while iterating it, causing a RuntimeError to be raised. Thanks to Mark R. Levinson for the bug report, regression test, and fix.
Revision 1.3 / (download) - annotate - [select for diffs], Sun Sep 14 16:43:53 2003 UTC (20 years, 7 months ago) by recht
Branch: MAIN
CVS Tags: pkgsrc-2005Q1-base,
pkgsrc-2005Q1,
pkgsrc-2004Q4-base,
pkgsrc-2004Q4,
pkgsrc-2004Q3-base,
pkgsrc-2004Q3,
pkgsrc-2004Q2-base,
pkgsrc-2004Q2,
pkgsrc-2004Q1-base,
pkgsrc-2004Q1,
pkgsrc-2003Q4-base,
pkgsrc-2003Q4
Changes since 1.2: +65 -2
lines
Diff to previous 1.2 (colored)
hange extension.mk to also install optimized files for distutils packages. Inspired by FreeBSD "ports". Fix the PLISTs accordingly. Also, while at it, remove now obsolete compileall.py calls in post-install targets and insure that extension.mk is in included before builinlinks of other Python modules. Discussed with/ok'ed by drochner@.
Revision 1.2 / (download) - annotate - [selected], Mon Aug 18 04:02:47 2003 UTC (20 years, 8 months ago) by gson
Branch: MAIN
Changes since 1.1: +8 -0
lines
Diff to previous 1.1 (colored)
Update py-dns to 1.1.0. Summary of changes from 1.0.0: * Message sections are now lists of RRsets, not lists of nodes. * Nodes no longer have names; owner names are associated with nodes in the Zone object's nodes dictionary. * Many tests have been added to the test suite; dnspython 1.0.0 had 47 tests, 1.1.0 has 275. The improved testing uncovered a number of bugs, all of which have been fixed. * The NameDict class provides a dictionary whose keys are DNS names. In addition to behaving like a normal Python dictionary, it also provides the get_deepest_match() method. If, for example, you had a dictionary containing the keys foo.com and com, then get_deepest_match() of the name a.b.foo.com would match the foo.com key. * A new Renderer class for those applications which want finer control over the DNS wire format message generation process. * Support for a "TooBig" exception if the size of wire format output exceeds a specified limit. * Zones now have find_rrset() and find_rdataset() convenience methods. They let you retrieve rdata with the specified name and type in one call, e.g.: rrset = zone.find_rrset('foo', 'mx') * Other new zone convenience methods include: find_node(), delete_node(), delete_rdataset(), replace_rdataset(), iterate_rdatasets(), and iterate_rdatas(). * get_ variants of find_ methods are provided; the difference is that get_ methods return None if the desired object doesn't exist, whereas the find_ methods raise an exception. * Zones now have a to_file() method. * The message and zone from_file() methods allow Unicode filenames on platforms (and versions of python) which support them. Universal newline support is also used if available. * The Zone class now implements more of the standard mapping interface. E.g. you can say zone.keys(), zone.get('name'), zone.iteritems(), etc. __iter__() has been changed to iterate the keys rather than values to match the standard mapping interface's behavior. * Rdatasets support more set operations * Zone and Node factories may be specified, allowing applications to subclass Zone or Node and yet still use the algorithms which build zones from master files or AXFR data. * dns.ipv6.inet_ntoa() now minimizes the text representation of IPv6 addresses in the usual way, e.g. "0000:0000:0000:0000:0000:0000:0000:0001" is minimized to "::1". * dns.query functions now take an optional address family parameter. All known bugs from 1.0.0 are fixed in this release.
Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Sun Jun 29 23:39:30 2003 UTC (20 years, 9 months ago) by gson
Branch: TNF
CVS Tags: pkgsrc-base
Changes since 1.1: +0 -0
lines
Diff to previous 1.1 (colored) to selected 1.2 (colored)
Import dnspython-1.0.0b3. dnspython is a DNS toolkit for Python. It provides both high and low level access to DNS. The high level classes perform queries for data of a given name, type, and class, and return an answer set. The low level classes allow direct manipulation of DNS zones, messages, names, and records.
Revision 1.1 / (download) - annotate - [select for diffs], Sun Jun 29 23:39:30 2003 UTC (20 years, 9 months ago) by gson
Branch: MAIN
Diff to selected 1.2 (colored)
Initial revision