Commit Graph

545 Commits

Author SHA1 Message Date
Andrea Marchesini
1273dc5391 Bug 1446933 - Remove 'using namespace mozilla::net' from BackgroundUtils.h, r=qdot 2018-05-30 21:21:17 +02:00
Valentin Gosu
6a2d43d5e7 Bug 1456863 - Backed out bug 356831 (changeset 204bb43af943) for leaks r=me 2018-04-30 15:34:39 +02:00
Polly Shaw
091db15fe1 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: HinC1UevOon

--HG--
extra : rebase_source : cf29f76826cc7728fd36505c8271bf50001c644c
2018-04-22 18:13:11 +01:00
Margareta Eliza Balazs
0fe561286b Backed out changeset 2a760b1c0759 (bug 356831) for adding files without having a bugzilla product and component 2018-04-24 19:33:00 +03:00
Polly Shaw
f95f738f4e 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: HinC1UevOon

--HG--
extra : rebase_source : df2b80fcc03948e54f222e11060e1783f3b95421
2018-04-22 18:13:11 +01:00
Marco Castelluccio
fd5bc8ec6c Bug 1413854 - Remove nsTXTToHTMLConv as it is no longer used. r=dragana
--HG--
extra : rebase_source : 29f8a6eaf02fa406499ac48fda99bb67df444506
2018-03-31 16:08:37 +02:00
Henri Sivonen
eaa2f6b46b Bug 1395114 - Remove nsIUnicharStreamLoader. r=emilio,michal
MozReview-Commit-ID: ECKNnJt80oK

--HG--
extra : rebase_source : 6f09937e0648c65d035dfb4935d6e9a06d0223df
2018-03-26 12:45:31 +03:00
Valentin Gosu
83e7f0c0ea Bug 1447190 - Remove internal mutability from nsStandardURL r=mayhemer
* Removes mSpecEncoding since the spec is always ASCII encoded
* nsStandardURL::InitGlobalObjects is now called from nsNetStartup
* Removes prefObserver from nsStandardURL
* mDisplayHost is now initialized every time that we change the hostname
* Adds locking to the gAllURLs list

MozReview-Commit-ID: 93mwECxYxWl
* * *
[mq]: overfix

MozReview-Commit-ID: 98nyTYa5ZeR

--HG--
extra : rebase_source : 82045e10771038d7168d1f235143c24c72dd5a45
2018-03-22 02:59:32 +01:00
Valentin Gosu
eccc344c51 Bug 1442242 - Make the constuctors of URI implementations private r=mayhemer
MozReview-Commit-ID: LonNnZyJjVO

--HG--
extra : rebase_source : ceefc81a669b17f68f193fce5f172f9f2268a998
2018-03-20 23:23:31 +01:00
Noemi Erli
3e8b48fa31 Backed out 3 changesets (bug 1442242) for fatal error LNK1120: 1 unresolved externals bustages on a CLOSED TREE
Backed out changeset 9f37df3c62e1 (bug 1442242)
Backed out changeset 65b8727bfe76 (bug 1442242)
Backed out changeset 88130a542fb3 (bug 1442242)
2018-03-20 16:45:34 +02:00
Valentin Gosu
2d128cd0dd Bug 1442242 - Make the constuctors of URI implementations private r=mayhemer
MozReview-Commit-ID: 4oo66aYg66s

--HG--
extra : rebase_source : 9503ed13ad14f7df8eb1ac85b3a0eed14928173b
2018-03-20 12:52:50 +01:00
Valentin Gosu
af5eeff2e3 Bug 1442239 - Make URI deserialization (nsISerializable.read) happen via nsIURIMutator only r=mayhemer
* Deserialization now only happens via a mutator
* The CID for URI implementations actually returns the nsIURIMutator for each class
* The QueryInterface of mutators implementing nsISerializable will now act as a finalizer if passed the IID of an interface implemented by the URI it holds

MozReview-Commit-ID: H5MUJOEkpia

--HG--
extra : rebase_source : 01c8d16f7d31977eda6ca061e7889cedbf6940c2
2018-03-19 20:22:32 +01:00
Andreea Pavel
e5950c0d39 Backed out 2 changesets (bug 1442239) for xpcshell failures at widget/tests/unit/test_taskbar_jumplistitems.js on a CLOSED TREE
Backed out changeset 513cd669aca1 (bug 1442239)
Backed out changeset aef4c73f736f (bug 1442239)
2018-03-19 21:19:26 +02:00
Valentin Gosu
f0c7a1ae13 Bug 1442239 - Make URI deserialization (nsISerializable.read) happen via nsIURIMutator only r=mayhemer
* Deserialization now only happens via a mutator
* The CID for URI implementations actually returns the nsIURIMutator for each class
* The QueryInterface of mutators implementing nsISerializable will now act as a finalizer if passed the IID of an interface implemented by the URI it holds

MozReview-Commit-ID: H5MUJOEkpia

--HG--
extra : rebase_source : 8ebb459445cab23288a6c4c86e4e00c6ee611e34
2018-03-08 13:35:10 +01:00
Valentin Gosu
d2d8524673 Bug 1415205 - Add nsIURIMutator impls for all objects implementing nsIURI r=bagder
This also changes URIUtils.cpp:DeserializeURI() to use the mutator to instantiate new URIs, instead of using their default constructor.

MozReview-Commit-ID: JQOvIquuQAP

--HG--
extra : rebase_source : e146624c5ae423f7f69a738aaaafaa55dd0940d9
2017-11-20 17:11:30 +01:00
Shih-Chiang Chien
f8d0b5bde4 Bug 1390708 - remove BinHex support from stream converter r=mcmanus
MozReview-Commit-ID: 6IAy8iY8CAg

--HG--
extra : rebase_source : 2eb22f7ff0dfd8ae5f5b6a8d4c027c5f5f7e0ff4
2017-10-11 11:31:51 +08:00
Geoff Brown
cbb956e0c3 Bug 1407679 - Merge nsIIOService and nsIIOService2; r=nwgh 2017-11-10 07:03:36 -07:00
Valentin Gosu
132162d150 Bug 1415206 - Remove RustURL from Gecko r=bagder
This class isn't being used right now, and MozURL is a much better alternative if interaction with rust URLs is required.

MozReview-Commit-ID: ADdYRrrTnr6

--HG--
extra : rebase_source : b36aa26c20e7daaadab1f3360bab0ed4681eb7f8
2017-11-07 17:11:08 +01:00
Valentin Gosu
1bd153659e Bug 1407720 - Merge nsICookieManager and nsICookieManager2 r=nwgh
MozReview-Commit-ID: HuzeeB43YZZ

--HG--
extra : rebase_source : 3924170ce50126dbbae7c97cae601b69d0ab95af
2017-10-31 13:02:28 +01:00
Sebastian Hengst
1ead0a96a9 Backed out changeset dab1c5badddb (bug 1407679) for failing server startup in mochitests on Android. r=backout on a CLOSED TREE
--HG--
extra : amend_source : 3dc4cb2bbaf55f3f6329687ce64d4e862fc3800b
2017-10-24 21:18:26 +02:00
Valentin Gosu
9dd47ebf50 Bug 1407679 - Merge nsIIOService and nsIIOService2 r=nwgh
Removes deprecated nsIIOService2.newChannelFromURIWithProxyFlags

MozReview-Commit-ID: Gr3nA25kcre

--HG--
extra : rebase_source : 3407b5ed0f8f7067523abee28c137db3cac86b14
2017-10-20 16:41:07 +02:00
Andrew McCreight
f6fd8e67f6 Bug 1410993 - Remove NS_DEVICEPROTOCOLHANDLER_CID some more. r=dragana
MozReview-Commit-ID: xdvu3FmMR8

--HG--
extra : rebase_source : fd2a812b970a12ce76dcc06657dd0514f43d0af6
2017-10-23 11:50:33 -07:00
Sylvestre Ledru
982e6cfc6f Bug 1408957 - Remove netwerk/protocol/device/ (no longer used) r=dragana
MozReview-Commit-ID: 1SBMbBzE6DA

--HG--
extra : rebase_source : ab3b07055c9595e565f4dc7cf411e3afef41b99c
2017-10-16 12:12:16 +02:00
Shih-Chiang Chien
1d51b00021 Bug 1407683 - use singleton factory method for nsHttpHandler. r=mayhemer
nsHttpHandler is designed only for `getService` but we do not protect against `createInstance`.
The singleton of nsHttpHandler will be replaced by new instance created via `createInstance`.
gHttpHandler will hold a dangling pointer after the new instance is destroyed.

MozReview-Commit-ID: DQV6pmb5BUK

--HG--
extra : rebase_source : a6ab90038853e057c632efb5206cc26dcd71b897
2017-10-12 12:13:56 +08:00
Nicholas Hurley
d4f64ba24e Bug 1391467 - Remove --enable-necko-protocols. r=gps,valentin
This patch removes the ability to select which protocols you want
included in necko, a wholly untested configuration that is broken in
practice. We have no need of this kind of configurability in necko.

In addition, this removes the final vestiges of rtsp support, which was
originally removed in bug 1295885 but still had some stuff hanging
around behind some ifdefs (that were never true).

MozReview-Commit-ID: KOEaDmit2IL

--HG--
extra : rebase_source : f6c2fdb972aaba46e922cda801252dc953550b94
2017-08-17 17:30:57 -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
Haik Aftandilian
c3cf53a7ef Bug 1334550 - Part 1 - Proxy moz-extension protocol requests to the parent process; r=jimm,mayhemer
Changes ExtensionProtocolHandler to use remote streams for
moz-extension loads of file and JAR URI's to allow for
filesystem read-access sandboxing.

Adds messaging to PNecko to allow child processes to
request an input stream or file descriptor for moz-extension
URI's.

Add ExtensionProtocolHandler singleton so that NeckoParent can
call methods directly and ExtensionProtocolHandler::NewFD
can use a new member variable |mFileOpenerThread| to open files.

Adds FileDescriptorFile, a limited implementation of nsIFile
that wraps a file descriptor, to be sideloaded into
nsJARChannels so that extension JAR files can be read
using a file descriptor without accessing the filesystem
directly.

MozReview-Commit-ID: 1pcnIpjz2yR

--HG--
extra : rebase_source : 9d7334778fc81837b11b98d4e32603f7e5eb3a27
2017-06-23 17:10:54 -07:00
Phil Ringnalda
21f33fe35a Backed out 3 changesets (bug 1334550) for Windows timeouts in test-oop-extensions/test_ext_unlimitedStorage.html
Backed out changeset 17c74c7634a2 (bug 1334550)
Backed out changeset d3b0db4e50c5 (bug 1334550)
Backed out changeset 4319f15e2496 (bug 1334550)

MozReview-Commit-ID: 2vmxPAMJZW
2017-06-22 22:32:58 -07:00
Haik Aftandilian
008a6c80f9 Bug 1334550 - Part 1 - Proxy moz-extension protocol requests to the parent process; r=jimm,mayhemer
Changes ExtensionProtocolHandler to use remote streams for
moz-extension loads of file and JAR URI's to allow for
filesystem read-access sandboxing.

Adds messaging to PNecko to allow child processes to
request an input stream or file descriptor for moz-extension
URI's.

Add ExtensionProtocolHandler singleton so that NeckoParent can
call methods directly and ExtensionProtocolHandler::NewFD
can use a new member variable |mFileOpenerThread| to open files.

Adds FileDescriptorFile, a limited implementation of nsIFile
that wraps a file descriptor, to be sideloaded into
nsJARChannels so that extension JAR files can be read
using a file descriptor without accessing the filesystem
directly.

MozReview-Commit-ID: 1pcnIpjz2yR

--HG--
extra : rebase_source : c3f2ede3dbfb29d98af6b194dbe58669d93d4197
2017-06-22 11:53:06 -07:00
Shih-Chiang Chien
e7a014adc4 Bug 1015466 - Part 3, PHttpBackgroundChannel lifecycle management. r=mayhemer
PHttpBackgroundChannel is created by content process because PBackground IPDL
can only be initiated from content process. The background channel deletion is
controlled by chrome process while PHttpChannel is going to be closed or canceled.

BackgroundChannelRegistrar is introduced for pairing HttpChannelParent and
HttpBackgroundChannelParent since they are created over different IPDL
asynchronously.

nsIParentRedirectingChannel.continueVerification is introduced to asynchronously
wait for background channel to be established on the new channel during the
Redirect2Verify phase.

MozReview-Commit-ID: 41l8ivan8iA

--HG--
extra : rebase_source : b8b6d7e7c037efaa9fc13df14191205c603e833a
2017-04-24 11:09:35 +08:00
Honza Bambas
5f3173e90f Bug 1365306 - Remove net::ThrottlingService, don't suspend/resume download channels on page load. r=hurley 2017-05-18 14:09:00 -04:00
Mike Hommey
d6aaa996f4 Bug 1353990 - Stop exporting brotli headers. r=gps
They have generic names, and are potentially conflicting with
in-tree headers with the same name (which is true for at least port.h).

There aren't enough users of brotli to want to avoid LOCAL_INCLUDES
in the directories that use it.

--HG--
extra : rebase_source : 82531ac5961ad80e1b3d0c1484a2f146be194411
2017-04-06 13:44:47 +09:00
Andrea Marchesini
e87ad16573 Bug 1339710 - Remove nsIPartialFileInputStream, r=smaug 2017-02-22 09:41:51 +01:00
Iris Hsiao
f9bdfe10bb Backed out 5 changesets (bug 1339710) for GTest failures in TestSlicedInputStream.StartBiggerThan
Backed out changeset 7c0ec55b44dc (bug 1339710)
Backed out changeset cbb4e1c2aada (bug 1339710)
Backed out changeset c685dca493f5 (bug 1339710)
Backed out changeset 4761a15d45fd (bug 1339710)
Backed out changeset 7561692c1bc7 (bug 1339710)
2017-02-22 16:19:50 +08:00
Andrea Marchesini
190bf147a2 Bug 1339710 - Remove nsIPartialFileInputStream, r=smaug 2017-02-22 07:56:29 +01:00
Nicholas Hurley
31b98bda83 Bug 1312754 - Add a service to throttle certain HTTP channels. r=mayhemer
This patch adds (and hooks up) a new service so that HTTP channels marked as
"Throttleable" will periodically be Suspend()ed and Resume()d when more
important operations are going (such as a page load).

