Commit Graph

158 Commits

Author SHA1 Message Date
e6ded16045 DCHECK that PortAllocator::SetConfiguration does not create a pooled
session on a non-network thread.

Bug: webrtc:9112
Change-Id: I79c31f1a7cd299dad8f9034cc9b83fcd8d3328f7
Reviewed-on: https://webrtc-review.googlesource.com/c/103305
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Jeroen de Borst <jeroendb@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24940}
2018-10-02 23:51:15 +00:00
17f4878419 Remove deprecated field_trial_default and metrics_default.
This CL removes some deprecated build targets (and their headers)
from system_wrappers:
- field_trial_api
- field_trial_default
- metrics_api
- metrics_default

It also refreshes all the dependencies on field_trial.h and metrics.h.

A nice side effect is that it is finally possible to remove 'nogncheck'
from the following files (when it was used with field_trial_default
and metrics_default):
- sdk/objc/api/peerconnection/RTCMetricsSampleInfo+Private.h
- sdk/android/src/jni/pc/peerconnectionfactory.cc
- sdk/objc/api/peerconnection/RTCFieldTrials.mm

Bug: webrtc:9631
Change-Id: Ib621f41ef8ad0aba4fe1c1d7e749c044afc956c3
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/100524
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24878}
2018-09-28 07:21:07 +00:00
b49b8f115c Fix a bug that the local hostname candidate with a known address is
updated to prflx.

When the address of a local candidate is intentionally removed after
gathered, its would be incorrectly updated to prflx when receiving a
STUN message from a remote candidate after forming a candidate pair and
starting the connectivity check.

Bug: webrtc:9756, webrtc:9605
Change-Id: I6c699250565c1458e825eba742c2991a82229817
Reviewed-on: https://webrtc-review.googlesource.com/100624
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24837}
2018-09-25 17:33:53 +00:00
84df1c724e Make fewer copies when using StringBuilder.
Replace calls to .str() which copies with .Release which moves in cases where that's safe.

This CL was generated by this command:
git grep -l 'StringBuilder' |
xargs perl -i -0 -pe "s/(rtc::StringBuilder (\S+);.*?return )\\g2.str\(\)/\$1\$2.Release\(\)/sg"

Bug: webrtc:8982
Change-Id: If4dadbeb039df010aaaa9e58da81c1971a84fe8f
Reviewed-on: https://webrtc-review.googlesource.com/100307
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24790}
2018-09-24 09:39:19 +00:00
33a5852829 Simplify includes in p2ptransportchannel.cc
This makes it clearer which code actually depends on the RelayPort
class.

Bug: None
Change-Id: I7b88de1824d5b5832d2f35a8820c5c59d05441c2
Reviewed-on: https://webrtc-review.googlesource.com/100801
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24768}
2018-09-18 16:59:52 +00:00
941a07cca3 Remove all remaining non-test uses of std::stringstream.
Bug: webrtc:8982
Change-Id: I635a8545c46dc8c89663d64af351e22e65cbcb33
Reviewed-on: https://webrtc-review.googlesource.com/98880
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24715}
2018-09-13 08:52:05 +00:00
096193395b Add MDnsResponderInterface and obfuscate local IP addresses in gathering.
MDnsResponderInterface can be accessed by rtc::NetworkManager to
generate mDNS hostnames for local IP addresses, so that the addresses of
ICE host candidates are obfuscated in gathering whenever an mDNS
responder is present. The mDNS responder will handle incoming mDNS
queries about the generated mDNS hostnames, e.g. queries received from
the AsyncResolverInterface of the remote ICE endpoint.

Bug: webrtc:9605
Change-Id: Ib9e77427327b3d1fabdb1f3854d5e8457db40375
Reviewed-on: https://webrtc-review.googlesource.com/97881
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#24714}
2018-09-13 07:16:42 +00:00
9c147ddc91 Revert "Add SSLConfig object to IceServer."
This reverts commit 4f085434b912060874d6697f17aaedd2adae7c49.

Reason for revert: breaks downstream projects.

Original change's description:
> Add SSLConfig object to IceServer.
> 
> This is a rollforward of https://webrtc-review.googlesource.com/c/src/+/96020,
> with the addition of setting the old tlsCertPolicy, tlsAlpnProtocols and
> tlsEllipticCurves in the RTCIceServer initializer, for backwards compatibility.
> 
> Bug: webrtc:9662
> Change-Id: I28706ed4ff5abe3f7f913f105779f0e5412aeac5
> Reviewed-on: https://webrtc-review.googlesource.com/98762
> Commit-Queue: Diogo Real <diogor@google.com>
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24696}

TBR=steveanton@webrtc.org,sakal@webrtc.org,kwiberg@webrtc.org,kthelgason@webrtc.org,qingsi@webrtc.org,benwright@webrtc.org,diogor@google.com

