[Dnsmasq-discuss] erroneously filtering A records after calling "SetFilterA false" over dbus

clayton at craftyguy.net clayton at craftyguy.net
Tue Feb 20 19:06:49 UTC 2024


Using dnsmasq 2.90 + the patch to fix the infinite loop, it seems like filtering is applied when calling e.g., "SetFilterA false" over dbus. In the script below, the first lookup succeeds but subsequent lookups after the initial application of the filter fail to return anything.



----
#!/bin/sh

dnsmasq -p 5353 --enable-dbus=uk.org.thekelleys.dnsmasq

while true; do
    echo "Trying..."
    dig @127.0.0.1 -p 5353 +nocmd +noall +answer postmarketos.org

    busctl call uk.org.thekelleys.dnsmasq \
        /uk/org/thekelleys/dnsmasq \
        uk.org.thekelleys.dnsmasq \
        SetFilterA b false

    busctl call uk.org.thekelleys.dnsmasq \
        /uk/org/thekelleys/dnsmasq \
        uk.org.thekelleys.dnsmasq \
        ClearCache

    echo "Trying again..."

    dig @127.0.0.1 -p 5353 +nocmd +noall +answer postmarketos.org
    echo "Done"

done
----

The output is something like:

enchilada:~$ doas ./foo.sh
Trying...
postmarketos.org.       5       IN      A       95.216.1.254
Trying again...
Done
Trying...
Trying again...
Done


dnsmasq logs this:

[Feb 20 11:03:28] daemon dnsmasq[30672]: query[A] postmarketos.org from 127.0.0.1
[Feb 20 11:03:28] daemon dnsmasq[30672]: forwarded postmarketos.org to 1.1.1.1
[Feb 20 11:03:28] daemon dnsmasq[30672]: config postmarketos.org is NODATA-IPv4


I can try to bisect this, but thought I'd ask on here if this looks familiar since bisecting dnsmasq isn't as easy :)


-Clayton



More information about the Dnsmasq-discuss mailing list