Skip to content

Conversation

anton-ryzhov
Copy link

@anton-ryzhov anton-ryzhov commented Jul 5, 2025

Fixes #182

maybe_read_from_IDLE_client and maybe_read_from_SEND_RESPONSE_server readers wait for concrete terminators and produce NEED_DATA events until that. After NEED_DATA max_incomplete_event_size limit is checked.

Here I'm adding consistent size limits for these events, that do not depend on chunking patterns.

To ensure that we need to reject complete request data chunk if incomplete request[:-1] already exceeds max_incomplete_event_size limit.

Practically max_complete_event_size = max_incomplete_event_size + 1 and enforced for "all or nothing" event readers.

I've added failing test with the first commit and the fix in the second.

@anton-ryzhov
Copy link
Author

@njsmith could you please take a look?

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.

Inconsistent parsing behavior
1 participant