From: Vishal Chillara Srinivas Date: Fri, 13 Oct 2023 09:06:06 +0000 (+0530) Subject: resolve: fix no mDNS announcement after probing X-Git-Tag: v255-rc1~237 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=57cf92f74148307fd63cb01d27040e2617c91a42;p=thirdparty%2Fsystemd.git resolve: fix no mDNS announcement after probing According to RFC 6762 section 8, an mDNS responder is supposed to announce its records after probing. Currently, there is a check in dns_scope_announce which returns if there are any pending transactions. This prevents announcements from being sent out even if there are pending non-probe transactions. To fix this, return only if there are active probe transactions. --- diff --git a/src/resolve/resolved-dns-scope.c b/src/resolve/resolved-dns-scope.c index 35085a6ef57..cd5945eb000 100644 --- a/src/resolve/resolved-dns-scope.c +++ b/src/resolve/resolved-dns-scope.c @@ -1420,7 +1420,7 @@ int dns_scope_announce(DnsScope *scope, bool goodbye) { /* Check if we're done with probing. */ LIST_FOREACH(transactions_by_scope, t, scope->transactions) - if (DNS_TRANSACTION_IS_LIVE(t->state)) + if (t->probing && DNS_TRANSACTION_IS_LIVE(t->state)) return 0; /* Check if there're services pending conflict resolution. */