ladybird/Services/RequestServer
Sam Atkins 22d7138c8d RequestServer: Don't create already-expired WebSockets in DNS callback
This prevents a race condition:
1. Try to connect a websocket
2. DNS lookup starts
3. JS causes the websocket to no longer be alive, and it is GCed
4. websocket_close() is called, but it doesn't find a websocket with
   that websocket_id, so nothing happens
5. DNS lookup completes, and opens the websocket
6. This websocket never gets closed

By separately tracking which websockets we are trying to connect, we can
record the fact we tried to close it, and then the DNS lookup callback
can skip creating the now-unwanted websocket.
2026-04-01 19:36:47 +01:00
..
CacheLevel.h Everywhere: Hoist the Services folder to the top-level 2024-11-10 12:50:45 +01:00
CMakeLists.txt RequestServer: Add --resource-map option for URL-to-file substitution 2026-01-19 10:23:26 +01:00
ConnectionFromClient.cpp RequestServer: Don't create already-expired WebSockets in DNS callback 2026-04-01 19:36:47 +01:00
ConnectionFromClient.h RequestServer: Don't create already-expired WebSockets in DNS callback 2026-04-01 19:36:47 +01:00
CURL.cpp LibRequests+RequestServer: Add an error code for CURLE_PARTIAL_FILE 2026-01-08 11:59:12 +01:00
CURL.h RequestServer: Move some cURL utilities to their own file 2025-10-28 11:52:51 +01:00
Forward.h LibHTTP+RequestServer: Move the HTTP cache implementation to LibHTTP 2025-11-29 08:35:02 -05:00
main.cpp Everywhere: Replace Unix socket IPC transport with Mach ports on macOS 2026-03-23 18:50:48 +01:00
Request.cpp RequestServer: Check for curl errors before sending headers 2026-03-12 13:17:18 -04:00
Request.h LibWeb+RequestServer: Attach HTTP cookie headers from RequestServer 2026-02-10 12:21:20 +01:00
RequestClient.ipc LibWeb+RequestServer: Attach HTTP cookie headers from RequestServer 2026-02-10 12:21:20 +01:00
RequestPipe.cpp RequestServer: Increase RequestPipe socket buffer sizes 2026-03-15 09:06:06 -04:00
RequestPipe.h LibCore+RequestServer: Return size_t from system read/write functions 2025-12-01 16:29:48 +01:00
RequestServer.ipc LibIPC+LibWeb+LibWebView+Services: Add IPC::TransportHandle 2026-03-12 20:32:55 +01:00
Resolver.cpp RequestServer: Move Resolver (and related structures) to its own file 2025-10-28 11:52:51 +01:00
Resolver.h RequestServer: Move Resolver (and related structures) to its own file 2025-10-28 11:52:51 +01:00
ResourceSubstitutionMap.cpp RequestServer: Add --resource-map option for URL-to-file substitution 2026-01-19 10:23:26 +01:00
ResourceSubstitutionMap.h RequestServer: Add --resource-map option for URL-to-file substitution 2026-01-19 10:23:26 +01:00
WebSocketImplCurl.cpp LibWebSocket+RequestServer: Handle connection drop during closing 2026-03-13 17:28:06 +01:00
WebSocketImplCurl.h RequestServer: Enable in Windows CI 2025-08-23 16:04:36 -06:00