]> git.kaiwu.me - nginx.git/commitdiff
Fixed CRYPTO offset generation.
authorSergey Kandaurov <pluknet@nginx.com>
Sun, 22 Mar 2020 09:15:54 +0000 (12:15 +0300)
committerSergey Kandaurov <pluknet@nginx.com>
Sun, 22 Mar 2020 09:15:54 +0000 (12:15 +0300)
src/event/ngx_event_quic.c

index f30bd6a976f7ca5ab628b24ef66f6cb54724f780..5709457552c339a5f96c2c343f3c436d27d6554f 100644 (file)
@@ -45,6 +45,9 @@ struct ngx_quic_connection_s {
 
     ngx_quic_streams_t                streams;
     ngx_uint_t                        max_data;
+
+#define SSL_ECRYPTION_LAST ((ssl_encryption_application) + 1)
+    uint64_t                          crypto_offset[SSL_ECRYPTION_LAST];
 };
 
 
@@ -228,9 +231,12 @@ ngx_quic_add_handshake_data(ngx_ssl_conn_t *ssl_conn,
 
     frame->level = level;
     frame->type = NGX_QUIC_FT_CRYPTO;
+    frame->u.crypto.offset += qc->crypto_offset[level];
     frame->u.crypto.len = len;
     frame->u.crypto.data = p;
 
+    qc->crypto_offset[level] += len;
+
     ngx_sprintf(frame->info, "crypto, generated by SSL len=%ui level=%d", len, level);
 
     ngx_quic_queue_frame(qc, frame);