While this patch is not responsible for marking channels as "Throttleable",
the general idea is that these would be less-important channels - background
downloads, beacons, etc, and perhaps even resources known to be trackers.

MozReview-Commit-ID: HEZsxS04rRK

--HG--
extra : rebase_source : 03cce85fe7df782e1f6e2da9e5a99997b796aba2
2017-01-10 06:39:18 -08:00
Sylvestre Ledru
0b79b69876 Bug 1338086 - Remove useless else blocks in order to reduce complexity in netwerk/ r=dragana
MozReview-Commit-ID: 2TSxhHWmL2H

--HG--
extra : rebase_source : a8a70bfc3aec34b85d20021036bd2c13cdcfe5f3
2017-02-09 11:21:38 +01:00
Valentin Gosu
f87c4208f0 Bug 1151899 - Add RustURL to netmodules; r=bagder
MozReview-Commit-ID: 1POo0tK6enu

--HG--
extra : rebase_source : 6e6806fcb03b74a81ce8ae816c28031f08cf5466
2016-11-08 00:42:30 +01:00
Sebastian Hengst
2540bf5b65 Backed out changeset 2b97d2ef1895 (bug 1151899) 2016-11-17 20:22:30 +01:00
Valentin Gosu
d38b6b7f6f Bug 1151899 - Add RustURL to netmodules; r=bagder
MozReview-Commit-ID: 1POo0tK6enu

--HG--
extra : rebase_source : 36b4802ab3ea162ccaaf9e67f1fd641c93b5d4ae
2016-11-08 00:42:30 +01:00
Liang-Heng Chen
901781de67 Bug 1288308 - Part 1: implement nsNamedPipeService; r=bagder,mayhemer
MozReview-Commit-ID: Q4shjYz2gK
2016-11-03 18:15:08 +08:00
Andi-Bogdan Postelnicu
5ca687e238 Bug 1311669 - use auto type specifier for variable declarations to improve code readability and maintainability. r=valentin
MozReview-Commit-ID: F5YO9pVK5O8

--HG--
extra : rebase_source : 7c8d22df9ec2ade3421d5f34229827f9c419b4d2
2016-11-01 14:44:09 +02:00
Valentin Gosu
e825b942e9 Bug 1307456 - Remove PackagedAppService/Verifier r=bagder
MozReview-Commit-ID: LgT7RQAbEf8

--HG--
extra : rebase_source : 25ac286f8b0b69dfb0c80966a78926751f955284
2016-10-31 15:21:14 +01:00
Andrew McCreight
8d2799330c Bug 1308652, part 1 - Remove about:bloat. r=froydnj
MozReview-Commit-ID: 1FmdvLlygjq

--HG--
extra : rebase_source : 9859f58f077c5bda48b848b2a67eb8cd6d589e3e
2016-10-10 10:48:34 -07:00
Tom Tromey
ef548d271d Bug 1244227 - Add nsIThrottledInputChannel.idl and implement. r=mcmanus
MozReview-Commit-ID: JVIjxEO901W
2016-08-23 07:36:52 -06:00
Tom Tromey
5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Alexandre Lissy
ee77e301dd Bug 1285170 - Remove app:// protocol r=valentin
MozReview-Commit-ID: 4cnLrqqyP35

--HG--
extra : rebase_source : 424b63df547308033fc960632c5ef5939e3d8d85
2016-03-16 17:11:12 +01:00
Benjamin Smedberg
bf05496a83 Bug 1282866 - remove widget/qt and other supporting QT code, r=dougt. This patch does not remove all of the checks for MOZ_WIDGET_QT (which are dead code), but that will be a followup mentored bug.
MozReview-Commit-ID: EGqHHhCD7vD

--HG--
extra : rebase_source : a4b9593959dd3ba80189db47eabb056ea207490f
extra : amend_source : a744d833693f0fe7adbea961c00bb5fb55a91580
2016-07-07 12:14:25 -04:00
Kannan Vijayan
b21283649e Bug 1272101 - Fix nsINetworkInfoService implementation on Android to use Linux C APIs instead of Android Java APIs. r=snorp 2016-06-02 16:42:36 -04:00
Kannan Vijayan
e4d6db6820 Bug 1272101 - Changes in preparation for FlyWeb landing. Add nsINetworkInfoService and implementation for various platforms. r=hurley 2016-06-01 16:16:40 -04:00