Skip to content

Conversation

@TingDaoK
Copy link
Contributor

Issue #, if available:

Description of changes:

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

  • Automatically send the ping ACK frame back when a ping frame received with high priority.
  • Hook up the reading process of h2 handler with decoder

graebm and others added 30 commits March 9, 2020 12:01
Do encoding in 2 passes, so we know exactly how much buffer space we'll need. I will probably revert this. I thought this was clever, but seeing it implemented it's just so much more complicated than writing everything to a dynamic buffer, then copying it into the aws_io_mesage.
ditch 2 pass approach, it was just too complicated
* Enabled compilation on VS 2015

* Fix VS narrowing warning

* Updated to v0.5.3 of builder
Ignore connection: close on 200/OK responses to a CONNECT Request, since the proxy is obviously drunk and needs to hail an uber to get home from the bar safely.

Fix the broken tests from the tcp back pressure refactor in aws-c-io.
- Use common struct
- Pre-encode the entire frame
- Incrementally copy that to aws_io_message whenever encode() is called.

This is simpler/better because:
1) more shared code
2) unique payload-writing code all goes in the one new() function, instead of being spread across the new() and encode() functions
3) less chance of incorrect size calculations, since we're encoding to a buffer of the exact correct length
…If this kind of error happens now, it's programmer error
Extract useful machinery from test_h2_decoder.c for use with other tests.
@TingDaoK TingDaoK requested review from a team and graebm March 23, 2020 20:48
Copy link
Contributor

@graebm graebm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice!

@TingDaoK TingDaoK requested a review from graebm March 23, 2020 23:25
Copy link
Contributor

@graebm graebm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fix & ship

@TingDaoK TingDaoK changed the title Ping frame Ping frame for H2 Mar 24, 2020
@TingDaoK TingDaoK merged commit 8c12b8c into master Mar 24, 2020
@TingDaoK TingDaoK deleted the ping_frame branch March 24, 2020 01:05
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.

3 participants