comparison src/event/ngx_event_quic.c @ 8187:de5917df2c30 quic

Adjusted transport parameters stub for active_connection_id_limit. As was objserved with ngtcp2 client, Finished CRYPTO frame within Handshake packet may not be sent for some reason if there's nothing to append on 1-RTT. This results in unnecessary retransmit. To avoid this edge case, a non-zero active_connection_id_limit transport parameter is now used to append datagram with NEW_CONNECTION_ID 1-RTT frames.
author Sergey Kandaurov <pluknet@nginx.com>
date Wed, 04 Mar 2020 16:05:39 +0300
parents 0a2683df5f11
children bf555b94e387
comparison
equal deleted inserted replaced
8186:0a2683df5f11 8187:de5917df2c30
1125 1125
1126 if (ngx_ssl_create_connection(ssl, c, NGX_SSL_BUFFER) != NGX_OK) { 1126 if (ngx_ssl_create_connection(ssl, c, NGX_SSL_BUFFER) != NGX_OK) {
1127 return NGX_ERROR; 1127 return NGX_ERROR;
1128 } 1128 }
1129 1129
1130 static const uint8_t params[12] = "\x00\x0a\x00\x3a\x00\x01\x00\x00\x09\x00\x01\x03"; 1130 /* STUB: initial_max_streams_uni=3, active_connection_id_limit=5 */
1131 static const uint8_t params[12] = "\x00\x0a\x00\x0e\x00\x01\x05\x00\x09\x00\x01\x03";
1131 1132
1132 if (SSL_set_quic_transport_params(c->ssl->connection, params, 1133 if (SSL_set_quic_transport_params(c->ssl->connection, params,
1133 sizeof(params)) == 0) 1134 sizeof(params)) == 0)
1134 { 1135 {
1135 ngx_log_error(NGX_LOG_INFO, c->log, 0, 1136 ngx_log_error(NGX_LOG_INFO, c->log, 0,