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

119 Коммитов

Автор SHA1 Сообщение Дата
Valentin Gosu 50fee6b27e Bug 1556911 - Don't instantiate NetworkConnectivityService off-main-thread r=dragana
This patch calls NetworkConnectivityService::GetSingleton() on the main thread
and keeps a ref to the service until shutdown.
Even though calling ncs->GetIPv6() off-main-thread is technically a data-race
in practice that's OK because only the simple decision whether to send
AAAA requests is made based on that value, which in itself is an optimization.
I filed bug 1556967 for making the connectivity service thread safe.

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

--HG--
extra : moz-landing-system : lando
2019-06-05 20:39:12 +00:00
Valentin Gosu 3cacbcf87b Bug 1552438 - Remove TRR mode 4 (MODE_SHADOW) r=agrover
Differential Revision: https://phabricator.services.mozilla.com/D32997

--HG--
extra : moz-landing-system : lando
2019-06-01 09:44:20 +00:00
Valentin Gosu 4882c4f4ea Bug 1552438 - Remove TRR mode 1 (MODE_PARALLEL) r=agrover
Differential Revision: https://phabricator.services.mozilla.com/D32996

--HG--
extra : moz-landing-system : lando
2019-06-01 09:44:06 +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
Valentin Gosu 50597c68ef Bug 1450893 - Add way to clear DNS cache r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D24300

--HG--
extra : moz-landing-system : lando
2019-03-21 12:41:39 +00:00
Valentin Gosu fc90cbe9f5 Bug 1420677 - Make AddrHostRecord.addr_info a RefPtr r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D22961

--HG--
extra : moz-landing-system : lando
2019-03-19 12:22:12 +00:00
Bogdan Tara 89414a1df5 Backed out 2 changesets (bug 1420677) for causing bug 1534550 a=backout
Backed out changeset cf114035c79f (bug 1420677)
Backed out changeset edff1f39d426 (bug 1420677)
2019-03-12 11:54:19 +02:00
Valentin Gosu fb98cd9527 Bug 1420677 - Make AddrHostRecord.addr_info a RefPtr r=dragana
Depends on D22960

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

--HG--
extra : moz-landing-system : lando
2019-03-11 12:59:55 +00: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 490e611801 Bug 1508472 - Part 5: Fifth batch of comment fix-ups in preparation for the tree reformat r=sylvestre
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal. I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.

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

--HG--
extra : moz-landing-system : lando
2018-11-29 10:30:46 +00:00
Dragana Damjanovic 1687671372 Bug 1508288 - nsHostResolver::mOriginSuffix is not used, we should remove it. r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D12301

--HG--
extra : moz-landing-system : lando
2018-11-20 21:58:17 +00:00
Dragana Damjanovic 428228861f Bug 1502641 - Change ref-counting for nsHostRecord, change nsCOMPtr<*HostRecord> into RefPtr<*HostRecord>, remove pure virtual functions from nsHostRecord. r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D12121

--HG--
extra : moz-landing-system : lando
2018-11-19 15:23:39 +00:00
Daniel Stenberg c20de1888f bug 1501302 - TRR: pass on correct originSuffix for NS checks r=valentin
... when that NS check is used to check the "parent" domain of a
blacklisted host.

Previously, additional TRRblacklist entries due to this would always be
added with the originSuffix "" which was incorrect for all uses of other
suffxes.

MozReview-Commit-ID: EeorQuuRCRX

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

--HG--
extra : moz-landing-system : lando
2018-10-30 13:06:24 +00:00
Dragana Damjanovic 0b0b0258ef Bug 1481251 - Optimize non-A/AAAA type DNS records. r=bagder
Split nsHostRecord into AddrHostRecord and TypeHostRecord for standard address dns queries and queries by-type.

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

--HG--
extra : moz-landing-system : lando
2018-09-27 09:28:36 +00:00
Brindusan Cristian de21f30c98 Backed out changeset 72d92155fb64 (bug 1481251) for bc assertion failures in /obj-firefox/dist/include/mozilla/TimeStamp.h. CLOSED TREE 2018-09-27 05:58:31 +03:00
Dragana Damjanovic 2d89f4170e Bug 1481251 - Optimize non-A/AAAA type DNS records. r=bagder
Split nsHostRecord into AddrHostRecord and TypeHostRecord for standard address dns queries and queries by-type.

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

--HG--
extra : moz-landing-system : lando
2018-09-26 20:10:30 +00:00
Dragana Damjanovic 9cadc84486 Bug 1473736 - Implement necko part of ESNI r=mak,kmag,mcmanus
--HG--
extra : rebase_source : be79870960953ef9535ccb6a440515ec4a8232d5
extra : histedit_source : 8096ab2eaf246cbbeb97bace0531b86b8c69ff66
2018-09-22 23:54:11 +03:00
Gurzau Raul 07d30b811f Backed out changeset dc225279994a (bug 1473736) for web platform leaks 2018-09-21 04:30:10 +03:00
Dragana Damjanovic 70e0646d75 Bug 1473736 - Implement necko part of ESNI r=mak,kmag,mcmanus
Implement necko part of ESNI

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

--HG--
extra : moz-landing-system : lando
2018-09-20 20:53:28 +00:00
Noemi Erli efdd6a208a Backed out changeset 7aa742bff8fb (bug 1473736) for xpcshell failures and bc failures in browser_urlbarSearchSingleWordNotification.js 2018-09-18 22:07:58 +03:00
Dragana Damjanovic f000a5b4b0 Bug 1473736 - Implement necko part of ESNI r=mcmanus
Implement necko part of ESNI

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

--HG--
extra : moz-landing-system : lando
2018-09-17 23:08:14 +00:00
Daniel Stenberg 7786d290c0 bug 1485956 - make DNS cache lookups respect DISABLE_TRR r=valentin
So that explicitly disabling TRR for specific resolves won't end up just
using the cached entry resolved with TRR!

MozReview-Commit-ID: HZ4AyKOMpet

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

--HG--
extra : moz-landing-system : lando
2018-08-24 14:09:22 +00:00
Valentin Gosu 45e6d5718f Bug 1478732 - Backed out changeset 9de74f5039a4 r=backout 2018-08-09 18:56:02 +02:00
Valentin Gosu 1030589ee4 Bug 1478732 - Change nsHostResolver to dispatch one resolver task per native lookup r=bagder
Differential Revision: https://phabricator.services.mozilla.com/D2431

--HG--
extra : moz-landing-system : lando
2018-08-07 07:03:57 +00:00
Valentin Gosu 2c7b0b5f89 Bug 1471280 - Use nsThreadPool for DNS resolver threads r=bagder
Instead of creating and deleteing each thread, we use a nsThreadPool with a max of 8 resolver threads.
Whereas before each thread would run ThreadFunc exactly once then shut down, the threads may now remain active for a while. During this time we may post another task(runnable) to the thread.

MozReview-Commit-ID: FiE370ic1ah

--HG--
extra : rebase_source : 065bbf1f9867dfb38ac7b13816d4d06824d3a05d
2018-07-04 20:36:58 +02:00
Daniel Stenberg 7e7f7eeb34 bug 1463356 do not count "not started" TRR resolves as failures r=mcmanus
... when comparing against the native resolver. DNS_TRR_COMPARE is meant
to compare how the actually performed name resolves fare against each
other.

MozReview-Commit-ID: 98NoUGPpHr6

--HG--
extra : rebase_source : 4042c81da3e5478de26feb7f83c98ee5eb298156
2018-06-20 11:00:19 +02:00
Valentin Gosu 0959b41dd0 Bug 1426019 - Use nsIThread in nsHostResolver r=bagder
MozReview-Commit-ID: LOt7VX9mj7r

--HG--
extra : rebase_source : f66c7282be6c01419d98a216a731fa4bd0a72839
2018-06-18 18:35:16 +02:00
Valentin Gosu d9800226a5 Bug 1417827 - Pass DNS arguments as nsACString& instead of char* r=bagder
MozReview-Commit-ID: 7Zk0wM2wsJF

--HG--
extra : rebase_source : 6bfe7a9c21d447252db1b0a5351305bdecb0fa3a
2018-06-15 01:15:13 +02:00
Dorel Luca ff4d587dc8 Backed out 2 changesets (bug 1417827) for windows build bustage. CLOSED TREE
Backed out changeset 35655153f9c9 (bug 1417827)
Backed out changeset 9606d0d95b53 (bug 1417827)

--HG--
extra : amend_source : ce9a86c7b5ded39d1b00a7c626ba7a082efaabde
2018-06-14 22:07:18 +03:00
Valentin Gosu e5efdc876d Bug 1417827 - Pass DNS arguments as nsACString& instead of char* r=bagder
MozReview-Commit-ID: GqNYfjy9SFp

