Граф коммитов

164 Коммитов

Автор SHA1 Сообщение Дата
Byron Campen [:bwc] 9806d64c46 Bug 1193437: Use config structs in NrIceCtx, and centralize pref lookups some. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D82549
2020-07-09 15:36:07 +00:00
Narcis Beleuzu 0515bebd4d Backed out changeset e1841978b15a (bug 1193437) for bustages on ice_unittest.cpp 2020-07-08 07:52:53 +03:00
Byron Campen [:bwc] ab9a9c5d68 Bug 1193437: Use config structs in NrIceCtx, and centralize pref lookups some. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D82549
2020-07-07 17:14:38 +00:00
Dan Minor a090854892 Bug 1638361 - Use nsIUUIDGenerator in NrIceCtx::GenerateObfuscatedAddress; r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D76707
2020-05-26 19:40:26 +00:00
Byron Campen [:bwc] ff27555ac8 Bug 1629565: Transition gathering state to "new" if a negotiation leaves us with no transports. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D72242
2020-04-27 14:40:00 +00:00
Byron Campen [:bwc] c98c1674f6 Bug 1629565: Do not transition back to "gathering" if no gathering is needed. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D72238
2020-04-27 14:36:39 +00:00
Simon Giesecke 810fd1f507 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in media. r=bwc
Differential Revision: https://phabricator.services.mozilla.com/D65494

--HG--
extra : moz-landing-system : lando
2020-03-06 09:21:47 +00:00
David Major eb1ba6eb92 Bug 1586170 - Fix ubsan issue in NrIceTurnServer::ToNicerTurnStruct r=bwc
UBSan was complaining about taking `&password_[0]` when the vector had zero capacity, because its STL's implementation of `operator[]` used a reference in an intermediate step, and putting null into a reference is prohibited.

While I'm here, I dropped the `const_cast`, since the callee was changed to accept `const UCHAR*` years ago.

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

--HG--
extra : moz-landing-system : lando
2020-01-03 21:07:16 +00:00
Gabriele Svelto 69790bc62e Bug 1600545 - Remove useless inclusions of header files generated from IDL files in accessible/, browser/, caps/, chrome/, devtools/, docshell/, editor/, extensions/, gfx/, hal/, image/, intl/, ipc/, js/, layout/, and media/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

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

--HG--
extra : moz-landing-system : lando
2019-12-06 09:16:44 +00:00
Sylvestre Ledru ed331805ac Bug 1587905 - Remove useless variable 'r' declaration & assignation r=bwc
Differential Revision: https://phabricator.services.mozilla.com/D48890

--HG--
extra : moz-landing-system : lando
2019-10-11 07:32:47 +00:00
Dan Minor dd9ed3ddc3 Bug 1567201 - Obfuscate server reflex candidates if necessary; r=ng
According to https://tools.ietf.org/html/draft-ietf-rtcweb-mdns-ice-candidates-03#section-3.1.2.1
we need to hide the rel-addr and rel-port attributes for server reflex
candidates in order to avoid leaking local addresses.

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

--HG--
extra : moz-landing-system : lando
2019-10-01 12:59:14 +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] 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
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 6c6b65f876 Bug 1554976 - Add plumbing to enable/disable host address obfuscation; r=mjf
This only enables mDNS on OS X for now. Some versions of Windows lack mDNS
support, there are some oddities with resolving IPv6 addresses on Linux, and
Android has not yet been tested. All of these will be addressed in follow on
bugs.

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

--HG--
extra : moz-landing-system : lando
2019-08-28 19:50:06 +00:00
Dan Minor 6c39c9271f Bug 1554976 - Generate mDNS addresses in nricectx; r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D38493

--HG--
extra : moz-landing-system : lando
2019-08-28 19:49:24 +00:00
Gurzau Raul a6c5c5e3ac Backed out 14 changesets (bug 1554976) for Windows build bustages on a CLOSED TREE.
Backed out changeset a9b209d9d880 (bug 1554976)
Backed out changeset 27b4dddf9597 (bug 1554976)
Backed out changeset 3e16c10bb966 (bug 1554976)
Backed out changeset 6a404fca61dc (bug 1554976)
Backed out changeset 77c4e76c8130 (bug 1554976)
Backed out changeset 24f146b86cc4 (bug 1554976)
Backed out changeset b49b4326dcfd (bug 1554976)
Backed out changeset e2c837d1e0a0 (bug 1554976)
Backed out changeset 24728144c263 (bug 1554976)
Backed out changeset a099e69241a0 (bug 1554976)
Backed out changeset 0e34595c2680 (bug 1554976)
Backed out changeset a506bb40047e (bug 1554976)
Backed out changeset 513026415092 (bug 1554976)
Backed out changeset e0fc6a1d4332 (bug 1554976)
2019-08-28 18:10:11 +03:00
Dan Minor d54770d4a5 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 13:11:49 +00:00
Dan Minor 2da923ff0b Bug 1554976 - Add plumbing to enable/disable host address obfuscation; r=mjf
This only enables mDNS on OS X for now. Some versions of Windows lack mDNS
support, there are some oddities with resolving IPv6 addresses on Linux, and
Android has not yet been tested. All of these will be addressed in follow on
bugs.

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

