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

142 Коммитов

Автор SHA1 Сообщение Дата
Gijs Kruitbosch 287e140005 Bug 1454956 - change scheme loop to use a range-based for loop, r=nwgh
MozReview-Commit-ID: C0a6urRjBzn

--HG--
extra : rebase_source : 98f16b7ed23d723e2b45b9625018ebcd4ed9c4a3
2018-04-19 16:13:00 +01:00
Gijs Kruitbosch e669847128 Bug 1447341 - stop querying prefs for fake protocols we use internally, r=nwgh
MozReview-Commit-ID: EXUupEKlsSM

--HG--
extra : rebase_source : 9df3048e6c24a6d9f8b38196903fe5d8450dbe01
2018-04-17 15:48:13 +01:00
Gijs Kruitbosch 1dbd3f74c6 Bug 1447341 - don't try to get a protocol handler for empty schemes, r=valentin
MozReview-Commit-ID: 3wJBC9TQsoV

--HG--
extra : rebase_source : d6581efc9c2cb75c51837c310a6f09cc88e14e64
2018-04-17 15:38:36 +01:00
Tom Schuster b0dadb57b5 Bug 1452701 - Add pref to allow FTP subresources. r=ckerschb
--HG--
extra : rebase_source : 571060a866cc46ab253b0718d33dcbbd0f7e0a87
2018-04-09 21:07:01 +02:00
Ciure Andrei 7208a2fee8 Merge inbound to mozilla-central. a=merge 2018-04-04 00:54:16 +03:00
Dave Townsend e2dffad4ac Bug 1448500: Add speculative request content policy type. r=bz, r=kmag
Adds a new TYPE_SPECULATIVE to nsIContentPolicy uses it as the type for
speculative connection channels from the IO service. I believe I've added it to
all the content policies in tree to make sure it behaves the same as TYPE_OTHER
used to.

The webextension test shows that the webextension proxy API sees speculative
lookups requested through the IO service.

MozReview-Commit-ID: DQ4Kq0xdUOD

--HG--
extra : rebase_source : d9460fdac118bc68f0db79749a16f181b580f2e7
2018-03-23 15:27:08 -07:00
Daniel Stenberg e443c66c37 bug 1447642 - no more DNSService restarts r=valentin
The DNS service was shutdown and restarted again in several scenarios,
for example when one of its prefs changed and by nsIOService when going
offline/online. The DNSService restart dragged the resolver, TRRService
and others with it and they too were thus restarted.

Most notably this hurt TRR resolving, as the restart caused short gaps
in time when there was no TRRService available and nsHostResolver
defaults to TRR Mode "native" if there's no TRRservice up, causing the
name resolver to occasionally use the wrong or unexpected resolver even
though TRR is enabled.

The resolver restart also flushed the DNS cache which is now avoided.

It is also a performance gain.

MozReview-Commit-ID: pp4Y8bNQJk

--HG--
extra : rebase_source : 9e3b3e6c0df16b8ca6287d8045f594026ae9ad6d
2018-03-21 14:35:53 +01:00
Ben Kelly 322046c942 Bug 1231211 P12 Allow the ClientInfo and ServiceWorkerDescriptor to be passed to NS_NewChannel() for principal based loads. r=valentin 2018-01-23 10:38:54 -05:00
Gijs Kruitbosch da58d0a580 Bug 1430237 - remove newSimpleNestedURI from nsINetUtil, r=mayhemer
MozReview-Commit-ID: 74RsNo60Kfh

--HG--
extra : rebase_source : ba3288d4bf71c5c1643cf19993fa6cbcd8f72e8f
2018-01-15 11:51:24 +00:00
Kris Maglione a75561bd62 Bug 1412726: Clean up XPCOM singleton constructor refcount handling. r=froydnj
This is a follow-up to bug 1409249. There are a lot of places where our
factory singleton constructors either don't correctly handle their returned
references being released by the component manager, or do handle it, but in
ways that are not obvious.

This patch handles a few places where we can sometimes wind up with dangling
singleton pointers, adds some explanatory comments and sanity check
assertions, and replaces some uses of manual refcounting with StaticRefPtr and
ClearOnShutdown.

There are still some places where we may wind up with odd behavior if the
first QI for a getService call fails. In those cases, we wind up destroying
the first instance of a service that we create, and re-creating a new one
later.

MozReview-Commit-ID: ANYndvd7aZx

--HG--
extra : rebase_source : acfb0611a028fef6b9387eb5d1d9e285782fbc7c
2017-10-29 16:02:40 -07:00
Valentin Gosu b2e06a6d9b Bug 1426501 - Add nsINetUtil.notImplemented() method that always throws r=mayhemer
MozReview-Commit-ID: Ij3M5Ydtlac

--HG--
extra : rebase_source : f95ea333bad7eeacf7fd753028ac4ead18e70eef
2018-01-08 11:23:53 +01:00
Geoff Brown cbb956e0c3 Bug 1407679 - Merge nsIIOService and nsIIOService2; r=nwgh 2017-11-10 07:03:36 -07: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
Kris Maglione 257d9118dc Bug 1409249: Require singleton constructors to return explicit already_AddRefed. r=froydnj
Right now, NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR expects singleton
constructors to return already-addrefed raw pointers, and while it accepts
constructors that return already_AddRefed, most existing don't do so.

Meanwhile, the convention elsewhere is that a raw pointer return value is
owned by the callee, and that the caller needs to addref it if it wants to
keep its own reference to it.

The difference in convention makes it easy to leak (I've definitely caused
more than one shutdown leak this way), so it would be better if we required
the singleton getters to return an explicit already_AddRefed, which would
behave the same for all callers.


This also cleans up several singleton constructors that left a dangling
pointer to their singletons when their initialization methods failed, when
they released their references without clearing their global raw pointers.

MozReview-Commit-ID: 9peyG4pRYcr

--HG--
extra : rebase_source : 2f5bd89c17cb554541be38444672a827c1392f3f
2017-10-16 21:08:42 -07:00
Junior Hsu 51ac771e2d Bug 870460 - Part 1: Let cookie db startup-read off-main-thread. r=nwgh, r=jdm, data-r=francois
--HG--
extra : source : 6c48185764430d35558cf6a0174bc447674e8d58
2017-08-29 18:16:27 +08:00
Phil Ringnalda 93456fb0f4 Backed out changeset 3d0093f961ee (bug 1410794) for Mac plugin crashes and Android test_worker_interfaces.html failures
MozReview-Commit-ID: 20UosHyIr0t
2017-10-24 22:46:36 -07:00
Nicholas Nethercote a861772b10 Bug 1410794 - 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!

--HG--
extra : rebase_source : 725ccf57943283a60ef8c9d654afe4515b4089f8
2017-10-25 10:22:38 +11:00
Sebastian Hengst ec34b16044 Backed out changeset 6c4818576443 (bug 870460) for failing many xpcshell tests, e.g. extensions/cookie/test/unit/test_cookies_async_failure.js. r=backout
--HG--
extra : amend_source : e5bb4ef1b68ae382c6457f77077f33174518efd1
2017-10-24 16:48:17 +02:00
Junior Hsu 725658c3ff Bug 870460 - Part 1: Let cookie db startup-read off-main-thread. r=nwgh, r=jdm, data-r=francois
--HG--
extra : rebase_source : 9892af8b907e67c8f4e6ee6cbe124b21ee10cc58
2017-08-29 18:16:27 +08:00
hanbinchang f33b2dcc82 Bug 1386168 - Remove nsIOservice::mProxyService. r=bagder 2017-08-04 00:09:11 -04:00
Liang-Heng Chen ea3834fbff Bug 1379872 - early initialize ProtocolProxyService; r=bagder
MozReview-Commit-ID: Kv7cVYhmLJn

--HG--
extra : rebase_source : e1b89084906f7dfa133a6ba7c0b1c5873571056c
2017-07-27 19:10:21 +08:00
Nicholas Nethercote 780a2e4aec Bug 1390428 (part 4) - Remove still more nsXPIDLCString local variables. r=erahm.
These are all easy cases where an nsXPIDLCString local variable is set via
getter_Copies() and then is null checked. The patch uses IsVoid() to replace
the null checks (and get() and EqualsLiteral() calls to replace any implicit
conversions).

--HG--
extra : rebase_source : 484ad42a7816b34b86afbe072e04ba131c1619c6
2017-08-16 13:58:55 +10:00
Christoph Kerschbaumer 9c97294062 Bug 1331351: Block toplevel window data: URI navigations. r=smaug,francois 2017-07-24 18:51:21 +02:00
Andrew McCreight cf00cf911b Bug 1379786, part 2 - Use nsContentUtils::GetSystemPrincipal in various places. r=mrbkap
MozReview-Commit-ID: KPXAqKeX4gI

--HG--
extra : rebase_source : 44fd734e7c5bbaba48bb25b882acc74cf0b81fb5
2017-07-10 14:24:54 -07:00
Sylvestre Ledru 4e9cf83ee8 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG

--HG--
extra : rebase_source : 7235b3802f25bab29a8c6ba40a181a722f3df0ce
2017-07-06 14:00:35 +02:00
Kershaw Chang 5279c25aa6 Bug 1343741 - Part3: Pass labelled event target to nsIProtocolProxyService::AsyncResolve, r=mayhemer
For dispatching runnable in nsPACMan, this patch sends a labelled event target via nsIProtocolProxyService::AsyncResolve.
2017-07-05 00:48:00 +02:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Shih-Chiang Chien 6560630bfa Bug 1374238 - add null check for nsIOService::SpeculativeConnectInternal. r=dragana
MozReview-Commit-ID: 8avSx50euMF

