ladybird/Libraries/LibCore
Timothy Flynn 4ad9543a65 LibCore: Add helpers to share arbitrary versions between processes
This will allow sharing e.g. document cookie versions between the UI and
WebContent processes, and safely accessing those versions.

Core::AnonymousBuffer internally creates a minimum buffer of PAGE_SIZE
bytes. This is much more than the size of a single version, but this
affords us the opportunity to share multiple versions in a single buffer
between processes. With a PAGE_SIZE of 4096, we can share up to 512
versions in a single buffer.
2026-02-05 07:28:07 -05:00
..
Platform
AddressInfoVector.cpp LibCore: Move AddressInfoVector to its own file 2025-12-01 06:34:32 -05:00
AddressInfoVector.h LibCore: Move AddressInfoVector to its own file 2025-12-01 06:34:32 -05:00
AnonymousBuffer.cpp LibCore+LibIPC: Move various encode/decode specializations to LibIPC 2025-06-14 16:03:26 -04:00
AnonymousBuffer.h LibCore: Add AnonymousBuffer::bytes() getter 2026-02-01 22:46:09 +01:00
AnonymousBufferWindows.cpp LibCore: Consistently treat file descriptors as handles on Windows 2025-02-05 19:27:47 -07:00
ArgsParser.cpp LibCore+LibJS+LibWasm: Always use a real format string 2025-04-08 20:00:18 -04:00
ArgsParser.h
CMakeLists.txt LibCore: Add helpers to share arbitrary versions between processes 2026-02-05 07:28:07 -05:00
ConfigFile.cpp Everywhere: Change west consts caught by clang-format-21 to east consts 2025-08-29 18:18:55 +01:00
ConfigFile.h
Directory.cpp AK+LibCore: Avoid double-negation of syscall error values 2025-05-10 21:19:46 -04:00
Directory.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
DirectoryEntry.cpp
DirectoryEntry.h
DirIterator.cpp
DirIterator.h
ElapsedTimer.cpp
ElapsedTimer.h LibCore: Remove deprecated ElapsedTimer::elapsed() 2024-11-23 19:20:03 +01:00
Environment.cpp Meta+LibCore: Disable --no-undefined on FreeBSD and remove LibCore hack 2025-10-22 13:54:54 +02:00
Environment.h
Event.h LibCore: Don't require heap-allocated event to hold deferred invocation 2025-12-03 13:26:27 +01:00
EventLoop.cpp Revert "LibCore: Add thread-safe weak deferred_invoke()" 2026-01-25 12:20:39 +01:00
EventLoop.h Revert "LibCore: Add thread-safe weak deferred_invoke()" 2026-01-25 12:20:39 +01:00
EventLoopExecutor.swift LibCore: Add swift bindings for EventLoop as an Executor and Actor 2025-03-15 21:51:22 -06:00
EventLoopImplementation.cpp LibCore: Only wake the event loop in deferred_invoke from other threads 2025-12-31 10:41:51 +01:00
EventLoopImplementation.h Revert "LibCore: Add thread-safe weak deferred_invoke()" 2026-01-25 12:20:39 +01:00
EventLoopImplementationUnix.cpp Revert "LibCore: Add thread-safe weak deferred_invoke()" 2026-01-25 12:20:39 +01:00
EventLoopImplementationUnix.h Revert "LibCore: Add thread-safe weak deferred_invoke()" 2026-01-25 12:20:39 +01:00
EventLoopImplementationWindows.cpp Revert "LibCore: Add thread-safe weak deferred_invoke()" 2026-01-25 12:20:39 +01:00
EventLoopImplementationWindows.h Revert "LibCore: Add thread-safe weak deferred_invoke()" 2026-01-25 12:20:39 +01:00
EventReceiver.cpp Revert "LibCore: Use weak ownership in EventReceiver::deferred_invoke" 2026-01-11 13:54:53 -05:00
EventReceiver.h LibCore: Remove macro-generated EventReceiver::try_create(...) factories 2025-08-11 16:55:25 +02:00
EventSwift.h LibCore: Add swift bindings for EventLoop as an Executor and Actor 2025-03-15 21:51:22 -06:00
EventSwift.mm Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
File.cpp LibCore+RequestServer: Return size_t from system read/write functions 2025-12-01 16:29:48 +01:00
File.h LibCore+LibIPC: Remove badge on File::leak_fd 2025-06-14 16:03:26 -04:00
FileWatcher.h Everywhere: Include HashMap only where it's actually used 2024-12-09 12:31:16 +01:00
FileWatcherInotify.cpp LibCore: Implement FileWatcher for any systems with inotify 2026-01-16 10:59:50 -07:00
FileWatcherUnimplemented.cpp
Forward.h LibCore: Rename the forward declaration of WeakEventLoopReference 2025-12-09 17:16:25 -06:00
IOSurface.cpp
IOSurface.h
LocalServer.cpp LibCore: Remove unused LocalServer constructor parameter 2025-08-11 16:55:25 +02:00
LocalServer.h LibCore: Remove unused LocalServer constructor parameter 2025-08-11 16:55:25 +02:00
LocalServerWindows.cpp LibCore+Everywhere: Make Windows's System::ioctl consistent with POSIX 2026-01-19 06:53:29 -05:00
MachPort.cpp
MachPort.h
MappedFile.cpp LibCore+LibIPC: Remove badge on File::leak_fd 2025-06-14 16:03:26 -04:00
MappedFile.h Everywhere: Slap some [[clang::lifetimebound]] where appropriate 2025-09-01 11:11:38 +02:00
MimeData.cpp LibCore: Add AVIF to registered types in MimeData 2025-08-22 08:03:28 -04:00
MimeData.h
NetworkResponse.h
Notifier.cpp LibCore: Stop parenting notifiers 2025-08-11 16:55:25 +02:00
Notifier.h LibCore: Remove unused NotifierActivationEvent fd() and type() methods 2025-11-22 09:47:25 +01:00
Process.cpp LibCore: Mark Process::wait_for_termination as const 2025-11-07 11:27:51 +01:00
Process.h LibCore: Mark Process::wait_for_termination as const 2025-11-07 11:27:51 +01:00
ProcessWindows.cpp LibCore: Handle long paths in ProcessWindows 2026-02-02 10:35:11 +01:00
Promise.h LibCore: Do not require rvalue references to resolve/reject promises 2025-11-12 09:06:21 -05:00
Proxy.h LibCore: Make ProxyData::port a u16 2026-01-22 17:38:15 +01:00
ReportTime.cpp LibCore: Introduce REPORT_TIME() for per call timing information 2025-11-11 11:47:59 +01:00
ReportTime.h LibCore: Introduce REPORT_TIME() for per call timing information 2025-11-11 11:47:59 +01:00
Resource.cpp
Resource.h
ResourceImplementation.cpp LibCore: Add S_ISDIR, S_ISREG to System.h on Windows 2025-02-12 18:42:05 -07:00
ResourceImplementation.h
ResourceImplementationFile.cpp LibCore: Add S_ISDIR, S_ISREG to System.h on Windows 2025-02-12 18:42:05 -07:00
ResourceImplementationFile.h
SharedCircularQueue.h LibCore: Atomically ref-count SharedSingleProducerCircularQueue guts 2025-05-24 06:52:25 -06:00
SharedVersion.cpp LibCore: Add helpers to share arbitrary versions between processes 2026-02-05 07:28:07 -05:00
SharedVersion.h LibCore: Add helpers to share arbitrary versions between processes 2026-02-05 07:28:07 -05:00
Socket.cpp LibCore+RequestServer: Return size_t from system read/write functions 2025-12-01 16:29:48 +01:00
Socket.h LibCore+RequestServer: Return size_t from system read/write functions 2025-12-01 16:29:48 +01:00
SocketAddress.cpp LibCore: Define SocketAddress out-of-line to remove SocketAddressWindows 2025-12-01 06:34:32 -05:00
SocketAddress.h LibCore: Define SocketAddress out-of-line to remove SocketAddressWindows 2025-12-01 06:34:32 -05:00
SocketpairWindows.cpp LibCore/LibIPC/Meta: Stop using deprecated Winsock functions 2026-02-02 10:35:11 +01:00
SocketWindows.cpp LibCore: Define SocketAddress out-of-line to remove SocketAddressWindows 2025-12-01 06:34:32 -05:00
StandardPaths.cpp LibCore: Add a standard path for cache data 2025-10-14 13:40:33 +02:00
StandardPaths.h LibCore: Add a standard path for cache data 2025-10-14 13:40:33 +02:00
System.cpp LibCore: Use sendfile instead of mmap+write on macOS 2026-01-19 06:53:29 -05:00
System.h LibCore+LibHTTP+RequestServer: Send data via sockets instead of pipes 2026-01-19 06:53:29 -05:00
SystemServerTakeover.cpp LibCore: Port SystemServerTakeover.cpp to Windows 2025-02-06 15:25:14 -07:00
SystemServerTakeover.h
SystemWindows.cpp LibCore/LibIPC/Meta: Stop using deprecated Winsock functions 2026-02-02 10:35:11 +01:00
TCPServer.cpp LibCore: Remove unused TCPServer constructor parameter 2025-08-11 16:55:25 +02:00
TCPServer.h LibCore: Remove unused TCPServer constructor parameter 2025-08-11 16:55:25 +02:00
TCPServerWindows.cpp LibCore+Everywhere: Make Windows's System::ioctl consistent with POSIX 2026-01-19 06:53:29 -05:00
ThreadedPromise.h LibCore: Fix ThreadedPromise issues found with ThreadSanitizer 2025-09-24 21:05:54 -05:00
ThreadEventQueue.cpp LibCore: Allow checking for a ThreadEventQueue without creating one 2025-12-31 10:41:51 +01:00
ThreadEventQueue.h LibCore: Allow checking for a ThreadEventQueue without creating one 2025-12-31 10:41:51 +01:00
Timer.cpp LibCore: Remove unused Timer APIs for constructing with a parent 2025-08-11 16:55:25 +02:00
Timer.h LibCore: Remove unused Timer APIs for constructing with a parent 2025-08-11 16:55:25 +02:00
TimeZoneWatcher.h
TimeZoneWatcherMacOS.mm
TimeZoneWatcherUnimplemented.cpp
TimeZoneWatcherUnix.cpp LibCore: Use the Linux implementation of TimeZoneWatcher on BSDs 2026-01-16 10:59:50 -07:00
TimeZoneWatcherWindows.cpp LibCore+LibWebView+UI/Qt: Support TimeZoneWatcher on Windows 2025-10-05 15:46:15 +02:00
UDPServer.cpp LibCore: Accept ReadonlyBytes/Bytes in System::send/recv 2025-12-01 08:55:33 -05:00
UDPServer.h LibCore: Define SocketAddress out-of-line to remove SocketAddressWindows 2025-12-01 06:34:32 -05:00
UDPServerWindows.cpp LibCore+Everywhere: Make Windows's System::ioctl consistent with POSIX 2026-01-19 06:53:29 -05:00
Version.cpp LibCore: Remove LADYBIRD_GIT_VERSION environment variable usage 2025-05-15 14:02:48 +02:00
Version.h LibCore: Remove ErrorOr return type from read_long_version_string 2025-02-13 08:27:02 -05:00