X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fmdnsd.git;a=blobdiff_plain;f=dns.c;h=550befc24c1593ca2f7bcef14fed22456304908f;hp=7ca705ea416653099bde9a3329c81119d5bb9bae;hb=9879d5fcafed84a912baa8e2e2d3e73df1a9236d;hpb=55a5d75b5c051c5828b0b6390726b8353f909b3c diff --git a/dns.c b/dns.c index 7ca705e..550befc 100644 --- a/dns.c +++ b/dns.c @@ -360,12 +360,17 @@ parse_question(struct interface *iface, char *name, struct dns_question *q) switch (q->type) { case TYPE_ANY: - if (!strcmp(name, mdns_hostname_local)) + if (!strcmp(name, mdns_hostname_local)) { service_reply(iface, NULL, announce_ttl); + dns_reply_a(iface, announce_ttl); + } break; case TYPE_PTR: - service_announce_services(iface, name, announce_ttl); + if (!strcmp(name, sdudp)) + service_announce_services(iface, 0, announce_ttl); + else if (!strcmp(name, sdtcp)) + service_announce_services(iface, 1, announce_ttl); service_reply(iface, name, announce_ttl); break; @@ -394,7 +399,7 @@ dns_handle_packet(struct interface *iface, struct sockaddr *s, uint16_t port, ui } if (h->questions && !iface->multicast && port != 5353) - // silently drop unicast questions that dont originate from port 5353 + /* silently drop unicast questions that dont originate from port 5353 */ return; while (h->questions-- > 0) {