From e745990e5c43e8fbb83574ed07ccb81ae28f128d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=A0t=C4=9Bp=C3=A1n=20Bal=C3=A1=C5=BEik?= Date: Fri, 10 Apr 2026 18:25:17 +0200 Subject: [PATCH] Improve readability of endianness conversions Replace the less obvious and less explicit `struct.unpack()` and `struct.pack()` calls with calls to `int.from_bytes()` and `int.to_bytes()`, respectively. (cherry picked from commit e43fa1dc5ad3cecd5b762b0bd8d4156e1c48595b) --- bin/tests/system/isctest/asyncserver.py | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/bin/tests/system/isctest/asyncserver.py b/bin/tests/system/isctest/asyncserver.py index e29d6f7e9a..53cdfeb47c 100644 --- a/bin/tests/system/isctest/asyncserver.py +++ b/bin/tests/system/isctest/asyncserver.py @@ -26,7 +26,6 @@ import os import pathlib import re import signal -import struct import sys import dns.exception @@ -1273,9 +1272,7 @@ class AsyncDnsServer(AsyncServer): if not wire_length_bytes: return None - (wire_length,) = struct.unpack("!H", wire_length_bytes) - - return wire_length + return int.from_bytes(wire_length_bytes, byteorder="big") async def _read_tcp_query_wire( self, reader: asyncio.StreamReader, peer: Peer, wire_length: int @@ -1416,8 +1413,7 @@ class AsyncDnsServer(AsyncServer): if protocol == DnsProtocol.UDP: yield response else: - response_length = struct.pack("!H", len(response)) - yield response_length + response + yield len(payload).to_bytes(2, byteorder="big") + payload def _parse_message(self, wire: bytes) -> dns.message.Message: try: