static void
service_update(struct vlist_tree *tree, struct vlist_node *node_new,
struct vlist_node *node_old);
static struct blob_buf b;
static VLIST_TREE(services, avl_strcmp, service_update, false, false);
static void
service_update(struct vlist_tree *tree, struct vlist_node *node_new,
struct vlist_node *node_old);
static struct blob_buf b;
static VLIST_TREE(services, avl_strcmp, service_update, false, false);
static char *sdudp = "_services._dns-sd._udp.local";
static char *sdtcp = "_services._dns-sd._tcp.local";
static char *sdudp = "_services._dns-sd._udp.local";
static char *sdtcp = "_services._dns-sd._tcp.local";
- snprintf(buffer, sizeof(buffer), "%s.%s", hostname, domain);
+ snprintf(buffer, sizeof(buffer), "%s.%s", mdns_hostname, domain);
- len += dn_comp(host, mdns_buf + len, sizeof(mdns_buf) - len, NULL, NULL);
+ len += dn_comp(mdns_hostname_local, mdns_buf + len, sizeof(mdns_buf) - len, NULL, NULL);
if (len <= sizeof(*sd))
return;
sd->port = cpu_to_be16(s->port);
dns_add_answer(TYPE_SRV, mdns_buf, len);
if (len <= sizeof(*sd))
return;
sd->port = cpu_to_be16(s->port);
dns_add_answer(TYPE_SRV, mdns_buf, len);
char *service = strstr(host, "._");
if (!s->active || !service || !service_timeout(s))
char *service = strstr(host, "._");
if (!s->active || !service || !service_timeout(s))