Change-Id: I1cb64b63fec688b4ac90c2fa368eaf0bc11046af
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9662
Reviewed-on: https://webrtc-review.googlesource.com/99880
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24701}
2018-09-12 10:46:04 +00:00
4f085434b9 Add SSLConfig object to IceServer.
This is a rollforward of https://webrtc-review.googlesource.com/c/src/+/96020,
with the addition of setting the old tlsCertPolicy, tlsAlpnProtocols and
tlsEllipticCurves in the RTCIceServer initializer, for backwards compatibility.

Bug: webrtc:9662
Change-Id: I28706ed4ff5abe3f7f913f105779f0e5412aeac5
Reviewed-on: https://webrtc-review.googlesource.com/98762
Commit-Queue: Diogo Real <diogor@google.com>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24696}
2018-09-11 23:28:46 +00:00
366a50c4ef Remove simple stringstream usages.
This CL replaces std::o?stringstream with rtc::StringBuilder where that's possible to do without changing any of the surrounding code. It also updates includes and build files as appropriate.

The CL was generated by running 'git grep -l -P std::o?stringstream | xargs perl -pi -e "s/std::o?stringstream/rtc::StringBuilder/g"'. Then I've manually updated the #includes and BUILD files, run 'git cl format' and unstaged any file that would need more complex fixes.

Bug: webrtc:8982
Change-Id: Ibc32153f4a3fd177e260b6ad05ce393972549357
Reviewed-on: https://webrtc-review.googlesource.com/98460
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24605}
2018-09-06 12:53:19 +00:00
11a922086b Demote RTC_NOTREACHED in pseudotcp RTT processing to warning.
This problem shouldn't be severe enough to require a crash, and it can be triggered by untrusted network data.
We'll print a warning instead.

Bug: chromium:877790
Change-Id: Ie1f33d85dc7f0ccbbc1d027b73f77b964c6f7e46
Reviewed-on: https://webrtc-review.googlesource.com/96880
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24579}
2018-09-05 13:05:05 +00:00
1d52d2c24d Revert "Add SSLConfig object to IceServer."
This reverts commit 7f1ffcccce563a086da037334aec2d4faa723edb.

Reason for revert: Speculative revert

Original change's description:
> Add SSLConfig object to IceServer.
> 
> This is being added to allow greater configurability to TLS connections.
> tlsAlpnProtocols, tlsEllipticCurves and tlsCertPolicy will be removed from IceServer in a
> follow-up CL.
> 
> Bug: webrtc:9662
> Change-Id: I33cb804b02c26c662ed2a28c76f9a9dc2df40f36
> Reviewed-on: https://webrtc-review.googlesource.com/96020
> Commit-Queue: Diogo Real <diogor@google.com>
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Reviewed-by: Benjamin Wright <benwright@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24559}

TBR=steveanton@webrtc.org,sakal@webrtc.org,kthelgason@webrtc.org,juberti@webrtc.org,emadomara@webrtc.org,qingsi@webrtc.org,benwright@webrtc.org,diogor@google.com

Change-Id: Iae9fc68b77f743876bda36fc2a04f6d791aae8e2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9662
Reviewed-on: https://webrtc-review.googlesource.com/98000
Reviewed-by: Ying Wang <yinwa@webrtc.org>
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24563}
2018-09-05 08:15:29 +00:00
7f1ffcccce Add SSLConfig object to IceServer.
This is being added to allow greater configurability to TLS connections.
tlsAlpnProtocols, tlsEllipticCurves and tlsCertPolicy will be removed from IceServer in a
follow-up CL.

Bug: webrtc:9662
Change-Id: I33cb804b02c26c662ed2a28c76f9a9dc2df40f36
Reviewed-on: https://webrtc-review.googlesource.com/96020
Commit-Queue: Diogo Real <diogor@google.com>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24559}
2018-09-04 22:46:19 +00:00
558b93b3e9 Add the multicast DNS message format.
This CL adds the utilities to generate and parse mDNS messages (RFC 1035
and RFC 6762).

TBR=phoglund@webrtc.org

Bug: webrtc:9605
Change-Id: Id6121c17926887cd3a41a2dfc829462fd15f3a4c
Reviewed-on: https://webrtc-review.googlesource.com/93241
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24505}
2018-08-31 00:02:44 +00:00
6fcdc2f708 Support domain name ICE candidates
Bug: webrtc:4165
Change-Id: Icc06bb13120080635cb722b8a8720e7d25426e2d
Reviewed-on: https://webrtc-review.googlesource.com/85540
Commit-Queue: Zach Stein <zstein@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24415}
2018-08-24 04:54:43 +00:00
5f4d47b0c0 Revert "Reland "Enable any address ports by default.""
This reverts commit b89ac622f3f5a7bb065a08cb1efba10a0e8cae23.

Reason for revert: Speculative revert.

Original change's description:
> Reland "Enable any address ports by default."
>
> This reverts commit 1165949341b6f61c5d728999bfbdaf68fd5c15aa.
>
> Reason for revert: Speculative reland (the revert breaks a downstream project).
>
> Original change's description:
> > Revert "Reland "Enable any address ports by default.""
> >
> > This reverts commit ac5bbd940ed31f8a58095952f4dcdcbb1b58203c.
> >
> > Reason for revert: Speculative revert, possibly breaking downstream projects
> >
> > Original change's description:
> > > Reland "Enable any address ports by default."
> > >
> > > This reverts commit 056a68da896d9a578b9ea83e56d261648ea0adc6.
> > >
> > > Reason for revert: Trying to reland.
> > >
> > > Original change's description:
> > > > Revert "Enable any address ports by default."
> > > >
> > > > This reverts commit f04148c810aad2a0809dc8978650c55308381c47.
> > > >
> > > > Reason for revert: Speculative revert. I suspect this is breaking a
> > > > downstream test (I'll reland if it is not the culprit).
> > > >
> > > > Original change's description:
> > > > > Enable any address ports by default.
> > > > >
> > > > > Ports not bound to any specific network interface are allocated by
> > > > > default. These any address ports are pruned after allocation,
> > > > > conditional on the allocation results of normal ports that are bound to
> > > > > the enumerated interfaces.
> > > > >
> > > > > Bug: webrtc:9313
> > > > > Change-Id: I3ce12eeab0cf3547224e5f8c188d061fc530e145
> > > > > Reviewed-on: https://webrtc-review.googlesource.com/78383
> > > > > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > > > > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> > > > > Cr-Commit-Position: refs/heads/master@{#23673}
> > > >
> > > > TBR=deadbeef@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> > > >
> > > > Change-Id: I3b3dc42c7de46d198d4b9c270020dcf1100dd907
> > > > No-Presubmit: true
> > > > No-Tree-Checks: true
> > > > No-Try: true
> > > > Bug: webrtc:9313
> > > > Reviewed-on: https://webrtc-review.googlesource.com/84300
> > > > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > > > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#23678}
> > >
> > > TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> > >
> > > # Not skipping CQ checks because original CL landed > 1 day ago.
> > >
> > > Bug: webrtc:9313
> > > Change-Id: I98442346babb5d8953d37dc5825efaf79804ed7f
> > > Reviewed-on: https://webrtc-review.googlesource.com/85000
> > > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > > Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#23720}
> >
> > TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com,qingsi@webrtc.org
> >
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> >
> > Bug: webrtc:9313
> > Change-Id: Ie5da4133a371532f717af144f183e299e759f152
> > Reviewed-on: https://webrtc-review.googlesource.com/95340
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#24374}
>
> TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com,qingsi@webrtc.org
>
> Change-Id: I52bf487d441ce8ccedee7e348b9ed9ade0fd9d1c
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:9313
> Reviewed-on: https://webrtc-review.googlesource.com/95440
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24379}

TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com,qingsi@webrtc.org

Change-Id: I6db41f092c55be74f6594eb729ad5f15c718fe34
Bug: webrtc:9313
Reviewed-on: https://webrtc-review.googlesource.com/95520
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24412}
2018-08-23 18:52:49 +00:00
4d92b8467c Ad-hoc rate limiting for UDPPort::SendTo failures.
Bug: chromium:856088
Change-Id: I8b9edd8c7392834a7a88987963de2f8e9d37be11
Reviewed-on: https://webrtc-review.googlesource.com/93881
Commit-Queue: Zach Stein <zstein@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24411}
2018-08-23 18:06:57 +00:00
b89ac622f3 Reland "Enable any address ports by default."
This reverts commit 1165949341b6f61c5d728999bfbdaf68fd5c15aa.

Reason for revert: Speculative reland (the revert breaks a downstream project).

Original change's description:
> Revert "Reland "Enable any address ports by default.""
> 
> This reverts commit ac5bbd940ed31f8a58095952f4dcdcbb1b58203c.
> 
> Reason for revert: Speculative revert, possibly breaking downstream projects
> 
> Original change's description:
> > Reland "Enable any address ports by default."
> > 
> > This reverts commit 056a68da896d9a578b9ea83e56d261648ea0adc6.
> > 
> > Reason for revert: Trying to reland.
> > 
> > Original change's description:
> > > Revert "Enable any address ports by default."
> > > 
> > > This reverts commit f04148c810aad2a0809dc8978650c55308381c47.
> > > 
> > > Reason for revert: Speculative revert. I suspect this is breaking a
> > > downstream test (I'll reland if it is not the culprit).
> > > 
> > > Original change's description:
> > > > Enable any address ports by default.
> > > > 
> > > > Ports not bound to any specific network interface are allocated by
> > > > default. These any address ports are pruned after allocation,
> > > > conditional on the allocation results of normal ports that are bound to
> > > > the enumerated interfaces.
> > > > 
> > > > Bug: webrtc:9313
> > > > Change-Id: I3ce12eeab0cf3547224e5f8c188d061fc530e145
> > > > Reviewed-on: https://webrtc-review.googlesource.com/78383
> > > > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > > > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#23673}
> > > 
> > > TBR=deadbeef@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> > > 
> > > Change-Id: I3b3dc42c7de46d198d4b9c270020dcf1100dd907
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Bug: webrtc:9313
> > > Reviewed-on: https://webrtc-review.googlesource.com/84300
> > > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#23678}
> > 
> > TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> > 
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> > 
> > Bug: webrtc:9313
> > Change-Id: I98442346babb5d8953d37dc5825efaf79804ed7f
> > Reviewed-on: https://webrtc-review.googlesource.com/85000
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23720}
> 
> TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com,qingsi@webrtc.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: webrtc:9313
> Change-Id: Ie5da4133a371532f717af144f183e299e759f152
> Reviewed-on: https://webrtc-review.googlesource.com/95340
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24374}

TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com,qingsi@webrtc.org

Change-Id: I52bf487d441ce8ccedee7e348b9ed9ade0fd9d1c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9313
Reviewed-on: https://webrtc-review.googlesource.com/95440
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24379}
2018-08-22 08:26:31 +00:00
1165949341 Revert "Reland "Enable any address ports by default.""
This reverts commit ac5bbd940ed31f8a58095952f4dcdcbb1b58203c.

Reason for revert: Speculative revert, possibly breaking downstream projects

Original change's description:
> Reland "Enable any address ports by default."
> 
> This reverts commit 056a68da896d9a578b9ea83e56d261648ea0adc6.
> 
> Reason for revert: Trying to reland.
> 
> Original change's description:
> > Revert "Enable any address ports by default."
> > 
> > This reverts commit f04148c810aad2a0809dc8978650c55308381c47.
> > 
> > Reason for revert: Speculative revert. I suspect this is breaking a
> > downstream test (I'll reland if it is not the culprit).
> > 
> > Original change's description:
> > > Enable any address ports by default.
> > > 
> > > Ports not bound to any specific network interface are allocated by
> > > default. These any address ports are pruned after allocation,
> > > conditional on the allocation results of normal ports that are bound to
> > > the enumerated interfaces.
> > > 
> > > Bug: webrtc:9313
> > > Change-Id: I3ce12eeab0cf3547224e5f8c188d061fc530e145
> > > Reviewed-on: https://webrtc-review.googlesource.com/78383
> > > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#23673}
> > 
> > TBR=deadbeef@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> > 
> > Change-Id: I3b3dc42c7de46d198d4b9c270020dcf1100dd907
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: webrtc:9313
> > Reviewed-on: https://webrtc-review.googlesource.com/84300
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23678}
> 
> TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: webrtc:9313
> Change-Id: I98442346babb5d8953d37dc5825efaf79804ed7f
> Reviewed-on: https://webrtc-review.googlesource.com/85000
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23720}

TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com,qingsi@webrtc.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:9313
Change-Id: Ie5da4133a371532f717af144f183e299e759f152
Reviewed-on: https://webrtc-review.googlesource.com/95340
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24374}
2018-08-22 07:24:40 +00:00
efbcb31cb6 Revert "Remove the flag PORTALLOCATOR_ENABLE_ANY_ADDRESS_PORTS."
This reverts commit b3f5aed4332b25c3fa7e725126efd3d4262c385e.

Reason for revert: speculative revert, possibly breaking downstream projects

Original change's description:
> Remove the flag PORTALLOCATOR_ENABLE_ANY_ADDRESS_PORTS.
> 
> We now always enable any address ports, only using them if they end up
> using interfaces that weren't otherwise accessible. This flag is no
> longer used by downstream projects.
> 
> TBR=deadbeef@webrtc.org
> 
> Bug: None
> Change-Id: I6e4e93958cbc4300811bafb103f1a2e8732274ed
> Reviewed-on: https://webrtc-review.googlesource.com/85860
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23751}

TBR=qingsi@google.com,qingsi@webrtc.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: None
Change-Id: I2c3850533cd72c021a42dcb160f73ca54a036a84
Reviewed-on: https://webrtc-review.googlesource.com/95341
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24373}
2018-08-22 04:23:42 +00:00
6b1985de95 Reimplement rtc::ToString and rtc::FromString without streams.
Bug: webrtc:8982
Change-Id: I3977435b035fdebef449732301d6e77fc899e7ba
Reviewed-on: https://webrtc-review.googlesource.com/86941
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24319}
2018-08-16 16:14:01 +00:00
e20867ff6d Add AsyncResolverFactory interface and basic implementation.
The factory is plumbed down to P2PTransportChannel and will eventually
be used to resolve hostnames. Uses of PacketSocketFacotry::CreateAsyncResolver
will eventually be migrated to use this factory instead.

Bug: webrtc:4165
Change-Id: I1c48b2ffb8649609a831eba291f67ce544bb10eb
Reviewed-on: https://webrtc-review.googlesource.com/91300
Commit-Queue: Zach Stein <zstein@webrtc.org>
Reviewed-by: Emad Omara <emadomara@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24176}
2018-08-02 21:20:15 +00:00
f5cf02ac2c Use randomly generated IDs for candidate pairs in ICE event logs.
We used to use an integer-valued hash as the candidate pair ID in ICE
event logs, and the preimage of this hash contains address information.

