Commit Graph

65 Commits

Author SHA1 Message Date
Michael Froman
5d1597b31f Bug 1391857 - fixing ctx flags for e10s stun addr gathering. r=drno
In the case of e10s, the ctx flags for default route only (and less
importantly in this case, proxy only) were not set on the ice ctx
when SetStunAddrs was called in PeerConnectionMedia.

MozReview-Commit-ID: CldUpJfaaH3

--HG--
extra : rebase_source : 6223722275d4741519890d4d2b8436b05ca43155
2017-08-22 10:13:06 -05:00
Michael Froman
647131bd6f Bug 1345511 - pt 3 - start using IPC call for stun addrs in PCMedia. r=bwc
Two new calls are added to NrIceCtx.
1) A static call to allow StunAddrsRequestParent to get stun addrs from the main
process.
2) A call to allow StunAddrsRequestChild to pass the new stun addrs back to
PeerConnectionMedia on the content process.

PeerConnectionMedia, when running in e10s mode, sets up the StunAddrsRequestChild
and makes the async request to get the stun addrs.  When they are returned, it
sets the stun addrs in NrIceCtx avoid the network calls that would otherwise
cause a further restricted sandbox to fail.

MozReview-Commit-ID: C2hYBzm6WNv

--HG--
extra : rebase_source : 4c71056850c418efdc0f709f4d838a3e0bf4bee2
2017-03-22 09:59:46 -05:00
Byron Campen [:bwc]
3be4ec69b5 Bug 1342523 - Part 2: Add some better ICE duration telemetry. r=bsmedberg,drno
MozReview-Commit-ID: 7qRd1v6rUHl

--HG--
extra : rebase_source : 0c5bbdd47f719226b29660d59bb283c530118a8a
2017-02-24 15:03:49 -06:00
Byron Campen [:bwc]
42465ae6db Bug 1342523 - Part 1: Clean up how controlling/offerer is specified. r=drno
MozReview-Commit-ID: D8qPAPUZC1J

--HG--
extra : rebase_source : dec5598ee2edd9168bd5c93be222cc409a7db096
2017-02-24 14:05:27 -06:00
Michael Froman
d4be0d3431 Bug 1338273 - initialize NrIceStats vars to zero. r=drno
MozReview-Commit-ID: 1Yir1vQAvhX

--HG--
extra : rebase_source : b6ee2a80bffd55cb08ce094e06affd90e305edb4
2017-02-13 11:58:57 -06:00
Michael Froman
a7b3b8a6bb Bug 1325536 - ice telemetry. r=bsmedberg,chutten,drno
MozReview-Commit-ID: 8pZBXA8Pjea

--HG--
extra : rebase_source : 7ffca52f5eaccc0fad4b8cbc2104bbb57302190a
2017-01-11 19:57:03 -06:00
Phil Ringnalda
ef758dcbf4 Backed out changeset 95d09880ddf6 (bug 1325536) for nsVariant::Release crashes 2017-01-20 22:05:26 -08:00
Michael Froman
007f4afe98 Bug 1325536 - ice telemetry. r=bsmedberg,chutten,drno
MozReview-Commit-ID: 8pZBXA8Pjea

--HG--
extra : rebase_source : 37efe5b463098ff1489d317b1f78206cac4963b3
2017-01-11 19:57:03 -06:00
Byron Campen [:bwc]
357ff5d106 Bug 1056934 - Part 4: Handle turns URLs when configuring nICEr. r=drno
MozReview-Commit-ID: 6izdoAUgwcn

--HG--
extra : rebase_source : 8a45e9cd5b7962b0d674aff8a72283d99655c556
2017-01-03 12:31:30 -06:00
Nils Ohlmeier [:drno]
2ca25c39f6 Bug 1318180: turn network offline events into ice disconnected event. r=bwc,jib
MozReview-Commit-ID: Kqbicl2goL2

--HG--
extra : rebase_source : 4ed7d1364af8bd1575e2ced1bd8512405e0dd669
2016-11-17 23:16:33 -08:00
Nils Ohlmeier [:drno]
d933579cce Bug 852665: add support for ICE disconnected state. r=bwc
MozReview-Commit-ID: 5ONTc2Wz72O

--HG--
extra : rebase_source : 4f99ebbd4fa0e566965f94dc7b5d999bbbfd7b85
2016-10-28 22:22:17 -07:00
Byron Campen [:bwc]
f21b7f1efe Bug 1312304: Remove ICE policy "none". r=drno,smaug
MozReview-Commit-ID: 2adsRJ6pFnD

--HG--
extra : rebase_source : 03a22d7d990d8959b6eb6d23a6cbc4821ad68428
2016-10-24 13:36:56 -05:00
Byron Campen [:bwc]
7eafad9670 Bug 1297416 - Part 3: Add proxy-only mode and pref. r=drno
MozReview-Commit-ID: D1e9f3OkVsU

--HG--
extra : rebase_source : 65784601918246f47d51888f64d90a7a0c580bc9
2016-08-23 15:15:33 -05:00
Byron Campen [:bwc]
02cf82bf1a Bug 1297416 - Part 2: Disable default route mode if the user has granted camera or microphone permissions. r=drno
MozReview-Commit-ID: CFkVnEwUu2d

--HG--
extra : rebase_source : 7b712eace6c780a9ba20de9acd637d918c80f017
2016-08-04 10:55:20 -05:00
Byron Campen [:bwc]
9f8a1e86b6 Bug 1297416 - Part 1: Split out the hiding of host candidates, and default route mode. r=drno
MozReview-Commit-ID: IQtwAG35CM3

--HG--
extra : rebase_source : 3a206adac4d28688bc2ba0c22436d5bf3b68f113
2016-07-25 15:47:52 -05:00
Nils Ohlmeier [:drno]
cd54d864ed Bug 1269486: allow setting ICE controller only once. r=bwc
MozReview-Commit-ID: AXyNyTZH1Jt

--HG--
extra : rebase_source : c8951fd5ada36d5c8ca25568e276fcb8cce0fbfc
2016-05-03 13:28:14 -07:00
Nils Ohlmeier [:drno]
696852ce71 Bug 929977: Add support for RFC 7675 ICE consent freshness. r=bwc,mt
MozReview-Commit-ID: HGRM10L0R3M

--HG--
extra : rebase_source : c50f8665230140096dd163bb5fbb13482a976c91
2016-04-26 13:11:25 -07:00
Michael Froman
e2e642f12e Bug 906986 - Ice restart and tests. r=bwc, r=drno, r=smaug
MozReview-Commit-ID: AMEi7SZebBG
MozReview-Commit-ID: GS2EkamNGc7

--HG--
extra : rebase_source : f715bc837331028f6b5e22820c530e34ca5bedb8
2016-04-08 09:20:53 -05:00
Michael Froman
3afe176e86 Bug 906986 - Wrap NrIceCtx in NrIceCtxHandler which will allow us to handle ice restart. r=bwc, r=drno
MozReview-Commit-ID: 8MEfEBf2Pvi

--HG--
extra : rebase_source : ca23f499f155593e0601f918ab16ee38fae35f42
2016-03-31 14:12:19 -05:00
Nathan Froyd
b938c57967 Bug 1251714 - use UniquePtr instead of ScopedDeletePtr in media/; r=jesup
UniquePtr is more standard than ScopedDeletePtr; using standard
constructs whenever possible is preferable.

This patch merits a couple explanations:

- Where it made sense, I tried to convert:

    T* foo() {
      UniquePtr<T> x = ...;
      ...
      return x.release();
    }

  into:

    UniquePtr<T> foo()

  with corresponding changes inside |foo|'s body.

- The attentive reader will note that:

    auto x = MakeUnique<T>(...);

  is used sometimes and:

    UniquePtr<T> x(new T(...));

  is used sometimes.  I would prefer to use the former, but was stymied
  in several places due to protected constructors.  (MakeUnique doesn't
  have access to those protected constructors, natch.)
2016-03-02 15:28:27 -05:00
Wes Kocher
6866309c97 Backed out 2 changesets (bug 1251714, bug 1251715) for gtest failures in media code
Backed out changeset 1bbd0cd10f76 (bug 1251714)
Backed out changeset 80b197c5608f (bug 1251715)

MozReview-Commit-ID: EHOtiKLS4Xr
2016-03-01 11:36:35 -08:00
Nathan Froyd
70d7688ee3 Bug 1251714 - use UniquePtr instead of ScopedDeletePtr in media/; r=jesup
UniquePtr is more standard than ScopedDeletePtr; using standard
constructs whenever possible is preferable.

