The branch, master has been updated via 3c25067 dsgetinfo: Set modulesdir when using ldb without ldb_wrap via 6185fb4 dnspython: Update to latest upstream. via 5de2ec0 subunit: Import latest upstream. via ed42535 testtools: Import latest upstream. via 9550765 testr: Fix configuration to use idfile, in case more than a couple of hundred tests fail. via bde18c6 selftest: Don't make printing the log output a side-effect of check_env(), do it manually. via 3c2b733 selftest: Remove stop() method, not used anywhere. via 7154e93 selftest/samba4: Remove references to Samba34.pm, which no longer exists. via 025494b selftest: Refer to subunit README rather than documenting locally. via 261d9aa ldb: Add missing aliases for ldb_ildap. from 72f3727 dsdb: Add missing dependencies for dsdb ldb modules.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 3c250677245e89ce0062db1758c855b051ddef77 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Sep 5 00:58:41 2010 +0200 dsgetinfo: Set modulesdir when using ldb without ldb_wrap (Is there a particular reason we're not using ldb_wrap here?) commit 6185fb4e9e3d3e654ad9f6325da0f4886013dda6 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Sep 4 23:05:16 2010 +0200 dnspython: Update to latest upstream. commit 5de2ec0def3e4ad0ead20b426e81509fd8e48c6d Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Sep 4 23:04:28 2010 +0200 subunit: Import latest upstream. commit ed4253504167748c0bb829176d41c09365937189 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Sep 4 23:04:07 2010 +0200 testtools: Import latest upstream. commit 955076530425b2c37c7ad545f9a596e8daca0321 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Sep 4 21:13:37 2010 +0200 testr: Fix configuration to use idfile, in case more than a couple of hundred tests fail. commit bde18c6218fa6b593ff4f3db8bcd2f83e9b661aa Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Sep 4 21:08:35 2010 +0200 selftest: Don't make printing the log output a side-effect of check_env(), do it manually. commit 3c2b733698507e33716a2f837d6b58c34bea9b78 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Sep 4 18:24:02 2010 +0200 selftest: Remove stop() method, not used anywhere. commit 7154e93b21b0d6dcc578548e203a08b77c21d972 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Sep 4 18:18:55 2010 +0200 selftest/samba4: Remove references to Samba34.pm, which no longer exists. commit 025494b6bd8c266d0df0f23cbb50db048df9697b Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Sep 4 18:03:19 2010 +0200 selftest: Refer to subunit README rather than documenting locally. commit 261d9aaff0ff45e7fdd7e3140fc0e86997490b28 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Sep 4 17:59:48 2010 +0200 ldb: Add missing aliases for ldb_ildap. ----------------------------------------------------------------------- Summary of changes: lib/dnspython/.gitignore | 5 + lib/dnspython/ChangeLog | 9 + lib/dnspython/MANIFEST.in | 3 + lib/dnspython/PKG-INFO | 28 -- lib/dnspython/README | 28 +- lib/dnspython/dns/dnssec.py | 4 +- lib/dnspython/dns/flags.py | 2 +- lib/dnspython/dns/inet.py | 4 +- lib/dnspython/dns/node.py | 14 +- lib/dnspython/dns/opcode.py | 10 +- lib/dnspython/dns/rdtypes/ANY/GPOS.py | 10 +- lib/dnspython/dns/rdtypes/ANY/HINFO.py | 8 +- lib/dnspython/dns/rdtypes/ANY/SOA.py | 6 +- lib/dnspython/dns/rdtypes/ANY/SSHFP.py | 8 +- lib/dnspython/dns/rdtypes/ANY/X25.py | 8 +- lib/dnspython/dns/rdtypes/IN/NAPTR.py | 8 +- lib/dnspython/dns/rdtypes/IN/PX.py | 8 +- lib/dnspython/dns/resolver.py | 3 +- lib/dnspython/dns/tsigkeyring.py | 4 +- lib/dnspython/dns/update.py | 2 +- lib/dnspython/dns/version.py | 2 +- lib/dnspython/setup.py | 2 +- lib/dnspython/tests/example | 8 +- lib/dnspython/tests/name.py | 4 +- lib/dnspython/tests/rdtypeandclass.py | 4 +- lib/dnspython/tests/rrset.py | 2 +- lib/dnspython/tests/set.py | 2 +- lib/dnspython/tests/zone.py | 2 +- lib/dnspython/util/COPYRIGHT | 14 + lib/dnspython/util/copyrights | 117 +++++++ lib/subunit/MANIFEST.in | 21 ++ lib/subunit/NEWS | 33 ++ lib/subunit/README | 2 +- lib/subunit/configure.ac | 2 +- lib/subunit/filters/subunit-ls | 51 +--- lib/subunit/perl/lib/Subunit.pm | 21 ++ lib/subunit/python/subunit/__init__.py | 48 ++- lib/subunit/python/subunit/details.py | 8 +- lib/subunit/python/subunit/run.py | 39 ++- lib/subunit/python/subunit/test_results.py | 76 ++++- lib/subunit/python/subunit/tests/test_details.py | 3 +- .../python/subunit/tests/test_test_protocol.py | 55 ++-- lib/subunit/setup.py | 59 ++++ lib/testtools/HACKING | 1 + lib/testtools/LICENSE | 22 ++- lib/testtools/MANUAL | 41 ++- lib/testtools/Makefile | 2 + lib/testtools/NEWS | 126 +++++++ lib/testtools/README | 4 + lib/testtools/testtools/__init__.py | 10 +- lib/testtools/testtools/compat.py | 246 +++++++++++++ lib/testtools/testtools/content.py | 6 +- lib/testtools/testtools/content_type.py | 3 + lib/testtools/testtools/matchers.py | 120 +++++-- lib/testtools/testtools/monkey.py | 97 ++++++ lib/testtools/testtools/run.py | 263 ++++++++++++++- lib/testtools/testtools/runtest.py | 31 ++- lib/testtools/testtools/testcase.py | 182 +++++++++- lib/testtools/testtools/testresult/__init__.py | 2 +- lib/testtools/testtools/testresult/real.py | 67 +++- lib/testtools/testtools/tests/__init__.py | 4 + lib/testtools/testtools/tests/test_compat.py | 251 ++++++++++++++ lib/testtools/testtools/tests/test_content.py | 19 +- lib/testtools/testtools/tests/test_content_type.py | 36 ++- lib/testtools/testtools/tests/test_matchers.py | 57 +++- lib/testtools/testtools/tests/test_monkey.py | 166 +++++++++ lib/testtools/testtools/tests/test_runtest.py | 12 +- lib/testtools/testtools/tests/test_testresult.py | 348 ++++++++++++++++++- lib/testtools/testtools/tests/test_testtools.py | 364 +++++++++++++++++++- lib/testtools/testtools/testsuite.py | 19 +- lib/testtools/testtools/utils.py | 42 +-- selftest/README | 55 +--- selftest/selftest.pl | 5 +- selftest/target/Kvm.pm | 5 - selftest/target/Samba3.pm | 5 - selftest/target/Samba4.pm | 23 +- selftest/target/Template.pm | 5 - source4/.testr.conf | 4 +- source4/lib/ldb/wscript | 1 + source4/torture/rpc/dsgetinfo.c | 3 + 80 files changed, 2874 insertions(+), 520 deletions(-) create mode 100644 lib/dnspython/.gitignore create mode 100644 lib/dnspython/MANIFEST.in delete mode 100644 lib/dnspython/PKG-INFO create mode 100644 lib/dnspython/util/COPYRIGHT create mode 100644 lib/dnspython/util/copyrights create mode 100644 lib/subunit/MANIFEST.in create mode 100755 lib/subunit/setup.py create mode 100644 lib/testtools/testtools/compat.py create mode 100644 lib/testtools/testtools/monkey.py create mode 100644 lib/testtools/testtools/tests/test_compat.py create mode 100644 lib/testtools/testtools/tests/test_monkey.py Changeset truncated at 500 lines: diff --git a/lib/dnspython/.gitignore b/lib/dnspython/.gitignore new file mode 100644 index 0000000..2abcfc4 --- /dev/null +++ b/lib/dnspython/.gitignore @@ -0,0 +1,5 @@ +build +dist +MANIFEST +html +tests/*.out diff --git a/lib/dnspython/ChangeLog b/lib/dnspython/ChangeLog index f5a74da..73a66ed 100644 --- a/lib/dnspython/ChangeLog +++ b/lib/dnspython/ChangeLog @@ -1,3 +1,12 @@ +2010-03-10 Bob Halley <hal...@dnspython.org> + + * The TSIG algorithm value was passed to use_tsig() incorrectly + in some cases. Thanks to 'ducciovigolo' for reporting the problem. + +2010-01-26 Bob Halley <hal...@dnspython.org> + + * (Version 1.8.0 released) + 2010-01-13 Bob Halley <hal...@dnspython.org> * dns/dnssec.py: Added RSASHA256 and RSASHA512 codepoints; added diff --git a/lib/dnspython/MANIFEST.in b/lib/dnspython/MANIFEST.in new file mode 100644 index 0000000..d58fb8b --- /dev/null +++ b/lib/dnspython/MANIFEST.in @@ -0,0 +1,3 @@ +include LICENSE ChangeLog TODO +recursive-include examples *.txt *.py +recursive-include tests *.txt *.py Makefile *.good example diff --git a/lib/dnspython/PKG-INFO b/lib/dnspython/PKG-INFO deleted file mode 100644 index 455915d..0000000 --- a/lib/dnspython/PKG-INFO +++ /dev/null @@ -1,28 +0,0 @@ -Metadata-Version: 1.1 -Name: dnspython -Version: 1.8.0 -Summary: DNS toolkit -Home-page: http://www.dnspython.org -Author: Bob Halley -Author-email: hal...@dnspython.org -License: BSD-like -Download-URL: http://www.dnspython.org/kits/1.8.0/dnspython-1.8.0.tar.gz -Description: dnspython is a DNS toolkit for Python. It supports almost all - record types. It can be used for queries, zone transfers, and dynamic - updates. It supports TSIG authenticated messages and EDNS0. - - dnspython 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. -Platform: UNKNOWN -Classifier: Development Status :: 5 - Production/Stable -Classifier: Intended Audience :: Developers -Classifier: Intended Audience :: System Administrators -Classifier: License :: Freeware -Classifier: Operating System :: Microsoft :: Windows :: Windows 95/98/2000 -Classifier: Operating System :: POSIX -Classifier: Programming Language :: Python -Classifier: Topic :: Internet :: Name Service (DNS) -Classifier: Topic :: Software Development :: Libraries :: Python Modules -Provides: dns diff --git a/lib/dnspython/README b/lib/dnspython/README index 0e5793a..b313d1c 100644 --- a/lib/dnspython/README +++ b/lib/dnspython/README @@ -26,7 +26,7 @@ This is dnspython 1.8.0 New since 1.7.1: - Support for hmac-sha1, hmac-sha224, hmac-sha256, hmac-sha384 + Support for hmac-sha1, hmac-sha224, hmac-sha256, hmac-sha384 and hmac-sha512 has been contributed by Kevin Chen. The tokenizer's tokens are now Token objects instead of (type, @@ -38,7 +38,7 @@ Bugs fixed since 1.7.1: were only working correctly when the text involved was part of a domain name. - When constructing a DDNS update, if the present() method was + When constructing a DDNS update, if the present() method was used with a single rdata, a zero TTL was not added. The entropy pool needed locking to be thread safe. @@ -59,18 +59,18 @@ Bugs fixed since 1.7.1: New since 1.7.0: - Nothing + Nothing Bugs fixed since 1.7.0: - The 1.7.0 kitting process inadventently omitted the code for the + The 1.7.0 kitting process inadventently omitted the code for the DLV RR. Negative DDNS prerequisites are now handled correctly. New since 1.6.0: - Rdatas now have a to_digestable() method, which returns the + Rdatas now have a to_digestable() method, which returns the DNSSEC canonical form of the rdata, suitable for use in signature computations. @@ -93,7 +93,7 @@ New since 1.6.0: Bugs fixed since 1.6.0: - On Windows, the resolver set the domain incorrectly. + On Windows, the resolver set the domain incorrectly. DS RR parsing only allowed one Base64 chunk. @@ -114,7 +114,7 @@ New since 1.5.0: Added dns.inet.is_multicast(). Bugs fixed since 1.5.0: - + If select() raises an exception due to EINTR, we should just select() again. @@ -130,7 +130,7 @@ Bugs fixed since 1.5.0: New since 1.4.0: - Answer objects now support more of the python sequence + Answer objects now support more of the python sequence protocol, forwarding the requests to the answer rrset. E.g. "for a in answer" is equivalent to "for a in answer.rrset", "answer[i]" is equivalent to "answer.rrset[i]", @@ -197,7 +197,7 @@ New since 1.3.5: Bugs fixed since 1.3.5: - The correct delimiter was not used when retrieving the + The correct delimiter was not used when retrieving the list of nameservers from the registry in certain versions of windows. @@ -214,8 +214,8 @@ Bugs fixed since 1.3.5: New since 1.3.4: - In the resolver, if time goes backward a little bit, ignore - it. + In the resolver, if time goes backward a little bit, ignore + it. zone_for_name() has been added to the resolver module. It returns the zone which is authoritative for the specified @@ -233,7 +233,7 @@ New since 1.3.4: The default resolver can be fetched with the get_default_resolver() method. - You can now get the parent (immediate superdomain) of a name + You can now get the parent (immediate superdomain) of a name by using the parent() method. Zone.iterate_rdatasets() and Zone.iterate_rdatas() now have @@ -246,7 +246,7 @@ New since 1.3.3: The source address and port may now be specified when calling dns.query.{udp,tcp,xfr}. - + The resolver now does exponential backoff each time it runs through all of the nameservers. @@ -256,7 +256,7 @@ New since 1.3.3: New since 1.3.2: - dns.message.Message.find_rrset() now uses an index, vastly + dns.message.Message.find_rrset() now uses an index, vastly improving the from_wire() performance of large messages such as zone transfers. diff --git a/lib/dnspython/dns/dnssec.py b/lib/dnspython/dns/dnssec.py index acf4653..54fd78d 100644 --- a/lib/dnspython/dns/dnssec.py +++ b/lib/dnspython/dns/dnssec.py @@ -56,7 +56,7 @@ class UnknownAlgorithm(Exception): def algorithm_from_text(text): """Convert text into a DNSSEC algorithm value @rtype: int""" - + value = _algorithm_by_text.get(text.upper()) if value is None: value = int(text) @@ -65,7 +65,7 @@ def algorithm_from_text(text): def algorithm_to_text(value): """Convert a DNSSEC algorithm value to text @rtype: string""" - + text = _algorithm_by_value.get(value) if text is None: text = str(value) diff --git a/lib/dnspython/dns/flags.py b/lib/dnspython/dns/flags.py index 79375ea..17afdbc 100644 --- a/lib/dnspython/dns/flags.py +++ b/lib/dnspython/dns/flags.py @@ -89,7 +89,7 @@ def to_text(flags): @rtype: string""" return _to_text(flags, _by_value, _flags_order) - + def edns_from_text(text): """Convert a space-separated list of EDNS flag text values into a EDNS diff --git a/lib/dnspython/dns/inet.py b/lib/dnspython/dns/inet.py index 993a2f9..8a8f3e1 100644 --- a/lib/dnspython/dns/inet.py +++ b/lib/dnspython/dns/inet.py @@ -45,7 +45,7 @@ def inet_pton(family, text): implemented. @rtype: string """ - + if family == AF_INET: return dns.ipv4.inet_aton(text) elif family == AF_INET6: @@ -105,4 +105,4 @@ def is_multicast(text): return (first == 255) except: raise ValueError - + diff --git a/lib/dnspython/dns/node.py b/lib/dnspython/dns/node.py index 785a245..07fff92 100644 --- a/lib/dnspython/dns/node.py +++ b/lib/dnspython/dns/node.py @@ -23,18 +23,18 @@ import dns.renderer class Node(object): """A DNS node. - + A node is a set of rdatasets @ivar rdatasets: the node's rdatasets @type rdatasets: list of dns.rdataset.Rdataset objects""" __slots__ = ['rdatasets'] - + def __init__(self): """Initialize a DNS node. """ - + self.rdatasets = []; def to_text(self, name, **kw): @@ -46,7 +46,7 @@ class Node(object): @type name: dns.name.Name object @rtype: string """ - + s = StringIO.StringIO() for rds in self.rdatasets: print >> s, rds.to_text(name, **kw) @@ -54,7 +54,7 @@ class Node(object): def __repr__(self): return '<DNS node ' + str(id(self)) + '>' - + def __eq__(self, other): """Two nodes are equal if they have the same rdatasets. @@ -73,7 +73,7 @@ class Node(object): def __ne__(self, other): return not self.__eq__(other) - + def __len__(self): return len(self.rdatasets) @@ -159,7 +159,7 @@ class Node(object): def replace_rdataset(self, replacement): """Replace an rdataset. - + It is not an error if there is no rdataset matching I{replacement}. Ownership of the I{replacement} object is transferred to the node; diff --git a/lib/dnspython/dns/opcode.py b/lib/dnspython/dns/opcode.py index 735d3a1..705bd09 100644 --- a/lib/dnspython/dns/opcode.py +++ b/lib/dnspython/dns/opcode.py @@ -66,7 +66,7 @@ def from_flags(flags): @param flags: int @rtype: int """ - + return (flags & 0x7800) >> 11 def to_flags(value): @@ -74,9 +74,9 @@ def to_flags(value): flags. @rtype: int """ - + return (value << 11) & 0x7800 - + def to_text(value): """Convert an opcode to text. @@ -85,7 +85,7 @@ def to_text(value): @raises UnknownOpcode: the opcode is unknown @rtype: string """ - + text = _by_value.get(value) if text is None: text = str(value) @@ -98,7 +98,7 @@ def is_update(flags): @type flags: int @rtype: bool """ - + if (from_flags(flags) == UPDATE): return True return False diff --git a/lib/dnspython/dns/rdtypes/ANY/GPOS.py b/lib/dnspython/dns/rdtypes/ANY/GPOS.py index aa8000f..6f63cc0 100644 --- a/lib/dnspython/dns/rdtypes/ANY/GPOS.py +++ b/lib/dnspython/dns/rdtypes/ANY/GPOS.py @@ -29,7 +29,7 @@ def _validate_float_string(what): raise dns.exception.FormError if not right == '' and not right.isdigit(): raise dns.exception.FormError - + class GPOS(dns.rdata.Rdata): """GPOS record @@ -42,7 +42,7 @@ class GPOS(dns.rdata.Rdata): @see: RFC 1712""" __slots__ = ['latitude', 'longitude', 'altitude'] - + def __init__(self, rdclass, rdtype, latitude, longitude, altitude): super(GPOS, self).__init__(rdclass, rdtype) if isinstance(latitude, float) or \ @@ -66,14 +66,14 @@ class GPOS(dns.rdata.Rdata): def to_text(self, origin=None, relativize=True, **kw): return '%s %s %s' % (self.latitude, self.longitude, self.altitude) - + def from_text(cls, rdclass, rdtype, tok, origin = None, relativize = True): latitude = tok.get_string() longitude = tok.get_string() altitude = tok.get_string() tok.get_eol() return cls(rdclass, rdtype, latitude, longitude, altitude) - + from_text = classmethod(from_text) def to_wire(self, file, compress = None, origin = None): @@ -92,7 +92,7 @@ class GPOS(dns.rdata.Rdata): byte = chr(l) file.write(byte) file.write(self.altitude) - + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin = None): l = ord(wire[current]) current += 1 diff --git a/lib/dnspython/dns/rdtypes/ANY/HINFO.py b/lib/dnspython/dns/rdtypes/ANY/HINFO.py index 5cfef5a..e592ad3 100644 --- a/lib/dnspython/dns/rdtypes/ANY/HINFO.py +++ b/lib/dnspython/dns/rdtypes/ANY/HINFO.py @@ -27,7 +27,7 @@ class HINFO(dns.rdata.Rdata): @see: RFC 1035""" __slots__ = ['cpu', 'os'] - + def __init__(self, rdclass, rdtype, cpu, os): super(HINFO, self).__init__(rdclass, rdtype) self.cpu = cpu @@ -36,13 +36,13 @@ class HINFO(dns.rdata.Rdata): def to_text(self, origin=None, relativize=True, **kw): return '"%s" "%s"' % (dns.rdata._escapify(self.cpu), dns.rdata._escapify(self.os)) - + def from_text(cls, rdclass, rdtype, tok, origin = None, relativize = True): cpu = tok.get_string() os = tok.get_string() tok.get_eol() return cls(rdclass, rdtype, cpu, os) - + from_text = classmethod(from_text) def to_wire(self, file, compress = None, origin = None): @@ -56,7 +56,7 @@ class HINFO(dns.rdata.Rdata): byte = chr(l) file.write(byte) file.write(self.os) - + def from_wire(cls, rdclass, rdtype, wire, current, rdlen, origin = None): l = ord(wire[current]) current += 1 diff --git a/lib/dnspython/dns/rdtypes/ANY/SOA.py b/lib/dnspython/dns/rdtypes/ANY/SOA.py index 5f74b8d..a25a35e 100644 --- a/lib/dnspython/dns/rdtypes/ANY/SOA.py +++ b/lib/dnspython/dns/rdtypes/ANY/SOA.py @@ -41,7 +41,7 @@ class SOA(dns.rdata.Rdata): __slots__ = ['mname', 'rname', 'serial', 'refresh', 'retry', 'expire', 'minimum'] - + def __init__(self, rdclass, rdtype, mname, rname, serial, refresh, retry, expire, minimum): super(SOA, self).__init__(rdclass, rdtype) @@ -59,7 +59,7 @@ class SOA(dns.rdata.Rdata): return '%s %s %d %d %d %d %d' % ( mname, rname, self.serial, self.refresh, self.retry, self.expire, self.minimum ) - + def from_text(cls, rdclass, rdtype, tok, origin = None, relativize = True): mname = tok.get_name() rname = tok.get_name() @@ -73,7 +73,7 @@ class SOA(dns.rdata.Rdata): tok.get_eol() return cls(rdclass, rdtype, mname, rname, serial, refresh, retry, expire, minimum ) - + from_text = classmethod(from_text) def to_wire(self, file, compress = None, origin = None): diff --git a/lib/dnspython/dns/rdtypes/ANY/SSHFP.py b/lib/dnspython/dns/rdtypes/ANY/SSHFP.py index bc54f5e..162dda5 100644 --- a/lib/dnspython/dns/rdtypes/ANY/SSHFP.py +++ b/lib/dnspython/dns/rdtypes/ANY/SSHFP.py @@ -30,7 +30,7 @@ class SSHFP(dns.rdata.Rdata): @see: draft-ietf-secsh-dns-05.txt""" __slots__ = ['algorithm', 'fp_type', 'fingerprint'] - + def __init__(self, rdclass, rdtype, algorithm, fp_type, fingerprint): super(SSHFP, self).__init__(rdclass, rdtype) @@ -43,7 +43,7 @@ class SSHFP(dns.rdata.Rdata): self.fp_type, dns.rdata._hexify(self.fingerprint, chunksize=128)) - + def from_text(cls, rdclass, rdtype, tok, origin = None, relativize = True): algorithm = tok.get_uint8() fp_type = tok.get_uint8() @@ -51,14 +51,14 @@ class SSHFP(dns.rdata.Rdata): fingerprint = fingerprint.decode('hex_codec') tok.get_eol() return cls(rdclass, rdtype, algorithm, fp_type, fingerprint) - + from_text = classmethod(from_text) def to_wire(self, file, compress = None, origin = None): header = struct.pack("!BB", self.algorithm, self.fp_type) file.write(header) file.write(self.fingerprint) - -- Samba Shared Repository