--HG--
extra : moz-landing-system : lando
2019-08-28 13:11:33 +00:00
Dan Minor 9fa62a0a55 Bug 1554976 - Generate mDNS addresses in nricectx; r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D38493

--HG--
extra : moz-landing-system : lando
2019-08-28 13:11:14 +00:00
Ryan Alderete 4b595ec1a8 Bug 1570158 - Add proxy information to candidates table in about:webrtc r=bwc,baku
This adds a field to about:webrtc which indicates whether an associated
candidate is behind a proxy or not.

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

--HG--
extra : moz-landing-system : lando
2019-08-21 10:04:45 +00:00
Sylvestre Ledru 645f2d5773 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-08-13 07:15:25 +00:00
Ryan Alderete 41872c8747 Bug 1452713 - Update webRTCIPHandlingPolicy to match Chrome r=bwc,mixedpuppy
Previously, the network.webRTCIPHandlingPolicy "disable_non_proxied_udp" only
enabled the use of WebRTC if a proxy was configured and the WebRTC service
supported TURN TCP.

This aims to match Chrome's behavior by forcing the use of a proxy if one is
configured, otherwise falling back to mode 3 (no host candidates and default
route only).

Also, remove some dead code left over from the old way of routing TURN
communications through an HTTP proxy.

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

--HG--
extra : moz-landing-system : lando
2019-08-02 21:33:46 +00:00
Dan Minor 97c5db53eb Bug 1561923 - Remove expired WebRTC telemetry; r=drno,bwc
Differential Revision: https://phabricator.services.mozilla.com/D37757

--HG--
extra : moz-landing-system : lando
2019-07-31 19:57:55 +00:00
Ryan Alderete 992406dcb2 Bug 1506219 - Use a known remote for applications loaded from file:// URIs r=bwc
Fall back to using Google's DNS server to determine the associated local
addresses for web applications that are not loaded over the network.  This
includes the loopback address, which is frequently used in the unit tests.

Provide a separate function for setting the target for the default local
address lookup.

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

--HG--
extra : moz-landing-system : lando
2019-07-24 21:58:33 +00:00
Ryan Alderete cd13ca2e02 Bug 1506219 - Update default route according to latest IETF draft r=bwc
draft-ietf-rtcweb-ip-handling specifies that the default route is the route
used to reach the origin rather than the one used to reach the internet, so
update the IP routing to reflect this.  This addresses issues in which the
wrong IP address is used on machines with multiple network interfaces.

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

--HG--
extra : moz-landing-system : lando
2019-07-24 19:50:46 +00:00
Ciure Andrei 24c0d0e47d Backed out 2 changesets (bug 1506219) for causing test_presentation_datachannel_sessiontransport.html to perma fail CLOSED TREE
Backed out changeset 7e39db6e12a5 (bug 1506219)
Backed out changeset ab31fbc14a00 (bug 1506219)
2019-07-22 23:54:45 +03:00
Ryan Alderete 14e5b45ecc Bug 1506219 - Use a known remote for applications loaded from file:// URIs r=bwc
Fall back to using Google's DNS server to determine the associated local
addresses for web applications that are not loaded over the network.  This
includes the loopback address, which is frequently used in the unit tests.

Provide a separate function for setting the target for the default local
address lookup.

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

--HG--
extra : moz-landing-system : lando
2019-07-22 15:42:06 +00:00
Ryan Alderete 35bd2662ca Bug 1506219 - Update default route according to latest IETF draft r=bwc
draft-ietf-rtcweb-ip-handling specifies that the default route is the route
used to reach the origin rather than the one used to reach the internet, so
update the IP routing to reflect this.  This addresses issues in which the
wrong IP address is used on machines with multiple network interfaces.

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

--HG--
extra : moz-landing-system : lando
2019-07-22 15:43:12 +00:00
Sylvestre Ledru e226046cb8 Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

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

--HG--
extra : moz-landing-system : lando
2019-05-01 08:47:10 +00:00
Byron Campen [:bwc] 668700caf4 Bug 1546562: Teach TransportLayerDtls and TransportLayerSrtp to cope when TransportLayerIce fails, and then recovers. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D28840

--HG--
extra : moz-landing-system : lando
2019-04-26 14:49:12 +00:00
Byron Campen [:bwc] b1a7a65902 Bug 1535442 - Part 3: Fire per-transport end-of-candidates signals, with ufrag. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D24277

--HG--
extra : moz-landing-system : lando
2019-03-27 21:54:16 +00:00
Coroiu Cristina 5b81e1ad0b Backed out 10 changesets (bug 1535442) for mochitest failure at dom/presentation/tests/mochitest/test_presentation_1ua_sender_and_receiver_inproc.html
Backed out changeset fe0c1f8b519b (bug 1535442)
Backed out changeset 96249192254a (bug 1535442)
Backed out changeset 8342491a4e91 (bug 1535442)
Backed out changeset 53556fae6a9b (bug 1535442)
Backed out changeset 94781a70cd20 (bug 1535442)
Backed out changeset d31a37ebf804 (bug 1535442)
Backed out changeset 490575f0e834 (bug 1535442)
Backed out changeset 32f8c041f72d (bug 1535442)
Backed out changeset 124cf9c814eb (bug 1535442)
Backed out changeset 2326906f1874 (bug 1535442)

--HG--
extra : rebase_source : 98fb05156463cf79634c219eea60870ac22b3a12
2019-03-27 01:19:57 +02:00
Byron Campen [:bwc] 94a1db362c Bug 1535442 - Part 3: Fire per-transport end-of-candidates signals, with ufrag. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D24277

--HG--
extra : moz-landing-system : lando
2019-03-26 17:41:01 +00:00
Byron Campen [:bwc] c33b5e6569 Bug 1490658: Support RTCIceCandidate.usernameFragment. r=mjf,smaug
Differential Revision: https://phabricator.services.mozilla.com/D21803

--HG--
extra : moz-landing-system : lando
2019-03-08 15:24:27 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Byron Campen [:bwc] 97690b385d Bug 1494312 - Part 3: Expose RLog stuff via MediaTransportHandler. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D11777

--HG--
extra : moz-landing-system : lando
2018-11-23 16:46:51 +00:00
Byron Campen [:bwc] e6218aee8a Bug 1494312 - Part 2: Make the internal PC stats API based on MozPromise. r=mjf,mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D11776

--HG--
extra : moz-landing-system : lando
2018-11-23 16:46:52 +00:00
Paul Vitale 09f4c06235 Bug 1203503 - part 2. replace proxy tunnel with new ipc-based tunnel r+bwc, r+mayhemer
This replaces the tunnel using a new nr_socket implementation.  Proxy detection
code is still done in the peer connction.  However, the result is only used to
detect a proxy.  The result is unused.  Address resolution is done by necko code
in the parent process.  The new socket wraps a WebrtcProxyChannel which uses
necko to handle proxy negotiation.  This has a happy side effect of enabling all
authentication modes that necko already supports for http proxies.

This adds a protocol for Necko to manage, WebrtcProxyChannel.  This new protocol
serves as a pipe for a CONNECT tunnel.  It is only used in WebRtc and not built
in no WebRtc builds.

--HG--
extra : rebase_source : a951841f95eaaa0562886cf76b405b01f1adf70e
extra : intermediate-source : 5c3da21957fc80b07188bc8a405437b858027a22
extra : source : 594a32883463ab051677ba06e22fa6d062b4b4a9
2018-06-05 12:10:16 -05:00
Byron Campen [:bwc] 41541e64f6 Bug 1494301: Single API for mtransport. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D7212

--HG--
extra : moz-landing-system : lando
2018-10-26 00:39:07 +00:00
Byron Campen [:bwc] 93985b16c9 Bug 1486012: Rework ICE restart. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D5897

--HG--
rename : dom/media/tests/mochitest/test_peerConnection_restartIceLocalAndRemoteRollback.html => dom/media/tests/mochitest/test_peerConnection_restartIceLocalAndRemoteRollbackNoSubsequentRestart.html
rename : dom/media/tests/mochitest/test_peerConnection_restartIceLocalRollback.html => dom/media/tests/mochitest/test_peerConnection_restartIceLocalRollbackNoSubsequentRestart.html
extra : moz-landing-system : lando
2018-09-20 16:07:51 +00:00
Byron Campen [:bwc] 2a2903b7fe Bug 1483338: Stop using level as the identifier for media transports. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D3448

--HG--
extra : moz-landing-system : lando
2018-08-28 19:45:58 +00:00
Robert Bartlensky 32a8366815 Bug 1476640: Fix DEAD_STORE errors in media/mtransport/*.
Reviewers: ekr

Reviewed By: ekr

Bug #: 1476640

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

--HG--
extra : rebase_source : ffc6fc1462635e5ccf301520407adea608794b6f
2018-07-20 19:16:38 +03:00
Jan Keromnes 88a09b356c Bug 1464162 - Make a few vector operations more efficient by reserving size beforehand. r=jya
Summary:
These automated fixes were generated like so:
    ./mach configure --enable-clang-plugin
    ./mach build-backend --backend=CompileDB
    run-clang-tidy-6.0.py -p obj-x86_64-pc-linux-gnu/ -fix -checks=-*,performance-inefficient-vector-operation *

Reviewers: jya

Reviewed By: jya

Subscribers: jya

Bug #: 1464162

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

--HG--
extra : amend_source : 648dc48989c5af122a33f8d50c98c0f1efcf3874
2018-05-31 14:52:59 +03:00
Michael Froman dfb4c1b5bd Bug 1374699 - fixing compiler warnings for nICEr. r=drno
Cleaning up compiler warnings for nICEr.  Major highlights:
 - set _WINSOCK_DEPRECATED_NO_WARNINGS define in nicer.gyp for Windows
   builds of nICEr to avoid warnings about inet_addr use in ice_ctx.c:102,
   ice_ctx.c:297, ice_parser.c:465, and transport_addr_reg.c:143.
 - move nr_ice_accumulate_count from ice_ctx.{h|c} to stun_util.{h|c}
   as nr_accumulate_count to quiet warnings in turn_client_ctx.c and
   stun_client_ctx.c.
 - stun_msg.{h|c} - change nr_stun_attr_data_.length,
   nr_stun_message_attribute.encoding_length and nr_stun_message_.length
   from int to UINT2 (not size_t since other lengths in this header are
   UINT2).
 - stun_codec.{h|c} - lengths and offsets changed from int to UINT2 to
   match changes in stun_msg.{h|c}
 - r_data.{h|c} - change Data.len from int to size_t
 - nr_crypto.{h|c} - change nr_ice_crypto_vtbl_ lengths from int to size_t

MozReview-Commit-ID: EF5v79RpqbI

--HG--
extra : rebase_source : ead30e2359ea6a6aada4dd222137302ba86fb972
2017-07-17 11:49:49 -05:00
Byron Campen [:bwc] b2254c16eb Bug 1290948 - Part 8: Don't cause ICE to fail if there's no streams to establish. r+drno r=drno
MozReview-Commit-ID: 4wxlK9w3sL6

--HG--
extra : rebase_source : 06a01ef64beb1352cee503349a287a511de50053
2017-09-29 09:16:14 -05:00
Andreea Pavel 449023b47c Backed out 8 changesets (bug 1290948) for failing mochitest dom/tests/mochitest/general/test_interfaces.html r=backout on a CLOSED TREE
Backed out changeset 97a271bf671e (bug 1290948)
Backed out changeset 8ff38e646037 (bug 1290948)
Backed out changeset 314675023cd5 (bug 1290948)
Backed out changeset 1a5f090502b0 (bug 1290948)
Backed out changeset ffb6e6da955f (bug 1290948)
Backed out changeset 56c169018ceb (bug 1290948)
Backed out changeset 49878c508ce6 (bug 1290948)
Backed out changeset bbe53fb92e21 (bug 1290948)
2017-11-14 21:02:11 +02:00
Byron Campen [:bwc] a944344724 Bug 1290948 - Part 8: Don't cause ICE to fail if there's no streams to establish. r+drno r=drno
MozReview-Commit-ID: 4wxlK9w3sL6

--HG--
extra : rebase_source : ac299a914de054e0b20fbd7409c494ac8708e3b5
2017-09-29 09:16:14 -05:00
Nicholas Nethercote 9252435548 Bug 1410794 (attempt 2) - Change some |string| occurrences in nsIPrefBranch.idl to |ACString|. r=erahm.
This makes the code nicer. In particular, it removes many getter_Copies()
calls. The patch also converts a lot of nsCStrings to nsAutoCString, which will
avoid heap allocation in the common case.

The patch also renames PREF_CopyCharPref() as PREF_GetCStringPref(), because
it's actually getting a string, not a char, and that matches the existing
GetCString() and GetDefaultCString() methods. Correspondingly, it also renames
PREF_SetCharPref() as PREF_SetCStringPref().

The |aPrefName| arguments in nsIPrefBranch.idl remain as |string| because they
almost always involve passing in C string literals, and passing "foo" is much
nicer than passing NS_LITERAL_CSTRING("foo").

It's worth noting that early versions of this patch used |AUTF8String| instead
of |ACString|. But it turns out that libpref stores prefs internally as Latin1.
And |ACString| is compatible with Latin1 but |AUTF8String| isn't, because
non-ASCII Latin1 strings are not valid UTF-8!

MozReview-Commit-ID: D3f7a1Vl1oE

--HG--
extra : rebase_source : e6e4b15d6d210cfd93686f96400281f02bd1d06b
2017-10-27 10:30:33 +11:00