Skip to content
Snippets Groups Projects
Verified Commit c9f3a282 authored by Vladimír Čunát's avatar Vladimír Čunát
Browse files

tests/pytests: adapt to stricter handling of trailing bytes

Since commit a0cbbde1 we don't ignore trailing bytes in queries.
parent 9dd0cea7
Branches
Tags
No related merge requests found
Pipeline #109257 waiting for manual action with stages
in 58 seconds
......@@ -71,26 +71,19 @@ def test_prefix_cuts_message(kresd_sock, datalen, send_query):
def test_prefix_greater_than_message(kresd_sock, send_query):
"""Prefix is greater than the length of the entire DNS message."""
wire, invalid_msgid = utils.prepare_wire()
wire, _ = utils.prepare_wire()
datalen = len(wire) + 16
invalid_buff = utils.prepare_buffer(wire, datalen)
send_query(kresd_sock, invalid_buff)
valid_buff, _ = utils.get_msgbuff()
kresd_sock.sendall(valid_buff)
# invalid_buff is answered (treats additional data as trailing garbage)
answer = utils.receive_parse_answer(kresd_sock)
assert answer.id == invalid_msgid
# parsing stream is broken by the invalid_buff, valid query is never answered
# The query is ignored due to trailing garbage and parsing stream
# is broken by the invalid_buff, so valid query is never answered.
with utils.expect_kresd_close():
utils.receive_parse_answer(kresd_sock)
utils.ping_alive(kresd_sock)
@pytest.mark.parametrize('glength', [
0,
1,
8,
1024,
......@@ -102,13 +95,10 @@ def test_prefix_trailing_garbage(kresd_sock, glength, query_before):
if query_before:
utils.ping_alive(kresd_sock)
for _ in range(10):
wire, msgid = utils.prepare_wire()
wire += utils.get_garbage(glength)
buff = utils.prepare_buffer(wire)
kresd_sock.sendall(buff)
answer = utils.receive_parse_answer(kresd_sock)
assert answer.id == msgid
wire, _ = utils.prepare_wire()
wire += utils.get_garbage(glength)
buff = utils.prepare_buffer(wire)
time.sleep(0.1)
kresd_sock.sendall(buff)
# The query is ignored due to trailing garbage but others can proceed.
utils.ping_alive(kresd_sock)
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment