Commit Graph

2365 Commits

Author SHA1 Message Date
Nika Layzell
ff54347f9f Bug 1753136 - Explicitly escape and unescape precursor origins in null principal queries, r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D138090
2022-02-08 15:18:21 +00:00
Kershaw Chang
e2611a28e9 Bug 1544127 - Make sure nsIPrincipal is only accessed on main thread, r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D135681
2022-01-19 13:52:05 +00:00
Christian Holler
3782331a06 Bug 1590068 - Add fuzzing target for StructuredCloneData. r=baku,sfink
Differential Revision: https://phabricator.services.mozilla.com/D128513
2021-12-08 18:59:02 +00:00
Luca Greco
635e7a7358 Bug 1741600 - Fix ExpandedPrincipal and nsCSPContext leaks triggered by ApplyAddonContentScriptCSP. r=ckerschb,robwu
This patch is meant to be a proposed short run fix to prevent ApplyAddonContentScriptCSP
from leaking the ExpandedPrincipal and nsCSPContext instance because they keep a reference
to each other.
This patch prevent that leak by creating a clone of the ExpandedPrincipal and then use
that cloned instance in the call to nsCSPContext::SetRequestContextWithPrincipal.

Once Bug 1548468 will move the CSP off the ExpandedPrincipal class, cloning the expanded
principal to prevent that leak should not be necessary anymore.

Differential Revision: https://phabricator.services.mozilla.com/D132144
2021-11-26 15:51:13 +00:00
Tim Huang
db88fe8435 Bug 1742598 - Part 1: Add an parameter to URLParams::Serialize() to indicate if the encoding is needed for the serialization result. r=smaug,necko-reviewers,dragana
The URL query stripping doesn't want the URLParams::Serialize() to
encode the result because it will encode the unstripped parameters. This
will change the unstripped parameters once stripping was happened.

Therefore, we introduce an parameter to URLParams::Serialize() to
disable encoding.

Differential Revision: https://phabricator.services.mozilla.com/D131964
2021-11-25 12:13:48 +00:00
Niklas Goegge
21b2b112f4 Bug 1724152: Replace GkRustUtils::GenerateUUID with nsID::GenerateUUID. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D129633
2021-11-04 08:55:46 +00:00
Kagami Sascha Rosylight
1d0b87199f Bug 1725942 - Part 1: Add ContentPrincipalInfoHashKey r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D126241
2021-10-19 12:01:49 +00:00
Evgenia Kotovich
0d0980ee0d Bug 1576768 - Automatically format .sjs files using prettier. r=Standard8,agi,zombie,extension-reviewers
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D128482
2021-10-18 09:26:33 +00:00
Noemi Erli
2bba3cec69 Backed out changeset 2ab6bb03dcc1 (bug 1576768) for causing failures in test_double_submit.html CLOSED TREE 2021-10-18 02:05:57 +03:00
Evgenia Kotovich
3e3dff109c Bug 1576768 - Automatically format .sjs files using prettier. r=Standard8,agi,zombie,extension-reviewers
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D128482
2021-10-17 14:59:14 +00:00
Alexandru Michis
dac6815201 Backed out changeset 7c08aa027893 (bug 1576768) for causing multiple failures.
CLOSED TREE
2021-10-15 16:52:43 +03:00
Evgenia Kotovich
a8b32926fa Bug 1576768 - Automatically format .sjs files using prettier. r=Standard8,agi,zombie,extension-reviewers
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D128482
2021-10-15 12:58:11 +00:00
Tim Huang
b3594081d0 Bug 1724376 - Part 2: Add a RejectForeignAllowList::Check() for principal. r=dimi,pbz,ckerschb
We need a helper function for checking principal if it's in the foreign
allow list.

In this patch we will add a BasePrincipal::IsURIInList() because this is
needed for RejectForeignAllowList::Check().

Differential Revision: https://phabricator.services.mozilla.com/D123804
2021-10-05 15:16:19 +00:00
Andrew McCreight
f7be2ba306 Bug 1731645 - Fix non-unified build errors in caps/. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D126135
2021-09-21 15:42:01 +00:00
Andi-Bogdan Postelnicu
2fc4f70e9b Bug 1725145 - Preparation for the hybrid build env. r=necko-reviewers,firefox-build-system-reviewers,valentin,glandium
Automatically generated path that adds flag `REQUIRES_UNIFIED_BUILD = True` to `moz.build`
when the module governed by the build config file is not buildable outside on the unified environment.

This needs to be done in order to have a hybrid build system that adds the possibility of combing
unified build components with ones that are built outside of the unified eco system.

Differential Revision: https://phabricator.services.mozilla.com/D122345
2021-08-25 10:46:17 +00:00
André Bargull
d2bbf86876 Bug 1726123 - Part 5: Add missing "js/" includes outside of SM. r=arai
In preparation for the next part, add missing includes to "js/" public headers.

Differential Revision: https://phabricator.services.mozilla.com/D122843
2021-08-17 15:45:39 +00:00
Paul Zuehlcke
a466d4aa0a Bug 1687314 - Improve behavior of GetChannelResultStoragePrincipal and StoragePrincipalHelper::Create when handling NullPrincipal. r=timhuang
Differential Revision: https://phabricator.services.mozilla.com/D122381
2021-08-17 12:51:22 +00:00
Christoph Kerschbaumer
9018e2e41f Bug 1723496: Update tests within caps/ to work with https-first enabled r=nika
Differential Revision: https://phabricator.services.mozilla.com/D121529
2021-08-12 08:39:36 +00:00
Iulian Moraru
c4ff1ff63e Backed out changeset 21a7cf38f15a (bug 1725227) for causing multiple failures. CLOSED TREE 2021-08-12 12:21:05 +03:00
Tim Huang
cca4bb13f7 Bug 1725227 - Fixing the issue that the port doesn't appear in the partitionKey. r=pbz
Differential Revision: https://phabricator.services.mozilla.com/D122321
2021-08-12 07:54:49 +00:00
Tom Schuster
a0128c7638 Bug 1724206 - Use WebExtensionPolicy webidl definition for addonPolicy property on nsIPrincipal. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D121889
2021-08-05 18:16:17 +00:00
Paul Zuehlcke
e5b57b5d4c Bug 1706292 - Do not clone principal for CookieJarSettings cookie permission check. r=timhuang,ckerschb
For every cookie permission check CookieJarSettings::CookiePermission has to create a new principal.
This is slow. It uses a cloned principal so it can strip the origin attributes which should not be
used for the permission check.
With this patch we no longer need to clone the principal. We pass in the original principal and perform
the OA stripping on an OA copy in BasePrincipal::EqualsForPermission.
Before, EqualsForPermission was guaranteed to get a content principal, because ClonePrincipalForPermission
enforced it. BasePrincipal::EqualsForPermission was refactored to account for non content principals.

Differential Revision: https://phabricator.services.mozilla.com/D120834
2021-07-30 15:01:07 +00:00
Stefan Zabka
1d98ea9a16 Bug 1719838 - Assert that OriginAttributes are pristine in PopulateFromSuffix. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D120381
2021-07-21 12:10:58 +00:00
Nika Layzell
40807ad2ea Bug 1715167 - Part 7: Add tests for precursor principals, r=ckerschb,ngogge
These test various ways of loading documents which will end up with null
principals, and verify that they are loaded with the expected precursor URI.

Depends on D119693

Differential Revision: https://phabricator.services.mozilla.com/D119694
2021-07-15 21:09:16 +00:00
Nika Layzell
e620d25a35 Bug 1715167 - Part 6: Use the unsandboxed result principal as precursor for sandbox principals, r=ckerschb,ngogge
This change stores a generated nsID directly on the LoadInfo, rather
than the full SandboxedLoadingPrincipal. This allows for the sandboxed
principal to be constructed from GetChannelResultPrincipal using the
unsandboxed result principal as a precursor, rather than the loading
principal.