--HG--
extra : rebase_source : 0939e80d7ff4649d74f8db25c8ff446563861925
2017-06-19 18:55:41 +08:00
Valentin Gosu a1c45c3558 Bug 1368549 - Remove MOZ_WIDGET_GONK from netwerk/* r=mcmanus
MozReview-Commit-ID: J2njLbNwlco

--HG--
extra : rebase_source : ccb35cb5845024c1bf7b448ebcec451bab264e8b
2017-05-29 22:09:04 +02:00
Yoshi Huang ccb4b5db4c Bug 1365166 - rename security.data_uri.inherit_security_context to security.data_uri.unique_opaque_origin. r=smaug, ckerschb
Originally the pref is called security.data_uri.inherit_security_context, so the pref is default on.
And when we finish this feature, we turn it off.
To avoid causing confusion in the future, perhaps we should rename it and make the pref default off.
2017-05-23 09:02:05 +08:00
Valentin Gosu 28675dc927 Bug 1360328 - Dispatch a runnable to RecheckCaptivePortal instead of calling it immediately r=mcmanus
MozReview-Commit-ID: HUPJUtho7g8

--HG--
extra : rebase_source : 7e3d9c787569352a598e0efe3393a3d9c14a637a
2017-05-08 13:19:40 +02:00
Valentin Gosu 4ccb51bae2 Bug 1363700 - Add RCWN stats to about:networking r=bz,michal
MozReview-Commit-ID: GVt1omCfL6t

--HG--
extra : rebase_source : fdb321360f21f0f54692bc6b715abb4c155171b7
2017-05-10 19:23:54 +02:00
Johann Hofmann 023ccb065e Bug 1337246 - Part 1 - Add a hostnameIsLocalIPAddress function to nsIIOService. r=valentin
MozReview-Commit-ID: 81A37b1juGD

--HG--
extra : rebase_source : 081b160d2822487a2e3b4e05ba34d614f0ad5042
2017-03-31 22:39:45 +02:00
Nicholas Hurley 7440d1d042 Bug 1348278 - Limit speculative connections to http[s] only. r=mcmanus
Some protocol handlers don't handle speculative connections too well
(they crash). So, we limit to the most useful protocols. This patch
brought to you by
https://bugzilla.mozilla.org/show_bug.cgi?id=1348278#c21

MozReview-Commit-ID: 8dWGdVtalIS

--HG--
extra : rebase_source : 9ba674282e40d8313fdb8fbd2f1b9ae7567d299d
2017-04-28 11:37:24 -07:00
Valentin Gosu 85ac9821e0 Bug 1354245 - Don't call CaptivePortalService::Start() in SetConnectivityInternal if the captive portal service is disabled via pref r=mcmanus
MozReview-Commit-ID: 4xCkBgWDZ2b

--HG--
extra : rebase_source : 8bce4e1fb98e9c8dd2c8119ee59df2cfbb62efb3
2017-04-12 17:52:14 +03:00
Valentin Gosu bb752cebae Bug 1351443 - Only fall back to NewChannel if implementation of NewChannel2 is missing r=mcmanus
If the call to NewChannel2 returns NS_ERROR_NOT_IMPLEMENTED or NS_ERROR_XPC_JSOBJECT_HAS_NO_FUNCTION_NAMED that means the implementation is actually missing, so it is OK to fall back to NewChannel.
If it fails with any other error code, we just return it.

MozReview-Commit-ID: JmgEmPqu6zJ

--HG--
rename : netwerk/test/unit/test_bug894586.js => netwerk/test/unit/test_1351443-missing-NewChannel2.js
extra : rebase_source : 5d41df330a15ad7b679d9bed52e6fbf90bdc4ed8
2017-04-07 15:25:19 +03:00
Mike Hommey 94c16743bb Bug 1344038 - Remove --disable-gio. r=karlt
--HG--
extra : rebase_source : 3b5b820536b0e9b1fb1da3a16c444ed7839770b9
2017-04-05 14:06:25 +09:00
Iris Hsiao 15a34cacd2 Backed out 3 changesets (bug 1344038) for bustage
Backed out changeset 4befea89d81b (bug 1344038)
Backed out changeset c859506b2e4e (bug 1344038)
Backed out changeset 5d28a6382285 (bug 1344038)

--HG--
rename : netwerk/protocol/gio/moz.build => extensions/gio/moz.build
rename : netwerk/protocol/gio/nsGIOProtocolHandler.cpp => extensions/gio/nsGIOProtocolHandler.cpp
2017-04-06 10:35:56 +08:00
Mike Hommey 0543a25916 Bug 1344038 - Remove --disable-gio. r=karlt
--HG--
extra : rebase_source : b380d5ebfc3689a9d8d4e3825c83028f837838f2
2017-04-05 14:06:25 +09:00
David Major dc67bfc9a3 Bug 1344629 - Part 6: Rewrite unnecessary uses of nsLiteralString. r=dbaron
There's an antipattern where nsLiteralString is used as an unnecessary intermediary in converting from CharT* to CharT*,
e.g. CallAFunctionThatTakesACharPointer(NS_LITERAL_CSTRING("foo").get());
or
NS_NAMED_LITERAL_STRING(foo, "abc");
CallAFunctionThatTakesACharPointer(foo.get());

This patch rewrites the callsites that can be trivially changed to use char*/char16_t*.

I'd somewhat like to remove nsTLiteralString::get() altogether, but in code that's less straightforward than these examples, get() is useful enough to keep.

MozReview-Commit-ID: Kh1rUziVllo

--HG--
extra : rebase_source : c21a65694d6e1c42fd88f73632f7ac8f38d005ae
2017-03-14 15:26:27 +13:00
Iris Hsiao 5cece96e1c Backed out 12 changesets (bug 1344629) for stylo build bustage
Backed out changeset cf4273d3ac30 (bug 1344629)
Backed out changeset a96390e044e0 (bug 1344629)
Backed out changeset d9b330f9bc24 (bug 1344629)
Backed out changeset 2b460fe020af (bug 1344629)
Backed out changeset 0ada91b0452e (bug 1344629)
Backed out changeset 083304fcd6bd (bug 1344629)
Backed out changeset 53d7d1ce2c97 (bug 1344629)
Backed out changeset 55eee7078ae4 (bug 1344629)
Backed out changeset 7d3c06b3eca9 (bug 1344629)
Backed out changeset e5df14c3db61 (bug 1344629)
Backed out changeset 636095ff2815 (bug 1344629)
Backed out changeset 0be052ad24c1 (bug 1344629)
2017-03-14 11:52:24 +08:00
David Major 40f4821701 Bug 1344629 - Part 6: Rewrite unnecessary uses of nsLiteralString. r=dbaron
There's an antipattern where nsLiteralString is used as an unnecessary intermediary in converting from CharT* to CharT*,
e.g. CallAFunctionThatTakesACharPointer(NS_LITERAL_CSTRING("foo").get());
or
NS_NAMED_LITERAL_STRING(foo, "abc");
CallAFunctionThatTakesACharPointer(foo.get());

This patch rewrites the callsites that can be trivially changed to use char*/char16_t*.

I'd somewhat like to remove nsTLiteralString::get() altogether, but in code that's less straightforward than these examples, get() is useful enough to keep.

MozReview-Commit-ID: Kh1rUziVllo

--HG--
extra : rebase_source : c21a65694d6e1c42fd88f73632f7ac8f38d005ae
2017-03-14 15:26:27 +13:00
Ehsan Akhgari 8b87856c36 Bug 1340677 - Stop supporting ORIGIN_IS_FULL_SPEC for Firefox; r=mcmanus
This is only used in Thunderbird and SeaMonkey and makes origin
comparisons needlessly slow in Firefox.
2017-02-21 10:37:37 -05:00
Valentin Gosu a3908e89e0 Bug 1333174 - Don't use NS_ENSURE_SUCCESS at nsIOService:793 r=bagder
MozReview-Commit-ID: 7ckppZheX3k
2017-02-07 16:17:43 +01:00
Tim Huang 65c848654a Bug 1312954 - Part 10: Add an assertion to make sure every code path of gecko uses speculativeConnect2 correctly. r=ckerschb 2017-02-02 22:18:00 -05:00
Valentin Gosu 11eaff63fe Bug 1334520 - Trigger captive portal recheck recheck for NS_NETWORK_LINK_DATA_CHANGED events r=mcmanus
MozReview-Commit-ID: L8XBLx88PbS
2017-01-30 13:16:05 +01:00
Christoph Kerschbaumer 3129297bc8 Bug 1334050 - Remove dead variable sTelemetryEnabled from nsIOService. r=dragana 2017-01-26 18:49:30 +01:00
Christoph Kerschbaumer 98c3400499 Bug 1328860: Install pref to have data: URIs not inherit the security context. r=smaug 2017-01-26 18:40:32 +01:00
Valentin Gosu f31077388e Bug 1320087 - Make the captive portal report UNKNOWN when the wifi is down r=bagder
* Start/Stop the captive portal service in nsIOService::SetConnectivityInternal
* Set the captive portal state to UNKNOWN when stopping it.

MozReview-Commit-ID: 5dude1F4lNb
2017-01-09 16:07:03 +01:00
Valentin Gosu 51cb7b5e93 Bug 1317511 - Share captive portal state with the content process r=bagder
MozReview-Commit-ID: 5FnM9DNDWwL
2016-11-17 17:35:24 +01:00