Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

h2: Add a rate limit facility for h/2 RST handling (6.0) #4008

Merged
merged 10 commits into from
Oct 18, 2023

Commits on Oct 18, 2023

  1. vdef: implement vmin[_t], vmax[_t] and vlimit[_t]

    This should make the code easier to read and stop us from being inconsistent.
    
    Signed-off-by: Asad Sajjad Ahmed <[email protected]>
    asadsa92 authored and dridi committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    078a4a4 View commit details
    Browse the repository at this point in the history
  2. h2: Add a rate limit facility for h/2 RST handling

    This adds parameters h2_rapid_reset_limit and h2_rapid_reset_period,
    which govern the rate of which we permit clients to reset streams.
    
    If the limit is exceeded the connection is closed.
    
    Related to: varnishcache#1851
    
    Conflicts:
    	include/tbl/params.h
    daghf authored and dridi committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    109f5db View commit details
    Browse the repository at this point in the history
  3. Introduce RAPID_RESET as a sess_close reason

    Conflicts:
    	bin/varnishd/VSC_main.vsc
    	include/tbl/sess_close.h
    daghf authored and dridi committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    2f12eb5 View commit details
    Browse the repository at this point in the history
  4. Flexelinting

    bsdphk authored and dridi committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    0aa2551 View commit details
    Browse the repository at this point in the history
  5. Add param h2_rapid_reset

    Only RST frames received earlier than this duration will be considered
    rapid.
    
    Includes backports of the following upstream doc-touchups:
    - 151f4d5
    - 46d4f82
    
    Conflicts:
    	include/tbl/params.h
    daghf authored and dridi committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    c4f4416 View commit details
    Browse the repository at this point in the history
  6. h2: Set a default h2_rapid_reset_limit

    daghf authored and dridi committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    24470e2 View commit details
    Browse the repository at this point in the history
  7. Copy rapid reset parameters to the h2 session

    backport of f820f80
    
    Conflicts:
    	include/tbl/params.h
    daghf authored and dridi committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    2ed3c8e View commit details
    Browse the repository at this point in the history
  8. Add vmod_h2 to control rapid_reset parameters per session

    Backport of 2cfb561 and 1a406e3
    
    Conflicts:
    	bin/varnishtest/vmods.h
    	configure.ac
    	lib/Makefile.am
    daghf authored and dridi committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    3902850 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    c2bc7d1 View commit details
    Browse the repository at this point in the history
  10. Flexelinting

    we can not make the parameter const because API.
    nigoroll authored and dridi committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    822995f View commit details
    Browse the repository at this point in the history