diff options
Diffstat (limited to 'mDNSResponder/mDNSMacOSX')
-rw-r--r-- | mDNSResponder/mDNSMacOSX/BATS/mDNSResponder.plist | 627 | ||||
-rw-r--r-- | mDNSResponder/mDNSMacOSX/dnssdutil-entitlements.plist | 12 | ||||
-rw-r--r-- | mDNSResponder/mDNSMacOSX/mDNSMacOSX.c | 19 | ||||
-rw-r--r-- | mDNSResponder/mDNSMacOSX/mDNSResponder.xcodeproj/project.pbxproj | 29 |
4 files changed, 680 insertions, 7 deletions
diff --git a/mDNSResponder/mDNSMacOSX/BATS/mDNSResponder.plist b/mDNSResponder/mDNSMacOSX/BATS/mDNSResponder.plist new file mode 100644 index 00000000..66a8c49d --- /dev/null +++ b/mDNSResponder/mDNSMacOSX/BATS/mDNSResponder.plist @@ -0,0 +1,627 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>Project</key> + <string>mDNSResponder</string> + <key>RadarComponents</key> + <dict> + <key>Name</key> + <string>mDNSResponder</string> + <key>Version</key> + <string>all</string> + </dict> + <key>Tests</key> + <array> + <dict> + <key>TestName</key> + <string>GAIPerf Advanced</string> + <key>Description</key> + <string>Tests correctness of resolving hostnames via DNS using the GAIPerf Advanced test suite.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <false/> + <key>Timeout</key> + <integer>600</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>gaiperf</string> + <string>--suite</string> + <string>advanced</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--skipPathEval</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 1-1-1</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of one service instance with a one-byte TXT record and one pair of A and AAAA records.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>1</string> + <string>--txtSize</string> + <string>1</string> + <string>--browseTime</string> + <string>3</string> + <string>--countA</string> + <string>1</string> + <string>--countAAAA</string> + <string>1</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--flushCache</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 1-1-1 (No Additionals)</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of one service instance with a one-byte TXT record and one pair of A and AAAA records. Responses from mdnsreplier contain no additional answers.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>1</string> + <string>--txtSize</string> + <string>1</string> + <string>--browseTime</string> + <string>3</string> + <string>--countA</string> + <string>1</string> + <string>--countAAAA</string> + <string>1</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--noAdditionals</string> + <string>--flushCache</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 10-100-2</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of ten service instances with 100-byte TXT records and two pairs of A and AAAA records.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>10</string> + <string>--txtSize</string> + <string>100</string> + <string>--browseTime</string> + <string>3</string> + <string>--countA</string> + <string>2</string> + <string>--countAAAA</string> + <string>2</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--flushCache</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 10-100-2 (No Additionals)</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of ten service instances with 100-byte TXT records and two pairs of A and AAAA records. Responses from mdnsreplier contain no additonal answers.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>10</string> + <string>--txtSize</string> + <string>100</string> + <string>--browseTime</string> + <string>3</string> + <string>--countA</string> + <string>2</string> + <string>--countAAAA</string> + <string>2</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--noAdditionals</string> + <string>--flushCache</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 100-500-5</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of 100 service instances with 500-byte TXT records and five pairs of A and AAAA records.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>100</string> + <string>--txtSize</string> + <string>500</string> + <string>--browseTime</string> + <string>5</string> + <string>--countA</string> + <string>5</string> + <string>--countAAAA</string> + <string>5</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--flushCache</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 100-500-5 (No Additionals)</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of 100 service instances with 500-byte TXT records and five pairs of A and AAAA records. Responses from mdnsreplier contain no additonal answers.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>100</string> + <string>--txtSize</string> + <string>500</string> + <string>--browseTime</string> + <string>5</string> + <string>--countA</string> + <string>5</string> + <string>--countAAAA</string> + <string>5</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--noAdditionals</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--flushCache</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 1-1-1 (No Cache Flush)</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of one service instance with a one-byte TXT record and one pair of A and AAAA records. Cache is not flushed beforehand.</string> + <key>AsRoot</key> + <false/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>1</string> + <string>--txtSize</string> + <string>1</string> + <string>--browseTime</string> + <string>3</string> + <string>--countA</string> + <string>1</string> + <string>--countAAAA</string> + <string>1</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 1-1-1 (No Cache Flush, No Additionals)</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of one service instance with a one-byte TXT record and one pair of A and AAAA records. Cache is not flushed beforehand. Responses from mdnsreplier contain no additional answers.</string> + <key>AsRoot</key> + <false/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>1</string> + <string>--txtSize</string> + <string>1</string> + <string>--browseTime</string> + <string>3</string> + <string>--countA</string> + <string>1</string> + <string>--countAAAA</string> + <string>1</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--noAdditionals</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 10-100-2 (No Cache Flush)</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of ten service instances with 100-byte TXT records and two pairs of A and AAAA records. Cache is not flushed beforehand.</string> + <key>AsRoot</key> + <false/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>10</string> + <string>--txtSize</string> + <string>100</string> + <string>--browseTime</string> + <string>3</string> + <string>--countA</string> + <string>2</string> + <string>--countAAAA</string> + <string>2</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 10-100-2 (No Cache Flush, No Additionals)</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of ten service instances with 100-byte TXT records and two pairs of A and AAAA records. Cache is not flushed beforehand. Responses from mdnsreplier contain no additional answers.</string> + <key>AsRoot</key> + <false/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>10</string> + <string>--txtSize</string> + <string>100</string> + <string>--browseTime</string> + <string>3</string> + <string>--countA</string> + <string>2</string> + <string>--countAAAA</string> + <string>2</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--noAdditionals</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 100-500-5 (No Cache Flush)</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of 100 service instances with 500-byte TXT records and five pairs of A and AAAA records. Cache is not flushed beforehand.</string> + <key>AsRoot</key> + <false/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>100</string> + <string>--txtSize</string> + <string>500</string> + <string>--browseTime</string> + <string>5</string> + <string>--countA</string> + <string>5</string> + <string>--countAAAA</string> + <string>5</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery 100-500-5 (No Cache Flush, No Additionals)</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of 100 service instances with 500-byte TXT records and five pairs of A and AAAA records. Cache is not flushed beforehand. Responses from mdnsreplier contain no additional answers.</string> + <key>AsRoot</key> + <false/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>100</string> + <string>--txtSize</string> + <string>500</string> + <string>--browseTime</string> + <string>5</string> + <string>--countA</string> + <string>5</string> + <string>--countAAAA</string> + <string>5</string> + <string>--ipv4</string> + <string>--ipv6</string> + <string>--noAdditionals</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery w/Packet Drops 10</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of ten service instances with 100-byte TXT records and two pairs of A and AAAA records. The first three responses per service instance are subject to a 0.5 probability of being dropped to test query retries.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>30</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>10</string> + <string>--txtSize</string> + <string>100</string> + <string>--browseTime</string> + <string>16</string> + <string>--countA</string> + <string>2</string> + <string>--countAAAA</string> + <string>2</string> + <string>--ipv6</string> + <string>--udrop</string> + <string>0.5</string> + <string>--mdrop</string> + <string>0.5</string> + <string>--maxDropCount</string> + <string>3</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--flushCache</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNS Discovery w/Packet Drops 100</string> + <key>Description</key> + <string>Tests mDNS discovery and resolution of 100 service instances with 100-byte TXT records and two pairs of A and AAAA records. The first three responses per service instance are subject to a 0.5 probability of being dropped to test query retries.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>30</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>mdnsdiscovery</string> + <string>--instanceCount</string> + <string>100</string> + <string>--txtSize</string> + <string>100</string> + <string>--browseTime</string> + <string>18</string> + <string>--countA</string> + <string>2</string> + <string>--countAAAA</string> + <string>2</string> + <string>--ipv6</string> + <string>--udrop</string> + <string>0.5</string> + <string>--mdrop</string> + <string>0.5</string> + <string>--maxDropCount</string> + <string>3</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--flushCache</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>DotLocal Queries</string> + <key>Description</key> + <string>Tests DNS and mDNS queries for domain names in the local domain.</string> + <key>AsRoot</key> + <false/> + <key>RequiresWiFi</key> + <true/> + <key>Timeout</key> + <integer>40</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>dotlocal</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>TCP Fallback</string> + <key>Description</key> + <string>Tests mDNSResponder's TCP fallback mechanism, which is triggered by UDP responses with invalid message IDs that would otherwise be acceptable.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <false/> + <key>Timeout</key> + <integer>60</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/local/bin/dnssdutil</string> + <string>test</string> + <string>gaiperf</string> + <string>--suite</string> + <string>basic</string> + <string>--format</string> + <string>json</string> + <string>--appendNewLine</string> + <string>--skipPathEval</string> + <string>--badUDPMode</string> + </array> + </dict> + <dict> + <key>TestName</key> + <string>mDNSResponder Leaks</string> + <key>Description</key> + <string>Checks mDNSResponder for memory leaks.</string> + <key>AsRoot</key> + <true/> + <key>RequiresWiFi</key> + <false/> + <key>Timeout</key> + <integer>10</integer> + <key>IgnoreOutput</key> + <true/> + <key>Command</key> + <array> + <string>/usr/bin/leaks</string> + <string>mDNSResponder</string> + </array> + </dict> + </array> +</dict> +</plist> diff --git a/mDNSResponder/mDNSMacOSX/dnssdutil-entitlements.plist b/mDNSResponder/mDNSMacOSX/dnssdutil-entitlements.plist new file mode 100644 index 00000000..750f16a2 --- /dev/null +++ b/mDNSResponder/mDNSMacOSX/dnssdutil-entitlements.plist @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>com.apple.security.network.client</key> + <true/> + <key>com.apple.security.network.server</key> + <true/> + <key>com.apple.SystemConfiguration.SCDynamicStore-write-access</key> + <true/> +</dict> +</plist> diff --git a/mDNSResponder/mDNSMacOSX/mDNSMacOSX.c b/mDNSResponder/mDNSMacOSX/mDNSMacOSX.c index 51fc67a8..47142935 100644 --- a/mDNSResponder/mDNSMacOSX/mDNSMacOSX.c +++ b/mDNSResponder/mDNSMacOSX/mDNSMacOSX.c @@ -6875,7 +6875,7 @@ typedef struct #include <IOKit/IOKitLib.h> #include <dns_util.h> -mDNSlocal mDNSu16 GetPortArray(int trans, mDNSIPPort *portarray) +mDNSlocal mDNSu16 GetPortArray(int trans, mDNSIPPort *portarray, mDNSBool TCPKAOnly, mDNSBool supportsTCPKA) { mDNS *const m = &mDNSStorage; const domainlabel *const tp = (trans == mDNSTransport_UDP) ? (const domainlabel *)"\x4_udp" : (const domainlabel *)"\x4_tcp"; @@ -6884,6 +6884,14 @@ mDNSlocal mDNSu16 GetPortArray(int trans, mDNSIPPort *portarray) AuthRecord *rr; for (rr = m->ResourceRecords; rr; rr=rr->next) { + mDNSBool isKeepAliveRecord = mDNS_KeepaliveRecord(&rr->resrec); + // Skip over all other records if we are registering TCP KeepAlive records only + // Skip over TCP KeepAlive records if the policy prohibits it or if the interface does not support TCP Keepalive + // supportsTCPKA is set to true if both policy and interface allow TCP Keepalive + if ((TCPKAOnly && !isKeepAliveRecord) || (isKeepAliveRecord && !supportsTCPKA)) { + continue; + } + if (rr->resrec.rrtype == kDNSType_SRV && SameDomainLabel(ThirdLabel(rr->resrec.name)->c, tp->c)) { if (!portarray) @@ -7013,6 +7021,7 @@ mDNSlocal void GetProxyRecords(DNSMessage *const msg, uint32_t *const numbytes, // Skip over all other records if we are registering TCP KeepAlive records only // Skip over TCP KeepAlive records if the policy prohibits it or if the interface does not support TCP Keepalive + // supportsTCPKA is set to true if both policy and interface allow TCP Keepalive if ((TCPKAOnly && !isKeepAliveRecord) || (isKeepAliveRecord && !supportsTCPKA)) continue; @@ -7134,8 +7143,8 @@ mDNSexport mStatus ActivateLocalProxy(NetworkInterfaceInfo *const intf, mDNSBool mDNSOffloadCmd cmd; mDNSPlatformMemZero(&cmd, sizeof(cmd)); // When compiling 32-bit, make sure top 32 bits of 64-bit pointers get initialized to zero cmd.command = cmd_mDNSOffloadRR; - cmd.numUDPPorts = GetPortArray(mDNSTransport_UDP, mDNSNULL); - cmd.numTCPPorts = GetPortArray(mDNSTransport_TCP, mDNSNULL); + cmd.numUDPPorts = GetPortArray(mDNSTransport_UDP, mDNSNULL, TCPKAOnly, supportsTCPKA); + cmd.numTCPPorts = GetPortArray(mDNSTransport_TCP, mDNSNULL, TCPKAOnly, supportsTCPKA); cmd.numRRRecords = CountProxyRecords(&cmd.rrBufferSize, intf, TCPKAOnly, supportsTCPKA); cmd.compression = sizeof(DNSMessageHeader); @@ -7151,8 +7160,8 @@ mDNSexport mStatus ActivateLocalProxy(NetworkInterfaceInfo *const intf, mDNSBool cmd.tcpPorts.ptr, cmd.numTCPPorts); if (msg && cmd.rrRecords.ptr) GetProxyRecords(msg, &cmd.rrBufferSize, cmd.rrRecords.ptr, TCPKAOnly, supportsTCPKA); - if (cmd.udpPorts.ptr) cmd.numUDPPorts = GetPortArray(mDNSTransport_UDP, cmd.udpPorts.ptr); - if (cmd.tcpPorts.ptr) cmd.numTCPPorts = GetPortArray(mDNSTransport_TCP, cmd.tcpPorts.ptr); + if (cmd.udpPorts.ptr) cmd.numUDPPorts = GetPortArray(mDNSTransport_UDP, cmd.udpPorts.ptr, TCPKAOnly, supportsTCPKA); + if (cmd.tcpPorts.ptr) cmd.numTCPPorts = GetPortArray(mDNSTransport_TCP, cmd.tcpPorts.ptr, TCPKAOnly, supportsTCPKA); char outputData[2]; size_t outputDataSize = sizeof(outputData); diff --git a/mDNSResponder/mDNSMacOSX/mDNSResponder.xcodeproj/project.pbxproj b/mDNSResponder/mDNSMacOSX/mDNSResponder.xcodeproj/project.pbxproj index bbbd12ff..8067d931 100644 --- a/mDNSResponder/mDNSMacOSX/mDNSResponder.xcodeproj/project.pbxproj +++ b/mDNSResponder/mDNSMacOSX/mDNSResponder.xcodeproj/project.pbxproj @@ -347,6 +347,7 @@ BDB04224203FF18000419961 /* dns_sd_private.h in Headers */ = {isa = PBXBuildFile; fileRef = BDA9A7871B3A923600523835 /* dns_sd_private.h */; settings = {ATTRIBUTES = (Private, ); }; }; BDB61845206ADB9D00AFF600 /* com.apple.mDNSResponder.plist in Copy Base Logging Profile */ = {isa = PBXBuildFile; fileRef = BDB61843206ADB7700AFF600 /* com.apple.mDNSResponder.plist */; }; BDBF9B941ED74B9C001498A8 /* DNS64State.h in Headers */ = {isa = PBXBuildFile; fileRef = BDBF9B931ED74B8C001498A8 /* DNS64State.h */; }; + BDF8BB902208E2A800419B62 /* mDNSResponder.plist in Copy BATS test plist */ = {isa = PBXBuildFile; fileRef = BDF8BB8F2208E26E00419B62 /* mDNSResponder.plist */; }; D284BE540ADD80740027CCDF /* dnssd_ipc.h in Headers */ = {isa = PBXBuildFile; fileRef = F5E11B5B04A28126019798ED /* dnssd_ipc.h */; }; D284BE580ADD80740027CCDF /* mDNS.c in Sources */ = {isa = PBXBuildFile; fileRef = 6575FBE9022EAF5A00000109 /* mDNS.c */; }; D284BE590ADD80740027CCDF /* uDNS.c in Sources */ = {isa = PBXBuildFile; fileRef = 7F18A9F70587CEF6001880B3 /* uDNS.c */; }; @@ -774,6 +775,17 @@ name = "Copy AppleInternal Logging Profile"; runOnlyForDeploymentPostprocessing = 1; }; + BDF8BB8A2208E09D00419B62 /* Copy BATS test plist */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 8; + dstPath = /AppleInternal/CoreOS/BATS/unit_tests; + dstSubfolderSpec = 0; + files = ( + BDF8BB902208E2A800419B62 /* mDNSResponder.plist in Copy BATS test plist */, + ); + name = "Copy BATS test plist"; + runOnlyForDeploymentPostprocessing = 1; + }; D284BE6A0ADD80740027CCDF /* CopyFiles */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 8; @@ -1006,6 +1018,7 @@ BDB61846206ADDDF00AFF600 /* com.apple.mDNSResponder.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = com.apple.mDNSResponder.plist; sourceTree = "<group>"; }; BDBF9B931ED74B8C001498A8 /* DNS64State.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DNS64State.h; sourceTree = "<group>"; }; BDE238C11DF69D8300B9F696 /* dns_sd_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dns_sd_internal.h; path = ../mDNSShared/dns_sd_internal.h; sourceTree = "<group>"; }; + BDF8BB8F2208E26E00419B62 /* mDNSResponder.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = mDNSResponder.plist; sourceTree = "<group>"; }; D284BE730ADD80740027CCDF /* mDNSResponder */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = mDNSResponder; sourceTree = BUILT_PRODUCTS_DIR; }; D284BEB00ADD80920027CCDF /* dns-sd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "dns-sd"; sourceTree = BUILT_PRODUCTS_DIR; }; D284BEBE0ADD809A0027CCDF /* libjdns_sd.jnilib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libjdns_sd.jnilib; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -1297,6 +1310,7 @@ BD9BA7561EAF929C00658CCF /* Frameworks */, BDB61842206ADB7700AFF600 /* LoggingProfiles */, BD28AE8D207B88F600F0B257 /* Scripts */, + BDF8BB8E2208E26E00419B62 /* BATS */, ); name = mDNSResponder; sourceTree = "<group>"; @@ -1656,6 +1670,14 @@ path = AppleInternal; sourceTree = "<group>"; }; + BDF8BB8E2208E26E00419B62 /* BATS */ = { + isa = PBXGroup; + children = ( + BDF8BB8F2208E26E00419B62 /* mDNSResponder.plist */, + ); + path = BATS; + sourceTree = "<group>"; + }; DB2CC4420662DCE500335AB3 /* Java Support */ = { isa = PBXGroup; children = ( @@ -2203,6 +2225,7 @@ 8418673D15AB8BFF00BB7F70 /* Copy Base Logging Profile */, BD75E93F206ADEAD00656ED3 /* Copy AppleInternal Logging Profile */, BD28AE8C207B888E00F0B257 /* Copy diagnose scripts */, + BDF8BB8A2208E09D00419B62 /* Copy BATS test plist */, ); buildRules = ( ); @@ -3718,7 +3741,6 @@ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; @@ -3763,7 +3785,6 @@ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; @@ -4611,6 +4632,8 @@ CLANG_WARN_UNREACHABLE_CODE = YES_AGGRESSIVE; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CLANG_WARN__EXIT_TIME_DESTRUCTORS = YES; + CODE_SIGN_ENTITLEMENTS = "dnssdutil-entitlements.plist"; + CODE_SIGN_IDENTITY = "-"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks", @@ -4676,6 +4699,8 @@ CLANG_WARN_UNREACHABLE_CODE = YES_AGGRESSIVE; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CLANG_WARN__EXIT_TIME_DESTRUCTORS = YES; + CODE_SIGN_ENTITLEMENTS = "dnssdutil-entitlements.plist"; + CODE_SIGN_IDENTITY = "-"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks", |