static void* reflect_cache_walk_callback(AvahiCache *c, AvahiKey *pattern, AvahiCacheEntry *e, void* userdata) {
AvahiServer *s = userdata;
+ AvahiRecord* r;
assert(c);
assert(pattern);
assert(e);
assert(s);
+ /* Don't reflect cache entry with ipv6 link-local addresses. */
+ r = e->record;
+ if ((r->key->type == AVAHI_DNS_TYPE_AAAA) &&
+ (r->data.aaaa.address.address[0] == 0xFE) &&
+ (r->data.aaaa.address.address[1] == 0x80))
+ return NULL;
+
avahi_record_list_push(s->record_list, e->record, e->cache_flush, 0, 0);
return NULL;
}
c->host_name = NULL;
c->domain_name = NULL;
c->check_response_ttl = 0;
- c->publish_hinfo = 1;
+ c->publish_hinfo = 0;
c->publish_addresses = 1;
- c->publish_workstation = 1;
+ c->publish_no_reverse = 0;
+ c->publish_workstation = 0;
c->publish_domain = 1;
c->use_iff_running = 0;
c->enable_reflector = 0;