Counting the code points in a UTF-8 string is simple enough that that it is
not worthwhile to use the locale-dependent parts of the C standard library
for the task.
MozReview-Commit-ID: 6Tzd5NHub3B
--HG--
extra : rebase_source : d452896317d354ee85c817533cba3116adf5277e
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
This permits using these functions with non-param types such as AutoTArray.
MozReview-Commit-ID: 3J1bLjgwB9M
--HG--
extra : rebase_source : 897e64b6f1c8d1c8c939a18d2b0813b33bcd8083
This allows tests to implement different packet handling schemes without having
to extend or modify TestNat itself.
MozReview-Commit-ID: 6DlESF3hfX6
--HG--
extra : rebase_source : ebb621f6f6ba00811cda7baef449caec126cb15e
All the instances are converted as follows.
- nsSubstring --> nsAString
- nsCSubstring --> nsACString
--HG--
extra : rebase_source : cfd2238c52e3cb4d13e3bd5ddb80ba6584ab6d91
media/mtransport/test/ice_unittest.cpp:353:12 [-Wunused-member-function] unused member function 'Stream'
media/mtransport/test/ice_unittest.cpp:1394:7 [-Wunused-member-function] unused member function 'trickled'
media/mtransport/test/ice_unittest.cpp:1867:8 [-Wunused-member-function] unused member function 'SetExpectedTypes'
media/mtransport/test/transport_unittests.cpp:917:8 [-Wunused-member-function] unused member function 'InitIce'
MozReview-Commit-ID: 70PNtdc92mg
--HG--
extra : source : 5dc220c3efd5bd2f8f844eb85887a4bcfabb3990
extra : intermediate-source : 0751fb1b9b19a8451c5aba7e021bcb386962ce5d
When I added this check during the modifications for Bug 1345511 (Move
nICEr stun local address discovery to an IPC call to enable future
sandbox restrictions on content process) I originally thought this was
more of an error condition, but it really isn't. It can happen each
time the following method(s) is called:
PeerConnectionMedia::EnsureTransports() ->
GatherIfReady() ->
EnsureIceGathering_s()
MozReview-Commit-ID: Ct3teqXBxWd
--HG--
extra : rebase_source : a116a8423fd999c4746e9375b8f42a6d908a1ea7
Everything depending on the widget being gonk can go away, as well as
everything depending on MOZ_AUDIO_CHANNEL_MANAGER, which was only
defined on gonk builds under b2g/ (which goes away in bug 1357326).
--HG--
extra : rebase_source : 9f0aeeb7eea8417fa4e06d662d566d67ecaf2a24
This updates mtransport logging to explicitly include prlog.h and defines
MOZ_MTLOG in terms of PR_LOG rather than MOZ_LOG when building outside of XUL.
Building these as part of the webkit lib adds unnecessary dependencies on Mozilla code for things that only case about the webrtc static lib.
MozReview-Commit-ID: 7ThU7hAwRX0
--HG--
extra : rebase_source : eef256711e205d023a647e6196dcc61e657f6e28
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
PStunAddrsRequest.ipdl defines the new IPC protocol to get stun
addrs on the main process.
StunAddrsRequestChild requests the stun addrs from the parent.
StunAddrsRequestParent uses a static method on NrIceCtx to get the
stun addrs from the STS thead and sends the addrs back to the
child process.
NrIceStunAddr (nricestunaddr.{cpp|h}) wraps nr_local_addr and makes
it easier to serialize/deserialize over IPC.
NrIceStunAddrMessageUtils follows the pattern used by other Necko
IPC classes to define top-level serialization/deserialization
calls used by the IPC framework.
Modifications under netwerk/ipc are to connect the new IPC
protocol to get stun addrs to PNecko since it is a network
related IPC protocol.
MozReview-Commit-ID: GyEapBe5krl
--HG--
extra : rebase_source : c650d6aa4f7928bcae6032424303869074a755d4
Expose a tweaked version of nr_ice_get_local_addresses to allow callers to
provide pre-fetched stun addrs if they are available. By default, the normal
call to nr_ice_gather calls this with no pre-fetched stun addrs (read
non-e10s). In e10s, the stun addrs are discovered on the main process and
provided to nr_ice_get_local_addreses. When nr_ice_gather is called from
the content process the local addresses have already been gathered.
In the past, nr_ice_get_local_addresses also applied policy (by removing
duplicate addrs, and, based on stun prefs, removing loopback and/or
link_local addrs. This functionality has been moved to
nr_ice_set_local_addresses where other policy is being applied (like
default route only, forcing specific interfaces, and prioritization).
Because we're now serializing nr_local_addr (wrapped by NrIceStunAddr), we
can't assume that certain pointer references in the source nr_local_addr
are correct when calling nr_local_addr_copy. New non-pointer-arithmetic
version of setting up the pointer on the copied nr_local_addr is used. Also
easier to understand when walking up to it the first time.
MozReview-Commit-ID: KVRFl4dfr7J
--HG--
extra : rebase_source : c0437700ad77ee3b7f98947d3505551ca9ed43e9