mdns: always send A/AAAA records in announcements
@@ -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)) {
