From 86f4afa330547d98e446e0249816358487030375 Mon Sep 17 00:00:00 2001 From: "suren.gabrielyan" Date: Fri, 4 Dec 2020 18:19:19 +0400 Subject: [PATCH 1/2] mDNS: Fix of collision detection during txt length calculation Closes https://github.com/espressif/esp-idf/issues/6114 --- components/mdns/mdns.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/mdns/mdns.c b/components/mdns/mdns.c index d0530cf782..d23a64e1f0 100644 --- a/components/mdns/mdns.c +++ b/components/mdns/mdns.c @@ -2100,7 +2100,7 @@ static int _mdns_check_txt_collision(mdns_service_t * service, const uint8_t * d mdns_txt_linked_item_t * txt = service->txt; while (txt) { - data_len += 2 + strlen(service->txt->key) + strlen(service->txt->value); + data_len += 2 + strlen(txt->key) + strlen(txt->value); txt = txt->next; } From c4ee49edf1707760c1d3b0d9678caa5919de4d87 Mon Sep 17 00:00:00 2001 From: "suren.gabrielyan" Date: Thu, 14 Jan 2021 14:32:05 +0400 Subject: [PATCH 2/2] mDNS: Fix of text length calculation when detecting a collision --- components/mdns/mdns.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/mdns/mdns.c b/components/mdns/mdns.c index d23a64e1f0..3aea233648 100644 --- a/components/mdns/mdns.c +++ b/components/mdns/mdns.c @@ -2089,7 +2089,7 @@ static int _mdns_check_srv_collision(mdns_service_t * service, uint16_t priority */ static int _mdns_check_txt_collision(mdns_service_t * service, const uint8_t * data, size_t len) { - size_t data_len = 1; + size_t data_len = 0; if (len == 1 && service->txt) { return -1;//we win } else if (len > 1 && !service->txt) {