Commit Graph

7133 Commits

Author SHA1 Message Date
Byron Campen [:bwc]
c1963a1155 Bug 1581964: Cast this constant (which is just 1) to an unsigned before left-shifting it. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D46478

--HG--
extra : moz-landing-system : lando
2019-09-19 15:38:18 +00:00
Dan Minor
93ca060abc Bug 1578810 - Handle mDNS hostname prior to calling OnCandidateFound; r=bwc
Differential Revision: https://phabricator.services.mozilla.com/D45563

--HG--
extra : moz-landing-system : lando
2019-09-18 22:02:45 +00:00
Alex Chronopoulos
5cb664d73b Bug 1572281 - Remove audio device change notifications from video capture in Windows. r=dminor
Video capture used to provide device change notifications for audio and video devices. From now on, CubebDeviceEnumerator will provide audio device change notifications thus video capture is updated to notify only changes of the video device. This is the windows part.

Differential Revision: https://phabricator.services.mozilla.com/D46274

--HG--
extra : moz-landing-system : lando
2019-09-18 13:12:30 +00:00
Alex Chronopoulos
aa5a82572d Bug 1572281 - Remove audio device change notifications from video capture in OSX. r=dminor
Video capture used to provide device change notifications for audio and video devices. From now on, CubebDeviceEnumerator will provide audio device change notifications thus video capture is updated to notify only changes of the video device. This is the OSX part.

Differential Revision: https://phabricator.services.mozilla.com/D46273

--HG--
extra : moz-landing-system : lando
2019-09-18 13:16:56 +00:00
Alex Chronopoulos
67bc215a66 Bug 1572281 - Remove audio device change notifications from video capture in Linux. r=dminor
Video capture used to provide device change notifications for audio and video devices. From now on, CubebDeviceEnumerator will provide audio device change notifications thus video capture is updated to notify only changes of the video device. This is the Linux part.

Differential Revision: https://phabricator.services.mozilla.com/D46272

--HG--
extra : moz-landing-system : lando
2019-09-18 13:16:57 +00:00
Byron Campen [:bwc]
8184381274 Bug 1581950: Prevent nr_ice_component_insert_pair from leaking. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D46231

--HG--
extra : moz-landing-system : lando
2019-09-18 22:00:13 +00:00
Byron Campen [:bwc]
72bcc87880 Bug 1569183: Simplify how NrSockets specify whether they're proxied or not. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D46032

--HG--
extra : moz-landing-system : lando
2019-09-17 18:19:19 +00:00
Byron Campen [:bwc]
abf0777414 Bug 1569183: Create an ipdl struct called WebrtcProxyConfig, to cut down on the arg count on lots of functions. r=mjf,mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D45562

--HG--
extra : moz-landing-system : lando
2019-09-17 18:19:04 +00:00
Byron Campen [:bwc]
fec8b0d807 Bug 1569183: Stop doing a proxy lookup to determine whether we're configured to use a proxy (for the proxy_only_if_behind_proxy pref), and instead look at whether we loaded the doc using a proxy. r=mjf,mayhemer,jld
Differential Revision: https://phabricator.services.mozilla.com/D45289

--HG--
extra : moz-landing-system : lando
2019-09-18 14:27:42 +00:00
Byron Campen [:bwc]
2fe90843a0 Bug 1569183: Update OnConnected callbacks to specify what type of proxying (if any) is being used, and implement IsProxied based on this information. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45186

--HG--
extra : moz-landing-system : lando
2019-09-17 18:18:33 +00:00
Byron Campen [:bwc]
6c7a8c9a4e Bug 1569183: Remove NrTcpSocketIpc. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45111

--HG--
extra : moz-landing-system : lando
2019-09-17 18:18:08 +00:00
Byron Campen [:bwc]
047fe556a4 Bug 1569183: Make the proxy_only pref disable UDP. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45105

--HG--
extra : moz-landing-system : lando
2019-09-17 18:17:51 +00:00
Byron Campen [:bwc]
fbfb9f6754 Bug 1569183: Make proxy config parameters optional in WebrtcTCPSocket to get the NAT simulator working again. r=mjf,mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D45104

