mdns: always send A/AAAA records in announcements

This commit is contained in:
Jiacheng Guo 2021-12-03 17:50:57 +08:00
parent fcd634faec
commit 456f80b754

View File

@ -1837,7 +1837,6 @@ static mdns_tx_packet_t * _mdns_create_announce_packet(mdns_if_t tcpip_if, mdns_
*/
static mdns_tx_packet_t * _mdns_create_announce_from_probe(mdns_tx_packet_t * probe)
{
mdns_tx_packet_t * packet = _mdns_alloc_packet_default(probe->tcpip_if, probe->ip_protocol);
if (!packet) {
return NULL;
@ -1854,6 +1853,12 @@ static mdns_tx_packet_t * _mdns_create_announce_from_probe(mdns_tx_packet_t * pr
_mdns_free_tx_packet(packet);
return NULL;
}
mdns_host_item_t *host = mdns_get_host_item(s->service->hostname);
if (!_mdns_alloc_answer(&packet->answers, MDNS_TYPE_A, NULL, host, true, false)
|| !_mdns_alloc_answer(&packet->answers, MDNS_TYPE_AAAA, NULL, host, true, false)) {
_mdns_free_tx_packet(packet);
return NULL;
}
} else if (s->type == MDNS_TYPE_A || s->type == MDNS_TYPE_AAAA) {
if (!_mdns_alloc_answer(&packet->answers, s->type, NULL, s->host, true, false)) {