ladybird/Libraries/LibRequests
Timothy Flynn e6c008a269 LibWeb+RequestServer: Attach HTTP cookie headers from RequestServer
We currently attach HTTP cookie headers from LibWeb within Fetch. This
has the downside that the cookie IPC, and the infrastructure around it,
are all synchronous. This blocks the WebContent process entirely while
the cookie is being retrieved, for every request on a page.

We now attach cookie headers from RequestServer. The state machine in
RequestServer::Request allows us to easily do this work asynchronously.
We can also skip this work entirely when the response is served from
disk cache.

Note that we will continue to parse cookies in the WebContent process.
If something goes awry during parsing. we limit the damage to that
process, instead of the UI or RequestServer.

Also note that WebSocket requests still have cookie headers attached
attached from LibWeb. This will be handled in a future patch.

In the future, we may want to introduce a memory cache for cookies in
RequestServer to avoid IPC altogether as able.
2026-02-10 12:21:20 +01:00
..
ALPNHttpVersion.h RequestServer: Retrieve timing info from curl and pipe it to LibWeb 2025-03-06 09:00:53 -07:00
CacheSizes.cpp LibRequests+RequestServer: Add a method to estimate disk cache size 2025-11-12 09:06:21 -05:00
CacheSizes.h LibRequests+RequestServer: Add a method to estimate disk cache size 2025-11-12 09:06:21 -05:00
CMakeLists.txt LibWeb+RequestServer: Attach HTTP cookie headers from RequestServer 2026-02-10 12:21:20 +01:00
Forward.h RequestServer: Retrieve timing info from curl and pipe it to LibWeb 2025-03-06 09:00:53 -07:00
NetworkError.h LibRequests+RequestServer: Add an error code for CURLE_PARTIAL_FILE 2026-01-08 11:59:12 +01:00
Request.cpp LibRequests+RequestServer: Store request IDs as u64 2025-12-12 10:54:33 -05:00
Request.h LibRequests+RequestServer: Store request IDs as u64 2025-12-12 10:54:33 -05:00
RequestClient.cpp LibWeb+RequestServer: Attach HTTP cookie headers from RequestServer 2026-02-10 12:21:20 +01:00
RequestClient.h LibWeb+RequestServer: Attach HTTP cookie headers from RequestServer 2026-02-10 12:21:20 +01:00
RequestTimingInfo.cpp LibWeb+LibWebView+LibRequests: Reduce dependency on LibIPC includes 2025-12-01 15:12:52 +01:00
RequestTimingInfo.h LibWeb+LibWebView+LibRequests: Reduce dependency on LibIPC includes 2025-12-01 15:12:52 +01:00
WebSocket.cpp LibRequests+RequestServer: Store websocket IDs as u64 2025-12-12 10:54:33 -05:00
WebSocket.h LibRequests+RequestServer: Store websocket IDs as u64 2025-12-12 10:54:33 -05:00