--HG--
extra : source : 190c4f057ffafa28a9abec657a0c70fe8a9489ab
2018-06-14 14:30:40 +02:00
Gurzau Raul f2d3a45d49 Backed out 2 changesets (bug 1417827) backed out due to gecko decision task failure, tests did not run
Backed out changeset 190c4f057ffa (bug 1417827)
Backed out changeset fc388a747aba (bug 1417827)
2018-06-14 19:07:48 +03:00
Valentin Gosu 3620424d66 Bug 1417827 - Pass DNS arguments as nsACString& instead of char* r=bagder
MozReview-Commit-ID: GqNYfjy9SFp

--HG--
extra : rebase_source : 6bd7c4fcb1f6a5bbbaa9654907ce1b1224be64b2
2018-06-14 14:30:40 +02:00
Patrick McManus f18aa94399 Bug 1462357 - remove the channel and socket interface id r=bagder,baku
the id was a b2g feature only settable via chrome privd xhr and is no
longer active in the code base

MozReview-Commit-ID: 84GPNvhvjNb

--HG--
extra : rebase_source : ab5c2229b98e1407b8b74ef2ee00dcfea45e046a
2018-05-16 16:05:03 -04:00
Patrick McManus b6c1ea5823 Bug 1461182 reduce nsHostRecord overhead by about 40 bytes r=bagder
MozReview-Commit-ID: DvmJE5LcDwQ

--HG--
extra : rebase_source : dd06d83231a4c7fb187f68b34573b115bb82322e
2018-05-12 14:36:26 -07:00
Andi-Bogdan Postelnicu 3f2298c2f6 Bug 1457411 - Update netwerk module to make use of newer methods introduced with c++11 and c++14. r=valentin
MozReview-Commit-ID: 666LNaHyiuQ

--HG--
extra : rebase_source : f3a24e0342d8dcdf9020dd473bc6b1045cbc533b
2018-04-30 19:46:04 +03:00
Daniel Stenberg 9ad6beb28d bug 1453822 - TRR: add a mode for "explicitly turned off" r=mcmanus
... as opposed to off by default.

MozReview-Commit-ID: EClrW33xGkb

--HG--
extra : rebase_source : aa8de07950f0da41eb8136894b119308b0450319
2018-04-13 00:32:04 +02:00
Nika Layzell 0c3ba13e4c Bug 1437167 - Part 1: Stop using PRIntervalTime as the argument to CondVar::Wait and Monitor::Wait, r=mstange, r=froydnj 2018-04-10 17:49:47 -04: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
Daniel Stenberg 20d398643b bug 1441256 - bypass cache when retrying connection without TRR r=mcmanus,valentin
Otherwise it will just load back the same (problematic) addresses from the
cache again the second time. This introduces a new resolver bit
(REFRESH_CACHE) that also invalidates the existing cache entry while doing the
new resolve.

MozReview-Commit-ID: 5Bc2KiAGYYA

--HG--
extra : rebase_source : ae368c88a5db27f0980b9928439d27588bc84815
2018-03-06 14:50:21 +01:00
Daniel Stenberg 14fc881f71 bug 1438947 - mutex nsHostRecord::mTrrA[AAA] accesses r=valentin
... and remove Cancel() from nsHostRecord::RemoveOrRefresh since we
don't need to cancel TRR resolves due to network changes.

MozReview-Commit-ID: Akuhpzgg4N5
2018-02-22 04:22:00 +02:00
Valentin Gosu 98e8686b20 Bug 1439538 - Convert nsHostResolver::m{High,Medium,Low,Eviction}Q to LinkedList<RefPtr<nsHostRecord>> r=bagder
MozReview-Commit-ID: CDMadOtmDHQ

--HG--
extra : rebase_source : aa366237886c7d07cb3d83a15c50a54c08606848
2018-02-20 17:41:50 +01:00
Daniel Stenberg e5d3226694 bug 1434852 - introducing TRR (DOH); r=mcmanus,valentin
Provides an optional resolver mechanism for Firefox that allows running
together with or instead of the native resolver.

TRR offers resolving of host names using a dedicated DNS-over-HTTPS server
(HTTPS is required, HTTP/2 is preferable).

DNS-over-HTTPS (DOH) allows DNS resolves with enhanced privacy, secure
transfers and improved performance.

To keep the failure rate at a minimum, the TRR system manages a dynamic
persistent blacklist for host names that can't be resolved with DOH but works
with the native resolver. Blacklisted entries will not be retried over DOH for
a couple of days. "localhost" and names in the ".local" TLD will not be
resolved via DOH.

TRR is preffed OFF by default and you need to set a URI for an available DOH
server to be able to use it. Since the URI for DOH is set with a name itself,
it may have to use the native resolver for bootstrapping. (Optionally, the
user can set the IP address of the DOH server in a pref to avoid the required
initial native resolve.)

When TRR starts up, it will first verify that it works by checking a
"confirmation" domain name. This confirmation domain is a pref by default set
to "example.com". TRR will also by default await the captive-portal detection
to raise its green flag before getting activated.

All prefs for TRR are under the "network.trr" hierarchy.

The DNS-over-HTTPS spec: https://tools.ietf.org/html/draft-ietf-doh-dns-over-https-03

MozReview-Commit-ID: GuuU6vjTjlm

--HG--
extra : rebase_source : 53fcca757334090ac05fec540ef29d109d5ceed3
2018-02-01 10:20:49 +01:00
Valentin Gosu c4e59fe243 Bug 1427373 - Convert nsHostResolver.mDB from PLDHashTable to nsRefPtrHashtable r=mayhemer
* Converts PLDHashTable mDB to nsRefPtrHashtable<nsGenericHashKey<nsHostKey>, nsHostRecord> mRecordDB
* Removes nsHostDBEnt and associated PLDHashTableOps

This patch makes the code a lot easier to understand, by simplifying the
ownership model. Now the hashtable holds RefPtr<nsHostRecord>, so it's
easier to follow the lifetime of each record.

MozReview-Commit-ID: IMavN8YSPSn

--HG--
extra : rebase_source : 3ff3135e2d9610577f15aaf307a62eec5ed3b47a
2018-01-07 23:22:01 +01:00
Jeff Hemphill 73c0663aec Bug 1425807 - Convert nsHostKey members to nsCString r=valentin
MozReview-Commit-ID: 8tZUukA8Rrk

--HG--
extra : rebase_source : 4877c8eef1c2fd3a630316641d492189663acc61
2017-12-22 14:08:17 -08:00
Valentin Gosu a7fe7a006d Bug 1424834 - Replace nsHostRecord.callbacks with LinkedList<RefPtr<nsResolveHostCallback>> r=mayhemer
* nsResolveHostCallback extends nsISupports (for addref-ing and because nsDNSAsyncRequest implements nsICancelable)
* nsResolveHostCallback extends LinkedListElement<RefPtr<nsResolveHostCallback>> so the list can properly manage references
* nsDNSAsyncRequest and nsDNSSyncRequest properly implement nsISupports and use RefPtr to manage lifetimes


MozReview-Commit-ID: 5NvBcWZzfyN

--HG--
extra : rebase_source : 67adcbd20a29803e5abbb3d16324f9cac6771d28
2017-12-20 01:13:46 +01:00
Dorel Luca d9227411a0 Backed out 2 changesets (bug 1424834) for AddressSanitizer failure r=backout a=backout
Backed out changeset 00e1d58aedfe (bug 1424834)
Backed out changeset 9b69f2b7d373 (bug 1424834)
2017-12-19 13:59:02 +02:00
Phil Ringnalda 74065c09ed Backed out changeset fc0b6106be47 (bug 1425807) for static build bustage
CLOSED TREE
2017-12-18 18:31:20 -08:00
Jeff Hemphill 6d1f1c52d8 Bug 1425807 - Convert nsHostKey members to nsCString. r=valentin
MozReview-Commit-ID: 8tZUukA8Rrk

--HG--
extra : source : 966836866e8afe423a01a9926834a26cb3d3e2b0
extra : amend_source : 8602ab726f16bc561fafc5196d05fa9578073471
extra : histedit_source : 724da61db9ba94554bfdb15992a3a2aad18eca14%2C2a576438e92928c4a8196429dbcd76d1bd1eca7d
2017-12-18 11:27:38 -08:00
Csoregi Natalia 10b1db0472 Backed out changeset 966836866e8a (bug 1425807) for Build Bustage. r=backout on a CLOSED TREE 2017-12-19 03:09:04 +02:00