mirror of
https://github.com/samba-team/samba.git
synced 2025-02-28 01:58:17 +03:00
python:tests/dns_tkey: let us have test_update_gss_tsig_tkey_req_{additional,answers}()
Also test using the additional record in the answers section. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13019 Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> (cherry picked from commit 3c7cb85eaf8371be55a371601cc354440dab7a94)
This commit is contained in:
parent
501a25a1f0
commit
6438249cf1
@ -161,6 +161,10 @@ class DNSTest(TestCaseInTempDir):
|
||||
response = ndr.ndr_unpack(dns.name_packet, recv_packet_p,
|
||||
allow_remaining=allow_remaining)
|
||||
return (response, recv_packet)
|
||||
except RuntimeError as re:
|
||||
if s is not None:
|
||||
s.close()
|
||||
raise AssertionError(re)
|
||||
finally:
|
||||
if s is not None:
|
||||
s.close()
|
||||
@ -198,6 +202,10 @@ class DNSTest(TestCaseInTempDir):
|
||||
print(self.hexdump(recv_packet))
|
||||
response = ndr.ndr_unpack(dns.name_packet, recv_packet[2:])
|
||||
|
||||
except RuntimeError as re:
|
||||
if s is not None:
|
||||
s.close()
|
||||
raise AssertionError(re)
|
||||
finally:
|
||||
if s is not None:
|
||||
s.close()
|
||||
|
@ -113,8 +113,8 @@ class TestDNSUpdates(DNSTKeyTest):
|
||||
rcode = self.search_record(self.newrecname)
|
||||
self.assert_rcode_equals(rcode, dns.DNS_RCODE_NXDOMAIN)
|
||||
|
||||
def test_update_tsig(self):
|
||||
"test DNS update with correct TSIG record"
|
||||
def test_update_gss_tsig_tkey_req_additional(self):
|
||||
"test DNS update with correct gss-tsig record tkey req in additional"
|
||||
|
||||
self.tkey_trans()
|
||||
|
||||
@ -139,6 +139,32 @@ class TestDNSUpdates(DNSTKeyTest):
|
||||
rcode = self.search_record(self.newrecname)
|
||||
self.assert_rcode_equals(rcode, dns.DNS_RCODE_NXDOMAIN)
|
||||
|
||||
def test_update_gss_tsig_tkey_req_answers(self):
|
||||
"test DNS update with correct gss-tsig record tsig req in answers"
|
||||
|
||||
self.tkey_trans(tkey_req_in_answers=True)
|
||||
|
||||
p = self.make_update_request()
|
||||
mac = self.sign_packet(p, self.tkey['name'])
|
||||
(response, response_p) = self.dns_transaction_udp(p, self.server_ip)
|
||||
self.assert_dns_rcode_equals(response, dns.DNS_RCODE_OK)
|
||||
self.verify_packet(response, response_p, mac)
|
||||
|
||||
# Check the record is around
|
||||
rcode = self.search_record(self.newrecname)
|
||||
self.assert_rcode_equals(rcode, dns.DNS_RCODE_OK)
|
||||
|
||||
# Now delete the record
|
||||
p = self.make_update_request(delete=True)
|
||||
mac = self.sign_packet(p, self.tkey['name'])
|
||||
(response, response_p) = self.dns_transaction_udp(p, self.server_ip)
|
||||
self.assert_dns_rcode_equals(response, dns.DNS_RCODE_OK)
|
||||
self.verify_packet(response, response_p, mac)
|
||||
|
||||
# check it's gone
|
||||
rcode = self.search_record(self.newrecname)
|
||||
self.assert_rcode_equals(rcode, dns.DNS_RCODE_NXDOMAIN)
|
||||
|
||||
def test_update_tsig_windows(self):
|
||||
"test DNS update with correct TSIG record (follow Windows pattern)"
|
||||
|
||||
|
@ -3,3 +3,4 @@
|
||||
^samba.tests.dns_tkey.__main__.TestDNSUpdates.test_tkey_gss_microsoft_com.fl2008r2dc
|
||||
^samba.tests.dns_tkey.__main__.TestDNSUpdates.test_tkey_invalid_gss_MICROSOFT_com.fl2008r2dc
|
||||
^samba.tests.dns_tkey.__main__.TestDNSUpdates.test_tkey_invalid_gss_TSIG.fl2008r2dc
|
||||
^samba.tests.dns_tkey.__main__.TestDNSUpdates.test_update_gss_tsig_tkey_req_answers.fl2008r2dc
|
||||
|
Loading…
x
Reference in New Issue
Block a user