X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=interface.c;h=463335a89034692d2ca1048948dc11d0f528ab5b;hb=9879d5fcafed84a912baa8e2e2d3e73df1a9236d;hp=c8d89721d05f15f6e248732f8b694be700f2f45f;hpb=846369c71ce8538170d3fd088c44e52f4f197f5c;p=project%2Fmdnsd.git diff --git a/interface.c b/interface.c index c8d8972..463335a 100644 --- a/interface.c +++ b/interface.c @@ -306,7 +306,7 @@ read_socket6(struct uloop_fd *u, unsigned int events) if (inp->ipi6_ifindex != iface->ifindex) fprintf(stderr, "invalid iface index %d != %d\n", ifindex, iface->ifindex); - else if (!interface_valid_src((void *) &iface->v4_addr, (void *) &iface->v4_netmask, (void *) &from.sin6_addr, 16)) + else if (!interface_valid_src((void *) &iface->v6_addr, (void *) &iface->v6_netmask, (void *) &from.sin6_addr, 16)) dns_handle_packet(iface, (struct sockaddr *) &from, from.sin6_port, buffer, len); } @@ -417,7 +417,7 @@ reconnect_socket4(struct uloop_timeout *timeout) uloop_fd_add(&iface->fd, ULOOP_READ); if (iface->multicast) { - dns_send_question(iface, "_services._dns-sd._udp.local", TYPE_PTR, 1); + dns_send_question(iface, "_services._dns-sd._udp.local", TYPE_PTR, 0); announce_init(iface); } @@ -465,7 +465,7 @@ reconnect_socket6(struct uloop_timeout *timeout) uloop_fd_add(&iface->fd, ULOOP_READ); if (iface->multicast) { - dns_send_question(iface, "_services._dns-sd._udp.local", TYPE_PTR, 1); + dns_send_question(iface, "_services._dns-sd._udp.local", TYPE_PTR, 0); announce_init(iface); } @@ -621,7 +621,7 @@ void interface_shutdown(void) vlist_for_each_element(&interfaces, iface, node) if (iface->fd.fd > 0 && iface->multicast) { service_announce(iface, 0); - service_reply_a(iface, 0); + dns_reply_a(iface, 0); } vlist_for_each_element(&interfaces, iface, node) interface_close(iface);