@@ -10,7 +10,7 @@ use tokio::io::{AsyncRead, AsyncWrite};
10
10
11
11
use super :: { decode_content_length, ping, PipeToSendStream , SendBuf } ;
12
12
use crate :: body:: HttpBody ;
13
- use crate :: common:: { task , exec:: Exec , Future , Never , Pin , Poll } ;
13
+ use crate :: common:: { exec:: Exec , task , Future , Never , Pin , Poll } ;
14
14
use crate :: headers;
15
15
use crate :: proto:: Dispatched ;
16
16
use crate :: { Body , Request , Response } ;
@@ -44,6 +44,7 @@ pub(crate) struct Config {
44
44
pub ( crate ) keep_alive_timeout : Duration ,
45
45
#[ cfg( feature = "runtime" ) ]
46
46
pub ( crate ) keep_alive_while_idle : bool ,
47
+ pub ( crate ) max_concurrent_reset_streams : Option < usize > ,
47
48
}
48
49
49
50
impl Default for Config {
@@ -59,6 +60,7 @@ impl Default for Config {
59
60
keep_alive_timeout : Duration :: from_secs ( 20 ) ,
60
61
#[ cfg( feature = "runtime" ) ]
61
62
keep_alive_while_idle : false ,
63
+ max_concurrent_reset_streams : None ,
62
64
}
63
65
}
64
66
}
@@ -70,6 +72,9 @@ fn new_builder(config: &Config) -> Builder {
70
72
. initial_connection_window_size ( config. initial_conn_window_size )
71
73
. max_frame_size ( config. max_frame_size )
72
74
. enable_push ( false ) ;
75
+ if let Some ( max) = config. max_concurrent_reset_streams {
76
+ builder. max_concurrent_reset_streams ( max) ;
77
+ }
73
78
builder
74
79
}
75
80
0 commit comments