gecko-dev/ipc/glue
Benjamin VanderSloot 06a4432ed1 Bug 1835907, part 1 - Add has storage access bit and triggering window id to the LoadInfo - r=smaug,necko-reviewers,kershaw,pbz
In the Storage Access API's latest draft, a few items were added to the user-agent state. Relevant here,
the source snapshot params gained two fields that are initialized from the sourceDocument during
snapshotting source params while navigating: "has storage access" and "environment id".

https://privacycg.github.io/storage-access/#ua-state

These are used to identify self-initiated navigations that come from documents that have obtained storage access.
Combined with a same-origin check, this determines if the destination document of the navigation should start
with storage access.

This is stricter than the current behavior, where if the permission is available, all documents start with storage access.
Instead, now a document will only have storage access if it requests it explicitly or if a same-origin document that has
storage access navigates itself to that document. This is seen as a security win.

Security discussion of this change was here: https://github.com/privacycg/storage-access/issues/113
Artur at Google wrote up a great summary here: https://docs.google.com/document/d/1AsrETl-7XvnZNbG81Zy9BcZfKbqACQYBSrjM3VsIpjY/edit#

Differential Revision: https://phabricator.services.mozilla.com/D184821
2023-08-14 18:02:46 +00:00
..
test Bug 1823953 - Adjust utility process tests: the expected decoders are now ffmpeg. r=gerard-majax 2023-08-08 12:12:54 +00:00
AsyncBlockers.h Bug 1809753 - Part 3: Replace all callers of GetCurrentEventTarget with GetCurrentSerialEventTarget, r=mccr8,necko-reviewers,valentin 2023-01-16 23:14:11 +00:00
BackgroundChild.h
BackgroundChildImpl.cpp Bug 1775784 - Make PRemoteWorkerService refcounted instead of ManualDealloc. r=dom-worker-reviewers,smaug 2023-03-14 23:57:56 +00:00
BackgroundChildImpl.h Bug 1775784 - Make PRemoteWorkerService refcounted instead of ManualDealloc. r=dom-worker-reviewers,smaug 2023-03-14 23:57:56 +00:00
BackgroundImpl.cpp Bug 1799692 - Part 1: Introduce ThreadsafeContentParentHandle, r=asuth 2022-11-29 20:41:46 +00:00
BackgroundParent.h Bug 1799692 - Part 1: Introduce ThreadsafeContentParentHandle, r=asuth 2022-11-29 20:41:46 +00:00
BackgroundParentImpl.cpp Bug 1840770 - Move PQuotaParent implementation to separate source files; r=dom-storage-reviewers,jari 2023-07-13 09:57:18 +00:00
BackgroundParentImpl.h Bug 1798493 - Part 1: Use nsIPrincipal instead of ContentPrincipalInfo for PLockManager r=asuth 2023-06-28 20:48:14 +00:00
BackgroundStarterChild.h
BackgroundStarterParent.h Bug 1799692 - Part 1: Introduce ThreadsafeContentParentHandle, r=asuth 2022-11-29 20:41:46 +00:00
BackgroundUtils.cpp Bug 1835907, part 1 - Add has storage access bit and triggering window id to the LoadInfo - r=smaug,necko-reviewers,kershaw,pbz 2023-08-14 18:02:46 +00:00
BackgroundUtils.h Bug 1842754 - Make LoadInfoArgs non-optional over IPC r=necko-reviewers,jesup 2023-08-11 13:45:25 +00:00
BigBuffer.cpp Bug 1801021 - Use BigBuffer for DispatchCommands. r=gfx-reviewers,lsalzman 2022-11-25 22:20:38 +00:00
BigBuffer.h Bug 1801021 - Use BigBuffer for DispatchCommands. r=gfx-reviewers,lsalzman 2022-11-25 22:20:38 +00:00
BrowserProcessSubThread.cpp Bug 1835185 - Replace OS_WIN with XP_WIN in ipc code. r=ipc-reviewers,mccr8 2023-06-06 21:05:31 +00:00
BrowserProcessSubThread.h Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato 2022-08-03 16:39:41 +00:00
ByteBuf.h
ByteBufUtils.h Bug 1783242 - Part 3: Remove BufferList::Extract, r=glandium,ipc-reviewers,mccr8 2022-09-28 19:25:14 +00:00
components.conf
CrashReporterClient.cpp
CrashReporterClient.h Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato 2022-08-03 16:39:41 +00:00
CrashReporterHelper.h Bug 1766561 - Adapt formatting to the difference in ProcessId type across platforms. r=nika,necko-reviewers,kershaw 2022-05-03 20:49:04 +00:00
CrashReporterHost.cpp Bug 1784039 - Remove the isLikelyOOM property from ipc:content-shutdown messages r=jld 2022-09-13 07:01:57 +00:00
CrashReporterHost.h Bug 1784039 - Remove the isLikelyOOM property from ipc:content-shutdown messages r=jld 2022-09-13 07:01:57 +00:00
CrossProcessMutex_posix.cpp
CrossProcessMutex_unimplemented.cpp
CrossProcessMutex_windows.cpp
CrossProcessMutex.h Bug 1835185 - Replace OS_*BSD with equivalent macros in ipc code. r=ipc-reviewers,mccr8 2023-06-06 21:05:34 +00:00
CrossProcessSemaphore_posix.cpp
CrossProcessSemaphore_unimplemented.cpp
CrossProcessSemaphore_windows.cpp
CrossProcessSemaphore.h Bug 1835185 - Replace OS_MACOSX with XP_DARWIN in ipc code. r=ipc-reviewers,mccr8 2023-06-06 21:05:32 +00:00
DataPipe.cpp Bug 1847780 - Make RemoteLazyInputStream and DataPipeReceiver non-nullable. r=nika 2023-08-09 15:47:15 +00:00
DataPipe.h Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato 2022-08-03 16:39:41 +00:00
Endpoint.cpp Bug 1779792 - Part 5: Add a unique nsID field to each MessageChannel pair, r=ipc-reviewers,mccr8 2022-08-10 14:55:23 +00:00
Endpoint.h Bug 1779792 - Part 5: Add a unique nsID field to each MessageChannel pair, r=ipc-reviewers,mccr8 2022-08-10 14:55:23 +00:00
EnumSerializer.h
EnvironmentMap.h Bug 1835185 - Adjust preprocessor conditions knowing that XP_WIN and XP_UNIX are mutually exclusive. r=mccr8 2023-06-06 21:05:37 +00:00
FileDescriptor.cpp
FileDescriptor.h
FileDescriptorShuffle.cpp
FileDescriptorShuffle.h
FileDescriptorUtils.cpp
FileDescriptorUtils.h
ForkServer.cpp Bug 1840515 - Step 2: Preload the omnijars in the fork server. r=nika 2023-08-09 21:35:50 +00:00
ForkServer.h Bug 1792474 - Part 3: Stop using IPC::Channel to create the pipe for ForkServer, r=ipc-reviewers,jld 2022-10-07 01:51:29 +00:00
ForkServiceChild.cpp Bug 1819311 - Collect errors on process launch r=nika,geckoview-reviewers,owlish 2023-04-13 08:35:24 +00:00
ForkServiceChild.h Bug 1819311 - Collect errors on process launch r=nika,geckoview-reviewers,owlish 2023-04-13 08:35:24 +00:00
GeckoChildProcessHost.cpp Bug 1840515 - Step 2: Preload the omnijars in the fork server. r=nika 2023-08-09 21:35:50 +00:00
GeckoChildProcessHost.h Bug 1838906 - Part 2: Simplify the types for IPC::Channel::Listener, r=ipc-reviewers,necko-reviewers,kershaw,jld 2023-06-27 19:59:47 +00:00
IdleSchedulerChild.cpp Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille 2023-03-27 07:20:25 +00:00
IdleSchedulerChild.h
IdleSchedulerParent.cpp Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille 2023-03-27 07:20:25 +00:00
IdleSchedulerParent.h Bug 1778621 - Re-enable the GC_WAIT_FOR_IDLE_* telemetry r=smaug 2022-07-13 00:46:10 +00:00
InputStreamParams.ipdlh Bug 1847780 - Make RemoteLazyInputStream and DataPipeReceiver non-nullable. r=nika 2023-08-09 15:47:15 +00:00
InputStreamUtils.cpp Bug 1847780 - Make RemoteLazyInputStream and DataPipeReceiver non-nullable. r=nika 2023-08-09 15:47:15 +00:00
InputStreamUtils.h Bug 1754004 - Part 11: Simplify the IPCStream serialization API, r=asuth,necko-reviewers,kershaw 2022-05-13 14:16:13 +00:00
IOThreadChild.h Bug 1840974 - Part 3: Make sure otherpid is set if known on IPC::Channel, r=ipc-reviewers,jld 2023-07-17 20:32:09 +00:00
IPCCore.h
IPCForwards.h Bug 1815177 - Use a custom ReadResult to reduce branching during IPDL deserialization, r=ipc-reviewers,mccr8 2023-03-20 15:40:38 +00:00
IPCMessageUtils.h Bug 1835185 - Remove build_config.h from ipc code. r=ipc-reviewers,mccr8 2023-06-06 21:05:36 +00:00
IPCMessageUtilsSpecializations.cpp
IPCMessageUtilsSpecializations.h Bug 1627263 - Propagate nonce attribute from Link header preloads to loaders. r=necko-reviewers,kershaw 2023-07-31 14:49:57 +00:00
IPCStream.ipdlh Bug 1754004 - Part 11: Simplify the IPCStream serialization API, r=asuth,necko-reviewers,kershaw 2022-05-13 14:16:13 +00:00
IPCStreamUtils.cpp Bug 1847780 - Make RemoteLazyInputStream and DataPipeReceiver non-nullable. r=nika 2023-08-09 15:47:15 +00:00
IPCStreamUtils.h Bug 1754004 - Part 11: Simplify the IPCStream serialization API, r=asuth,necko-reviewers,kershaw 2022-05-13 14:16:13 +00:00
IPCTypes.h
IPDLParamTraits.h Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille 2023-03-27 07:20:25 +00:00
IPDLStructMember.h Bug 1814683 - Part 4: Allow IPDL structs to contain non-default-constructable types, r=ipc-reviewers,jld 2023-03-20 15:40:34 +00:00
LaunchError.cpp Bug 1819311 - Collect errors on process launch r=nika,geckoview-reviewers,owlish 2023-04-13 08:35:24 +00:00
LaunchError.h Bug 1819311 - Collect errors on process launch r=nika,geckoview-reviewers,owlish 2023-04-13 08:35:24 +00:00
MessageChannel.cpp Bug 1835647 - Switch FatalError to asynchronously report channel errors under fuzzing, r=ipc-reviewers,mccr8 2023-06-08 23:09:19 +00:00
MessageChannel.h Bug 1836349 - [3/3] Restrict IPCResult not to accept nonconstant strings r=nika,ipc-reviewers 2023-06-21 20:54:48 +00:00
MessageLink.cpp Bug 1807049 - Refactor MessageChannel shutdown states, r=ipc-reviewers,mccr8 2023-05-26 17:44:57 +00:00
MessageLink.h Bug 1836349 - [3/3] Restrict IPCResult not to accept nonconstant strings r=nika,ipc-reviewers 2023-06-21 20:54:48 +00:00
MessagePump_android.cpp Bug 1837816 - Make selector cache not tied to a document. r=media-playback-reviewers,karlt,mstange 2023-06-16 17:20:42 +00:00
MessagePump_mac.mm Bug 1826530 - Implement MessagePumpForNonMainUIThreads for mac. r=xpcom-reviewers,ipc-reviewers,mstange,nika 2023-05-23 09:05:07 +00:00
MessagePump_windows.cpp Bug 1826530 - From the Windows MessagePumpForNonMainUIThreads remove use of NSAutoReleasePool. r=ipc-reviewers,nika 2023-05-23 09:05:07 +00:00
MessagePump.cpp Bug 1826530 - Break platform-dependent MessagePumps out to platform-specific files. r=ipc-reviewers,nika 2023-05-23 09:05:07 +00:00
MessagePump.h Bug 1834925 - Enable MessagePumpForNonMainUIThreads on Darwin, not only macOS. r=ipc-reviewers,nika 2023-05-25 05:38:03 +00:00
MiniTransceiver.cpp Bug 1768476 - Part 1: Consistently pass IPC::Message around by UniquePtr, r=ipc-reviewers,mccr8 2022-05-10 21:37:25 +00:00
MiniTransceiver.h Bug 1768476 - Part 1: Consistently pass IPC::Message around by UniquePtr, r=ipc-reviewers,mccr8 2022-05-10 21:37:25 +00:00
moz.build Bug 1454808 - Remove SharedMemoryBasic_android, r=jld 2023-07-20 20:23:41 +00:00
Neutering.h
NodeChannel.cpp Bug 1840974 - Part 3: Make sure otherpid is set if known on IPC::Channel, r=ipc-reviewers,jld 2023-07-17 20:32:09 +00:00
NodeChannel.h Bug 1840974 - Part 3: Make sure otherpid is set if known on IPC::Channel, r=ipc-reviewers,jld 2023-07-17 20:32:09 +00:00
NodeController.cpp Bug 1840974 - Part 3: Make sure otherpid is set if known on IPC::Channel, r=ipc-reviewers,jld 2023-07-17 20:32:09 +00:00
NodeController.h Bug 1840974 - Part 3: Make sure otherpid is set if known on IPC::Channel, r=ipc-reviewers,jld 2023-07-17 20:32:09 +00:00
nsIIPCSerializableInputStream.h Bug 1754004 - Part 11: Simplify the IPCStream serialization API, r=asuth,necko-reviewers,kershaw 2022-05-13 14:16:13 +00:00
PBackground.ipdl Bug 1798493 - Part 1: Use nsIPrincipal instead of ContentPrincipalInfo for PLockManager r=asuth 2023-06-28 20:48:14 +00:00
PBackgroundSharedTypes.ipdlh
PBackgroundStarter.ipdl
PBackgroundTest.ipdl
PIdleScheduler.ipdl
ProcessChild.cpp Bug 1840974 - Part 3: Make sure otherpid is set if known on IPC::Channel, r=ipc-reviewers,jld 2023-07-17 20:32:09 +00:00
ProcessChild.h Bug 1779792 - Part 5: Add a unique nsID field to each MessageChannel pair, r=ipc-reviewers,mccr8 2022-08-10 14:55:23 +00:00
ProcessUtils_bsd.cpp Bug 1835185 - Replace OS_*BSD with equivalent macros in ipc code. r=ipc-reviewers,mccr8 2023-06-06 21:05:34 +00:00
ProcessUtils_common.cpp Bug 1752332: Remove the shouldSanitizeFunction member r=KrisWright 2022-04-27 12:57:38 +00:00
ProcessUtils_linux.cpp
ProcessUtils_mac.mm Bug 1770241 - Move SetThisProcessName() to avoid risky GetCurrentProcess() r=haik 2022-05-25 20:59:32 +00:00
ProcessUtils_none.cpp
ProcessUtils.h Bug 1752332: Remove the shouldSanitizeFunction member r=KrisWright 2022-04-27 12:57:38 +00:00
ProtocolMessageUtils.h Bug 1783240 - Part 1: Remove unnecessary Log methods from ParamTraits impls, r=ipc-reviewers,necko-reviewers,media-playback-reviewers,mccr8,alwu 2022-09-28 19:25:12 +00:00
ProtocolTypes.ipdlh
ProtocolUtils.cpp Bug 1836349 - [3/3] Restrict IPCResult not to accept nonconstant strings r=nika,ipc-reviewers 2023-06-21 20:54:48 +00:00
ProtocolUtils.h Bug 1836349 - [3/3] Restrict IPCResult not to accept nonconstant strings r=nika,ipc-reviewers 2023-06-21 20:54:48 +00:00
PUtilityAudioDecoder.ipdl Bug 1785738 - part4 : run media engine in the new utility process. r=gerard-majax,azebrowski 2022-09-03 00:53:59 +00:00
PUtilityProcess.ipdl Bug 1826784 - Collect Third-Party Modules informations for Utility processes r=gstoll 2023-04-07 15:25:53 +00:00
RandomAccessStreamParams.ipdlh Bug 1791750 - Add support for using QuotaObject in content processes; r=ipc-reviewers,nika 2022-12-16 06:38:12 +00:00
RandomAccessStreamUtils.cpp Bug 1791750 - Add a new argument to serialization methods for passing optional callbacks; r=dom-storage-reviewers,ipc-reviewers,nika,jari 2022-12-16 06:38:12 +00:00
RandomAccessStreamUtils.h Bug 1791750 - Add a new argument to serialization methods for passing optional callbacks; r=dom-storage-reviewers,ipc-reviewers,nika,jari 2022-12-16 06:38:12 +00:00
RawShmem.cpp Bug 1795311 - A new shared memory class with more flexible memory management. r=nika,jld 2022-11-10 15:52:31 +00:00
RawShmem.h Bug 1800430 - Avoid ambiguous namespace error in RawShmem.h. r=nika 2023-01-18 14:42:17 +00:00
ScopedPort.cpp
ScopedPort.h
SerializedStructuredCloneBuffer.cpp Bug 1818576 - JSStructuredCloneData should own any transferables immediately from the beginning of writing r=saschanaz,iain 2023-05-10 16:51:48 +00:00
SerializedStructuredCloneBuffer.h Bug 1783242 - Part 1: Serialize large JSStructuredCloneData with SharedMemory, r=ipc-reviewers,handyman 2022-09-28 19:25:13 +00:00
SharedMemory_posix.cpp
SharedMemory_windows.cpp
SharedMemory.cpp
SharedMemory.h Bug 1777656: Delete mozilla::ipc::SharedMemory::SharedMemorytype. r=nika,media-playback-reviewers,padenot 2022-07-05 20:08:31 +00:00
SharedMemoryBasic_chromium.h Bug 1777656: Delete mozilla::ipc::SharedMemory::SharedMemorytype. r=nika,media-playback-reviewers,padenot 2022-07-05 20:08:31 +00:00
SharedMemoryBasic_mach.h Bug 1777656: Delete mozilla::ipc::SharedMemory::SharedMemorytype. r=nika,media-playback-reviewers,padenot 2022-07-05 20:08:31 +00:00
SharedMemoryBasic_mach.mm Bug 1798600 - Use Created() during creation instead of Mapped(). r=nika 2022-11-02 19:27:49 +00:00
SharedMemoryBasic.h Bug 1454808 - Remove SharedMemoryBasic_android, r=jld 2023-07-20 20:23:41 +00:00
Shmem.cpp Bug 1816088 - use highest priority message for SHMEM_CREATED_MESSAGE_TYPE, r=nika 2023-02-14 01:29:03 +00:00
Shmem.h Bug 1821010 - Remove legacy IPC fuzzing code. r=truber,nika 2023-03-23 14:53:22 +00:00
ShmemMessageUtils.h Bug 1783240 - Part 1: Remove unnecessary Log methods from ParamTraits impls, r=ipc-reviewers,necko-reviewers,media-playback-reviewers,mccr8,alwu 2022-09-28 19:25:12 +00:00
SideVariant.h Bug 1815177 - Use a custom ReadResult to reduce branching during IPDL deserialization, r=ipc-reviewers,mccr8 2023-03-20 15:40:38 +00:00
StringUtil.cpp Bug 1836989 - Rename the hacky string conversion function in ipc/glue/StringUtil.cpp. r=ipc-reviewers,nika 2023-06-07 13:20:08 +00:00
TaintingIPCUtils.h
TaskFactory.h
ToplevelActorHolder.h Bug 1768050: Test request handler. r=jesup 2022-07-07 09:08:58 +00:00
TransportSecurityInfoUtils.cpp Bug 1791633 - separate nsITLSSocketControl from nsITransportSecurityInfo r=necko-reviewers,kershaw,jschanck 2022-11-16 16:37:29 +00:00
TransportSecurityInfoUtils.h Bug 1791633 - separate nsITLSSocketControl from nsITransportSecurityInfo r=necko-reviewers,kershaw,jschanck 2022-11-16 16:37:29 +00:00
URIParams.ipdlh Bug 1812356 - Part 1. Add SubstitutingJARURIParams to serialize SubstitutingJARURI. r=nika,necko-reviewers,valentin 2023-04-28 05:40:41 +00:00
URIUtils.cpp Bug 1812356 - Part 1. Add SubstitutingJARURIParams to serialize SubstitutingJARURI. r=nika,necko-reviewers,valentin 2023-04-28 05:40:41 +00:00
URIUtils.h
UtilityAudioDecoder.cpp Bug 1832108 - Collect Utility audio decoder actor name r=padenot 2023-05-10 09:34:15 +00:00
UtilityAudioDecoder.h Bug 1832108 - Collect Utility audio decoder actor name r=padenot 2023-05-10 09:34:15 +00:00
UtilityAudioDecoderChild.cpp Bug 1824834. r=media-playback-reviewers,alwu 2023-04-26 20:59:59 +00:00
UtilityAudioDecoderChild.h Bug 1832108 - Collect Utility audio decoder actor name r=padenot 2023-05-10 09:34:15 +00:00
UtilityAudioDecoderParent.cpp Bug 1843020 - Re-enable Win32k Lockdown for Utility WMF r=bobowen 2023-07-18 13:19:32 +00:00
UtilityAudioDecoderParent.h Bug 1772796 - Add profiling markers to Utility process launch r=padenot 2023-04-26 11:48:43 +00:00
UtilityProcessChild.cpp Bug 1826106 - Use JS::FrontendContext in Utility Process. r=sefeng 2023-06-09 11:08:58 +00:00
UtilityProcessChild.h Bug 1839325 - Add missing header dependency on mozilla/PSandboxTestingChild.h r=bobowen,necko-reviewers,jesup 2023-06-22 12:40:14 +00:00
UtilityProcessHost.cpp Bug 1838906 - Part 2: Simplify the types for IPC::Channel::Listener, r=ipc-reviewers,necko-reviewers,kershaw,jld 2023-06-27 19:59:47 +00:00
UtilityProcessHost.h Bug 1838906 - Part 2: Simplify the types for IPC::Channel::Listener, r=ipc-reviewers,necko-reviewers,kershaw,jld 2023-06-27 19:59:47 +00:00
UtilityProcessImpl.cpp Bug 1835185 - Replace OS_WIN with XP_WIN in ipc code. r=ipc-reviewers,mccr8 2023-06-06 21:05:31 +00:00
UtilityProcessImpl.h Bug 1797301 - Add lib with failure handling r=nika 2022-11-08 18:41:56 +00:00
UtilityProcessManager.cpp Bug 1842825 - Split new Observer() outside of ipc::UtilityProcessManager r=ipc-reviewers,nika 2023-07-12 13:44:32 +00:00
UtilityProcessManager.h Bug 1842825 - Split new Observer() outside of ipc::UtilityProcessManager r=ipc-reviewers,nika 2023-07-12 13:44:32 +00:00
UtilityProcessParent.cpp Bug 1826784 - Collect Third-Party Modules informations for Utility processes r=gstoll 2023-04-07 15:25:53 +00:00
UtilityProcessParent.h Bug 1826784 - Collect Third-Party Modules informations for Utility processes r=gstoll 2023-04-07 15:25:53 +00:00
UtilityProcessSandboxing.cpp Bug 1839834 - Allow per-sandbox disabling on Utility r=jld 2023-06-27 13:10:14 +00:00
UtilityProcessSandboxing.h Bug 1839834 - Allow per-sandbox disabling on Utility r=jld 2023-06-27 13:10:14 +00:00
WindowsMessageLoop.cpp Bug 1846641 - Remove Adobe Flash fullscreen IPC handling r=handyman 2023-08-10 18:48:07 +00:00
WindowsMessageLoop.h