Mercurial > hg > nginx
diff src/event/quic/ngx_event_quic_connection.h @ 8737:76f476ce4d31 quic
QUIC: distinct files for connection migration.
The connection migration-related code from quic.c with dependencies is moved
into separate file.
author | Vladimir Homutov <vl@nginx.com> |
---|---|
date | Wed, 31 Mar 2021 14:57:15 +0300 |
parents | 714e9af983de |
children | c8bda5e1e662 |
line wrap: on
line diff
--- a/src/event/quic/ngx_event_quic_connection.h +++ b/src/event/quic/ngx_event_quic_connection.h @@ -19,6 +19,18 @@ typedef struct ngx_quic_connection_s ngx_quic_connection_t; +/* 0-RTT and 1-RTT data exist in the same packet number space, + * so we have 3 packet number spaces: + * + * 0 - Initial + * 1 - Handshake + * 2 - 0-RTT and 1-RTT + */ +#define ngx_quic_get_send_ctx(qc, level) \ + ((level) == ssl_encryption_initial) ? &((qc)->send_ctx[0]) \ + : (((level) == ssl_encryption_handshake) ? &((qc)->send_ctx[1]) \ + : &((qc)->send_ctx[2])) + typedef struct { ngx_queue_t queue; @@ -175,5 +187,6 @@ struct ngx_quic_connection_s { ngx_quic_frame_t *ngx_quic_alloc_frame(ngx_connection_t *c); void ngx_quic_queue_frame(ngx_quic_connection_t *qc, ngx_quic_frame_t *frame); void ngx_quic_close_connection(ngx_connection_t *c, ngx_int_t rc); +ngx_msec_t ngx_quic_pto(ngx_connection_t *c, ngx_quic_send_ctx_t *ctx); #endif