Adds a per connection state to track the already pushed paths and avoid duplicate pushes.
Open questions:
Using a simple array for the path list now. Question is whether we want to switch to a better data structure. Given that nginx doesn't have a dynamic hash table we could use the ngx_rbtree. Given that pushes are limited by http2_max_pushed_streams (which doesn't seem to be implemented yet) the array might just work best.
Should we fail harder in ngx_http_v2_push_mark_as_pushed?
Adds a per connection state to track the already pushed paths and avoid duplicate pushes.
Open questions:
ngx_rbtree
. Given that pushes are limited byhttp2_max_pushed_streams
(which doesn't seem to be implemented yet) the array might just work best.ngx_http_v2_push_mark_as_pushed
?