+
+ b->ref = 1;
+ b->server = server;
+ b->callback = callback;
+ b->userdata = userdata;
+ b->record_browser = NULL;
+ b->type = type;
+ b->all_for_now_scheduled = 0;
+
+ AVAHI_LLIST_PREPEND(AvahiSDomainBrowser, browser, server->domain_browsers, b);
+
+ if (!(k = avahi_key_new(n, AVAHI_DNS_CLASS_IN, AVAHI_DNS_TYPE_PTR))) {
+ avahi_server_set_errno(server, AVAHI_ERR_NO_MEMORY);
+ goto fail;
+ }
+
+ if (!(b->record_browser = avahi_s_record_browser_new(server, interface, protocol, k, flags, record_browser_callback, b)))
+ goto fail;
+
+ avahi_key_unref(k);
+
+ b->defer_event = avahi_time_event_new(server->time_event_queue, NULL, defer_callback, b);