mirror of
https://github.com/espressif/esp-protocols.git
synced 2025-06-30 03:40:59 +02:00
fix(mdns): Fix responder to ignore only invalid queries
not the entire packet, so we can still reply to next questions Closes https://github.com/espressif/esp-protocols/issues/754
This commit is contained in:
@ -1879,7 +1879,11 @@ static void _mdns_create_answer_from_parsed_packet(mdns_parsed_packet_t *parsed_
|
|||||||
shared = q->type == MDNS_TYPE_PTR || q->type == MDNS_TYPE_SDPTR || !parsed_packet->probe;
|
shared = q->type == MDNS_TYPE_PTR || q->type == MDNS_TYPE_SDPTR || !parsed_packet->probe;
|
||||||
if (q->type == MDNS_TYPE_SRV || q->type == MDNS_TYPE_TXT) {
|
if (q->type == MDNS_TYPE_SRV || q->type == MDNS_TYPE_TXT) {
|
||||||
mdns_srv_item_t *service = _mdns_get_service_item_instance(q->host, q->service, q->proto, NULL);
|
mdns_srv_item_t *service = _mdns_get_service_item_instance(q->host, q->service, q->proto, NULL);
|
||||||
if (service == NULL || !_mdns_create_answer_from_service(packet, service->service, q, shared, send_flush)) {
|
if (service == NULL) { // Service not found, but we continue to the next question
|
||||||
|
q = q->next;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (!_mdns_create_answer_from_service(packet, service->service, q, shared, send_flush)) {
|
||||||
_mdns_free_tx_packet(packet);
|
_mdns_free_tx_packet(packet);
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
|
Reference in New Issue
Block a user