--HG--
extra : moz-landing-system : lando
2019-09-17 18:17:37 +00:00
Byron Campen [:bwc]
493161e6a3 Bug 1569183: Teach WebrtcTCPSocket to use TLS when configured to. r=mjf,mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D45103

--HG--
extra : moz-landing-system : lando
2019-09-17 18:17:24 +00:00
Byron Campen [:bwc]
9e6bcf1480 Bug 1569183: Teach WebrtcTCPSocket to bind to a specific host/port. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45102

--HG--
extra : moz-landing-system : lando
2019-09-17 18:17:18 +00:00
Byron Campen [:bwc]
dbee4e76f5 Bug 1569183: Add a proxy policy argument to NrSocketProxyConfig, and always set this config on the NrIceCtx. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45101

--HG--
extra : moz-landing-system : lando
2019-09-17 18:17:14 +00:00
Byron Campen [:bwc]
8bd10b72d0 Bug 1569183: Rename SetProxyServer to SetProxyConfig to better reflect what is actually going on. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45100

--HG--
extra : moz-landing-system : lando
2019-09-17 18:17:13 +00:00
Byron Campen [:bwc]
c368262621 Bug 1569183: Rename NrSocketProxy to NrTcpSocket, and use NrTcpSocket for TCP on content/socket process. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45099

--HG--
rename : media/mtransport/nr_socket_proxy.cpp => media/mtransport/nr_socket_tcp.cpp
rename : media/mtransport/nr_socket_proxy.h => media/mtransport/nr_socket_tcp.h
extra : moz-landing-system : lando
2019-09-17 18:17:11 +00:00
Byron Campen [:bwc]
ffa09cee72 Bug 1569183: Rename PWebrtcProxyChannel to PWebrtcTCPSocket. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45098

--HG--
rename : media/mtransport/WebrtcProxyChannelWrapper.cpp => media/mtransport/WebrtcTCPSocketWrapper.cpp
rename : media/mtransport/WebrtcProxyChannelWrapper.h => media/mtransport/WebrtcTCPSocketWrapper.h
rename : media/mtransport/ipc/PWebrtcProxyChannel.ipdl => media/mtransport/ipc/PWebrtcTCPSocket.ipdl
rename : media/mtransport/ipc/WebrtcProxyChannel.cpp => media/mtransport/ipc/WebrtcTCPSocket.cpp
rename : media/mtransport/ipc/WebrtcProxyChannel.h => media/mtransport/ipc/WebrtcTCPSocket.h
rename : media/mtransport/ipc/WebrtcProxyChannelCallback.h => media/mtransport/ipc/WebrtcTCPSocketCallback.h
rename : media/mtransport/ipc/WebrtcProxyChannelChild.cpp => media/mtransport/ipc/WebrtcTCPSocketChild.cpp
rename : media/mtransport/ipc/WebrtcProxyChannelChild.h => media/mtransport/ipc/WebrtcTCPSocketChild.h
rename : media/mtransport/ipc/WebrtcProxyLog.cpp => media/mtransport/ipc/WebrtcTCPSocketLog.cpp
rename : media/mtransport/ipc/WebrtcProxyLog.h => media/mtransport/ipc/WebrtcTCPSocketLog.h
rename : media/mtransport/ipc/WebrtcProxyChannelParent.cpp => media/mtransport/ipc/WebrtcTCPSocketParent.cpp
rename : media/mtransport/ipc/WebrtcProxyChannelParent.h => media/mtransport/ipc/WebrtcTCPSocketParent.h
extra : moz-landing-system : lando
2019-09-17 18:15:41 +00:00
Byron Campen [:bwc]
5aea6ddbff Bug 1569183: Teach WebrtcProxyChannel to handle non-proxied TCP connections, and SOCKS proxying because that was easy to do also. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45097

--HG--
extra : moz-landing-system : lando
2019-09-17 18:15:23 +00:00
Byron Campen [:bwc]
663351b2eb Bug 1569183: Add some much-needed logging to this function. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45096

--HG--
extra : moz-landing-system : lando
2019-09-17 18:15:06 +00:00
Alex Chronopoulos
efb44bee9c Bug 1581806 - Trigger devicechange event for audio and video input devices only. r=dminor
After Bug 1581193 devicechange notifications were triggered with any device change, not just video and audio devices. This patch limits down the notifications to only video and audio input devices change.

Differential Revision: https://phabricator.services.mozilla.com/D46147

--HG--
extra : moz-landing-system : lando
2019-09-17 14:31:39 +00:00
Matthew Gregan
25b3f4cfbc Bug 1575131 - Update libcubeb for IAudioClient3 support on Win10. r=padenot
This picks up the work contributed by @ligfx in https://github.com/kinetiknz/cubeb/pull/530.

Differential Revision: https://phabricator.services.mozilla.com/D42590

--HG--
extra : moz-landing-system : lando
2019-08-26 07:52:25 +00:00
Dan Minor
fc594a5197 Bug 1581577 - Fix ICE duration telemetry high value; r=bwc
The Telemetry::AccumulateTimeDelta function reports in milliseconds but I had
assumed seconds when I added the hostname obfuscation ICE duration histogram.
This change adjusts the "high" value accordingly.

With the telemetry we've collected to date, 60% of the values are below 600
milliseconds, so I think that setting a high value of 30 seconds should be
sufficient even if there is a long tail. Since this does not change the data
being collected, no additional data-review is required, but it does require
renaming the key.

Differential Revision: https://phabricator.services.mozilla.com/D46045

--HG--
extra : moz-landing-system : lando
2019-09-16 18:15:28 +00:00
Dan Minor
382ae1bcb5 Bug 1581193 - Fix devicechange event on Windows; r=achronop
This restores the code for generating devicechange events that was
accidentally removed as part of updating the Windows video capture code
in Bug 1552755.

Differential Revision: https://phabricator.services.mozilla.com/D46033

--HG--
extra : moz-landing-system : lando
2019-09-17 06:47:06 +00:00
John Lin
17e9f72cc3 Bug 1580600 - rename setRates() to setBitrate() and pass the value in bps. r=jya
Depends on D45775

Differential Revision: https://phabricator.services.mozilla.com/D45776

--HG--
extra : moz-landing-system : lando
2019-09-13 23:38:32 +00:00
John Lin
d266695db7 Bug 1580597 - p1: pass timestamp values correctly. r=jya
Bug 1568101/D40532 captures the input timestamp and uses it in the resolve
function. However, there could be multiple encoded frames returned (e.g.,
for Drain()), and all of them will get the same captured timestamp. Read
back the timestamp from encoded data makes sure every frame gets the right
value. Also convert it for EncodedImage::_timeStamp uses different unit.

Differential Revision: https://phabricator.services.mozilla.com/D45774

--HG--
extra : moz-landing-system : lando
2019-09-14 00:23:37 +00:00
Byron Campen [:bwc]
6e3f7f6bb1 Bug 1577719: Init r_log in the c'tor, to simplify things. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D45463

--HG--
extra : moz-landing-system : lando
2019-09-11 02:29:15 +00:00
Dan Minor
dafa68a84f Bug 1580524 - Free conduits when transceiver is stopped; r=bwc
Freeing the conduits when the transceiver is stopped releases all of the
associated webrtc.org objects which results in substantial memory savings.

On my system, with an opt+debug build and 200 stopped transceivers, I see
373.17 MB of memory use in the content process without this patch, and
158.93 MB of memory use with this patch applied.

Going further and calling Shutdown_m as part of Stop() reduces the memory
use to 157.98 MB, which seems like a marginal improvement at the cost of
a much larger risk of introducing bugs.

Differential Revision: https://phabricator.services.mozilla.com/D45845

--HG--
extra : moz-landing-system : lando
2019-09-13 17:44:06 +00:00
Ryan Alderete
862aa4197f Bug 1579506 - Remove OpenAES source code and references r=bryce,mhoye
With NSS now being used to do the decryption in the Clearkey CDM, remove the
source and licensing information related to OpenAES.