Bug: None
Change-Id: Ib24aa89164600c62e0b0a7d771af379ace80a0e3
Reviewed-on: https://webrtc-review.googlesource.com/91920
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24168}
2018-08-01 20:08:43 +00:00
e41c433502 Move sigslot to proper third_party directory
Extract sigslot into separate target and move it to proper third_party
directory.

Bug: webrtc:8366
Change-Id: Id2e0712bd020bfad811947803c94553dce06d976
Reviewed-on: https://webrtc-review.googlesource.com/84141
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Niklas Enbom <niklas.enbom@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24099}
2018-07-25 14:53:33 +00:00
f7a64ecfa3 Change DtlsTransport to use a ThreadChecker
Bug: None
Change-Id: I7d628f6b22149e2d178ada9c07a390cbecdfc095
Reviewed-on: https://webrtc-review.googlesource.com/89681
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24072}
2018-07-23 19:36:02 +00:00
a76af0ca2e Move base64.h to the proper location.
Move base64.h to the proper location and put redirect header into the
old place to be able to switch downstream users on new location.

Bug: webrtc:8366
Change-Id: I5191fe631d32178d2efd1315ca9abd4250102291
Reviewed-on: https://webrtc-review.googlesource.com/88223
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24069}
2018-07-23 15:40:36 +00:00
ee01a839d2 Remove MetricsObserverInterface.
The usage of MetricsObserverInterface to log metrics has been replaced
by RTC_HISTOGRAM_* macros in WebRTC.

Bug: webrtc:9409
Change-Id: I67df74a18942ac7ea4227e4affdf84f06258a287
Reviewed-on: https://webrtc-review.googlesource.com/86780
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24048}
2018-07-19 23:00:20 +00:00
7fc821d42d Reland "Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.""
This is a reland of 1a2cc0acba6a66f89249455d8e5775849b56f755

Original change's description:
> Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*."
>
> This is a reland of 870bca1f418a1abf445169a638a61f9a649d557f
>
> Original change's description:
> > Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
> >
> > We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
> > to report the metrics in pc/ and p2p/ that are currently been reported
> > using MetricsObserverInterface.
> >
> > TBR=tommi@webrtc.org
> >
> > Bug: webrtc:9409
> > Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
> > Reviewed-on: https://webrtc-review.googlesource.com/83782
> > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> > Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23914}
>
> TBR=steveanton@webrtc.org,hta@webrtc.org,tommi@webrtc.org
>
> Bug: webrtc:9409
> Change-Id: I37fc95ced60dea25aa9b4f5ad44bdf7174c8bd5c
> Reviewed-on: https://webrtc-review.googlesource.com/88060
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Cr-Commit-Position: refs/heads/master@{#23919}

TBR=steveanton@webrtc.org,tommi@webrtc.org

Bug: webrtc:9409
Change-Id: Ib55f0b6c9bcb9d9585924a4dfac5cf643ff4d76b
Reviewed-on: https://webrtc-review.googlesource.com/88343
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23957}
2018-07-12 21:35:47 +00:00
78fef76e6a Revert "Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.""
This reverts commit 1a2cc0acba6a66f89249455d8e5775849b56f755.

Reason for revert: It breaks internal Android debug build. Need further investigation.

Original change's description:
> Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*."
> 
> This is a reland of 870bca1f418a1abf445169a638a61f9a649d557f
> 
> Original change's description:
> > Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
> >
> > We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
> > to report the metrics in pc/ and p2p/ that are currently been reported
> > using MetricsObserverInterface.
> >
> > TBR=tommi@webrtc.org
> >
> > Bug: webrtc:9409
> > Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
> > Reviewed-on: https://webrtc-review.googlesource.com/83782
> > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> > Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23914}
> 
> TBR=steveanton@webrtc.org,hta@webrtc.org,tommi@webrtc.org
> 
> Bug: webrtc:9409
> Change-Id: I37fc95ced60dea25aa9b4f5ad44bdf7174c8bd5c
> Reviewed-on: https://webrtc-review.googlesource.com/88060
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Cr-Commit-Position: refs/heads/master@{#23919}

TBR=steveanton@webrtc.org,deadbeef@webrtc.org,tommi@webrtc.org,hta@webrtc.org,qingsi@google.com,qingsi@webrtc.org

Change-Id: I4a75fc7f52bfd0780526537a5a9a016fb9c20d6a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9409
Reviewed-on: https://webrtc-review.googlesource.com/88320
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23938}
2018-07-11 18:37:36 +00:00
1a2cc0acba Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*."
This is a reland of 870bca1f418a1abf445169a638a61f9a649d557f

Original change's description:
> Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
>
> We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
> to report the metrics in pc/ and p2p/ that are currently been reported
> using MetricsObserverInterface.
>
> TBR=tommi@webrtc.org
>
> Bug: webrtc:9409
> Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
> Reviewed-on: https://webrtc-review.googlesource.com/83782
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23914}

