Make max_stream_bidi configurable
@@ -1654,10 +1654,10 @@ static int on_config_listen(h2o_configurator_command_t *cmd, h2o_configurator_co
listener = add_listener(fd, ai->ai_addr, ai->ai_addrlen, ctx->hostconf == NULL, 0);
listener->quic.ctx = quic;
if (quic_node != NULL) {
- yoml_t **retry_node, **sndbuf, **rcvbuf, **amp_limit, **qpack_encoder_table_capacity;
+ yoml_t **retry_node, **sndbuf, **rcvbuf, **amp_limit, **qpack_encoder_table_capacity, **max_stream_data_bidi;
if (h2o_configurator_parse_mapping(
- cmd, *quic_node, NULL, "retry:s,sndbuf:s,rcvbuf:s,amp-limit:s,qpack-encoder-table-capacity:s",
- &retry_node, &sndbuf, &rcvbuf, &amp_limit, &qpack_encoder_table_capacity) != 0)
+ cmd, *quic_node, NULL, "retry:s,sndbuf:s,rcvbuf:s,amp-limit:s,qpack-encoder-table-capacity:s,max-stream-data-bidi:s",
+ &retry_node, &sndbuf, &rcvbuf, &amp_limit, &qpack_encoder_table_capacity, &max_stream_data_bidi) != 0)
return -1;
if (retry_node != NULL) {
ssize_t on = h2o_configurator_get_one_of(cmd, *retry_node, "OFF,ON");
@@ -1689,6 +1689,11 @@ static int on_config_listen(h2o_configurator_command_t *cmd, h2o_configurator_co
&listener->quic.qpack.encoder_table_capacity) != 0)
return -1;
}
+ if (max_stream_data_bidi != NULL) {
+ if (h2o_configurator_scanf(cmd, *max_stream_data_bidi, "%" SCNu64,
+ &listener->quic.ctx->transport_params.max_streams_bidi) != 0)
+ return -1;
+ }
}
listener_is_new = 1;
}