The nsID is reset by HttpChannelBase whenever a non-internal redirect
occurs to reduce the chance of multiple null result principals during a
redirect with the same nsID, but different precursors.

Depends on D119692

Differential Revision: https://phabricator.services.mozilla.com/D119693
2021-07-15 21:09:15 +00:00
Nika Layzell
37b7c93371 Bug 1715167 - Part 5: Add a precursorPrincipal attribute to nsIPrincipal, r=ckerschb,ngogge
This provides a getter which can be used to interact with the precursor
attribute of the null principal.

Depends on D119691

Differential Revision: https://phabricator.services.mozilla.com/D119692
2021-07-15 21:09:15 +00:00
Nika Layzell
6ef5d5d817 Bug 1715167 - Part 3: Track precursor origins for URI_INHERITS_SECURITY_CONTEXT responses, r=ckerschb,ngogge
If a URI has the URI_INHERITS_SECURITY_CONTEXT flag it will not be given
a content principal by CreateContentPrincipal. This patch changes the
algorithm for creating result principals for network requests such that
the null principal created in this situation has a precursor principal
tracked on it.

Depends on D119689

Differential Revision: https://phabricator.services.mozilla.com/D119690
2021-07-15 21:09:14 +00:00
Nika Layzell
0f45db2f10 Bug 1715167 - Part 2: Track precursor origins through CreateWithInheritedAttributes, r=ckerschb,ngogge
This method will be the primary way to track the precursor for a null
principal, and will automatically handle tracking precursors in some common
cases.

While sandboxed principals are created with `CreateWithInheritedAttributes`,
they unfortunately currently use the wrong precursor principal, which will be
fixed in a later part.

Depends on D119688

Differential Revision: https://phabricator.services.mozilla.com/D119689
2021-07-15 21:09:14 +00:00
Nika Layzell
42b622269c Bug 1715167 - Part 1: Add the ability to track precursor origin on null principals, r=ckerschb
This patch only adds the machinery for tracking a precursor origin to the
principal, and does not actually track the precursor origin in any situations.
That is done in follow-up patches.

Differential Revision: https://phabricator.services.mozilla.com/D119688
2021-07-15 21:09:13 +00:00
Alexandru Michis
88d34a31f5 Backed out changeset 19de2822bc0c (bug 1711168) for causing Bug 1719063.
CLOSED TREE
2021-07-08 22:56:34 +03:00
Niklas Goegge
a527e368f3 Bug 1714645: Remove NullPrincipalURI. r=ckerschb,nika
Differential Revision: https://phabricator.services.mozilla.com/D118490
2021-07-06 08:23:12 +00:00
Niklas Goegge
a83ee58b03 Bug 1714645: Use nsSimpleURI instead of NullPrincipalURI. r=ckerschb,nika
Differential Revision: https://phabricator.services.mozilla.com/D118489
2021-07-06 08:23:11 +00:00
Christoph Kerschbaumer
15f7d2932c Bug 1654488: Remove pref in CheckLoadURIWIthFlags which allows all UI resources to load r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D118817
2021-06-25 17:28:59 +00:00
Paul Zuehlcke
092f0ddc7d Bug 1714065 - Allow matching partition key fields via OriginAttributesPattern. r=timhuang,ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D116606
2021-06-24 09:13:30 +00:00
Shane Caraveo
7a0db3609f Bug 1711168 support extension matching in webAccessibleResources r=zombie,smaug
Differential Revision: https://phabricator.services.mozilla.com/D115114
2021-06-23 21:52:38 +00:00
Valentin Gosu
63aabad4f3 Bug 1570786 - Avoid ContentPrincipal::GetURI null deref r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D117903
2021-06-21 12:03:46 +00:00
Stefan Zabka
35d147115f Bug 1716734 - Updated comment in nsIPrincipal.idl r=ckerschb DONTBUILD
Updated the origin attributes comment to use the current delimiter