This patch merits a couple explanations:

- Where it made sense, I tried to convert:

    T* foo() {
      UniquePtr<T> x = ...;
      ...
      return x.release();
    }

  into:

    UniquePtr<T> foo()

  with corresponding changes inside |foo|'s body.

- The attentive reader will note that:

    auto x = MakeUnique<T>(...);

  is used sometimes and:

    UniquePtr<T> x(new T(...));

  is used sometimes.  I would prefer to use the former, but was stymied
  in several places due to protected constructors.  (MakeUnique doesn't
  have access to those protected constructors, natch.)
2016-02-26 14:52:15 -05:00
Eric Rahm
d5bd208a66 Bug 1239870 - Part 2: Split out NrIceCtx initialization. r=bwc
This splits NrIceCtx initialization into its own function so that the tests
can initialize without having to create a dummy instance.
2016-02-24 18:37:18 -08:00
Wes Kocher
72d9604d91 Backed out 8 changesets (bug 1251482, bug 1251494, bug 1251473, bug 1239870) for gtest failures
Backed out changeset f064a5efbb8c (bug 1251494)
Backed out changeset 9e33adec1aa6 (bug 1251482)
Backed out changeset ab0347657e25 (bug 1251473)
Backed out changeset 1d385d4f195d (bug 1239870)
Backed out changeset ceb3e1ee7dda (bug 1239870)
Backed out changeset 8574075bf42f (bug 1239870)
Backed out changeset ba077a3afbc7 (bug 1239870)
Backed out changeset eb99ab06414d (bug 1239870)

MozReview-Commit-ID: 7r9SEk4VGNU
2016-02-26 17:14:57 -08:00
Eric Rahm
c93c9b8dbe Bug 1239870 - Part 2: Split out NrIceCtx initialization. r=bwc
This splits NrIceCtx initialization into its own function so that the tests
can initialize without having to create a dummy instance.
2016-02-24 18:37:18 -08:00
Byron Campen [:bwc]
139b740255 Bug 1231973 - Allow NAT simulator to be enabled with the pref system. r=drno
--HG--
extra : transplant_source : %DC%23%97%86a%7D-%C5%1BU%10%C4%13%5E%BE%D7%CA%9B%3B%8D
2015-12-16 14:26:02 -06:00
Nathan Froyd
01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nathan Froyd
583afa0965 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
Martin Thomson
f2d864c210 Bug 1125292 - Sending ALPN header field for WebRTC calls, r=bwc
--HG--
extra : commitid : 76muueM8Vfu
extra : amend_source : 0bdbcb10d875a100a91fd583bb863958a24c127c
2015-09-15 10:28:34 -07:00
Byron Campen [:bwc]
c59ebacca3 Bug 1186590 - Part 2 - Move hard-coded interface priority list into nrinterfaceprioritizer, and simplify some functions. r=drno
--HG--
extra : rebase_source : 63cd39c3a1b721c78244064b32338643c7e0e436
2015-09-04 15:25:37 -05:00
EKR
e92a0a38f4 Bug 1189041 - Add option to only gather addresses for default route. r=bwc 2015-08-12 10:53:15 -04:00
Jan-Ivar Bruaroey
3a173c04fa Bug 1187775 - Plumb RTCConfiguration.iceTransportPolicy down to NrIceCtx. r=smaug, r=bwc
--HG--
extra : transplant_source : %8D%E4%F6%CCY%D4M%9E8%21%2A%13Wz%88%D4d%02v4
2015-07-30 10:11:52 -04:00
Byron Campen [:bwc]
97d45626f1 Bug 797262 - IPV6 support for webrtc. r=drno
--HG--
rename : media/webrtc/trunk/webrtc/base/ifaddrs-android.cc => media/mtransport/third_party/nICEr/src/stun/ifaddrs-android.c
extra : rebase_source : a929d159e8e7b39a2bfe3d431395caa838f75a54
2015-04-22 15:02:50 -05:00
Nils Ohlmeier [:drno]
ce7a04b4f0 Bug 891551 - Part 10: added user pref to turn of ICE TCP. r=mt 2015-06-18 23:02:33 -07:00
"Peter Tatrai ext:(%22)
6d354a80da Bug 891551 - Part 5: Add support for TCP ICE candidates. r=bwc,jesup 2014-04-23 10:15:25 +02:00
Byron Campen [:bwc]
c24085b44b Bug 1146462: Close ICE transports when m-sections are disabled. r=drno
--HG--
extra : rebase_source : eee309eccf681f2ef606fb1e78ab6c04f59befd0
2015-03-23 16:56:08 -07:00
Byron Campen [:bwc]
1f815978b4 Bug 1017888 - Part 1: Renegotiation support. r=mt, r=smaug
--HG--
extra : rebase_source : df1c2962ee88f75c6ad676b9cd79978a87dafb65
extra : amend_source : c938904331323ff3565624795ac76d82502f43fb
2014-12-10 15:53:54 -08:00
f649bed22d Bug 949703 - Part 1: Use HTTP proxy for WebRTC TURN/TCP r=ekr
--HG--
extra : rebase_source : 607cd8e262fad408e605114ed0dabad249a10ec9
2015-01-21 16:26:00 -08:00
Wes Kocher
eedd56c941 Backed out 2 changesets (bug 949703) for mochitest-e10s-3 orange
Backed out changeset 6f5a7adab265 (bug 949703)
Backed out changeset 7933aeabf6bd (bug 949703)
2015-01-21 17:15:02 -08:00
1901ea4c92 Bug 949703 - Part 1: Use HTTP proxy for WebRTC TURN/TCP r=ekr 2015-01-18 11:51:00 -08:00
Byron Campen [:bwc]
3af28ea884 Bug 1091242 - Part 6: Wiring the new JSEP handler code in. See https://github.com/unicorn-wg/gecko-dev/tree/multistream_rebase for more history. r=jesup, r=smaug 2014-11-19 16:16:29 -08:00
Phil Ringnalda
5fe54ea0fd Backed out 10 changesets (bug 1091242) for Android/b2g non-unified build bustage
CLOSED TREE