Differential Revision: https://phabricator.services.mozilla.com/D45205

--HG--
extra : moz-landing-system : lando
2019-09-12 23:27:08 +00:00
Bastien Orivel
59f8fe9fee Bug 1580908 - Part 8: Update rsdparsa. r=ng
I just copied all the files from the upstream repository into the
rsdparsa directory

Differential Revision: https://phabricator.services.mozilla.com/D45717

--HG--
extra : moz-landing-system : lando
2019-09-12 21:46:25 +00:00
Boris Zbarsky
1128b8dee8 Bug 1578173 part 6. Remove remaining uses of [Constructor] from bindings. r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D45394

--HG--
extra : moz-landing-system : lando
2019-09-12 11:01:17 +00:00
Mike Shal
f8f5fce637 Bug 1496746 - Remove VPATH; r=glandium
Having a full VPATH for the srcdir sometimes causes make to grab the
wrong prerequisite for a rule, in particular if we have a file in the
srcdir and also generate a file of the same name in the objdir. We don't
really need VPATH anymore though, since most of the information comes
from mozbuild, where we can explicitly list the path to the srcdir or
objdir as necessary.

Differential Revision: https://phabricator.services.mozilla.com/D42968

--HG--
extra : moz-landing-system : lando
2019-09-09 17:44:47 +00:00
Dan Minor
37c64b1005 Bug 1569250 - Add telemetry for mDNS use in WebRTC; r=bwc
Differential Revision: https://phabricator.services.mozilla.com/D44888

--HG--
extra : moz-landing-system : lando
2019-09-09 16:45:02 +00:00
Mihai Alexandru Michis
7e0ca2f5cc Backed out changeset ef18dbaff6c7 (bug 1569250) for causing failures in AccumulateTimeDelta. CLOSED TREE 2019-09-09 17:07:20 +03:00
Dan Minor
54d9433d62 Bug 1569250 - Add telemetry for mDNS use in WebRTC; r=bwc
Differential Revision: https://phabricator.services.mozilla.com/D44888

--HG--
extra : moz-landing-system : lando
2019-09-09 13:21:18 +00:00
Ryan Alderete
2e2b52b880 Bug 1572846 - Update Clearkey to use NSS for decryption instead of OpenAES r=bryce,jld
Clearkey previously relied on OpenAES to do its encryption.  In order to
facilitate future changes and the need for CBC support, switch to NSS, which
should be more flexible and actively maintained.

Differential Revision: https://phabricator.services.mozilla.com/D41993

--HG--
extra : moz-landing-system : lando
2019-09-05 19:19:06 +00:00
Dan Minor
fb8723ba06 Bug 1570669 - Only redact peer reflex candidates if host address obfuscation is enabled; r=mjf
This adds a mObfuscateHostAddresses member and uses it to control whether or
not peer reflex candidates are redacted. It is only necessary to keep track of
signaled addresses to support redacting peer reflex candidates, so there is no
need to store them if host address obfuscation is disabled.

Differential Revision: https://phabricator.services.mozilla.com/D44531

--HG--
extra : moz-landing-system : lando
2019-09-06 15:23:53 +00:00
Dan Minor
f849f9d1b0 Bug 1579076 - Remove expired WebRTC telemetry; r=ng,drno
Differential Revision: https://phabricator.services.mozilla.com/D44884

--HG--
extra : moz-landing-system : lando
2019-09-06 03:52:29 +00:00
Ryan VanderMeulen
15c1a17047 Bug 1508198 - Update libjpeg-turbo to 2.0.3. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D44851

--HG--
extra : moz-landing-system : lando
2019-09-05 16:49:12 +00:00
Christian Holler
d5d628a5fb Bug 1577571 - Add OnUpgradeFailed to nsIHttpUpgradeListener. r=michal
Differential Revision: https://phabricator.services.mozilla.com/D44680