Differential Revision: https://phabricator.services.mozilla.com/D117990
2021-06-16 15:53:18 +00:00
Kris Maglione
ae436f55ec Bug 1646560: Part 2 - Move allowJavascript and friends from DocShell to BrowsingContext and WindowContext. r=jdescottes,nika,geckoview-reviewers,devtools-backward-compat-reviewers,agi
This is slightly complicated by the fact that the editor code wants to be able
to set this from the content process, so we really need separate
BrowsingContext and WindowContext flags, the latter of which can be set by the
owning process.

Differential Revision: https://phabricator.services.mozilla.com/D114899
2021-06-15 04:40:11 +00:00
Andreas Farre
1f6b2e377e Part 1: Bug 1700623 - Add storagePrincipal to WindowGlobalParent. r=nika,timhuang
We use the storage principal to look up origin records in the
background session storage manager.

Differential Revision: https://phabricator.services.mozilla.com/D111428
2021-05-26 07:14:03 +00:00
Alexandru Michis
84d8f14b41 Backed out 9 changesets (bug 1700623) for causing bc failures in browser_history_menu.js
CLOSED TREE

Backed out changeset 5eae296ad8b5 (bug 1700623)
Backed out changeset 97c3add3b00a (bug 1700623)
Backed out changeset 7ab483627a27 (bug 1700623)
Backed out changeset a4e673640de5 (bug 1700623)
Backed out changeset 513ea16be430 (bug 1700623)
Backed out changeset 88b4add342df (bug 1700623)
Backed out changeset c13bdee1b526 (bug 1700623)
Backed out changeset 26df421dac02 (bug 1700623)
Backed out changeset 6cd0b7a269e5 (bug 1700623)
2021-05-21 11:43:54 +03:00
Andreas Farre
e9831f3ce0 Part 1: Bug 1700623 - Add storagePrincipal to WindowGlobalParent. r=nika,timhuang
We use the storage principal to look up origin records in the
background session storage manager.

Differential Revision: https://phabricator.services.mozilla.com/D111428
2021-05-20 12:48:20 +00:00
Nika Layzell
a8265c4766 Bug 1711078 - Part 2: Mark immutable fields in principal types as const, r=ckerschb
This is a step towards separating the mutable state on principals from const
state which can be made threadsafe. The remaining mutable fields will either
need to be moved off of nsIPrincipal or made threadsafe to destroy (e.g. using
nsMainThreadPtrHandle) and stored behind a mutex.

Serialization is handled for most types using a separate Deserializer class,
like how it was handled with `nsIURI` mutators. SystemPrincipal wasn't changed
as the `Read` method is a no-op for that class.

Differential Revision: https://phabricator.services.mozilla.com/D115092
2021-05-17 20:50:09 +00:00
Nika Layzell
c2a86c631c Bug 1711078 - Part 1: Stop using the component manager to create non-system principals, r=ckerschb
This is necessary to remove the Init methods from principals, allowing
immutable fields to be marked as const and clearly separated from mutable
fields to improve threadsafety.

Differential Revision: https://phabricator.services.mozilla.com/D115091
2021-05-17 20:50:08 +00:00
Shane Caraveo
c4d682be93 Bug 1697334 implement matches property in web_accessible_resources r=zombie,ckerschb,necko-reviewers,smaug
This patch implements support for the manifest V3 matches property
which limits what hosts may load an extensions web_accessible_resources.

Differential Revision: https://phabricator.services.mozilla.com/D107746
2021-05-14 03:15:15 +00:00
Christoph Kerschbaumer
d6ef7be5e9 Bug 1706593: Update prePath to camel case in nsIPrincipal.idl r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D113927
2021-04-30 11:16:31 +00:00
David Parks
2b32f597cb Bug 1682030 - Remove NPAPI from tests outside of dom/plugins. r=Gijs,cmartin
Removes NPAPI plugin features from tests outside of dom/plugins.  Some tests are updated to avoid NPAPI behavior and others are deleted if they no longer offer anthing useful.

Differential Revision: https://phabricator.services.mozilla.com/D107134
2021-04-06 19:28:09 +00:00
Csoregi Natalia
d68661e2cc Backed out 24 changesets (bug 1682030) for bustage on ProcessHangMonitor.cpp and nsCOMPtr.h. CLOSED TREE
Backed out changeset 5b1644096477 (bug 1682030)
Backed out changeset 35ae60eea3c7 (bug 1682030)
Backed out changeset 3eca76a6d639 (bug 1682030)
Backed out changeset 259c45447ad9 (bug 1682030)
Backed out changeset de9222dc8c31 (bug 1682030)
Backed out changeset 2986c7e14349 (bug 1682030)
Backed out changeset 6af3410bdb93 (bug 1682030)
Backed out changeset 42b0621c2927 (bug 1682030)
Backed out changeset 366e3e371858 (bug 1682030)
Backed out changeset 9adb2865adea (bug 1682030)
Backed out changeset 6af6af3bc03a (bug 1682030)
Backed out changeset da94a91b35ae (bug 1682030)
Backed out changeset 9143da258d0e (bug 1682030)
Backed out changeset 5e20d06952ba (bug 1682030)
Backed out changeset 6253d7e1ce7d (bug 1682030)
Backed out changeset 0e06ddeea3e2 (bug 1682030)
Backed out changeset 9c58d57c9e44 (bug 1682030)
Backed out changeset e90edd89430e (bug 1682030)
Backed out changeset 5861b8166b10 (bug 1682030)
Backed out changeset b4b88cdc7993 (bug 1682030)
Backed out changeset b80054e9805c (bug 1682030)
Backed out changeset 580d857674c0 (bug 1682030)
Backed out changeset a9cdf93c2662 (bug 1682030)
Backed out changeset 9c9c8b4998e2 (bug 1682030)
2021-04-06 03:54:12 +03:00
David Parks
3f9712f20f Bug 1682030 - Remove NPAPI from tests outside of dom/plugins. r=Gijs,cmartin
Removes NPAPI plugin features from tests outside of dom/plugins.  Some tests are updated to avoid NPAPI behavior and others are deleted if they no longer offer anthing useful.

Differential Revision: https://phabricator.services.mozilla.com/D107134
2021-04-05 23:48:32 +00:00
Simon Giesecke
8118f95d0d Bug 708901 - Migrate to nsTHashSet in caps. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D108590
2021-03-24 17:56:45 +00:00
Csoregi Natalia
f54ee076ae Backed out 13 changesets (bug 708901, bug 1184468) for causing build bustage on GeckoViewHistory.cpp. CLOSED TREE
Backed out changeset b1e4c01e63b8 (bug 708901)
Backed out changeset 37b52cce83c0 (bug 708901)
Backed out changeset eee75f33f060 (bug 708901)
Backed out changeset 479bf64c7986 (bug 708901)
Backed out changeset 15a8fb94d15d (bug 708901)
Backed out changeset be31ccd9a61d (bug 708901)
Backed out changeset fc54f4eaedd5 (bug 708901)
Backed out changeset 03c3a56c3d13 (bug 708901)
Backed out changeset 73f11d3c1298 (bug 708901)
Backed out changeset aed22fd80893 (bug 708901)
Backed out changeset 74d8249fbe7e (bug 708901)
Backed out changeset acb725eb3c1d (bug 1184468)
Backed out changeset 70f3ea6efec4 (bug 1184468)
2021-03-24 19:26:20 +02:00