summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2024-05-29 13:17:54 +0200
committerAndrew Bartlett <abartlet@samba.org>2024-06-06 02:13:33 +0000
commit8324d0739dfdd0a081c403e298a9038ee7df681f (patch)
tree06c539f35447323682af01e2f75d7e4e348c223d /python
parentde4ed363d378f2065a4634f94af80ea0e3965c96 (diff)
downloadsamba-8324d0739dfdd0a081c403e298a9038ee7df681f.tar.gz
samba-8324d0739dfdd0a081c403e298a9038ee7df681f.tar.bz2
samba-8324d0739dfdd0a081c403e298a9038ee7df681f.zip
python:tests/dns_base: let verify_packet() work against Windows
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>
Diffstat (limited to 'python')
-rw-r--r--python/samba/tests/dns_base.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/python/samba/tests/dns_base.py b/python/samba/tests/dns_base.py
index f1c2d3da926..7d533f8e3c7 100644
--- a/python/samba/tests/dns_base.py
+++ b/python/samba/tests/dns_base.py
@@ -353,6 +353,15 @@ class DNSTKeyTest(DNSTest):
self.assertEqual(response.arcount, 1)
self.assertEqual(response.additional[0].rr_type, dns.DNS_QTYPE_TSIG)
+ if self.tkey['algorithm'] == "gss-tsig":
+ gss_tsig = True
+ else:
+ gss_tsig = False
+
+ request_mac_len = b""
+ if len(request_mac) > 0 and gss_tsig:
+ request_mac_len = struct.pack('!H', len(request_mac))
+
tsig_record = response.additional[0].rdata
mac = bytes(tsig_record.mac)
@@ -378,7 +387,7 @@ class DNSTKeyTest(DNSTest):
fake_tsig.other_data = tsig_record.other_data
fake_tsig_packet = ndr.ndr_pack(fake_tsig)
- data = request_mac + response_packet_wo_tsig + fake_tsig_packet
+ data = request_mac_len + request_mac + response_packet_wo_tsig + fake_tsig_packet
try:
self.tkey['gensec'].check_packet(data, data, mac)
except NTSTATUSError as nt: