Commit Graph

69 Commits

Author SHA1 Message Date
Coroiu Cristina
98a7487673 Backed out 2 changesets (bug 1448034) for GTest failures
Backed out changeset 068bb4e7b849 (bug 1448034)
Backed out changeset eb542860b989 (bug 1448034)

--HG--
extra : rebase_source : b133c3bd4f769c25e49c7de59edd57245649ee72
2018-07-17 08:51:20 +03:00
Eric Rahm
3eed00fc26 Bug 1448034 - Part 2: Lazily create ProxyResolution thread. r=bagder
This delays the creation of the PAC thread until we need to dispatch a
runnable to it.

--HG--
extra : rebase_source : dc4bffc041e237dddac7ae36a3a3b2f9c5de3421
2018-07-16 16:05:39 -07: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
Jan de Mooij
2b3ff5c90a Bug 1468219 - Rename JS_InitStandardClasses to JS::InitRealmStandardClasses, remove obj argument. r=anba
--HG--
extra : rebase_source : 5c092c37298e89096b85524e92d143ff2447f31f
2018-06-13 12:47:47 -07:00
Jan de Mooij
56ca3c9524 Bug 1466501 part 1 - Refactor ZoneSpecifier and add a sameCompartmentAs option to newGlobal in the shell. r=luke 2018-06-07 10:02:10 +02:00
Jan de Mooij
17f3983d0f Bug 1461605 part 1 - Rename CompartmentOptions to RealmOptions. r=luke,bz 2018-05-17 10:59:45 +02:00
Jan de Mooij
80e44e8003 Bug 1461292 part 1 - Rename JSAutoCompartment to JSAutoRealm. r=bz,luke 2018-05-16 10:53:16 +02: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
Valentin Gosu
223bfc4e68 Bug 1452417 - Hold a ref to mRequest in PACResolver::Notify. r=bagder
MozReview-Commit-ID: 1QeFlAiTCNt
2018-04-10 22:07:47 +02:00
Jan de Mooij
7f30bf48a7 Bug 1417844 part 2 - Remove JSVersion from CompileOptions, CompartmentBehaviors, scripts. r=evilpie 2017-11-17 12:12:39 +01:00
Kris Maglione
d1f06996d7 Bug 1404198: Part 2c - Switch to NS_NewTimer* in necko. r=njn
MozReview-Commit-ID: 3YyyaBAEjHc

--HG--
extra : rebase_source : 8ea5a8adb4d134ae15041f86f0b185603ab9a989
2017-10-15 23:12:02 -07:00
Liang-Heng Chen
e358e0156e Bug 1395856 - add warning and assertion to detect intermittent failure; r=bagder
MozReview-Commit-ID: 1lZVLdHF2tC

--HG--
extra : rebase_source : b97c89b9ecae9a9f2c0d2d4c59b2b31c0eef859d
2017-09-04 17:17:44 +08:00
Jan de Mooij
0f2181d932 Bug 1393715 - Remove JSFUN_STUB_GSOPS and JS_FS. r=arai 2017-08-25 17:04:12 +02:00
Jan de Mooij
a5de55dced Bug 1389510 part 3 - Remove getProperty/setProperty hooks from ClassOps. r=evilpie 2017-08-25 10:12:16 +02:00
Bevis Tseng
95b18d794e Bug 1382172 - Name nsITimerCallback instances in native implementation. r=billm
--HG--
extra : rebase_source : 84de1abfcc30a6964144c2e6718a508c71027b65
2017-07-27 02:18:20 +08:00
Michael Scott
81af72b128 Bug 251428 - Validate PAC isIsInet input before use r=valentin
In the PAC Javascript isInNet function validate the IP address pattern and
subnet mask before using them, using the same regular expression used to
validate the host input, and return false if the values are invalid.

MozReview-Commit-ID: 120fEVXgBAd

--HG--
extra : rebase_source : c6f8de52283fc1bfd6baf414a28f80030f9c5a17
2017-06-29 21:35:20 +03:00
Kershaw Chang
1239057218 Bug 1343741 - Part4: Label the timer in PACResolver, r=mayhemer 2017-07-05 00:48:00 +02:00
Jan de Mooij
83f290de99 Bug 1370608 part 1 - Move newEnumerate hook from ObjectOps to ClassOps. r=evilpie,bz 2017-06-14 10:37:44 +02:00
Bill McCloskey
7cb6a23814 Bug 1365101 - Convert NS_GetCurrentThread uses in netwerk/ (r=meyhemer)
MozReview-Commit-ID: IHBt6XAG8em
2017-06-12 20:21:43 -07:00
Liang-Heng Chen
2c98233925 Bug 1366932 - support extra JS context heap size pref for PAC; r=bagder
MozReview-Commit-ID: L7xzXZOnI0N

--HG--
extra : rebase_source : 8315f3126d1315b53269e56e5b69e106486d21dc
2017-05-24 14:24:55 +08:00
Nathan Froyd
c1d1748428 Bug 1359490 - add an event loop spinning abstraction function; r=gerald
This function is arguably nicer than calling NS_ProcessNextEvent
manually, is slightly more efficient, and will enable better auditing
for NS_ProcessNextEvent when we do Quantum DOM scheduling changes.
2017-05-15 09:34:19 -04:00
Tim Huang
2d4b6a79e2 Bug 1337893 - Part 3: Updating Necko for DNS changes. r=valentin
MozReview-Commit-ID: AVEp3hP7XqB

--HG--
extra : rebase_source : ab7bccfc0336a92f837c16eacbf3ae9290f3803b
2017-02-15 17:48:15 +08:00
Brian Hackett
01a649c197 Bug 1337112 - Remove links from JSRuntime to its single context and zone group, r=jandem,jonco.
--HG--
extra : rebase_source : ebf319af724d5f829cdf5c2386dc82d49be89989
2017-02-10 16:47:50 -07:00
Daniel Stenberg
e1b82a23c1 bug 1336069: init class member before return, r=mcmanus
MozReview-Commit-ID: GF008Ughmhv

--HG--
extra : rebase_source : 04cf9802f9fedbb88aae7879f64b95d72930f3d2
2017-02-10 00:06:00 +08:00
Andrea Marchesini
f03754772e Bug 1314651 - Fix a comment in ProxyAutoConfig.cpp, r=me 2016-11-02 17:35:49 +01:00
Tooru Fujisawa
fa2f08828a Bug 1283710 - Part 4: Do not duplicate message in ExpandErrorArgumentsVA, and remove message parameter from WarningReporter. r=jwalden 2016-08-14 20:39:31 +09:00
Tooru Fujisawa
23d868fa20 Bug 1283710 - Part 2: Change JSErrorReport.ucmessage to JSErrorReport.message_ with ConstUTF8CharsZ, and release them in destructor if it is owned. r=jwalden 2016-08-14 20:39:30 +09:00
Wes Kocher
71f24926ed Backed out 10 changesets (bug 1283710) for osx xpcshell failures a=backout
Backed out changeset eb95a12e5d86 (bug 1283710)
Backed out changeset f727edc4be48 (bug 1283710)
Backed out changeset fed60fbf645d (bug 1283710)
Backed out changeset 98339fa564f1 (bug 1283710)
Backed out changeset 51b8d69edca0 (bug 1283710)
Backed out changeset d72527b7d3c0 (bug 1283710)
Backed out changeset ee5215f1a38e (bug 1283710)
Backed out changeset dcedbaefe399 (bug 1283710)
Backed out changeset 61f8250cbe0b (bug 1283710)
Backed out changeset 239382846137 (bug 1283710)
2016-10-18 17:27:58 -07:00
Tooru Fujisawa
84473915d8 Bug 1283710 - Part 4: Do not duplicate message in ExpandErrorArgumentsVA, and remove message parameter from WarningReporter. r=jwalden 2016-08-14 20:39:31 +09:00
Tooru Fujisawa
81c1a988e3 Bug 1283710 - Part 2: Change JSErrorReport.ucmessage to JSErrorReport.message_ with ConstUTF8CharsZ, and release them in destructor if it is owned. r=jwalden 2016-08-14 20:39:30 +09:00
Ehsan Akhgari
ea467855d3 Bug 1310721 - Remove support for the b2g PAC generator; r=mcmanus
This effectively backs out bug 1115495.
2016-10-17 14:10:45 -04:00
Eric Faust
121151ec67 Bug 1263595 - Avoid deadlock between the JIT and the gecko profiler on win64. (r=froydnj) 2016-09-15 21:35:14 -07:00
Daniel Stenberg
9df1623b92 Bug 1255474 - Cut off path from URLs passed to PAC scripts. r=mcmanus 2016-09-20 21:42:52 -04:00
Wes Kocher
611fb66887 Backed out changeset 39da44265946 (bug 1263595) for build bustage a=backout CLOSED TREE 2016-09-16 14:19:22 -07:00
Eric Faust
db0cfdc6bc Bug 1263595 - Avoid deadlock between the JIT and the gecko profiler on win64. (r=froydnj) 2016-09-15 21:35:14 -07:00
Phil Ringnalda
6beabc555f Backed out changeset 48694b762a84 (bug 1263595) for -Werror bustage
CLOSED TREE
2016-09-15 22:04:50 -07:00
Eric Faust
c725e729c5 Bug 1263595 - Avoid deadlock between the JIT and the gecko profiler on win64. (r=froydnj) 2016-09-15 21:35:14 -07:00
Nicholas Nethercote
bab6d17ebf Bug 1293117 (part 4) - Change many NS_IMETHODIMP occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_IMETHODIMP F() override;      --> NS_IMETHOD F() override;
- NS_IMETHODIMP F() override {...} --> NS_IMETHOD F() override {...}
- NS_IMETHODIMP F() final;         --> NS_IMETHOD F() final;
- NS_IMETHODIMP F() final {...}    --> NS_IMETHOD F() final {...}

Using NS_IMETHOD is the preferred way of marking in-class virtual methods.
Although these transformations add an explicit |virtual|, they are safe --
there's an implicit |virtual| anyway because |override| and |final| only work
with virtual methods.

--HG--
extra : rebase_source : 386ee4e4ea2ecd8d5001efabc3ac87b4d6c0659f
2016-08-08 10:54:47 +10:00
Jan de Mooij
c7e88a5ad8 Bug 1286795 part 6 - Replace JS_NewRuntime/JS_DestroyRuntime with JS_NewContext/JS_DestroyContext. r=luke,bz 2016-07-23 19:54:19 +02:00
Jan de Mooij
3e6263744c Bug 1283855 part 13 - Make JS_SetNativeStackQuota take JSContext instead of JSRuntime. r=fitzgen 2016-07-05 14:35:23 +02:00
Jan de Mooij
31f7512e9f Bug 1283855 part 5 - Make warning reporter APIs take JSContext instead of JSRuntime. r=arai 2016-07-05 11:06:05 +02:00
Carsten "Tomcat" Book
43467583af Backed out changeset df6b25262c65 (bug 1244474) for timeouts in automation.py
--HG--
extra : rebase_source : 1bfcd0b5deddb22236e15d6e0b24b3ccafb10ec2
2016-07-01 14:08:00 +02:00
Daniel Stenberg
f0e3c6b1ae Bug 1244474 - cut off path from URLs passed to PAC scripts, r=mcmanus 2016-05-30 09:38:57 +02:00
Jan de Mooij
fb0436ba41 Bug 1279295 - Create the runtime's JSContext when we create the runtime. r=luke 2016-06-22 09:47:52 +02:00
Jan de Mooij
dad997a833 Bug 1277278 part 3 - Rename error reporter callback to warning reporter, assert it's only used for warnings. r=luke
--HG--
extra : rebase_source : ac1febc5220d649853f35c29de89a5e9ffb4fe98
2016-06-07 20:30:48 +02:00
Jan de Mooij
66faed38af Bug 1277278 part 1 - Remove ContextOptions and make autoJSAPIOwnsErrorReporting the default. r=luke
--HG--
extra : rebase_source : aa1dcba100a3bb7a5057b07284cf4a99353afe5a
2016-06-07 20:30:48 +02:00
Jan de Mooij
38670ea4e2 Bug 1277267 - Convert PAC runtime to autoJSAPIOwnsErrorReporting. r=bz 2016-06-02 08:29:18 +02:00
Liang-Heng Chen
cf4eea0406 Bug 1250776 - increase JavaScript runtime heap size to 4 MB; r=bagder
MozReview-Commit-ID: 9rx2wRSgNHw

--HG--
extra : rebase_source : f17e867f84d18e8b61c4e34d57727270c6598c1b
2016-04-29 11:53:10 +08:00
Liang-Heng Chen
080c533edc Bug 1251332 - add PAC support for reversed ranges; r=bagder
MozReview-Commit-ID: HsbupdOORI6
2016-04-30 23:10:29 +08:00
Nicholas Nethercote
60dcde7875 Bug 1261723 (part 2) - Separate class ops from js::Class. code=njn,h4writer. r=efaust,bz.
js::Class op are often all null. And when they're not all null, they're often
duplicated among classes. By pulling them out into their own struct, and using a
(possibly null) pointer in js::Class, we can save 114 KiB per process on
64-bit, and half that on 32-bit.
* * *
imported patch separate-ClassOps-2

--HG--
extra : rebase_source : bd751bf247e9491c1966a123dbeffa573657dfb1
2016-04-01 11:00:01 +11:00