Enable mDNS on Darwin am: 304150a521

am: bd2c93fab0

Change-Id: Ic05f4e2c36f5f4ea70ce876fdf8d6d66ea69cd32
This commit is contained in:
Casey Dahlin 2017-03-10 01:21:17 +00:00 committed by android-build-merger
commit 31a2258afe
2 changed files with 9 additions and 2 deletions

View File

@ -150,7 +150,7 @@ LOCAL_SRC_FILES_linux := $(LIBADB_linux_SRC_FILES)
LOCAL_SRC_FILES_windows := $(LIBADB_windows_SRC_FILES)
LOCAL_SRC_FILES_linux += transport_mdns.cpp
LOCAL_SRC_FILES_darwin += transport_mdns_unsupported.cpp
LOCAL_SRC_FILES_darwin += transport_mdns.cpp
LOCAL_SRC_FILES_windows += transport_mdns_unsupported.cpp
LOCAL_SANITIZE := $(adb_host_sanitize)

View File

@ -85,10 +85,17 @@ class ResolvedService : public AsyncServiceRef {
const char* hosttarget, uint16_t port) :
name_(name),
port_(port) {
/* TODO: We should be able to get IPv6 support by adding
* kDNSServiceProtocol_IPv6 to the flags below. However, when we do
* this, we get served link-local addresses that are usually useless to
* connect to. What's more, we seem to /only/ get those and nothing else.
* If we want IPv6 in the future we'll have to figure out why.
*/
DNSServiceErrorType ret =
DNSServiceGetAddrInfo(
&sdRef_, 0, interfaceIndex,
kDNSServiceProtocol_IPv6|kDNSServiceProtocol_IPv4, hosttarget,
kDNSServiceProtocol_IPv4, hosttarget,
register_service_ip, reinterpret_cast<void*>(this));
if (ret != kDNSServiceErr_NoError) {