comparison src/stream/ngx_stream_quic_module.c @ 8815:8ab0d609af09 quic

QUIC: the "quic_gso" directive. The directive enables usage of UDP segmentation offloading by quic. By default, gso is disabled since it is not always operational when detected (depends on interface configuration).
author Vladimir Homutov <vl@nginx.com>
date Tue, 20 Jul 2021 12:37:12 +0300
parents f8ad3dd142ad
children 4b2d259bdadd
comparison
equal deleted inserted replaced
8814:913ff20e4c62 8815:8ab0d609af09
124 { ngx_string("quic_retry"), 124 { ngx_string("quic_retry"),
125 NGX_STREAM_MAIN_CONF|NGX_STREAM_SRV_CONF|NGX_CONF_FLAG, 125 NGX_STREAM_MAIN_CONF|NGX_STREAM_SRV_CONF|NGX_CONF_FLAG,
126 ngx_conf_set_flag_slot, 126 ngx_conf_set_flag_slot,
127 NGX_STREAM_SRV_CONF_OFFSET, 127 NGX_STREAM_SRV_CONF_OFFSET,
128 offsetof(ngx_quic_conf_t, retry), 128 offsetof(ngx_quic_conf_t, retry),
129 NULL },
130
131 { ngx_string("quic_gso"),
132 NGX_STREAM_MAIN_CONF|NGX_STREAM_SRV_CONF|NGX_CONF_FLAG,
133 ngx_conf_set_flag_slot,
134 NGX_STREAM_SRV_CONF_OFFSET,
135 offsetof(ngx_quic_conf_t, gso_enabled),
129 NULL }, 136 NULL },
130 137
131 { ngx_string("quic_host_key"), 138 { ngx_string("quic_host_key"),
132 NGX_STREAM_MAIN_CONF|NGX_STREAM_SRV_CONF|NGX_CONF_FLAG, 139 NGX_STREAM_MAIN_CONF|NGX_STREAM_SRV_CONF|NGX_CONF_FLAG,
133 ngx_stream_quic_host_key, 140 ngx_stream_quic_host_key,
249 conf->tp.ack_delay_exponent = NGX_CONF_UNSET_UINT; 256 conf->tp.ack_delay_exponent = NGX_CONF_UNSET_UINT;
250 conf->tp.disable_active_migration = NGX_CONF_UNSET; 257 conf->tp.disable_active_migration = NGX_CONF_UNSET;
251 conf->tp.active_connection_id_limit = NGX_CONF_UNSET_UINT; 258 conf->tp.active_connection_id_limit = NGX_CONF_UNSET_UINT;
252 259
253 conf->retry = NGX_CONF_UNSET; 260 conf->retry = NGX_CONF_UNSET;
261 conf->gso_enabled = NGX_CONF_UNSET;
254 262
255 return conf; 263 return conf;
256 } 264 }
257 265
258 266
306 314
307 ngx_conf_merge_uint_value(conf->tp.active_connection_id_limit, 315 ngx_conf_merge_uint_value(conf->tp.active_connection_id_limit,
308 prev->tp.active_connection_id_limit, 2); 316 prev->tp.active_connection_id_limit, 2);
309 317
310 ngx_conf_merge_value(conf->retry, prev->retry, 0); 318 ngx_conf_merge_value(conf->retry, prev->retry, 0);
319 ngx_conf_merge_value(conf->gso_enabled, prev->gso_enabled, 0);
311 320
312 ngx_conf_merge_str_value(conf->host_key, prev->host_key, ""); 321 ngx_conf_merge_str_value(conf->host_key, prev->host_key, "");
313 322
314 if (conf->host_key.len == 0) { 323 if (conf->host_key.len == 0) {
315 324