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.
2007-03-09 10:41:36 +01:00
|
|
|
@comment $NetBSD: PLIST,v 1.5 2007/03/09 09:41:36 gson Exp $
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/__init__.py
|
|
|
|
${PYSITELIB}/dns/__init__.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/__init__.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/dnssec.py
|
|
|
|
${PYSITELIB}/dns/dnssec.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/dnssec.pyo
|
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.
2007-03-09 10:41:36 +01:00
|
|
|
${PYSITELIB}/dns/e164.py
|
|
|
|
${PYSITELIB}/dns/e164.pyc
|
|
|
|
${PYSITELIB}/dns/e164.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/exception.py
|
|
|
|
${PYSITELIB}/dns/exception.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/exception.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/flags.py
|
|
|
|
${PYSITELIB}/dns/flags.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/flags.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/inet.py
|
|
|
|
${PYSITELIB}/dns/inet.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/inet.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/ipv4.py
|
|
|
|
${PYSITELIB}/dns/ipv4.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/ipv4.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/ipv6.py
|
|
|
|
${PYSITELIB}/dns/ipv6.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/ipv6.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/message.py
|
|
|
|
${PYSITELIB}/dns/message.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/message.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/name.py
|
|
|
|
${PYSITELIB}/dns/name.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/name.pyo
|
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.
2003-08-18 06:02:47 +02:00
|
|
|
${PYSITELIB}/dns/namedict.py
|
|
|
|
${PYSITELIB}/dns/namedict.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/namedict.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/node.py
|
|
|
|
${PYSITELIB}/dns/node.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/node.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/opcode.py
|
|
|
|
${PYSITELIB}/dns/opcode.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/opcode.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/query.py
|
|
|
|
${PYSITELIB}/dns/query.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/query.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rcode.py
|
|
|
|
${PYSITELIB}/dns/rcode.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rcode.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdata.py
|
|
|
|
${PYSITELIB}/dns/rdata.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdata.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdataclass.py
|
|
|
|
${PYSITELIB}/dns/rdataclass.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdataclass.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdataset.py
|
|
|
|
${PYSITELIB}/dns/rdataset.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdataset.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdatatype.py
|
|
|
|
${PYSITELIB}/dns/rdatatype.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdatatype.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/AFSDB.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/AFSDB.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/AFSDB.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/CERT.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/CERT.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/CERT.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/CNAME.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/CNAME.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/CNAME.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/DNAME.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/DNAME.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/DNAME.pyo
|
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.
2005-04-09 18:50:03 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/DNSKEY.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/DNSKEY.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/DNSKEY.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/DS.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/DS.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/DS.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/GPOS.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/GPOS.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/GPOS.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/HINFO.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/HINFO.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/HINFO.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/ISDN.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/ISDN.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/ISDN.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/KEY.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/KEY.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/KEY.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/LOC.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/LOC.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/LOC.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/MX.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/MX.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/MX.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/NS.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/NS.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/NS.pyo
|
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.
2005-04-09 18:50:03 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/NSEC.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/NSEC.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/NSEC.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/NXT.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/NXT.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/NXT.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/PTR.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/PTR.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/PTR.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/RP.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/RP.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/RP.pyo
|
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.
2005-04-09 18:50:03 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/RRSIG.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/RRSIG.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/RRSIG.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/RT.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/RT.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/RT.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SIG.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SIG.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SIG.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SOA.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SOA.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SOA.pyo
|
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.
2007-03-09 10:41:36 +01:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SPF.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SPF.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SPF.pyo
|
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.
2005-04-09 18:50:03 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SSHFP.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SSHFP.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/SSHFP.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/TXT.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/TXT.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/TXT.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/X25.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/X25.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/X25.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/__init__.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/__init__.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/ANY/__init__.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/A.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/A.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/A.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/AAAA.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/AAAA.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/AAAA.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/APL.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/APL.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/APL.pyo
|
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.
2007-03-09 10:41:36 +01:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/DHCID.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/DHCID.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/DHCID.pyo
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/IPSECKEY.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/IPSECKEY.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/IPSECKEY.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/KX.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/KX.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/KX.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/NAPTR.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/NAPTR.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/NAPTR.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/NSAP.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/NSAP.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/NSAP.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/NSAP_PTR.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/NSAP_PTR.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/NSAP_PTR.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/PX.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/PX.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/PX.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/SRV.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/SRV.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/SRV.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/WKS.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/WKS.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/WKS.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/__init__.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/IN/__init__.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/IN/__init__.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/__init__.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/__init__.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/__init__.pyo
|
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.
2005-04-09 18:50:03 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/keybase.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/keybase.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/keybase.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/mxbase.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/mxbase.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/mxbase.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/nsbase.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/nsbase.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/nsbase.pyo
|
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.
2005-04-09 18:50:03 +02:00
|
|
|
${PYSITELIB}/dns/rdtypes/sigbase.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/sigbase.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/sigbase.pyo
|
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.
2007-03-09 10:41:36 +01:00
|
|
|
${PYSITELIB}/dns/rdtypes/txtbase.py
|
|
|
|
${PYSITELIB}/dns/rdtypes/txtbase.pyc
|
|
|
|
${PYSITELIB}/dns/rdtypes/txtbase.pyo
|
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.
2003-08-18 06:02:47 +02:00
|
|
|
${PYSITELIB}/dns/renderer.py
|
|
|
|
${PYSITELIB}/dns/renderer.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/renderer.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/resolver.py
|
|
|
|
${PYSITELIB}/dns/resolver.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/resolver.pyo
|
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.
2007-03-09 10:41:36 +01:00
|
|
|
${PYSITELIB}/dns/reversename.py
|
|
|
|
${PYSITELIB}/dns/reversename.pyc
|
|
|
|
${PYSITELIB}/dns/reversename.pyo
|
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.
2003-08-18 06:02:47 +02:00
|
|
|
${PYSITELIB}/dns/rrset.py
|
|
|
|
${PYSITELIB}/dns/rrset.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/rrset.pyo
|
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.
2003-08-18 06:02:47 +02:00
|
|
|
${PYSITELIB}/dns/set.py
|
|
|
|
${PYSITELIB}/dns/set.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/set.pyo
|
|
|
|
${PYSITELIB}/dns/tokenizer.py
|
|
|
|
${PYSITELIB}/dns/tokenizer.pyc
|
|
|
|
${PYSITELIB}/dns/tokenizer.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/tsig.py
|
|
|
|
${PYSITELIB}/dns/tsig.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/tsig.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/tsigkeyring.py
|
|
|
|
${PYSITELIB}/dns/tsigkeyring.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/tsigkeyring.pyo
|
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.
2005-04-09 18:50:03 +02:00
|
|
|
${PYSITELIB}/dns/ttl.py
|
|
|
|
${PYSITELIB}/dns/ttl.pyc
|
|
|
|
${PYSITELIB}/dns/ttl.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/update.py
|
|
|
|
${PYSITELIB}/dns/update.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/update.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/version.py
|
|
|
|
${PYSITELIB}/dns/version.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/version.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
${PYSITELIB}/dns/zone.py
|
|
|
|
${PYSITELIB}/dns/zone.pyc
|
2003-09-14 18:43:45 +02:00
|
|
|
${PYSITELIB}/dns/zone.pyo
|
2003-06-30 01:39:30 +02:00
|
|
|
@dirrm ${PYSITELIB}/dns/rdtypes/IN
|
|
|
|
@dirrm ${PYSITELIB}/dns/rdtypes/ANY
|
|
|
|
@dirrm ${PYSITELIB}/dns/rdtypes
|
|
|
|
@dirrm ${PYSITELIB}/dns
|