Bug#1122015: systemd: autopkgtest 'test upstream' fails with dnsmasq 2.92~rc1-1
Simon Kelley
simon at thekelleys.org.uk
Sat Dec 6 00:09:05 GMT 2025
Random stuff I've found out about this.
1) This is a systemd test that's failing.
2) Googling got me to
https://github.com/systemd/systemd/blob/main/test/test-network/systemd-
networkd-tests.py#L8634
which seems to start a dnsmasq instance with deliberately broken strings
in a DHCPv6 option 103 and DHCPv4 option 114. The strings have zero
chars embeded in them.
3) dnsmasq commit
https://thekelleys.org.uk/gitweb/?p=dnsmasq.git;a=commit;h=ded935be3708f7df2c836046bd73b373a1dc40ac
defines 103 and 114 for the first time in dnsmasq and sets the data type
to be OT_NAME. That's the change that's broken this for 2.92~rc1-1
Associating OT_NAME with those two options affects two bits of dnsmasq
code. One is the option-parsing code in parse_dhcp_opt() which is a
rather scary set of heuristics that converts the ascii string for an
option into a set of octets that go into a DHCP packet. The knowledge
that the invalid url is in fact a string, may affect that process. The
second is option_string() which will strip characters which fail
isprint() from OT_NAME options when logging option values.
I guess one or both of these is changing the results of the test.
I don't think that dnsmasq is doing anything wrong here, and I tend to
push this onto the systemd tests. I don't understand what the test is
trying to achieve, but it looks like it's interpreting different, but
correct, behavior in dnsmasq as a problem.
Some clues, at least.
Simon.
On 12/5/25 21:04, Sven Geuer wrote:
> Source: systemd
> Version: 259~rc2-1
> Severity: important
> X-Debbugs-Cc: Simon Kelley <simon at thekelleys.org.uk>
> Control: affects -1 + src:dnsmasq
>
> Dear Maintainer,
>
> in testing, autopkgtest 'test upstream', apparently executed only on
> amd64 architecture, fails with dnsmasq 2.92~rc1-1 from unstable [1]. It
> specifically fails in TEST-85-NETWORK-NetworkdDHCPClientTests,
> test_dhcp_client_reject_captive_portal [2]. Tests with dnsmasq 2.91-1
> succeeded [3].
>
> As to me, the logs don't reveal enough details about how dnsmasq might
> trigger this failure. I therefore ask for help on this issue.
>
> PS.: No other autopkgtest involving dnsmasq shows abnormalities [4].
>
> Sven
>
> [1] https://ci.debian.net/packages/s/systemd/testing/amd64/66853256/#S64
> [2] https://ci.debian.net/packages/s/systemd/testing/amd64/66853256/#L22325
> [3] https://ci.debian.net/packages/s/systemd/testing/amd64/66721530/#S64
> [4] https://qa.debian.org/excuses.php?package=dnsmasq
>
More information about the Pkg-systemd-maintainers
mailing list