TBR=steveanton@webrtc.org,hta@webrtc.org,tommi@webrtc.org

Bug: webrtc:9409
Change-Id: I37fc95ced60dea25aa9b4f5ad44bdf7174c8bd5c
Reviewed-on: https://webrtc-review.googlesource.com/88060
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23919}
2018-07-11 04:40:26 +00:00
13f4c896d5 Revert "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*."
This reverts commit 870bca1f418a1abf445169a638a61f9a649d557f.

Reason for revert: it breaks internal tests and builds

Original change's description:
> Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
>
> We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
> to report the metrics in pc/ and p2p/ that are currently been reported
> using MetricsObserverInterface.
>
> TBR=tommi@webrtc.org
>
> Bug: webrtc:9409
> Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
> Reviewed-on: https://webrtc-review.googlesource.com/83782
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23914}

TBR=steveanton@webrtc.org,deadbeef@webrtc.org,hta@webrtc.org,tommi@webrtc.org

Change-Id: I1afd92d44f3b8cf3ae9aa6e6daa9a3a272e8097f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9409
Reviewed-on: https://webrtc-review.googlesource.com/88040
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23916}
2018-07-10 21:26:28 +00:00
870bca1f41 Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
to report the metrics in pc/ and p2p/ that are currently been reported
using MetricsObserverInterface.

TBR=tommi@webrtc.org

Bug: webrtc:9409
Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
Reviewed-on: https://webrtc-review.googlesource.com/83782
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23914}
2018-07-10 20:02:16 +00:00
918f50c5d1 Use absl::make_unique and absl::WrapUnique directly
Instead of going through our wrappers in ptr_util.h.

This CL was generated by the following script:

  git grep -l ptr_util | xargs perl -pi -e 's,#include "rtc_base/ptr_util.h",#include "absl/memory/memory.h",'
  git grep -l MakeUnique | xargs perl -pi -e 's,\b(rtc::)?MakeUnique\b,absl::make_unique,g'
  git grep -l WrapUnique | xargs perl -pi -e 's,\b(rtc::)?WrapUnique\b,absl::WrapUnique,g'
  git checkout -- rtc_base/ptr_util{.h,_unittest.cc}
  git cl format

Followed by manually adding dependencies on
//third_party/abseil-cpp/absl/memory until `gn check` stopped
complaining.

Bug: webrtc:9473
Change-Id: I89ccd363f070479b8c431eb2c3d404a46eaacc1c
Reviewed-on: https://webrtc-review.googlesource.com/86600
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23850}
2018-07-05 10:59:49 +00:00
0ea751539e Fix a bug in TurnServer that causes flakiness in webrtc_perf_tests.
When a TCP TURN port is destroyed, a TURN refresh request with zero
lifetime is first sent to release the TURN allocation at the server,
and the underlying TCP connection is closed afterwards.

The closing of the TCP connection is handled first by the
VirtualSocketServer in our test infrastructure, and the corresponding
server socket is asynchronously destroyed at the TURN server. The
refresh request is however still passed to this server socket and
further signaled to the TURN server, which fails a DCHECK. The
server implementation should disable any firing of signals from a
server socket to be destroyed.

The bug id is set to None since this is a one-liner CL.

TBR=pthatcher@webrtc.org

Bug: None
Change-Id: Ib457b3800511a322ef69d67c71f2de05f3d67967
Reviewed-on: https://webrtc-review.googlesource.com/86501
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23809}
2018-07-02 18:51:23 +00:00
b3f5aed433 Remove the flag PORTALLOCATOR_ENABLE_ANY_ADDRESS_PORTS.
We now always enable any address ports, only using them if they end up
using interfaces that weren't otherwise accessible. This flag is no
longer used by downstream projects.

TBR=deadbeef@webrtc.org

Bug: None
Change-Id: I6e4e93958cbc4300811bafb103f1a2e8732274ed
Reviewed-on: https://webrtc-review.googlesource.com/85860
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23751}
2018-06-27 00:43:09 +00:00
ac5bbd940e Reland "Enable any address ports by default."
This reverts commit 056a68da896d9a578b9ea83e56d261648ea0adc6.

Reason for revert: Trying to reland.

Original change's description:
> Revert "Enable any address ports by default."
> 
> This reverts commit f04148c810aad2a0809dc8978650c55308381c47.
> 
> Reason for revert: Speculative revert. I suspect this is breaking a
> downstream test (I'll reland if it is not the culprit).
> 
> Original change's description:
> > Enable any address ports by default.
> > 
> > Ports not bound to any specific network interface are allocated by
> > default. These any address ports are pruned after allocation,
> > conditional on the allocation results of normal ports that are bound to
> > the enumerated interfaces.
> > 
> > Bug: webrtc:9313
> > Change-Id: I3ce12eeab0cf3547224e5f8c188d061fc530e145
> > Reviewed-on: https://webrtc-review.googlesource.com/78383
> > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23673}
> 
> TBR=deadbeef@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> 
> Change-Id: I3b3dc42c7de46d198d4b9c270020dcf1100dd907
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:9313
> Reviewed-on: https://webrtc-review.googlesource.com/84300
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23678}

TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:9313
Change-Id: I98442346babb5d8953d37dc5825efaf79804ed7f
Reviewed-on: https://webrtc-review.googlesource.com/85000
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23720}
2018-06-22 17:27:34 +00:00
0a1d189e50 Replace rtc::Optional with absl::optional in rtc_base
This is a no-op change because rtc::Optional is an alias to absl::optional

This CL generated by running script with parameter 'rtc_base'
Then manually fix where Optional was used without rtc prefix (patchset#3)

find $@ -type f \( -name \*.h -o -name \*.cc \) \
-exec sed -i 's|rtc::Optional|absl::optional|g' {} \+ \
-exec sed -i 's|rtc::nullopt|absl::nullopt|g' {} \+ \
-exec sed -i 's|#include "api/optional.h"|#include "absl/types/optional.h"|' {} \+

find $@ -type f -name BUILD.gn \
-exec sed -r -i 's|"[\./api]*:optional"|"//third_party/abseil-cpp/absl/types:optional"|' {} \+;

git cl format

Bug: webrtc:9078
Change-Id: I825f80cc8089747876ba6316d9e7c30e05716974
Reviewed-on: https://webrtc-review.googlesource.com/84585
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23700}
2018-06-21 11:23:40 +00:00
5b8dd4d75e Fix a dangling-pointer bug in P2PTransportChannel unit tests.
Messages posted to the main thread are handled by dangling pointers to
destroyed endpoints after the tests end.

Bug: None
Change-Id: I901d63bf11574882d0259cd4b07e628f6a4eebc5
Reviewed-on: https://webrtc-review.googlesource.com/84540
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23691}
2018-06-20 22:25:00 +00:00
056a68da89 Revert "Enable any address ports by default."
This reverts commit f04148c810aad2a0809dc8978650c55308381c47.

Reason for revert: Speculative revert. I suspect this is breaking a
downstream test (I'll reland if it is not the culprit).

Original change's description:
> Enable any address ports by default.
> 
> Ports not bound to any specific network interface are allocated by
> default. These any address ports are pruned after allocation,
> conditional on the allocation results of normal ports that are bound to
> the enumerated interfaces.
> 
> Bug: webrtc:9313
> Change-Id: I3ce12eeab0cf3547224e5f8c188d061fc530e145
> Reviewed-on: https://webrtc-review.googlesource.com/78383
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23673}

TBR=deadbeef@webrtc.org,pthatcher@webrtc.org,qingsi@google.com

Change-Id: I3b3dc42c7de46d198d4b9c270020dcf1100dd907
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9313
Reviewed-on: https://webrtc-review.googlesource.com/84300
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23678}
2018-06-20 07:53:30 +00:00
f04148c810 Enable any address ports by default.
Ports not bound to any specific network interface are allocated by
default. These any address ports are pruned after allocation,
conditional on the allocation results of normal ports that are bound to
the enumerated interfaces.

Bug: webrtc:9313
Change-Id: I3ce12eeab0cf3547224e5f8c188d061fc530e145
Reviewed-on: https://webrtc-review.googlesource.com/78383
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23673}
2018-06-20 04:22:23 +00:00
665174fdbb Reformat the WebRTC code base
Running clang-format with chromium's style guide.

The goal is n-fold:
 * providing consistency and readability (that's what code guidelines are for)
 * preventing noise with presubmit checks and git cl format
 * building on the previous point: making it easier to automatically fix format issues
 * you name it

Please consider using git-hyper-blame to ignore this commit.

Bug: webrtc:9340
Change-Id: I694567c4cdf8cee2860958cfe82bfaf25848bb87
Reviewed-on: https://webrtc-review.googlesource.com/81185
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23660}
2018-06-19 14:00:39 +00:00
15ac52109f Removing unused cricket::Port constructor.
Has an extra IPAddress argument that's not used at all.

TBR=qingsi@webrtc.org

Bug: None
Change-Id: If516045ab3d4edf4ac9c394dab52b3243db276ad
Reviewed-on: https://webrtc-review.googlesource.com/84061
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23646}
2018-06-18 21:55:04 +00:00
00c7183614 Replace rtc::Optional with absl::optional in media, ortc, p2p
This is a no-op change because rtc::Optional is an alias to absl::optional

This CL generated by running script with parameters 'media ortc p2p':
find $@ -type f \( -name \*.h -o -name \*.cc \) \
-exec sed -i 's|rtc::Optional|absl::optional|g' {} \+ \
-exec sed -i 's|rtc::nullopt|absl::nullopt|g' {} \+ \
-exec sed -i 's|#include "api/optional.h"|#include "absl/types/optional.h"|' {} \+