Backed out changeset 7f72b55c5de7 (bug 1091242)
Backed out changeset f1501aa24397 (bug 1091242)
Backed out changeset 7fde5994aee5 (bug 1091242)
Backed out changeset 59b415714087 (bug 1091242)
Backed out changeset dadb65fedc08 (bug 1091242)
Backed out changeset 21be81424e4e (bug 1091242)
Backed out changeset 498fb1dafba5 (bug 1091242)
Backed out changeset 8d0653eb85ab (bug 1091242)
Backed out changeset c82d484e135a (bug 1091242)
Backed out changeset 3e0c8932f1b1 (bug 1091242)
2014-12-08 20:53:07 -08:00
Byron Campen [:bwc]
bb404e8254 Bug 1091242 - Part 6: Wiring the new JSEP handler code in. See https://github.com/unicorn-wg/gecko-dev/tree/multistream_rebase for more history. r=jesup, r=smaug 2014-11-19 16:16:29 -08:00
EKR
fcfb4e0b1e Bug 1027350 - Allow loopback addresses for ICE. r=bwc
--HG--
extra : rebase_source : 525e2d8455beff596c1ae13b4a8c4d062533a0df
2014-06-22 15:11:48 -07:00
Byron Campen [:bwc]
22545d9d7e Bug 1024028 - Part 2: Add an ice_checking callback that is fired when checking actually starts. r=drno 2014-08-06 11:34:55 -07:00
Ehsan Akhgari
9647357b1f Bug 1053792 - Fix some bad implicit constructors in the mtransport code; r=jesup 2014-08-15 17:41:29 -04:00
Benoit Jacob
a9291b104e Bug 1027251 - Fix or whitelist dangerous public destructors in media/mtransport - r=abr 2014-06-20 07:08:24 -04:00
Anders Lund
efc993ca04 Bug 942188 - Added parsing of ice-lite attribute and start ice checks as controlling if peer is ice-lite. r=abr 2014-05-16 01:32:00 -05:00
EKR
b9c43f7c18 Bug 1012999: When STUN global rate limit is exceeded, record this in telemetry. r=ekr 2014-05-19 19:16:38 -07:00
EKR
32c6b4cfce Bug 970569 - Fix crasher introduced by bug 928930. r=bwc 2014-02-10 14:45:42 -08:00