Commit Graph

2840 Commits

Author SHA1 Message Date
Sebastian Hengst
93a6c05da6 Backed out changeset 07f70194e136 (bug 1303943) for tests crashing related to sessionhistory. r=backout on a CLOSED TREE 2016-10-14 12:53:09 +02:00
Christoph Kerschbaumer
16ba8b35ee Bug 1303943 - Don't inherit principal for external loads and update documentation for principalToInherit. r=bz 2016-10-13 15:13:40 +02:00
Carsten "Tomcat" Book
626f419a49 Backed out changeset 9ae5fb774393 (bug 1297338) landed with wrong bug number 2016-10-14 08:44:00 +02:00
Christoph Kerschbaumer
463c658b5f Bug 1297338 - Don't inherit principal for external loads and update documentation for principalToInherit. r=bz 2016-10-13 15:13:40 +02:00
Eric Rahm
85991050d8 Bug 1308611 - Convert nsISHEntry.refreshURIList to nsIMutableArray. r=bz
|refreshURIList| is converted to a an nsIMutableArray as nsISupportsArray is
deprecated. This attribute is only used internally and does not show up in a
textual search of the plugins repo.

nsIMutableArray is used rather than nsIArray in order to support modifying the
array as current users expect.

MozReview-Commit-ID: F0GYVFZarOQ
2016-10-10 11:36:41 -07:00
Yoshi Huang
f0ac54ae21 Bug 1264137 - Part 4: Improve the usefulness of what we pass as requestingContext to nsIContentPolicy for navigations (loads in a docshell). r=bz
For toplevel document loads (TYPE_DOCUMENT) in the content process,
we pass the currently-loaded window, if any.

For toplevel document loads in the chrome process (e.g. tabs in non-e10s mode),
we pass the node which created our docshell, if any.

For all subframe loads, we pass the node that created the docshell,
which is the frameElement of the window in the docshell.
2016-10-07 17:40:21 +08:00
Yoshi Huang
142e639518 Bug 1264137 - Part 3: perform ContentPolicy check if the load is happening on this docshell. r=bz, smaug 2016-10-07 17:40:21 +08:00
Yoshi Huang
6d48b6e172 Bug 1264137 - Part 2: use isTargetTopLevelDocShell instead. r=bz
In Bug 841850 we added a !isNewDocShell check.
And In Bug 902350 we added a !isTargetTopLevelDocShell check.
We can get rid of isNewDocShell variable and just keep track of
isTargetTopLevelDocShell.
2016-10-07 17:40:21 +08:00
Yoshi Huang
b769bccce8 Bug 1264137 - Part 1: rename from loadingPrincipal to requestingPrincipal in nsDocShell::InternalLoad. r=bz
In nsIContentPolicy terminology, it uses 'requestingPrincipal'.
So in nsDocShell::InternalLoad, we rename 'loadingPrincipal' to
'requestingPrincipal', and rename 'context' to 'requestingContext' when
calling nsIContentPolicy.
2016-10-07 17:40:21 +08:00
Christoph Kerschbaumer
6031810bab Bug 1307720 - Assert that docshell loads of TYPE_SUDOCUMENT always get a valid principal. r=tanvi 2016-10-05 14:24:38 +02:00
Samael Wang
36ba32aa9c Bug 1300461 - UpdateIndex on LOAD_NORMAL_REPLACE, ReplaceEntry at requestedIndex when available. r=smaug 2016-09-30 11:55:10 +08:00
James Andreou
1e947fec6c Bug 1282124 - Remove nsILoadInfo.usePrivateBrowsing and the SEC_FORCE_PRIVATE_BROWSING flag; r=smaug,jryans 2016-09-27 16:56:44 -04:00
Kate McKinley
90c8afbeac Bug 1246540 - HSTS Priming Proof of Concept. r=ckerschb, r=mayhemer, r=jld, r=smaug, r=dkeeler, r=jmaher, p=ally
HSTS priming changes the order of mixed-content blocking and HSTS
upgrades, and adds a priming request to check if a mixed-content load is
accesible over HTTPS and the server supports upgrading via the
Strict-Transport-Security header.

Every call site that uses AsyncOpen2 passes through the mixed-content
blocker, and has a LoadInfo. If the mixed-content blocker marks the load as
needing HSTS priming, nsHttpChannel will build and send an HSTS priming
request on the same URI with the scheme upgraded to HTTPS. If the server
allows the upgrade, then channel performs an internal redirect to the HTTPS URI,
otherwise use the result of mixed-content blocker to allow or block the
load.

nsISiteSecurityService adds an optional boolean out parameter to
determine if the HSTS state is already cached for negative assertions.
If the host has been probed within the previous 24 hours, no HSTS
priming check will be sent.

MozReview-Commit-ID: ES1JruCtDdX
2016-09-27 11:27:00 -04:00
Christoph Kerschbaumer
33bcdc34ea Bug 1297338 - Introduce concept of principalToInherit to docshell and scriptSecurityManager. r=bz 2016-09-20 08:36:25 +02:00
Bill McCloskey
1680d779a9 Bug 1279086 - Allow painting for tab switch when JS is running (r=dvander,mconley,mrbkap) 2016-09-16 20:35:11 -07:00
Kris Maglione
5e5c701681 Bug 1294199: Part 1 - Add a docShell flag to allow legacy panels to skip inheriting origin attributes. r=ehsan
MozReview-Commit-ID: 1c6V0kv9E38
2016-09-15 13:47:55 -07:00
Blake Kaplan
4988cc0297 Bug 623436 - Deal a little better with replacing inexistant session history entries. r=smaug 2016-09-08 15:34:31 -07:00
Carsten "Tomcat" Book
13efbc610d Merge mozilla-central to mozilla-inbound 2016-09-07 17:21:27 +02:00
Carsten "Tomcat" Book
868350dc99 merge mozilla-inbound to mozilla-central a=merge 2016-09-07 17:20:12 +02:00
Michael Layzell
829f88a6df Bug 1018486 - Part 5: Changes in docshell/ and uriloader/, r=bz
MozReview-Commit-ID: GiyHWL3aaOv
2016-09-07 10:50:41 -04:00
Matteo Ferretti
92f4ae7178 Bug 1299154 - added Set/GetOverrideDPPX to restorefromHistory; r=mstange
MozReview-Commit-ID: AsyAcG3Igbn
2016-09-07 10:21:51 +02:00
Xidorn Quan
75c04b03a5 Bug 1299795 - Disable fullscreen for sidebar. r=smaug
MozReview-Commit-ID: G09fKdufKW3
2016-09-07 09:13:14 +08:00
Yoshi Huang
c346f0771b Bug 1260931 - Part 3: Propagate firstPartyDomain. r=smaug 2016-09-06 10:25:58 +08:00
Sebastian Hengst
0d9509f866 Backed out changeset b9afda2804fd (bug 1260931) 2016-09-05 21:15:29 +02:00
Yoshi Huang
f1abf881e7 Bug 1260931 - Part 3: Propagate firstPartyDomain. r=smaug 2016-09-06 01:50:30 +08:00
Sebastian Hengst
cdc0721c8b Backed out changeset 10da0eca7bbb (bug 1260931) 2016-09-02 15:33:51 +02:00
Sebastian Hengst
56d09d1e93 Backed out 5 changesets (bug 1260931)
Backed out changeset 86e1a437021b (bug 1260931)
Backed out changeset be65e87da9e3 (bug 1260931)
Backed out changeset 39cff1d988fd (bug 1260931)
Backed out changeset 2fa7c4d8a5bc (bug 1260931)
Backed out changeset 075d612841fb (bug 1260931)
2016-09-02 14:55:59 +02:00
Sebastian Hengst
8857c3cbc4 Backed out changeset 10da0eca7bbb (bug 1260931) 2016-09-02 14:38:42 +02:00
Yoshi Huang
e24acd9a60 Bug 1260931 - Part 3: Propagate firstPartyDomain. r=smaug 2016-09-02 15:04:40 +08:00
Nicholas Nethercote
887efe04d5 Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm.
The new name makes the sense of the condition much clearer. E.g. compare:

  NS_WARN_IF_FALSE(!rv.Failed());

with:

  NS_WARNING_ASSERTION(!rv.Failed());

The new name also makes it clearer that it only has effect in debug builds,
because that's standard for assertions.
2016-09-01 15:01:16 +10:00
Nicholas Nethercote
9adec6015b Bug 1297961 (part 2) - Use nsIURI::GetSpecOrDefault() for comparisons to fixed URIs. r=hurley. 2016-08-26 16:02:32 +10:00
Nicholas Nethercote
62b6b0fce6 Bug 1297961 (part 1) - Introduce nsURI::GetSpecOrDefault(). r=hurley.
This function is an infallible alternative to nsIURI::GetSpec(). It's useful
when it's appropriate to handle a GetSpec() failure with a failure string, e.g.
for log/warning/error messages. It allows code like this:

  nsAutoCString spec;
  uri->GetSpec(spec);
  printf("uri: %s", spec.get());

to be changed to this:

  printf("uri: %s", uri->GetSpecOrDefault().get());

This introduces a slight behavioural change. Previously, if GetSpec() failed,
an empty string would be used here. Now, "[nsIURI::GetSpec failed]" will be
produced instead. In most cases this failure string will make for a clearer
log/warning/error message than the empty string.
* * *
Bug 1297961 (part 1b) - More GetSpecOrDefault() additions. r=hurley.

I will fold this into part 1 before landing.
2016-08-26 16:02:31 +10:00
Wei-Cheng Pan
69063dae17 Bug 1293212 - Add MOZ_MUST_USE to prevent potential bugs. r=smaug
MozReview-Commit-ID: EuyeBkDlk2G
2016-08-08 18:16:15 +08:00
Kan-Ru Chen
a9b19d0584 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES
2016-08-24 14:47:04 +08:00
Ryan VanderMeulen
ed8e5f5191 Merge m-c to inbound. a=merge 2016-08-22 09:43:40 -04:00
Xidorn Quan
08d2f6f5b6 Bug 1296625 - Replace query to ui.use_activity_cursor pref with a cached bool value. r=smaug
MozReview-Commit-ID: GeTr29JG4qy
2016-08-20 00:43:01 +10:00
Fernando Jimenez
55e56082a7 Bug 1252570 - Remove mozPay. r=ehsan,mfinkle,fabrice
MozReview-Commit-ID: C50fvuNJoGq
2016-08-22 10:42:22 +02:00
Nicholas Nethercote
8b8bd02a31 Bug 1293596 (part 2) - Rework nsIWidget bounds getters. r=mstange.
This patch makes GetBounds(), GetScreenBounds() and GetClientBounds() more
obviously infallible, like existing functions such as GetNaturalBounds() and
GetClientSize(). This results in clearer behaviour in nsCocoaWindow.mm if
Objective C exceptions occur. Along the way, the patch removes some useless
failure checks for these functions.

The patch also removes the NS_IMETHOD from GetRestoredBounds and makes that
function MOZ_MUST_USE.
2016-08-19 09:03:04 +10:00
dimi
9ead6fe5b0 Bug 1269253 - Blank error page in iframe with insecure connection. r=smaug
MozReview-Commit-ID: 8WCI8cgRZIo
2016-08-16 09:47:14 +08:00
Nicholas Nethercote
8f3c6e7c32 Bug 1294645 - Don't use NS_CALLBACK for callbacks in nsI{Input,Output,UnicharInput},Stream.idl. r=froydnj.
Slightly less than half (93 / 210) of the NS_METHOD instances in the codebase
are because of the use of NS_CALLBACK in
nsI{Input,Output,UnicharInput},Stream.idl. The use of __stdcall on Win32 isn't
important for these callbacks because they are only used as arguments to
[noscript] methods.

This patch converts them to vanilla |nsresult| functions. It increases the size
of xul.dll by about ~600 bytes, which is about 0.001%.
2016-08-12 17:36:22 +10:00
Wes Kocher
b9d5a32ad5 Merge inbound to central, a=merge 2016-08-12 13:44:29 -07:00
Nicholas Nethercote
0550795f93 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.
2016-08-08 10:54:47 +10:00
James Andreou
6d5098ad98 Bug 1283281 - Remove PB Flag from DOMStorage. r=jdm 2016-06-29 14:01:00 +02:00
Nicholas Nethercote
1f65390cc9 Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.
2016-08-08 12:18:10 +10:00
Andrew McCreight
9d8b970d73 Bug 1293666 - Add initializer_list ctor to AutoTArray. r=froydnj
MozReview-Commit-ID: 8ORBttWN2Rj
2016-08-09 07:21:26 -07:00
Yoshi Huang
c9887b26cb Bug 1264231 - Part 1: inherit OA from docshell. r=sicking 2016-08-05 19:44:57 +08:00
Christoph Kerschbaumer
20cc9d7b5d Bug 1286472: Replace owner with triggeringPrincipal within docshell. r=bz 2016-07-28 09:20:41 +02:00
Iris Hsiao
c4499a7d59 Backed out changeset 8dc198cd46ff (bug 1246540) for Mochitest failures 2016-07-27 13:14:07 +08:00
Kate McKinley
0ec0cc036e Bug 1246540 HSTS Priming Proof of Concept
HSTS priming changes the order of mixed-content blocking and HSTS
upgrades, and adds a priming request to check if a mixed-content load is
accesible over HTTPS and the server supports upgrading via the
Strict-Transport-Security header.

Every call site that uses AsyncOpen2 passes through the mixed-content
blocker, and has a LoadInfo. If the mixed-content blocker marks the load as
needing HSTS priming, nsHttpChannel will build and send an HSTS priming
request on the same URI with the scheme upgraded to HTTPS. If the server
allows the upgrade, then channel performs an internal redirect to the HTTPS URI,
otherwise use the result of mixed-content blocker to allow or block the
load.

nsISiteSecurityService adds an optional boolean out parameter to
determine if the HSTS state is already cached for negative assertions.
If the host has been probed within the previous 24 hours, no HSTS
priming check will be sent.

(r=ckerschb,r=mayhemer,r=jld,r=smaug,r=dkeeler,r=jmaher,p=ally)
2016-07-26 13:03:00 +08:00
Iris Hsiao
bbd18e9e56 Backed out changeset d7e39be85498 (bug 1246540) for Mochitest failures 2016-07-27 11:15:52 +08:00