From: Andrew Bartlett Date: Thu, 19 Dec 2019 22:34:38 +0000 (+1300) Subject: selftest: Confirm parse of dnsProperty records X-Git-Tag: ldb-2.1.0~189 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=16557e4480a7502d45186854546d502479be156f;p=thirdparty%2Fsamba.git selftest: Confirm parse of dnsProperty records This confirms a name of "." will round-trip correctly. Signed-off-by: Andrew Bartlett Reviewed-by: Ralph Boehme --- diff --git a/python/samba/tests/blackbox/ndrdump.py b/python/samba/tests/blackbox/ndrdump.py index ee34753e5a8..b3c837819b1 100644 --- a/python/samba/tests/blackbox/ndrdump.py +++ b/python/samba/tests/blackbox/ndrdump.py @@ -368,6 +368,20 @@ dump OK expected_head) self.assertTrue(actual.endswith(expected_tail)) + # Confirm parsing of dnsProperty records + def test_ndrdump_dnsp_DnssrvRpcRecord(self): + + expected = open(self.data_path("dnsp-DnssrvRpcRecord.txt")).read().encode('utf8') + try: + actual = self.check_output( + "ndrdump dnsp dnsp_DnssrvRpcRecord struct " +\ + "--input BQAPAAXwAAC3AAAAAAADhAAAAAAAAAAAAAoBAAA= "+\ + "--base64-input --validate") + except BlackboxProcessError as e: + self.fail(e) + + self.assertEqual(actual, expected) + # Test a --validate push of a NULL union pointer def test_ndrdump_fuzzed_NULL_union_PAC_BUFFER(self): expected = b'''pull returned Success diff --git a/selftest/knownfail.d/ndrdump-dnsp_name b/selftest/knownfail.d/ndrdump-dnsp_name new file mode 100644 index 00000000000..c4565998cf2 --- /dev/null +++ b/selftest/knownfail.d/ndrdump-dnsp_name @@ -0,0 +1 @@ +^samba.tests.blackbox.ndrdump.samba.tests.blackbox.ndrdump.NdrDumpTests.test_ndrdump_dnsp_DnssrvRpcRecord diff --git a/source4/librpc/tests/dnsp-DnssrvRpcRecord.txt b/source4/librpc/tests/dnsp-DnssrvRpcRecord.txt new file mode 100644 index 00000000000..fd169223c74 --- /dev/null +++ b/source4/librpc/tests/dnsp-DnssrvRpcRecord.txt @@ -0,0 +1,32 @@ +pull returned Success + dnsp_DnssrvRpcRecord: struct dnsp_DnssrvRpcRecord + wDataLength : 0x0005 (5) + wType : DNS_TYPE_MX (15) + version : 0x05 (5) + rank : DNS_RANK_ZONE (240) + flags : 0x0000 (0) + dwSerial : 0x000000b7 (183) + dwTtlSeconds : 0x00000384 (900) + dwReserved : 0x00000000 (0) + dwTimeStamp : 0x00000000 (0) + data : union dnsRecordData(case 15) + mx: struct dnsp_mx + wPriority : 0x000a (10) + nameTarget : +push returned Success +pull returned Success + dnsp_DnssrvRpcRecord: struct dnsp_DnssrvRpcRecord + wDataLength : 0x0005 (5) + wType : DNS_TYPE_MX (15) + version : 0x05 (5) + rank : DNS_RANK_ZONE (240) + flags : 0x0000 (0) + dwSerial : 0x000000b7 (183) + dwTtlSeconds : 0x00000384 (900) + dwReserved : 0x00000000 (0) + dwTimeStamp : 0x00000000 (0) + data : union dnsRecordData(case 15) + mx: struct dnsp_mx + wPriority : 0x000a (10) + nameTarget : +dump OK