Enable ipv6 by default for webrtc under a Finch experiment.

BUG=413437 (chromium)
https://code.google.com/p/chromium/issues/detail?id=413437

Review URL: https://webrtc-codereview.appspot.com/23529005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7184 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
guoweis@webrtc.org 2014-09-15 16:31:13 +00:00
parent 000d86792d
commit cd309e3168

View File

@ -39,6 +39,9 @@
#include "talk/session/media/channelmanager.h"
#include "webrtc/base/logging.h"
#include "webrtc/base/stringencode.h"
#ifdef WEBRTC_CHROMIUM_BUILD
#include "webrtc/system_wrappers/interface/field_trial.h"
#endif
namespace {
@ -353,12 +356,19 @@ bool PeerConnection::DoInitialize(
cricket::PORTALLOCATOR_ENABLE_SHARED_UFRAG |
cricket::PORTALLOCATOR_ENABLE_SHARED_SOCKET;
bool value;
// If IPv6 flag was specified, we'll not override it by experiment.
if (FindConstraint(
constraints,
MediaConstraintsInterface::kEnableIPv6,
&value, NULL) && value) {
constraints, MediaConstraintsInterface::kEnableIPv6, &value, NULL)) {
if (value) {
portallocator_flags |= cricket::PORTALLOCATOR_ENABLE_IPV6;
}
}
#ifdef WEBRTC_CHROMIUM_BUILD
else if (webrtc::field_trial::FindFullName("WebRTC-IPv6Default") ==
"Enabled") {
portallocator_flags |= cricket::PORTALLOCATOR_ENABLE_IPV6;
}
#endif // WEBRTC_CHROMIUM_BUILD
port_allocator_->set_flags(portallocator_flags);
// No step delay is used while allocating ports.