History log of /external/webrtc/webrtc/base/network.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
06689a1d17c15002e02d08e4299b6842693431cd 31-Dec-2015 thakis <thakis@chromium.org> Fix a -Wunused-function warning in gn builds.

BUG=chromium:573250

Review URL: https://codereview.webrtc.org/1552863002

Cr-Commit-Position: refs/heads/master@{#11145}
/external/webrtc/webrtc/base/network.cc
0c7e9f540b282d60b94081f601a1694054d8646e 29-Dec-2015 Taylor Brandstetter <deadbeef@webrtc.org> Removing webrtc::PortAllocatorFactoryInterface.

ICE servers are now passed directly into PortAllocator,
making PortAllocatorFactoryInterface redundant. This CL also
moves SetNetworkIgnoreMask to PortAllocator.

R=phoglund@webrtc.org, pthatcher@webrtc.org, tkchin@webrtc.org

Review URL: https://codereview.webrtc.org/1520963002 .

Cr-Commit-Position: refs/heads/master@{#11139}
/external/webrtc/webrtc/base/network.cc
9faf154960767e96afdf8a280a0a5c6c7e402f67 28-Dec-2015 Guo-wei Shieh <guoweis@webrtc.org> Reland 1531763006

Enable IPv6 temporary address filtering on iOS.

We'll only use temporary address for IPv6. However, due to a bug in iOS sdk, the necessary headers are not included. This change copies the minimum necessary definitions such that we could retrieve the ip attributes.

BUG=webrtc:4343

Committed: https://crrev.com/29488c23644721c10a45eba74c67602b0262e582
Cr-Commit-Position: refs/heads/master@{#11114}

patch from issue 1531763006 at patchset 200001 (http://crrev.com/1531763006#ps200001)

TBR=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1551703002 .

Cr-Commit-Position: refs/heads/master@{#11133}
/external/webrtc/webrtc/base/network.cc
a6c86b23fea1408367c00c4ce20d754a21476e0b 23-Dec-2015 Guo-wei Shieh <guoweis@webrtc.org> Revert "Enable IPv6 temporary address filtering on iOS."

This reverts commit 29488c23644721c10a45eba74c67602b0262e582.

This broke chromium.fyi bot.

TBR=pthatcher@webrtc.org
BUG=

Review URL: https://codereview.webrtc.org/1547883002 .

Cr-Commit-Position: refs/heads/master@{#11115}
/external/webrtc/webrtc/base/network.cc
29488c23644721c10a45eba74c67602b0262e582 23-Dec-2015 guoweis <guoweis@webrtc.org> Enable IPv6 temporary address filtering on iOS.

We'll only use temporary address for IPv6. However, due to a bug in iOS sdk, the necessary headers are not included. This change copies the minimum necessary definitions such that we could retrieve the ip attributes.

BUG=webrtc:4343

Review URL: https://codereview.webrtc.org/1531763006

Cr-Commit-Position: refs/heads/master@{#11114}
/external/webrtc/webrtc/base/network.cc
db8cf50c5994a1ca37f85d7ea17cadb96c1fb93a 21-Dec-2015 honghaiz <honghaiz@webrtc.org> Fix two problems in network.cc:
1. It signals network changed events whenever there are more than one IP address in a network.
2. It does not signal network changed events if a network disconnects and connects again.
Also changed DumpNetworks for better debugging.

BUG=webrtc:5096

Review URL: https://codereview.webrtc.org/1421433003

Cr-Commit-Position: refs/heads/master@{#11107}
/external/webrtc/webrtc/base/network.cc
a34c39e549f384585730d0247d8b912419772b74 25-Nov-2015 Guo-wei Shieh <guoweis@webrtc.org> GetDefaultLocalAddress should return false when the address is invalid

BUG=
R=pthatcher@webrtc.org

Committed: https://crrev.com/67c6df6153b7b6dceb2b569daf683a498b2fc13c
Cr-Commit-Position: refs/heads/master@{#10779}

Review URL: https://codereview.webrtc.org/1471203002 .

Cr-Commit-Position: refs/heads/master@{#10794}
/external/webrtc/webrtc/base/network.cc
953eabc0273ba0566f2889904dd4ffb6ee50bfa9 24-Nov-2015 Guo-wei Shieh <guoweis@webrtc.org> Revert "GetDefaultLocalAddress should return false when the address is invalid"

This reverts commit 67c6df6153b7b6dceb2b569daf683a498b2fc13c.

TBR=pthatcher@webrtc.org
BUG=

Review URL: https://codereview.webrtc.org/1470363002 .

Cr-Commit-Position: refs/heads/master@{#10780}
/external/webrtc/webrtc/base/network.cc
67c6df6153b7b6dceb2b569daf683a498b2fc13c 24-Nov-2015 Guo-wei Shieh <guoweis@webrtc.org> GetDefaultLocalAddress should return false when the address is invalid

BUG=
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1471203002 .

Cr-Commit-Position: refs/heads/master@{#10779}
/external/webrtc/webrtc/base/network.cc
9af97f89103d8f1f77b52a6ae77b8b7bcdc23f71 10-Nov-2015 Guo-wei Shieh <guoweis@webrtc.org> WebRTC should generate default private address even when adapter enumeration is disabled.

Introduce a DefaultAddressProvider such that rtc::Network can't access other part of NetworkManager.

This also removes the hack of generating the loopback address. The dependency has been removed by https://codereview.chromium.org/1417023003/

BUG=webrtc:5061
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1411253008 .

Cr-Commit-Position: refs/heads/master@{#10590}
/external/webrtc/webrtc/base/network.cc
a41ab9326c8f0f7eb738e5d51a239a2b9e276361 31-Oct-2015 tfarina <tfarina@chromium.org> Switch usage of _DEBUG macro to NDEBUG.

http://stackoverflow.com/a/29253284/5237416

BUG=None
R=tommi@webrtc.org
NOPRESUBMIT=true

Review URL: https://codereview.webrtc.org/1429513004

Cr-Commit-Position: refs/heads/master@{#10468}
/external/webrtc/webrtc/base/network.cc
023f3ef0296511f12897c503d6fc2ed063712474 19-Oct-2015 honghaiz <honghaiz@webrtc.org> Create network change notifier and pass the event to NetworkManager

BUG=

Review URL: https://codereview.webrtc.org/1391703003

Cr-Commit-Position: refs/heads/master@{#10325}
/external/webrtc/webrtc/base/network.cc
0c4e06b4c6107a1b94f764e279e4fb4161e905b0 07-Oct-2015 Peter Boström <pbos@webrtc.org> Use suffixed {uint,int}{8,16,32,64}_t types.

Removes the use of uint8, etc. in favor of uint8_t.

BUG=webrtc:5024
R=henrik.lundin@webrtc.org, henrikg@webrtc.org, perkj@webrtc.org, solenberg@webrtc.org, stefan@webrtc.org, tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1362503003 .

Cr-Commit-Position: refs/heads/master@{#10196}
/external/webrtc/webrtc/base/network.cc
91d6edef35e7275879c30ce16ecb8b6dc73c6e4a 17-Sep-2015 henrikg <henrikg@webrtc.org> Add RTC_ prefix to (D)CHECKs and related macros.

We must remove dependency on Chromium, i.e. we can't use Chromium's base/logging.h. That means we need to define these macros in WebRTC also when doing Chromium builds. And this causes redefinition.

Alternative solutions:
* Check if we already have defined e.g. CHECK, and don't define them in that case. This makes us depend on include order in Chromium, which is not acceptable.
* Don't allow using the macros in WebRTC headers. Error prone since if someone adds it there by mistake it may compile fine, but later break if a header in added or order is changed in Chromium. That will be confusing and hard to enforce.
* Ensure that headers that are included by an embedder don't include our macros. This would require some heavy refactoring to be maintainable and enforcable.
* Changes in Chromium for this is obviously not an option.

BUG=chromium:468375
NOTRY=true

Review URL: https://codereview.webrtc.org/1335923002

Cr-Commit-Position: refs/heads/master@{#9964}
/external/webrtc/webrtc/base/network.cc
ea1012b2a41b1b56fe7366792f10390639d82495 21-Aug-2015 guoweis <guoweis@webrtc.org> address comments from https://codereview.webrtc.org/1277263002/

TBR=juberti@webrtc.org,pthather@webrtc.org

Review URL: https://codereview.webrtc.org/1305113002

Cr-Commit-Position: refs/heads/master@{#9757}
/external/webrtc/webrtc/base/network.cc
86cb923c20e8e50dbb9e3d7984ec1bd5d2455b6a 19-Aug-2015 Guo-wei Shieh <guoweis@webrtc.org> In the past, P2PPortAllocator.enable_multiple_routes is the indicator whether we should bind to the any address. It's easy to translate that into a port allocator flag in P2PPortAllocator's ctor. Going forward, we have to depend on an asynchronous permission check to determine whether gathering local address is allowed or not, hence the current way of passing it through constructor approach won't work any more. The asynchronous check will trigger SignalNetowrksChanged so we could only check that inside DoAllocate.

Adapter enumeration disable should be a concept from Network. Network will be hooked up with media permission (mic/camera) to check whether gathering local address is allowed.

BUG=crbug.com/520101
R=juberti@webrtc.org, pthatcher@webrtc.org

Committed: https://chromium.googlesource.com/external/webrtc/+/ba9ab4cd8d2e8fbc068dc36b5e6f6331d7deeccf

Committed: https://chromium.googlesource.com/external/webrtc/+/47872ec90c99ce9c37fb37a8f623ce0e65a32f61

Review URL: https://codereview.webrtc.org/1284113003 .

Cr-Commit-Position: refs/heads/master@{#9736}
/external/webrtc/webrtc/base/network.cc
47872ec90c99ce9c37fb37a8f623ce0e65a32f61 19-Aug-2015 Guo-wei Shieh <guoweis@webrtc.org> In the past, P2PPortAllocator.enable_multiple_routes is the indicator whether we should bind to the any address. It's easy to translate that into a port allocator flag in P2PPortAllocator's ctor. Going forward, we have to depend on an asynchronous permission check to determine whether gathering local address is allowed or not, hence the current way of passing it through constructor approach won't work any more. The asynchronous check will trigger SignalNetowrksChanged so we could only check that inside DoAllocate.

Adapter enumeration disable should be a concept from Network. Network will be hooked up with media permission (mic/camera) to check whether gathering local address is allowed.

BUG=crbug.com/520101
R=juberti@webrtc.org, pthatcher@webrtc.org

Committed: https://chromium.googlesource.com/external/webrtc/+/ba9ab4cd8d2e8fbc068dc36b5e6f6331d7deeccf

Review URL: https://codereview.webrtc.org/1284113003 .

Cr-Commit-Position: refs/heads/master@{#9735}
/external/webrtc/webrtc/base/network.cc
370c8848ad38d54457a960e0ebe94f8adf370e23 19-Aug-2015 Guo-wei Shieh <guoweis@webrtc.org> Revert "Generate localhost candidate when no STUN/TURN and portallocator has the right flag spefied."

This reverts commit 0a2955f227666efd87b2a303a69c083ef801c528.

Revert "In the past, P2PPortAllocator.enable_multiple_routes is the indicator whether we should bind to the any address. It's easy to translate that into a port allocator flag in P2PPortAllocator's ctor. Going forward, we have to depend on an asynchronous permission check to determine whether gathering local address is allowed or not, hence the current way of passing it through constructor approach won't work any more. The asynchronous check will trigger SignalNetowrksChanged so we could only check that inside DoAllocate."

This reverts commit ba9ab4cd8d2e8fbc068dc36b5e6f6331d7deeccf.

TBR=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1288843003 .

Cr-Commit-Position: refs/heads/master@{#9729}
/external/webrtc/webrtc/base/network.cc
ba9ab4cd8d2e8fbc068dc36b5e6f6331d7deeccf 19-Aug-2015 Guo-wei Shieh <guoweis@webrtc.org> In the past, P2PPortAllocator.enable_multiple_routes is the indicator whether we should bind to the any address. It's easy to translate that into a port allocator flag in P2PPortAllocator's ctor. Going forward, we have to depend on an asynchronous permission check to determine whether gathering local address is allowed or not, hence the current way of passing it through constructor approach won't work any more. The asynchronous check will trigger SignalNetowrksChanged so we could only check that inside DoAllocate.

Adapter enumeration disable should be a concept from Network. Network will be hooked up with media permission (mic/camera) to check whether gathering local address is allowed.

BUG=crbug.com/520101
R=juberti@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1284113003 .

Cr-Commit-Position: refs/heads/master@{#9728}
/external/webrtc/webrtc/base/network.cc
2e266e91268d9cb55bc3c3089303efc989de2abb 07-Apr-2015 Noah Richards <noahric@chromium.org> On iOS, detect pdp_ip networks as cellular.

BUG=
R=juberti@webrtc.org, tkchin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8943}
/external/webrtc/webrtc/base/network.cc
b91d0f513049b398e662c0ed98ddafe6d2e6ded2 17-Mar-2015 guoweis@webrtc.org <guoweis@webrtc.org> 1. Have IPIsPrivate calling IPIsLinkLocal
2. Also check the Mac based IPv6
3. move the ip filtering into createnetwork. It shouldn't be done in IsIgnoredNetwork as the IP inside that could change later.

BUG=
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8758}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8758 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
67186fe00cc68cbe03aa66d17fb4962458ca96d2 09-Mar-2015 kwiberg@webrtc.org <kwiberg@webrtc.org> Fix clang style warnings in webrtc/base

Mostly this consists of marking functions with override when
applicable, and moving function bodies from .h to .cc files.

Not inlining virtual functions with simple bodies such as

{ return false; }

strikes me as probably losing more in readability than we gain in
binary size and compilation time, but I guess it's just like any other
case where enabling a generally good warning forces us to write
slightly worse code in a couple of places.

BUG=163
R=kjellander@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8656}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8656 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
bbce5efaa6155f31366cdd07c24197a0ae5f671e 05-Mar-2015 guoweis@webrtc.org <guoweis@webrtc.org> Turn on IPv6 for WebRTC as default as required before ramping the experiment to 30%.

BUG=
R=juberti@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8582

Committed: https://code.google.com/p/webrtc/source/detail?r=8607

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

Cr-Commit-Position: refs/heads/master@{#8609}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8609 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
d43b2c098d8c841ed8834eb39d7cd2c5b15e87c1 05-Mar-2015 guoweis@webrtc.org <guoweis@webrtc.org> Revert "Turn on IPv6 for WebRTC as default as required before ramping the experiment to 30%."

This reverts commit 86c33e3a94f51f8e4b4f305708ec327786ad3794.

TBR=guoweis@webrtc.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#8608}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8608 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
86c33e3a94f51f8e4b4f305708ec327786ad3794 05-Mar-2015 guoweis@webrtc.org <guoweis@webrtc.org> Turn on IPv6 for WebRTC as default as required before ramping the experiment to 30%.

BUG=
R=juberti@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8582

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

Cr-Commit-Position: refs/heads/master@{#8607}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8607 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
07dcf60ee0ccbaaeefba0ca77d88c00e3442f7c3 27-Feb-2015 aluebs@webrtc.org <aluebs@webrtc.org> Revert 8532 "Ensure only temporary IPv6 address is selected as t..."

> Ensure only temporary IPv6 address is selected as the best IP.
>
> The current logic of IPv6 selection could still have a small chance for non-temporary address to be selected for candidate. The scenario is that when there is no non-deprecated temporary IP, the global ones could be selected.
>
> Global ones don't necessarily carry MAC. However, instead of comparing whether it has the MAC in it (sometimes 5 out of 6 elements from a MAC are the same, only one diffs), we should just err on the safe side.
>
> BUG=4348
> R=juberti@webrtc.org, pthatcher@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/38289004

TBR=guoweis@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8534}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8534 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
385a7ceb1f27a5eab98557560da1657caabff566 27-Feb-2015 guoweis@webrtc.org <guoweis@webrtc.org> Ensure only temporary IPv6 address is selected as the best IP.

The current logic of IPv6 selection could still have a small chance for non-temporary address to be selected for candidate. The scenario is that when there is no non-deprecated temporary IP, the global ones could be selected.

Global ones don't necessarily carry MAC. However, instead of comparing whether it has the MAC in it (sometimes 5 out of 6 elements from a MAC are the same, only one diffs), we should just err on the safe side.

BUG=4348
R=juberti@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8532}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8532 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
f358aea7bff8091c608e1afd8cf395ec2702ff76 18-Feb-2015 guoweis@webrtc.org <guoweis@webrtc.org> Fix WebRTC IP leaks.

WebRTC binds to individual NICs and listens for incoming Stun packets. Sending stun through this specific NIC binding could make OS route the packet differently hence exposing non-VPN public IP.

The fix here is
1. to bind to any address (0:0:0:0) instead. This way, the routing will be the same as how chrome/http is.
2. also, remove the any all 0s addresses which happens when we bind to all 0s.

BUG=4276
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8418}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8418 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
006521d5bdc29677c710b53c31b937cdc0bb4941 12-Feb-2015 phoglund@webrtc.org <phoglund@webrtc.org> Makes libjingle_peerconnection_android_unittest run on networkless devices.

PeerConnectionTest.java currently works, but only on a device with
network interfaces up. This is not a problem for desktop, but it is a
problem when running on Android devices since the devices in the lab
generally don't have network (due to the chaotic radio environment in
the device labs, devices are simply kept in flight mode).

The test does work if one modifies this line in the file
webrtc/base/network.cc:

bool ignored = ((cursor->ifa_flags & IFF_LOOPBACK) ||
IsIgnoredNetwork(*network));

If we remove the IFF_LOOPBACK clause, the test starts working on
an Android device in flight mode. This is nice - we're running the
call and packets interact with the OS network stack, which is good
for this end-to-end test. We can't just remove the clause though since
having loopback is undesirable for everyone except the test (right)?
so we need to make this behavior configurable.

This CL takes a stab at a complete solution where we pass a boolean
all the way through the Java PeerConnectionFactory down to the
BasicNetworkManager. This comes as a heavy price in interface
changes though. It's pretty out of proportion, but fundamentally we
need some way of telling the network manager that it is on Android
and in test mode. Passing the boolean all the way through is one way.

Another way might be to put the loopback filter behind an ifdef and
link a custom libjingle_peerconnection.so with the test. That is hacky
but doesn't pollute the interfaces. Not sure how to solve that in GYP
but it could mean some duplication between the production and
test .so files.

It would have been perfect to use flags here, but then we need to
hook up gflags parsing to some main() somewhere to make sure the
flag gets parsed, and make sure to pass that flag in our tests.
I'm not sure how that can be done.

Making the loopback filtering conditional is exactly how we solved the
equivalent problem in content_browsertests in Chrome, and it worked
great.

That's all I could think of.

BUG=4181
R=perkj@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8344}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8344 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
2444d9605abad5874f9ca3515c58b1a41901bdc1 30-Jan-2015 guoweis@webrtc.org <guoweis@webrtc.org> Control the max IPv6 Networks used by WebRTC.

BUG=
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8209}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8209 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
a094cac11f9f0436b3ea4410dca18c3b78356019 28-Jan-2015 guoweis@webrtc.org <guoweis@webrtc.org> Add stats for network merge.

Currently, in ipc_network_manager.cc, the UMA WebRTC.PeerConnection.IPv4Interfaces and its IPv6
counter part counts the addresses, instead of the interfaces as when
chromium delivers available networks to WebRTC, each address is wrapped
inside an individual network object.

The plan is to replace the current MergeNetworkList with the new one once it's rolled into chromium.

BUG=
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8188}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8188 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
dfef02824c7584b86d1621b5dd20f710d03e8981 07-Jan-2015 pthatcher@webrtc.org <pthatcher@webrtc.org> Ignore virtual box interfaces.

BUG=3918
R=juberti@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8012 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
55360ae402908b24757c7983c587e69ea485e9e6 16-Dec-2014 guoweis@webrtc.org <guoweis@webrtc.org> Revert "Add adapter_type into Candidate object."

This reverts commit aaf02cc2d4f696345ce0e6d5715f2cfa22aea689.

BUG=
TBR=juberti@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7908 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
aaf02cc2d4f696345ce0e6d5715f2cfa22aea689 16-Dec-2014 guoweis@webrtc.org <guoweis@webrtc.org> Add adapter_type into Candidate object.

Expose adapter_type from Candidate such that we could add jmidata on top of this.

Created a new type of report just for Ice candidate. The candidate's id is used as part of report identifier. This code change only reports the best connection's local candidate's adapter type. There should be cleaning later to move other candidate's attributes to the new report.

This is migrated from issue 32599004

BUG=
R=juberti@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=7885

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7906 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
fb108b5a28a538862a4157e17de795426d86af1e 15-Dec-2014 pbos@webrtc.org <pbos@webrtc.org> Revert r7885.

Breaks compile step of other code where network name of
cricket::Candidate is used.

TBR=guoweis@webrtc.org,juberti@webrtc.org
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7892 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
8c9d79a29d9127d4ff8aa4ae386630c72cfb1808 12-Dec-2014 guoweis@webrtc.org <guoweis@webrtc.org> Add adapter_type into Candidate object.

Expose adapter_type from Candidate such that we could add jmidata on top of this.

Created a new type of report just for Ice candidate. The candidate's id is used as part of report identifier. This code change only reports the best connection's local candidate's adapter type. There should be cleaning later to move other candidate's attributes to the new report.

This is migrated from issue 32599004

BUG=
R=juberti@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7885 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
5950b645b9c7bd3cda4cc80e09086aee6fa0efc4 02-Dec-2014 pthatcher@webrtc.org <pthatcher@webrtc.org> Use c++11 features in webrtc/base/network.cc as a test to see if we can use them.

R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7777 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
369a637ac8032b3e41fd2b4f2f6b2ef49a447f02 18-Sep-2014 guoweis@webrtc.org <guoweis@webrtc.org> Implemented Network::GetBestIP() selection logic as following.

1) return the first global temporary and non-deprecrated ones.
2) if #1 not available, return global one.
3) if #2 not available, use ULA ipv6 as last resort.

ULA stands for unique local address. They are only useful in a private
WebRTC deployment. More detail: http://en.wikipedia.org/wiki/Unique_local_address

BUG=3808

At this point, rule #3 actually won't happen at current
implementation. The reason being that ULA address starting with 0xfc 0r 0xfd will be grouped into its own Network. The result of that is WebRTC will have one extra Network to generate candidates but the lack of rule #3 shouldn't prevent turning on IPv6 since ULA should only be tried in a close deployment anyway.

R=jiayl@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=7200

Committed: https://code.google.com/p/webrtc/source/detail?r=7201

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7216 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
40c2aa36f21d311bba54f4af37d677f96404749d 16-Sep-2014 guoweis@webrtc.org <guoweis@webrtc.org> Implemented Network::GetBestIP() selection logic as following.

1) return the first global temporary and non-deprecrated ones.
2) if #1 not available, return global one.
3) if #2 not available, use ULA ipv6 as last resort.

ULA stands for unique local address. They are only useful in a private
WebRTC deployment. More detail: http://en.wikipedia.org/wiki/Unique_local_address

BUG=3808

At this point, rule #3 actually won't happen at current
implementation. The reason being that ULA address starting with 0xfc 0r 0xfd will be grouped into its own Network. The result of that is WebRTC will have one extra Network to generate candidates but the lack of rule #3 shouldn't prevent turning on IPv6 since ULA should only be tried in a close deployment anyway.

R=jiayl@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=7200

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7201 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
f8bff762d17720eee9410326ec2aa051979e4339 16-Sep-2014 guoweis@webrtc.org <guoweis@webrtc.org> Implemented Network::GetBestIP() selection logic as following.

1) return the first global temporary and non-deprecrated ones.
2) if #1 not available, return global one.
3) if #2 not available, use ULA ipv6 as last resort.

ULA stands for unique local address. They are only useful in a private
WebRTC deployment. More detail: http://en.wikipedia.org/wiki/Unique_local_address

BUG=3808

At this point, rule #3 actually won't happen at current
implementation. The reason being that ULA address starting with 0xfc 0r 0xfd will be grouped into its own Network. The result of that is WebRTC will have one extra Network to generate candidates but the lack of rule #3 shouldn't prevent turning on IPv6 since ULA should only be tried in a close deployment anyway.

R=jiayl@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7200 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
fa603981f2ed1c88bdc822cbf33bd97ad375b5a1 10-Sep-2014 guoweis@webrtc.org <guoweis@webrtc.org> Add a new class InterfaceAddress inherited from IPAddress to keep track of IPv6 Address flags.

Skeleton put in place in Network::GetFilterIPs() which will be used to
filter addresses

BUG=3773
R=jiayl@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7126 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
4bbd3c83a80e99c86ece75847c67970de46ff138 09-Sep-2014 guoweis@webrtc.org <guoweis@webrtc.org> fix a bug in the logic when new Networks are merged. This happens when
we have 2 networks with the same key

BUG=410554 in chromium

http://code.google.com/p/chromium/issues/detail?id=410554

Corresponding change in chromium is
https://codereview.chromium.org/536133003/

R=jiayl@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7117 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
f048872e915a3ee229044ec4bc541f6cbf9e4de1 13-May-2014 henrike@webrtc.org <henrike@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Adds a modified copy of talk/base to webrtc/base. It is the first step in
migrating talk/base to webrtc/base.

BUG=N/A
R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6129 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
e9a604accd54ab14dbf98f99ccdcf3ae1c54d27c 13-May-2014 perkj@webrtc.org <perkj@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Revert 6107 "Adds a modified copy of talk/base to webrtc/base. I..."

This breaks Chromium FYI builds and prevent roll of webrtc/libjingle to Chrome.

http://chromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Win%20Builder/builds/457


> Adds a modified copy of talk/base to webrtc/base. It is the first step in migrating talk/base to webrtc/base.
>
> BUG=N/A
> R=andrew@webrtc.org, wu@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/12199004

TBR=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6116 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc
2c7d1b39b9374d2bc9bda4755fd4813db66a135c 12-May-2014 henrike@webrtc.org <henrike@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Adds a modified copy of talk/base to webrtc/base. It is the first step in migrating talk/base to webrtc/base.

BUG=N/A
R=andrew@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6107 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/base/network.cc