Skip to content

Fix blocking mux reads and RAW download parsing#220

Closed
durck wants to merge 2 commits into
NHAS:unstablefrom
durck:fix/raw-download-request-read
Closed

Fix blocking mux reads and RAW download parsing#220
durck wants to merge 2 commits into
NHAS:unstablefrom
durck:fix/raw-download-request-read

Conversation

@durck

@durck durck commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Keep bufferedConn as a prefix replay wrapper and avoid reading from the underlying connection while buffered prefix data is still available.
  • Add a regression test that uses a 4096-byte caller buffer with a blocking underlying connection.
  • Read RAW download requests with bounded protocol parsing instead of relying on a single TCP read.
  • Cover .sh, .ps1, raw/binary filenames, split TCP chunks, empty names, and over-length names.

Validation

  • go test -count=1 ./pkg/mux ./internal/server/tcp

Note: local go test ./... is not clean on current upstream/main with Go 1.25.5 before this branch is applied; it fails on existing non-constant fmt.Errorf vet errors in server packages and internal/terminal/TestQuoteHandling.

@NHAS NHAS changed the base branch from main to unstable July 8, 2026 10:11
@durck durck closed this Jul 8, 2026
@durck durck deleted the fix/raw-download-request-read branch July 8, 2026 15:02
@NHAS

NHAS commented Jul 8, 2026

Copy link
Copy Markdown
Owner

Hi there

Why was this deleted?

@durck

durck commented Jul 9, 2026

Copy link
Copy Markdown
Contributor Author

Sorry about that. I accidentally deleted the source branch while cleaning up stale branches in my fork.

The change is still useful, so I recreated it as #221 with the same scope and validation: #221

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants