diff --git a/components/mdns/include/mdns.h b/components/mdns/include/mdns.h index aeda9a071..22da2afab 100644 --- a/components/mdns/include/mdns.h +++ b/components/mdns/include/mdns.h @@ -343,6 +343,8 @@ esp_err_t mdns_query_a(const char * host_name, uint32_t timeout, esp_ip4_addr_t /** * @brief Query mDNS for A record * + * Please note that hostname must not contain domain name, as mDNS uses '.local' domain. + * * @param host_name host name to look for * @param timeout time in milliseconds to wait for answer. If 0, max_results needs to be defined * @param addr pointer to the resulting IP6 address @@ -361,6 +363,8 @@ esp_err_t mdns_query_aaaa(const char * host_name, uint32_t timeout, esp_ip6_addr * This method controls the service state on all active interfaces and applications are required * to call it from the system event handler for normal operation of mDNS service. * + * Please note that hostname must not contain domain name, as mDNS uses '.local' domain. + * * @param ctx The system event context * @param event The system event */ diff --git a/components/mdns/mdns.c b/components/mdns/mdns.c index fd3706f9f..401d93122 100644 --- a/components/mdns/mdns.c +++ b/components/mdns/mdns.c @@ -4819,6 +4819,10 @@ esp_err_t mdns_query_a(const char * name, uint32_t timeout, esp_ip4_addr_t * add return ESP_ERR_INVALID_ARG; } + if (strstr(name, ".local")) { + ESP_LOGW(TAG, "Please note that hostname must not contain domain name, as mDNS uses '.local' domain"); + } + err = mdns_query(name, NULL, NULL, MDNS_TYPE_A, timeout, 1, &result); if (err) { @@ -4853,6 +4857,10 @@ esp_err_t mdns_query_aaaa(const char * name, uint32_t timeout, esp_ip6_addr_t * return ESP_ERR_INVALID_ARG; } + if (strstr(name, ".local")) { + ESP_LOGW(TAG, "Please note that hostname must not contain domain name, as mDNS uses '.local' domain"); + } + err = mdns_query(name, NULL, NULL, MDNS_TYPE_AAAA, timeout, 1, &result); if (err) {