1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-28 16:20:57 -05:00
denoland-deno/ext
Divy Srivastava 9e3d433249
fix(ext/websocket): extra ws pongs sent (#17762)
Fixes https://github.com/denoland/deno/issues/17761

Tugstenite already sends a pong for a recieved ping. This automatically
happens when the socket read is being driven. From
https://github.com/snapview/tokio-tungstenite/issues/88

> You need to read from the read-side of the socket so that it
receives/handles pings, and on the next write it would then send the
corresponding pong.

Here's the source:


e1033afd95/src/protocol/mod.rs (L374-L380)

```rust
// Upon receipt of a Ping frame, an endpoint MUST send a Pong frame in
// response, unless it already received a Close frame. It SHOULD
// respond with Pong frame as soon as is practical. (RFC 6455)
if let Some(pong) = self.pong.take() {
  trace!("Sending pong reply");
  self.send_one_frame(stream, pong)?;
}
```

WIth this patch, all Autobahn tests from 1-8 pass. Fixed cases: 2.1,
2.2, 2.3, 2.4, 2.6, 2.9, 2.10, 2.11, 5.6, 5.7, 5.8, 5.19, 5.20

To run the test yourself, follow
https://www.notion.so/denolandinc/Autobahn-WebSocket-testsuite-723a86f450ce4823b4ef9cb3dc4c7869?pvs=4
2023-02-13 14:58:32 +00:00
..
broadcast_channel refactor: remove prefix from include_js_files & use extension name (#17683) 2023-02-07 21:09:50 +00:00
cache refactor: remove prefix from include_js_files & use extension name (#17683) 2023-02-07 21:09:50 +00:00
console fix(ext/console): Only right-align integers in console.table() (#17389) 2023-02-08 18:14:40 +09:00
crypto refactor: remove prefix from include_js_files & use extension name (#17683) 2023-02-07 21:09:50 +00:00
fetch refactor: remove prefix from include_js_files & use extension name (#17683) 2023-02-07 21:09:50 +00:00
ffi perf(ext/ffi): Revert UTF-8 validity check from getCString (#17741) 2023-02-12 18:42:35 +02:00
flash fix(ext/flash): Always send correct number of bytes when handling HEAD requests (#17740) 2023-02-12 16:13:05 +05:30
http perf(http): remove allocations checking upgrade and connection header values (#17727) 2023-02-12 20:51:07 +00:00
napi chore: forward v1.30.3 release commit to main (#17677) 2023-02-07 04:15:38 +00:00
net feat: add signal option to Deno.resolveDns (#17384) 2023-02-11 14:14:02 +00:00
node refactor: clean up "cli/node/mod.rs" and "ext/node" (#17713) 2023-02-10 10:26:39 -05:00
tls chore: forward v1.30.3 release commit to main (#17677) 2023-02-07 04:15:38 +00:00
url refactor(core): change SourcePair to ExtensionFileSource (#17686) 2023-02-08 00:21:43 +01:00
web refactor(core): change SourcePair to ExtensionFileSource (#17686) 2023-02-08 00:21:43 +01:00
webgpu fix(webgpu): use correct op for GPUDevice.createSampler (#17729) 2023-02-11 05:40:51 +00:00
webidl refactor(ext/webidl): use TypedArrayPrototypeGetSymbolToStringTag (#17602) 2023-02-09 22:45:47 +01:00
websocket fix(ext/websocket): extra ws pongs sent (#17762) 2023-02-13 14:58:32 +00:00
webstorage refactor: remove prefix from include_js_files & use extension name (#17683) 2023-02-07 21:09:50 +00:00