systemd.dnssd does not handle local requests
Fixes https://github.com/systemd/systemd/issues/32990
if (r <= 0)
return r;
- if (manager_packet_from_local_address(m, p))
+ /* Refuse traffic from the local host, to avoid query loops. However, allow legacy mDNS
+ * unicast queries through anyway (we never send those ourselves, hence no risk).
+ * i.e. check for the source port nr. */
+ if (p->sender_port == MDNS_PORT && manager_packet_from_local_address(m, p))
return 0;
scope = manager_find_scope(m, p);