--HG--
extra : moz-landing-system : lando
2019-09-05 12:10:27 +00:00
Andreas Pehrson
528b5f4cd3 Bug 1576771 - Reset VideoFrameConverter's track-enabled state when disconnecting video listeners. r=bwc
Depends on D44675

Differential Revision: https://phabricator.services.mozilla.com/D44676

--HG--
extra : moz-landing-system : lando
2019-09-04 14:53:51 +00:00
Eric Rahm
2f5a215771 Bug 1577885 - Remove using namespace std from GMP ClearKey r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D44269

--HG--
extra : moz-landing-system : lando
2019-09-03 19:10:42 +00:00
Cameron Kaiser
47b9886e70 Bug 1576433 - Enable SIMD in libjpeg for PowerPC. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D43352

--HG--
extra : moz-landing-system : lando
2019-09-03 00:15:52 +00:00
Andreas Pehrson
6319ba4dbc Bug 1573102 - Remove mGraph from MediaStreamTrack::MSGListener. r=karlt
To accomodate this, MediaStreamTrackListener::NotifyEnded/Removed get an
additional aGraph argument. NotifyEnabledStateChanged is getting it too, for
completion.

Differential Revision: https://phabricator.services.mozilla.com/D43667

--HG--
extra : moz-landing-system : lando
2019-08-29 13:32:59 +00:00
Dan Minor
eae489fda9 Bug 1554976 - Use StunAddrs to set interface for mdns_service; r=mjf
The Rust get_if_addrs library previously used does not build on Android with
our build system. Since we're already using nICEr to determine the local
interface addresses, rather than fix the Rust library, we can use those
addresses to set the interface on which mdns_service listens.

Differential Revision: https://phabricator.services.mozilla.com/D42760

--HG--
extra : moz-landing-system : lando
2019-08-28 19:51:18 +00:00
Dan Minor
6e5937318f Bug 1554976 - Move thread assertion inside if statement in OnLookupComplete; r=mjf
Checking this assertion outside of the if statement can result in
a use-after-free in debug builds.

Differential Revision: https://phabricator.services.mozilla.com/D42152

--HG--
extra : moz-landing-system : lando
2019-08-28 19:51:06 +00:00
Dan Minor
2511d2ab0c Bug 1554976 - Make mDNS service a singleton; r=mjf
The current code causes one mDNS service to be created for each PeerConnection.
Due to Bug 1569311, the services persist until shutdown, which can lead to a
lot of mDNS threads running on sites which use WebRTC for fingerprinting. This
change makes it so we start at most one mDNS service.

I've filed Bug 1569955 to look at shutting down the mDNS service after the
last hostname is unregistered. As an alternative, if we fix Bug 1569311, we
could also use refcounting and stop the mDNS service after the last
StunAddrsRequestParent is freed.

Differential Revision: https://phabricator.services.mozilla.com/D42151

--HG--
extra : moz-landing-system : lando
2019-08-28 19:50:51 +00:00
Dan Minor
51353ec9f7 Bug 1554976 - Use mdns_service to generate UUIDs; r=mjf
With the move to the socket process, the UUID service is no longer available
in nricectx. This adds a pair of helper functions to mdns_service to generate
UUIDs and uses them to generate hostnames inside nricectx.

Differential Revision: https://phabricator.services.mozilla.com/D42150

--HG--
extra : moz-landing-system : lando
2019-08-28 19:50:44 +00:00
Dan Minor
fc82a0c5d5 Bug 1554976 - Obfuscate default rtp and rtcp candidates if required; r=ng
The default RTP candidate is used to populate the c= line in SDP. Rather than
using the mDNS address, which sipcc can not parse, we use 0.0.0.0:9, which is
what Chromium has chosen as well [1].

For RTCP, the mDNS obfuscated address is used.

[1] https://webrtc.googlesource.com/src.git/+/3ae59d33a310280e2f21ed4c53849950171e48e8

Differential Revision: https://phabricator.services.mozilla.com/D38498

--HG--
extra : moz-landing-system : lando
2019-08-28 19:50:25 +00:00