find $@ -type f -name BUILD.gn \
-exec sed -r -i 's|"(../)*api:optional"|"//third_party/abseil-cpp/absl/types:optional"|' {} \+;

git cl format

Bug: webrtc:9078
Change-Id: I19167714af7cc1436d34cfcba6c8b3718d8e677b
Reviewed-on: https://webrtc-review.googlesource.com/83731
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23638}
2018-06-16 07:09:59 +00:00
1b36894f06 Reland "Refactor the regathering of candidates in P2PTransportChannel."
This is a reland of 14f8aba9967ac2f1789ede12ff66107962757fb5

Original change's description:
> Refactor the regathering of candidates in P2PTransportChannel.
> 
> The functionality of regathering candidates is refactored to a separate
> regathering controller owned by P2PTransportChannel. This refactoring
> is part of a long-term plan to restructure a modularied
> P2PTransportChannel and it would also benefit the addition of autonomous
> regathering of candidates that is proactive to the ICE states in the
> near future.
> 
> Bug: None
> Change-Id: I74cea974ea628430c77b5d51b7c9179ddffc690d
> Reviewed-on: https://webrtc-review.googlesource.com/75820
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23588}

Bug: None
Change-Id: I7308e2aef692edd4f0bf9717a88ba2dfba4383a6
Reviewed-on: https://webrtc-review.googlesource.com/83360
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23607}
2018-06-14 01:40:45 +00:00
5d16d7fd52 Add a DCHECK for null port in FakePortAllocator.
If the socket server of the thread where FakePortAllocator lives is not
configured to be a VirtualSocketServer, there is a chance that we have a
null port in FakePortAllocator::StartGettingPort after creating the test
UDP port (for example, no permission to create a real socket if using a
PhysicalSocketServer), and subsequently this results in a crash when
connecting a signal in the port to a slot.

Bug: webrtc:9406
Change-Id: I1ba4526f7b9e104bed556f61d9348edc426fc1fc
Reviewed-on: https://webrtc-review.googlesource.com/83480
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23606}
2018-06-14 00:37:15 +00:00
1f4d7a2848 Revert "Refactor the regathering of candidates in P2PTransportChannel."
This reverts commit 14f8aba9967ac2f1789ede12ff66107962757fb5.

Reason for revert: breaking internal tests

Original change's description:
> Refactor the regathering of candidates in P2PTransportChannel.
> 
> The functionality of regathering candidates is refactored to a separate
> regathering controller owned by P2PTransportChannel. This refactoring
> is part of a long-term plan to restructure a modularied
> P2PTransportChannel and it would also benefit the addition of autonomous
> regathering of candidates that is proactive to the ICE states in the
> near future.
> 
> Bug: None
> Change-Id: I74cea974ea628430c77b5d51b7c9179ddffc690d
> Reviewed-on: https://webrtc-review.googlesource.com/75820
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23588}

TBR=deadbeef@webrtc.org,pthatcher@webrtc.org,qingsi@google.com

Change-Id: I8b08351c9a3fcf89e2a25ed2c668c335cbd2d2d0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/83300
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23592}
2018-06-13 05:55:45 +00:00
241d0c16c0 Remove ContinualGatheringPolicy::GATHER_CONTINUALLY_AND_RECOVER.
This policy is not implemented.

Bug: None
Change-Id: I6c162d61c2488a4726c20df5c14439f83633a198
Reviewed-on: https://webrtc-review.googlesource.com/76041
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23591}
2018-06-13 01:00:00 +00:00
aed7164bde Updated PeerConnection integration test to fix race condition.
The PeerConnection integration test was creating TurnServers on the
stack on the signaling thread. This could cause a race condition problem
when the test was being taken down. Since the turn server was destructed
on the signaling thread, a socket might still try and send to it after
it was destroyed causing a seg fault. This change creates/destroys the
TestTurnServers on the network thread to fix this issue.

Bug: None
Change-Id: I080098502b737f0972ce2fa5357920de057a3312
Reviewed-on: https://webrtc-review.googlesource.com/81301
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Seth Hampson <shampson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23590}
2018-06-13 00:20:10 +00:00
14f8aba996 Refactor the regathering of candidates in P2PTransportChannel.
The functionality of regathering candidates is refactored to a separate
regathering controller owned by P2PTransportChannel. This refactoring
is part of a long-term plan to restructure a modularied
P2PTransportChannel and it would also benefit the addition of autonomous
regathering of candidates that is proactive to the ICE states in the
near future.

Bug: None
Change-Id: I74cea974ea628430c77b5d51b7c9179ddffc690d
Reviewed-on: https://webrtc-review.googlesource.com/75820
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23588}
2018-06-12 22:51:40 +00:00
dadaaee3e8 Remove stringstreams from p2p/
Bug: webrtc:8982
Change-Id: Ibb01bbb7e5f07d266ac7dff45932afe95abc761c
Reviewed-on: https://webrtc-review.googlesource.com/82801
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23576}
2018-06-12 08:08:57 +00:00