Enable mDNS on Darwin
We have to disable IPv6 to get this going, but nobody was yet using IPv6, so that should be fine for now. Test: Verified mDNS discovery on a MacBook Bug: 31042497 (cherry picked from 9ae65de087171072f3890a81b074ae27db319508) Change-Id: I628f0a1e9c4784db42fa56f5faf2904b6e1cf548
This commit is contained in:
parent
d6c8091e9f
commit
304150a521
|
@ -151,7 +151,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)
|
||||
|
|
|
@ -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) {
|
||||
|
|
Loading…
Reference in New Issue