Commit Graph

597 Commits

Author SHA1 Message Date
Valentin Gosu
49ba8dc323 Bug 1532324 - Remove manual NS_RELEASE from netwerk/* r=JuniorHsu
Differential Revision: https://phabricator.services.mozilla.com/D22005

--HG--
extra : moz-landing-system : lando
2019-03-05 18:43:02 +00:00
Boris Zbarsky
9c5da5f234 Bug 1489308 part 9. Remove now-unused wyciwyg bits. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D17327

--HG--
rename : dom/html/test/browser_refresh_wyciwyg_url.js => dom/html/test/browser_refresh_after_document_write.js
rename : dom/html/test/file_refresh_wyciwyg_url.html => dom/html/test/file_refresh_after_document_write.html
extra : moz-landing-system : lando
2019-02-28 01:09:48 +00:00
Jonathan Kingston
f6680698bd Bug 1525319 - Removing context from OnDataAvailable r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D20881

--HG--
extra : moz-landing-system : lando
2019-02-27 23:42:27 +00:00
Agi Sferro
d6b900089c Bug 1522137 - Make resource://android return a nsIJARURI. r=snorp,mayhemer,bzbarsky
resource://android URIs always point to a "jar:" URI so it doesn't make sense
that the returned URL object implements nsIFileURL.

This also makes it so extensions can be loaded from a resource://android URI.

Audited all places where we use `nsIJARURI` and check for places where we
assume it looks like `jar:`: the only (!) place where we do that is here:

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/dom/xhr/XMLHttpRequestMainThread.cpp#1852

Where we have special handling for `jar:` URIs. It looks like we would have
less special handling for such a request to a `resource://android` and it could
be fixed by just checking for the interface instead, but that's what's already
happening today so it should work. That code is never reached for
`resource://android` URIs as `mIsMappedArrayBuffer` is false for those URIs
(see #2822). And the code is consistent in checking for the scheme instead of
the interface (the other check is here:
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/dom/xhr/XMLHttpRequestMainThread.cpp#2822)

Audited all places where we do `EqualsLiteral("jar")`:
https://searchfox.org/mozilla-central/search?q=.EqualsLiteral%28%22jar%22%29&path=

`SubstituteRemoteChannel`: looks interesting, but uses
`nsISubstitutingProtocolHandler::ResolveURI` to first get the real URI (which
is a `jar:`) so it works for our case.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/protocol/res/ExtensionProtocolHandler.cpp#414

`SubstitutingProtocolHandler.cpp`

This case is explicitly fixed by this change, making it account for both
`"jar"` and `"resource"`.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/protocol/res/SubstitutingProtocolHandler.cpp#299

`ReadSourceFromFileName`: this also looks interesting, but uses the channel to
get the URI which returns the real `"jar"` URI and not the mapped `"resource"`.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/js/xpconnect/src/XPCJSRuntime.cpp#2837

`nsStringBundle.cpp`

Accounts for both `"jar"` and `"resource"`, so it should work the same.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/intl/strres/nsStringBundle.cpp#437

Audited all places where we use `nsINestedURI` to make sure they would work for
a `nsIJARURI` which does not implement `nsINestedURI`.

`BrowserContentHandler.jsm`

Uses `nsINestedURI` to figure out if a URI is local or not and then it checks
whether it's a `"file"`, `"resource"` or `"chrome"` URI, for a `nsIJARURI &
nsINestedURI` it would return a `"file"` which passes the test, for a
`nsIJARURI` alone it would return `"resource"` which is also considered local
by this code, so the result wouldn't change.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/browser/components/BrowserContentHandler.jsm#395-399

`nsScriptSecurityManager.cpp`

`GetOriginFromURI`: This is the reason why `SubstitutingJARURI` doesn't
implement `nsINestedURI`, the origin is computed starting from the innermost
URI, which in our case would be a file. The behavior in our case is that the
origin from a `resource://android` URI behaves like other `resource://` URIs,
which is what we expect.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/caps/nsScriptSecurityManager.cpp#169

`CheckLoadURIWithPrincipal`: for `nsIJARURI & nsINestedURI` this code will only
allow pages from the same jar to be in the same origin (which is correct), for
`nsIJARURI` this code is unreachable and it would allow every
`resource://android` to load every other `resource://android` URI (which is
essentially the same thing).

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/caps/nsScriptSecurityManager.cpp#874-876

`nsDocShell.cpp`

`DisplayLoadError`: Just looping through the nested URI chain to build an error
message, no concerns here (it would just ignore the `jar:` part, which is
fine).

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/docshell/base/nsDocShell.cpp#3986

`DoURILoad`: Looking for `view-source`, no concerns for `resource://android`.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/docshell/base/nsDocShell.cpp#9645

`nsObjectLoadingContent.cpp`

Also looking for `view-source`, no concerns.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/dom/base/nsObjectLoadingContent.cpp#2004

`nsIconURI.cpp`/`nsIconURI.h`

Exposing `nsINestedURI`. No concerns.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/image/decoders/icon/nsIconURI.cpp#58

`nsJARURI.cpp`/`nsJARURI.h`

Exposing `nsINestedURI`, the subject of this audit.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/modules/libjar/nsJARURI.cpp#45

`nsIOService.cpp`

`URIChainHasFlags`: This code looks at the chain of nested URIs to figure out
if the chain of protocols has a certain flags. for `nsIJARURI & nsINestedURI`
it would look at both `jar:` and `file:` protocols, while in `nsIJARURI` it
would only look at the `resource:` protocol, which is our intention, since we
want this URI to be treated like a `resource:` URI and nothing else. Note the
`resource:` URI is always local (enforced by `NewURI`), so this should be ok.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/base/nsIOService.cpp#1494

`nsNetUtil.cpp`/`nsNetUtil.h`

Implementation of `NS_ImplGetInnermostURI`, which wouldn't work for `nsIJARURI`
alone, as expected.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/base/nsNetUtil.h#704

`nsSimpleNestedURI.cpp`/`nsSimpleNestedURI.h`

Implementing `nsINestedURI` for `nsSimpleNestedURI`, no concerns.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/base/nsSimpleNestedURI.cpp#19

`nsViewSourceHandler.cpp`

Looking at `view-source` inner URI to get the flags, no concerns.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/protocol/viewsource/nsViewSourceHandler.cpp#49

`nsHtml5StreamParser.cpp`/`nsHtml5TreeOpExecutor.cpp`

More `view-source` handling code. No concerns.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/parser/html/nsHtml5StreamParser.cpp#310

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/parser/html/nsHtml5TreeOpExecutor.cpp#884

`DownloadPlatform.cpp`

`IsURLPossiblyFromWeb`: This line is unreachable as the method would return
true because resource has `URI_IS_UI_RESOURCE`.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/components/downloads/DownloadPlatform.cpp#314

`getAnonymizedPath`: This code looks a little scary, and it's the first one
that seems to conflate the fact that `jar: == nsINestedURI`.

On the android case (line 2130) this code manually replaces the
`resource://android` URI with a `jar:` URI, so it wouldn't matter whether
`resource://android` implements `nsINestedURI` or not.

Actually this code could be a lot easier by using
`nsISubstitutingURL::resolveURI`, maybe I should open a bug.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/components/search/SearchService.jsm#2148

`getRemoteTypeForURIObject`: This also looks interesting. The switch at line
157 would go straight to line 218 for `resource:` URIs (irrespective of
`nsINestedURI`) and then for `nsINestedURI` we would look at the `jar:` URI
(and eventually the `file:` URI). While for not `nsINestedURI` we would call
straight to `validatedWebRemoteType`. This might return `WEB_REMOTE_TYPE`
instead of `FILE_REMOTE_TYPE`, but since it's already happening it should be ok
(`resource://android` maps _today_ to a `jar:` file that return
`WEB_RETURN_TYPE`)

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/modules/E10SUtils.jsm#150

`getURIHost`:

This is another piece of code that benefits from not implementing
`nsINestedURI` as the host would be correctly `"android"` instead of the apk
path.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/mozapps/downloads/DownloadUtils.jsm#390

`initDialog`:

Download dialog would show the `resource://android` URI instead of the actual
`jar:` URI, kind of expected.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/mozapps/downloads/HelperAppDlg.jsm#423

There are no places in the codebase where we do `== "jar"`. Looks like I've
already looked at all hits for "jar" too.

Checked for `"jar:` too and It looks like they are all from code that tries to
build a `jar:` URI manually which is fine for this change.

Audited all `schemeIs("jar")` occurrences:
https://searchfox.org/mozilla-central/search?q=schemeIs(%22jar%22)&path=

`browser-identity.js`

Uses the channel URI which is always resolved to `jar:`, so that works
regardless.  See also:
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/protocol/res/SubstitutingProtocolHandler.cpp#229

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/browser/base/content/browser-siteIdentity.js#812

`tabbrowser.js`

Only for `scheme == "about"` URIs.

https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/browser/base/content/tabbrowser.js#789

`HelperAppDialog.js`

Treats "jar:" and "resource" the same way.

https://searchfox.org/mozilla-central/rev/dc0adc07db3df9431a0876156f50c65d580010cb/mobile/android/components/HelperAppDialog.js#63

`WebNavigationContent.js`

This code checks if the scheme is "jar" and if the original URI is "resource"
it will use that instead, so in our case it will use the "resource" URI either
way.

https://searchfox.org/mozilla-central/rev/dc0adc07db3df9431a0876156f50c65d580010cb/toolkit/modules/addons/WebNavigationContent.js#158

Depends on D18740

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

--HG--
extra : moz-landing-system : lando
2019-02-25 15:38:33 +00:00
Sylvestre Ledru
14486004b6 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-02-04 19:10:18 +00:00
Kris Maglione
3a9e3cc721 Bug 1478124: Part 8d - Update netwerk module to use a static component manifest. r=mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D15042

--HG--
rename : netwerk/protocol/res/SubstitutingProtocolHandler.h => netwerk/protocol/res/SubstitutingURL.h
extra : rebase_source : 695f12a3c96f05e6fbbf417f9595b05a379dee9e
extra : source : 496aaf774697f817a689ee0d59f2f866fdb16801
2018-12-16 18:36:32 -08:00
arthur.iakab
c1fae83952 Backed out 16 changesets (bug 1478124) for failing android geckoview-junit CLOSED TREE
Backed out changeset fce62c77a56b (bug 1478124)
Backed out changeset eb2fa3b5edf7 (bug 1478124)
Backed out changeset 8dacce59fcc0 (bug 1478124)
Backed out changeset 012fd0107204 (bug 1478124)
Backed out changeset 496aaf774697 (bug 1478124)
Backed out changeset 21f4fda03159 (bug 1478124)
Backed out changeset b0444e0bc801 (bug 1478124)
Backed out changeset d94039b19943 (bug 1478124)
Backed out changeset 5d85deac61c2 (bug 1478124)
Backed out changeset 929fd654c9df (bug 1478124)
Backed out changeset 1ddd80d9e91a (bug 1478124)
Backed out changeset b8d2dfdfc324 (bug 1478124)
Backed out changeset f500020a273a (bug 1478124)
Backed out changeset dd00365ebb55 (bug 1478124)
Backed out changeset 538e40c5ee13 (bug 1478124)
Backed out changeset bedaa9c437ad (bug 1478124)
2019-01-29 10:03:06 +02:00
Kris Maglione
7e2aa1f145 Bug 1478124: Part 8d - Update netwerk module to use a static component manifest. r=mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D15042

--HG--
rename : netwerk/protocol/res/SubstitutingProtocolHandler.h => netwerk/protocol/res/SubstitutingURL.h
extra : rebase_source : 48e3108ef67fa02e5aae2acad84dc4fd78179bf3
extra : absorb_source : 95d208ffaa1d2037b04f65b59378dd3315adb9b5
extra : histedit_source : 97e70bc165f37ef5138ba10d29fd8754899bb1c2
2018-12-16 18:36:32 -08:00
Margareta Eliza Balazs
9dda825205 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-01-18 12:31:59 +02:00
Ehsan Akhgari
e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01:00
Ehsan Akhgari
06c3d29113 Bug 1521000 - Part 1: Reformat the tree to ensure everything is formatted correctly with clang-format r=sylvestre
Summary: # ignore-this-changeset

Reviewers: sylvestre

Reviewed By: sylvestre

Subscribers: reviewbot, emilio, jandem, bbouvier, karlt, jya

Bug #: 1521000

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

--HG--
extra : histedit_source : 4add583bfa729ccc1aef934629ed45ff095189b0
2019-01-18 10:12:56 +01:00
Kershaw Chang
cffed8b306 Bug 1519336 - Make NS_NewURI work in socket process r=dragana
Enable some necessary services in socket process.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 14:19:42 +00:00
Dragana Damjanovic
fc155bc720 Bug 1513059 - Use the minimal XPCOM for the socket process.r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D15024

--HG--
extra : moz-landing-system : lando
2019-01-16 23:05:11 +00:00
Nathan Froyd
6a08dde1cc Bug 1515194 - part 4 - un-aggregate nsLoadGroup; r=valentin
We no longer use the aggregation facility for nsLoadGroup, and removing
it saves approximately 10% of the space consumed by nsLoadGroup.
2018-12-19 10:08:28 -05:00
Tooru Fujisawa
7983faeb5d Bug 1511393 - Use c-basic-offset: 2 in Emacs mode line for C/C++ code. r=nbp 2018-12-01 04:52:05 +09:00
Benjamin Bouvier
a7f1d173a0 Bug 1511383: Update vim modelines after clang-format; r=sylvestre
- modify line wrap up to 80 chars; (tw=80)
- modify size of tab to 2 chars everywhere; (sts=2, sw=2)

--HG--
extra : rebase_source : 7eedce0311b340c9a5a1265dc42d3121cc0f32a0
extra : amend_source : 9cb4ffdd5005f5c4c14172390dd00b04b2066cd7
2018-11-30 16:39:55 +01: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
Ehsan Akhgari
1f7708bb64 Bug 1502774 - Part 3: Remove nsAuthModule r=valentin
Depends on D10026

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

--HG--
rename : extensions/auth/nsAuthFactory.cpp => extensions/auth/nsIAuthModule.cpp
extra : moz-landing-system : lando
2018-11-01 10:39:58 +00:00
Ehsan Akhgari
001d26e9ea Bug 1502774 - Part 1: Remove XPCOM component registrations for HTTP authenticator classes r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D10025

--HG--
extra : moz-landing-system : lando
2018-11-01 14:21:47 +00:00
Andreea Pavel
3770da1a92 Backed out 3 changesets (bug 1502774) for causing multiple crashes - bug 1503201 a=backout
Backed out changeset 6b821f5b12ae (bug 1502774)
Backed out changeset b3bf57d996a7 (bug 1502774)
Backed out changeset 32a581482291 (bug 1502774)

--HG--
rename : extensions/auth/nsIAuthModule.cpp => extensions/auth/nsAuthFactory.cpp
2018-10-30 21:18:29 +02:00
Ehsan Akhgari
f5264f90b2 Bug 1502774 - Part 3: Remove nsAuthModule r=valentin
Depends on D10026

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

--HG--
rename : extensions/auth/nsAuthFactory.cpp => extensions/auth/nsIAuthModule.cpp
extra : moz-landing-system : lando
2018-10-29 14:59:24 +00:00
Ehsan Akhgari
a064a33bed Bug 1502774 - Part 1: Remove XPCOM component registrations for HTTP authenticator classes r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D10025

--HG--
extra : moz-landing-system : lando
2018-10-29 14:59:14 +00:00
Narcis Beleuzu
3467484554 Backed out 3 changesets (bug 1502774) for mingwclang bustages on include/sspi.h. CLOSED TREE
Backed out changeset a1f9c4666855 (bug 1502774)
Backed out changeset 07648e9d8400 (bug 1502774)
Backed out changeset b403c3c786ee (bug 1502774)

--HG--
rename : extensions/auth/nsIAuthModule.cpp => extensions/auth/nsAuthFactory.cpp
2018-10-29 17:01:21 +02:00
Ehsan Akhgari
7d9df9b0ec Bug 1502774 - Part 3: Remove nsAuthModule r=valentin
Depends on D10026

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

--HG--
rename : extensions/auth/nsAuthFactory.cpp => extensions/auth/nsIAuthModule.cpp
extra : moz-landing-system : lando
2018-10-29 14:40:30 +00:00
Ehsan Akhgari
7a780d8462 Bug 1502774 - Part 1: Remove XPCOM component registrations for HTTP authenticator classes r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D10025

--HG--
extra : moz-landing-system : lando
2018-10-29 14:40:29 +00:00
Valentin Gosu
3753105b42 Bug 1460537 - Connectivity Service - Add DNSv4 and DNSv6 checks r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D7844

--HG--
extra : moz-landing-system : lando
2018-10-29 11:22:40 +00:00
Coroiu Cristina
feba378b98 Backed out 2 changesets (bug 1460537) for xpcshell failures at netwerk/test/unit/test_network_connectivity_service.js on a CLOSED TREE
Backed out changeset ae2b0a2cd8a7 (bug 1460537)
Backed out changeset bd3f7151c697 (bug 1460537)
2018-10-25 20:16:10 +03:00
Valentin Gosu
23793b33e1 Bug 1460537 - Connectivity Service - Add DNSv4 and DNSv6 checks r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D7844

--HG--
extra : moz-landing-system : lando
2018-10-25 15:48:51 +00:00
Ehsan Akhgari
488ca4192a Bug 1501404 - Part 8: Remove the XPCOM registration for NamedPipeService r=valentin
Depends on D9576

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

--HG--
extra : moz-landing-system : lando
2018-10-23 20:07:31 +00:00
Ehsan Akhgari
d0ee7e43f9 Bug 1501404 - Part 7: Remove the XPCOM registration for nsSyncStreamListener r=valentin
Depends on D9575

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

--HG--
extra : moz-landing-system : lando
2018-10-23 20:07:29 +00:00
Ehsan Akhgari
f6b7bc0052 Bug 1501404 - Part 6: Remove the XPCOM registrations for socket provider classes r=valentin
Depends on D9574

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

--HG--
extra : moz-landing-system : lando
2018-10-23 20:07:27 +00:00
Ehsan Akhgari
229b1144b8 Bug 1501404 - Part 5: Remove the XPCOM registration for nsSocketProviderService r=valentin
Depends on D9573

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

--HG--
extra : moz-landing-system : lando
2018-10-23 20:07:25 +00:00
Ehsan Akhgari
1c8e7af29d Bug 1501404 - Part 4: Remove the unused contract ID for nsIHttpPushListener r=valentin
Depends on D9572

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

--HG--
extra : moz-landing-system : lando
2018-10-23 20:07:23 +00:00
Ehsan Akhgari
c1fa5fcfa6 Bug 1501404 - Part 3: Remove the unused contract ID for nsIProxyAutoConfig r=valentin
Depends on D9571

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

--HG--
extra : moz-landing-system : lando
2018-10-23 20:07:21 +00:00
Ehsan Akhgari
245edc5053 Bug 1501404 - Part 2: Remove the XPCOM registration for nsRequestObserverProxy r=valentin
Depends on D9570

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

--HG--
extra : moz-landing-system : lando
2018-10-23 20:07:19 +00:00
Ehsan Akhgari
e6c5cd6e52 Bug 1501404 - Part 1: Remove the XPCOM registration for RequestContextService r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D9570

--HG--
extra : moz-landing-system : lando
2018-10-23 20:07:17 +00:00
Sylvestre Ledru
dd5741407b Bug 1498586 - Add clang-format off to avoid the reformatting of the data structures r=Ehsan
Too hard/impossible for the tool to format correctly these structs

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

--HG--
extra : moz-landing-system : lando
2018-10-12 20:48:24 +00:00
Ehsan Akhgari
94133b9360 Bug 1488305 - Remove the XPCOM component registration for BackgroundChannelRegistrar r=nwgh
Differential Revision: https://phabricator.services.mozilla.com/D4893

--HG--
extra : moz-landing-system : lando
2018-09-26 00:27:32 +00:00
Ehsan Akhgari
645a5d3db1 Bug 1489916 - Remove the XPCOM component registration for nsHttpChannelAuthProvider; r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D5390
2018-09-10 08:01:37 -04:00
Ehsan Akhgari
2dc43a81ad Bug 1489915 - Remove the XPCOM component registration for nsFileStream; r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D5389
2018-09-10 08:00:44 -04:00
Ehsan Akhgari
babcacdc91 Bug 1489365 - Part 2: Remove the XPCOM component registration for nsDirIndexParser; r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D5229
2018-09-07 14:25:57 -04:00
Ehsan Akhgari
3a9430c8dd Bug 1489365 - Part 1: Remove the XPCOM component registration for nsDirIndex; r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D5228
2018-09-07 14:25:56 -04:00
Ehsan Akhgari
5b13de3efe Backout changeset 9e6e20d26c0d (bug 1488305) because it hasn't been reviewed yet 2018-09-05 10:03:24 -04:00
Ehsan Akhgari
266b53e783 Bug 1488305 - Remove the XPCOM component registration for BackgroundChannelRegistrar; r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D4893
2018-09-05 10:01:16 -04:00
Ehsan Akhgari
d7274895ea Bug 1488306 - Remove the XPCOM component registration for nsUnknwonDecoder; r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D4897
2018-09-04 09:43:52 -04:00
Ehsan Akhgari
9762248d38 Bug 1488236 - Remove the XPCOM component registration for nsApplicationCacheNamespace; r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D4877
2018-09-03 14:28:40 -04:00
Ehsan Akhgari
92bbdcda2d Bug 1488238 - Remove the XPCOM component registration for nsApplicationCache; r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D4878
2018-09-03 14:01:03 -04:00
Ehsan Akhgari
9172f9d616 Bug 1485494 - Remove the XPCOM registration for RedirectChannelRegistrar; r=mayhemer 2018-08-24 13:04:10 -04:00
Polly Shaw
226a5beff6 Bug 356831 - Proxy autodiscovery doesn't check DHCP (option 252) r=bagder,valentin
This patch addresses an issue with Firefox's proxy detection on networks which
do not have their a proxy auto-configuration (PAC) file hosted at
http://wpad/wpad.dat, and instead make use of DHCP option 252 for broadcasting
the address of the PAC file. See https://findproxyforurl.com/wpad-introduction/
for an introduction to the protocol.

Prior to this patch, proxy auto-detect missed out the DHCP query stage, and just
 looked for a PAC file at http://wpad/wpad.dat


This patch only addresses the issue for Firefox on Windows, although it defines a
DHCP client interface which could be implemented on other platforms.

The high-level components of this patch are:
 * nsIDHCPClient.idl - this is an interface which has been defined for querying the
   DHCP server.
 * nsPACMan.cpp - where previously when the PAC URL was simply set to a constant of
   http://wpad/wpad.dat, it now dispatches an asynchronous command to the proxy
   thread. The class ExecutePACThreadAction has been augmented to include an
   instruction to 'ConfigureWPAD' (Configure Web-proxy auto-detect), and a new class,
   'ConfigureWPADComplete' has been created to relay the result (the URL of the PAC
   file) back to the nsPACMan object.
 * nsProtocolProxyService.cpp
   Minor changes to reflect the fact that the PAC URL not being set does not always
   mean there is no PAC to be used; instead it could be in the process of being
   detected.
 * TestPACMan.cpp
   This is a new file, and tests only the DHCP auto-detect functionality.
   Some tests use multiple threads, as they test the non-blocking proxy detection.
 * DHCPUtils.cpp
   A class containing the main logic for querying DHCP.
 * WindowsNetworkFunctionsWrapper.cpp
   A very thin wrapper around the Windows API calls needed by DHCPUtils.
   This class was introduced so it could be mocked out in tests.
 * nsWindowsDHCPClient.cpp
 * An implementation of the interface defined in nsIDHCPClient.idl. Fairly thin:
   most logic is implemented in DHCPUtils.
 * TestDHCPUtils.cpp
   Tests for DHCPUtils and nsWindowsDHCPClient

MozReview-Commit-ID: 4xFQz3tOLEx

--HG--
extra : rebase_source : dfd5c588406a8b0d92f91cc8a0038ca722b7140a
2018-06-07 23:07:28 +01:00
Andreea Pavel
86dffac409 Backed out changeset a7a1006e2f52 (bug 356831) for braking marionette on win asan on a CLOSED TREE 2018-07-10 18:42:01 +03:00