summaryrefslogtreecommitdiffhomepage
path: root/sessionrecording
diff options
context:
space:
mode:
authorFernando Serboncini <fserb@tailscale.com>2026-04-07 15:59:10 -0400
committerGitHub <noreply@github.com>2026-04-07 15:59:10 -0400
commit07399275f1cb6d42faa9bff6bb8a7109cce516b4 (patch)
tree1680a4ff5b9f1952d0bda8d0ecf736eb119e61d9 /sessionrecording
parent8a7e160a6e624965206d5dfa0ba6355be936b6de (diff)
downloadtailscale-alt.tar.xz
tailscale-alt.zip
k8s-operator/sessionrecording/ws: unify Read/Write frame parsing (#19227)alt
Consolidate the duplicated WebSocket frame-parsing logic from Read and Write into a shared processFrames loop, fixing several bugs in the process: - Mixed control and data frames in a single Read/Write call buffer were not handled: a control frame would cause merged data frames to be skipped. - Multiple data frames into one Write call weren't being correctly parsed: only the first frame was processed, ignoring the rest in the buffer. - msg.isFinalized was being set before confirming the fragment was complete, so an incomplete msg fragment, could've been sometimes marked as finalized. - Continuation frames without any payload were being treated as if they didn't have stream ID, even thought the id is already known from the initial fragment. Fixes tailscale/corp#39583 Signed-off-by: Fernando Serboncini <fserb@tailscale.com> Signed-off-by: chaosinthecrd <tom@tmlabs.co.uk> Co-authored-by: chaosinthecrd <tom@tmlabs.co.uk>
Diffstat (limited to 'sessionrecording')
0 files changed, 0 insertions, 0 deletions