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
Necko does not allow for a CONNECT only request to happen. This adds a flag
to signal an http channel should only CONNECT if proxied. This flag can only be
set if an HTTPUpgrade handler has been assigned. As proposed by rfc7639, an
alpn header will be included in the CONNECT request. Its value is determined by
the upgrade protocol passed to HTTPUpgrade.
The flag is added as part of nsIHttpChannelInternal because it is dependent on
HTTPUpgrade. It exists as a capability flag since the channel's transaction
needs to know to complete after a successful CONNECT. Also the transaction's
connection needs to know to stop writing transaction data after it CONNECTs or
if there's no proxy, and to not tell the transaction to reset.
If an nsHttpChannel has this flag set then the upgrade handler will receive the
socket after the CONNECT succeeds without doing tls if https.
In order to support xpcshell-test for this change, nsHttpConnectionMgr does a
little check to see if HTTPUpgrade callback is in JavaScript. If it is then
the callback is invoked on the main thread.
--HG--
extra : rebase_source : 96cdfe0e1ffe2f7dad7d12c83c22be92d118195a
extra : intermediate-source : 70710e9bf3d98488485c3265ebdea09683a42a80
extra : source : 25b4b531c10c4b2dae416fd7d744a63a32fed7e5
DONTBUILD as the fuzzing ccov builds are only built on mozilla-central
--HG--
extra : rebase_source : 4934abe5783477e19b658a7246ace6fefbed2a78
extra : histedit_source : 8ba3044fd67a0cc09e1e037dd5da24ee742c184d
Bug 1249474 suggested that we add image/webp to the front of the Accept
header for images, to indicate to servers that we actually support WebP.
Differential Revision: https://phabricator.services.mozilla.com/D8120
This patch removes the following functions:
* nsContentUtils::IsCustomElementsEnabled()
* CustomElementRegistry::IsCustomElementEnabled(JSContext* aCx, JSObject* aObject)
* CustomElementRegistry::IsCustomElementEnabled(nsIDocument* aDoc)
and all references of the pref.
Depends on D11183
Differential Revision: https://phabricator.services.mozilla.com/D11249
--HG--
extra : moz-landing-system : lando
This patch removes the dom.webcomponents.shadowdom.enabled pref and all its
references, including the following functions:
* nsContentUtils::IsShadowDOMEnabled()
* nsIDocument::IsShadowDOMEnabled()
* nsDocument::IsShadowDOMEnabled(JSContext* aCx, JSObject* aGlobal)
* nsDocument::IsShadowDOMEnabled(const nsINode* aNode)
* nsTextNode::IsShadowDOMEnabled(JSContext* aCx, JSObject* aObject)
This function is renamed and updated to nsDocument::IsCallerChromeOrAddon():
* nsDocument::IsShadowDOMEnabledAndCallerIsChromeOrAddon(JSContext* aCx, JSObject* aObject)
I didn't change the tests that load Shadow DOM tests in an iframe, in the interest of keeping hg annotation history.
Differential Revision: https://phabricator.services.mozilla.com/D11183
--HG--
extra : moz-landing-system : lando
This patch modifies UAWidgetsChild so that when the call into the UA Widget
script throws, it could correctly clean up the Shadow DOM, to avoid leaving
the DOM in a half-broken state.
This is needed because of bug 1506300 will cause the constructor of the videocontrols
UA Widget to throw, in our specific test case.
This exception also happens when the videocontrols XBL binding initializes,
but the way the XBL service calls into the XBL binding allow it to reach a usable
but a half-broken state, while our current approach will cause the UA Widget DOM
to be inserted twice, and layout to assert.
The new clean-up approach here will make UA Widget completely absent when the
constructor throws until the cause of the exception is fixed.
Differential Revision: https://phabricator.services.mozilla.com/D11542
--HG--
extra : moz-landing-system : lando
The following python-test paths are being moved out of 'make check' and into their own task:
- python/mozlint
- testing/mozbase
- tools/lint
The following python-test paths previously did not run on Windows:
- python/mozterm
- testing/marionette
- testing/raptor
- tools/tryselect
MozReview-Commit-ID: C07FANaYzf7
Depends on D10758
Differential Revision: https://phabricator.services.mozilla.com/D10759
--HG--
extra : moz-landing-system : lando
This enables Windows generic-worker based tasks to use the run-task script.
MozReview-Commit-ID: C07FANaYzf7
Differential Revision: https://phabricator.services.mozilla.com/D10758
--HG--
extra : moz-landing-system : lando
Gecko doesn't support creating a remote browser from a non-remote
browser when there is an opener, so create a non-remote browser when
there is an opener, even in multiprocess mode.
Differential Revision: https://phabricator.services.mozilla.com/D11952
--HG--
extra : moz-landing-system : lando
Some pages can be either remote or non-remote depending on the current
remote type, so we need to take that into account when updating the
remote type.
Differential Revision: https://phabricator.services.mozilla.com/D11951
--HG--
extra : moz-landing-system : lando
We need to run Mercurial 4.8 so we can start using SQLite storage
and wire protocol version 2 for partial clones.
Differential Revision: https://phabricator.services.mozilla.com/D11399
--HG--
extra : moz-landing-system : lando
Vendored robustcheckout extension from the version-control-tools
repository revision d78e5c52a0228c3dc8ed03fe43bf749c8e68bd20 without
modifications.
This is needed to support Mercurial 4.8.
Differential Revision: https://phabricator.services.mozilla.com/D11398
--HG--
extra : moz-landing-system : lando
This uses the latest image_builder image (on docker hub) to build even the
image_builder image.
The change to `docker.py` handles a new API response (`aux`) from the Docker
daemon. It's unclear what this key means, but displaying it is simple.
Differential Revision: https://phabricator.services.mozilla.com/D8441
--HG--
extra : rebase_source : 2c069da57e416d5e1821e55653d37b23d633ae78
extra : source : f33b9e6aca06b7883f048c6c068704680cbfbbb2
We duplicate the hg.mo fingerprints in run-task so we can fall
back to known good values in case secrets retrieval fails.
Differential Revision: https://phabricator.services.mozilla.com/D10090
--HG--
extra : source : fe2744d3413d28aafe9334c1bac1081ca5702cbd
extra : intermediate-source : 6fc2aad03a346ba27b63dff77e59e139a58889fc