X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=avahi-core%2Fbrowse.c;h=5fd3a011b55f2f218ccdb3e7d11fe1dcbac1a4e5;hb=3073103812f0ea376582eb0ff1479945a847b361;hp=09bc0fa1f869b92aae244dc88b1dbac8b922f85b;hpb=263515cd1d7b52ce2ad3dc55a93b9d6f730133f1;p=catta diff --git a/avahi-core/browse.c b/avahi-core/browse.c index 09bc0fa..5fd3a01 100644 --- a/avahi-core/browse.c +++ b/avahi-core/browse.c @@ -36,7 +36,7 @@ #include "log.h" #include "querier.h" -#define AVAHI_MAX_LOOKUPS_PER_BROWSER 15 +#define AVAHI_LOOKUPS_PER_BROWSER_MAX 15 struct AvahiSRBLookup { AvahiSRecordBrowser *record_browser; @@ -92,7 +92,7 @@ static AvahiSRBLookup* lookup_new( assert(AVAHI_IF_VALID(interface)); assert(AVAHI_PROTO_VALID(protocol)); - if (b->n_lookups >= AVAHI_MAX_LOOKUPS_PER_BROWSER) + if (b->n_lookups >= AVAHI_LOOKUPS_PER_BROWSER_MAX) /* We don't like cyclic CNAMEs */ return NULL; @@ -280,6 +280,9 @@ static void lookup_multicast_callback( /* It's a normal record, so let's call the user callback */ assert(avahi_key_equal(b->key, l->key)); + if (avahi_server_is_record_local(b->server, interface, protocol, r)) + flags |= AVAHI_LOOKUP_RESULT_LOCAL; + b->callback(b, interface, protocol, event, r, flags, b->userdata); } break;