diff options
Diffstat (limited to 'mDNSResponder/mDNSMacOSX')
-rw-r--r-- | mDNSResponder/mDNSMacOSX/daemon.c | 3 | ||||
-rw-r--r-- | mDNSResponder/mDNSMacOSX/mDNSMacOSX.c | 8 | ||||
-rw-r--r-- | mDNSResponder/mDNSMacOSX/mDNSMacOSX.h | 1 |
3 files changed, 9 insertions, 3 deletions
diff --git a/mDNSResponder/mDNSMacOSX/daemon.c b/mDNSResponder/mDNSMacOSX/daemon.c index e16f1dbf..695e4114 100644 --- a/mDNSResponder/mDNSMacOSX/daemon.c +++ b/mDNSResponder/mDNSMacOSX/daemon.c @@ -517,7 +517,7 @@ mDNSexport void INFOCallback(void) for (s = mDNSStorage.DNSServers; s; s = s->next) { NetworkInterfaceInfoOSX *ifx = IfindexToInterfaceInfoOSX(s->interface); - LogMsgNoIdent("DNS Server %##s %s%s%#a:%d %d %s %d %d %s %s %s %s %s", + LogMsgNoIdent("DNS Server %##s %s%s%#a:%d %d %s %d %d %s %s %s %s %s %s", s->domain.c, ifx ? ifx->ifinfo.ifname : "", ifx ? " " : "", &s->addr, mDNSVal16(s->port), s->penaltyTime ? s->penaltyTime - mDNS_TimeNow(&mDNSStorage) : 0, DNSScopeToString(s->scoped), s->timeout, s->resGroupID, @@ -525,6 +525,7 @@ mDNSexport void INFOCallback(void) s->req_AAAA ? "v6" : "!v6", s->cellIntf ? "cell" : "!cell", s->isExpensive ? "exp" : "!exp", + s->isCLAT46 ? "clat46" : "!clat46", s->DNSSECAware ? "DNSSECAware" : "!DNSSECAware"); } } diff --git a/mDNSResponder/mDNSMacOSX/mDNSMacOSX.c b/mDNSResponder/mDNSMacOSX/mDNSMacOSX.c index f64e28af..51fc67a8 100644 --- a/mDNSResponder/mDNSMacOSX/mDNSMacOSX.c +++ b/mDNSResponder/mDNSMacOSX/mDNSMacOSX.c @@ -3612,6 +3612,7 @@ mDNSlocal NetworkInterfaceInfoOSX *AddInterfaceToList(struct ifaddrs *ifa, mDNSs i->isExpensive = (eflags & IFEF_EXPENSIVE) ? mDNStrue: mDNSfalse; i->isAWDL = (eflags & IFEF_AWDL) ? mDNStrue: mDNSfalse; + i->isCLAT46 = (eflags & IFEF_CLAT46) ? mDNStrue: mDNSfalse; if (eflags & IFEF_AWDL) { // Set SupportsUnicastMDNSResponse false for the AWDL interface since unicast reserves @@ -5470,6 +5471,7 @@ mDNSlocal void ConfigDNSServers(dns_resolver_t *r, mDNSInterfaceID interface, mD mDNSBool reqA, reqAAAA; NetworkInterfaceInfoOSX *info; mDNSBool isExpensive; + mDNSBool isCLAT46; if (!r->domain || !*r->domain) { @@ -5492,7 +5494,8 @@ mDNSlocal void ConfigDNSServers(dns_resolver_t *r, mDNSInterfaceID interface, mD reqA = (r->flags & DNS_RESOLVER_FLAGS_REQUEST_A_RECORDS ? mDNStrue : mDNSfalse); reqAAAA = (r->flags & DNS_RESOLVER_FLAGS_REQUEST_AAAA_RECORDS ? mDNStrue : mDNSfalse); info = IfindexToInterfaceInfoOSX(interface); - isExpensive = info ? info->isExpensive : mDNSfalse; + isExpensive = (info && info->isExpensive) ? mDNStrue : mDNSfalse; + isCLAT46 = (info && info->isCLAT46) ? mDNStrue : mDNSfalse; for (n = 0; n < r->n_nameserver; n++) { @@ -5516,7 +5519,8 @@ mDNSlocal void ConfigDNSServers(dns_resolver_t *r, mDNSInterfaceID interface, mD // it takes the sum of all the timeout values for all DNS servers. By doing this, it // tries all the DNS servers in a specified timeout s = mDNS_AddDNSServer(&mDNSStorage, &d, interface, serviceID, &saddr, r->port ? mDNSOpaque16fromIntVal(r->port) : UnicastDNSPort, scope, - (n == 0 ? (r->timeout ? r->timeout : DEFAULT_UDNS_TIMEOUT) : 0), cellIntf, isExpensive, resGroupID, reqA, reqAAAA, mDNStrue); + (n == 0 ? (r->timeout ? r->timeout : DEFAULT_UDNS_TIMEOUT) : 0), cellIntf, isExpensive, isCLAT46, + resGroupID, reqA, reqAAAA, mDNStrue); if (s) { LogInfo("ConfigDNSServers(%s): DNS server %#a:%d for domain %##s", DNSScopeToString(scope), &s->addr, mDNSVal16(s->port), d.c); diff --git a/mDNSResponder/mDNSMacOSX/mDNSMacOSX.h b/mDNSResponder/mDNSMacOSX/mDNSMacOSX.h index f189b07f..62309595 100644 --- a/mDNSResponder/mDNSMacOSX/mDNSMacOSX.h +++ b/mDNSResponder/mDNSMacOSX/mDNSMacOSX.h @@ -154,6 +154,7 @@ struct NetworkInterfaceInfoOSX_struct u_int BPF_len; mDNSBool isExpensive; // True if this interface has the IFEF_EXPENSIVE flag set. mDNSBool isAWDL; // True if this interface has the IFEF_AWDL flag set. + mDNSBool isCLAT46; // True if this interface has the IFEF_CLAT46 flag set. #ifdef MDNSRESPONDER_USES_LIB_DISPATCH_AS_PRIMARY_EVENT_LOOP_MECHANISM dispatch_source_t BPF_source; #else |