diff options
| author | Bob Halley <halley@nominum.com> | 2012-04-07 22:16:05 +0100 |
|---|---|---|
| committer | Bob Halley <halley@nominum.com> | 2012-04-07 22:16:05 +0100 |
| commit | ee78c1c86171cad49dd3962d39e74f19c9b8ea20 (patch) | |
| tree | ada99f28b05e4b3f6410e4cce7f279183d66d1da | |
| parent | 2ab9852e14cda6d3b1f91a66c929b19c4eaf4b9e (diff) | |
| download | dnspython-ee78c1c86171cad49dd3962d39e74f19c9b8ea20.tar.gz | |
add check_origin parameter to dns.zone.from_xfr()
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | dns/zone.py | 8 |
2 files changed, 11 insertions, 2 deletions
@@ -1,5 +1,10 @@ 2012-04-07 Bob Halley <halley@dnspython.org> + * 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. diff --git a/dns/zone.py b/dns/zone.py index 72ae706..a4fa07b 100644 --- a/dns/zone.py +++ b/dns/zone.py @@ -796,7 +796,7 @@ def from_file(f, origin = None, rdclass = dns.rdataclass.IN, f.close() return z -def from_xfr(xfr, zone_factory=Zone, relativize=True): +def from_xfr(xfr, zone_factory=Zone, relativize=True, check_origin=True): """Convert the output of a zone transfer generator into a zone object. @param xfr: The xfr generator @@ -805,6 +805,9 @@ def from_xfr(xfr, zone_factory=Zone, relativize=True): It is essential that the relativize setting matches the one specified to dns.query.xfr(). @type relativize: bool + @param check_origin: should sanity checks of the origin node be done? + The default is True. + @type check_origin: bool @raises dns.zone.NoSOA: No SOA RR was found at the zone origin @raises dns.zone.NoNS: No NS RRset was found at the zone origin @rtype: dns.zone.Zone object @@ -830,5 +833,6 @@ def from_xfr(xfr, zone_factory=Zone, relativize=True): for rd in rrset: rd.choose_relativity(z.origin, relativize) zrds.add(rd) - z.check_origin() + if check_origin: + z.check_origin() return z |
