| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/local_discovery/service_discovery_host_client.h" | 5 #include "chrome/browser/local_discovery/service_discovery_host_client.h" |
| 6 | 6 |
| 7 #include "chrome/common/local_discovery/local_discovery_messages.h" | 7 #include "chrome/common/local_discovery/local_discovery_messages.h" |
| 8 #include "content/public/browser/browser_thread.h" | 8 #include "content/public/browser/browser_thread.h" |
| 9 #include "content/public/browser/utility_process_host.h" | 9 #include "content/public/browser/utility_process_host.h" |
| 10 #include "net/socket/socket_descriptor.h" | 10 #include "net/socket/socket_descriptor.h" |
| (...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 228 FROM_HERE, | 228 FROM_HERE, |
| 229 base::Bind(&ServiceDiscoveryHostClient::ShutdownOnIOThread, this)); | 229 base::Bind(&ServiceDiscoveryHostClient::ShutdownOnIOThread, this)); |
| 230 } | 230 } |
| 231 | 231 |
| 232 void ServiceDiscoveryHostClient::StartOnIOThread() { | 232 void ServiceDiscoveryHostClient::StartOnIOThread() { |
| 233 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); | 233 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
| 234 DCHECK(!utility_host_); | 234 DCHECK(!utility_host_); |
| 235 utility_host_ = UtilityProcessHost::Create( | 235 utility_host_ = UtilityProcessHost::Create( |
| 236 this, base::MessageLoopProxy::current().get())->AsWeakPtr(); | 236 this, base::MessageLoopProxy::current().get())->AsWeakPtr(); |
| 237 if (utility_host_) { | 237 if (utility_host_) { |
| 238 utility_host_->EnableZygote(); | |
| 239 utility_host_->EnableMDns(); | 238 utility_host_->EnableMDns(); |
| 240 utility_host_->StartBatchMode(); | 239 utility_host_->StartBatchMode(); |
| 241 | 240 |
| 242 #if defined(OS_POSIX) | 241 #if defined(OS_POSIX) |
| 243 base::FileDescriptor v4(net::CreatePlatformSocket(AF_INET, SOCK_DGRAM, 0), | 242 base::FileDescriptor v4(net::CreatePlatformSocket(AF_INET, SOCK_DGRAM, 0), |
| 244 true); | 243 true); |
| 245 base::FileDescriptor v6(net::CreatePlatformSocket(AF_INET6, SOCK_DGRAM, 0), | 244 base::FileDescriptor v6(net::CreatePlatformSocket(AF_INET6, SOCK_DGRAM, 0), |
| 246 true); | 245 true); |
| 247 LOG_IF(ERROR, v4.fd == net::kInvalidSocket) << "Can't create IPv4 socket."; | 246 LOG_IF(ERROR, v4.fd == net::kInvalidSocket) << "Can't create IPv4 socket."; |
| 248 LOG_IF(ERROR, v6.fd == net::kInvalidSocket) << "Can't create IPv6 socket."; | 247 LOG_IF(ERROR, v6.fd == net::kInvalidSocket) << "Can't create IPv6 socket."; |
| (...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 383 bool success, | 382 bool success, |
| 384 const net::IPAddressNumber& ip_address_ipv4, | 383 const net::IPAddressNumber& ip_address_ipv4, |
| 385 const net::IPAddressNumber& ip_address_ipv6) { | 384 const net::IPAddressNumber& ip_address_ipv6) { |
| 386 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 385 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| 387 DomainResolverCallbacks::iterator it = domain_resolver_callbacks_.find(id); | 386 DomainResolverCallbacks::iterator it = domain_resolver_callbacks_.find(id); |
| 388 if (it != domain_resolver_callbacks_.end() && !it->second.is_null()) | 387 if (it != domain_resolver_callbacks_.end() && !it->second.is_null()) |
| 389 it->second.Run(success, ip_address_ipv4, ip_address_ipv6); | 388 it->second.Run(success, ip_address_ipv4, ip_address_ipv6); |
| 390 } | 389 } |
| 391 | 390 |
| 392 } // namespace local_discovery | 391 } // namespace local_discovery |
| OLD | NEW |