]> granicus.if.org Git - esp-idf/commitdiff
mdns: Fix a portion of the queries are issued with the wildcard query type
authorLiu Han <liuhan@espressif.com>
Tue, 31 Jul 2018 02:00:02 +0000 (10:00 +0800)
committerbot <bot@espressif.com>
Tue, 14 Aug 2018 07:25:08 +0000 (07:25 +0000)
components/mdns/mdns.c

index 6ffebf663e04d79c63b969688d6acf7052cae222..09efde9836fb2e5d7265bdcfa93396feaa673be9 100644 (file)
@@ -1195,7 +1195,7 @@ static void _mdns_create_answer_from_parsed_packet(mdns_parsed_packet_t * parsed
         }
         if (service) {
             if (q->type == MDNS_TYPE_PTR || q->type == MDNS_TYPE_ANY) {
-                if (q->type == MDNS_TYPE_PTR) {
+                if (q->type == MDNS_TYPE_PTR || !parsed_packet->probe) {
                     shared = true;
                 }
                 if (!_mdns_alloc_answer(&packet->answers, MDNS_TYPE_PTR, service->service, false, false)
@@ -2570,7 +2570,7 @@ void mdns_parse_packet(mdns_rx_packet_t * packet)
                 continue;
             }
 
-            if (type == MDNS_TYPE_ANY) {
+            if (type == MDNS_TYPE_ANY && !_str_null_or_empty(name->host)) {
                 parsed_packet->probe = true;
             }