]> git.kaiwu.me - nginx.git/commit
Split transport and crypto parts into separate files.
authorVladimir Homutov <vl@nginx.com>
Mon, 16 Mar 2020 16:00:47 +0000 (19:00 +0300)
committerVladimir Homutov <vl@nginx.com>
Mon, 16 Mar 2020 16:00:47 +0000 (19:00 +0300)
commitd0ebfa4cb97dc212aac4cde740286bc4e4cde30e
tree2ff1d4e11e50da26c2c5e18662cf30c1bd67ae24
parent0d8984083b2296af349c412985ff8f4a0a1b7686
Split transport and crypto parts into separate files.

New files:
    src/event/ngx_event_quic_protection.h
    src/event/ngx_event_quic_protection.c

The protection.h header provides interface to the crypto part of the QUIC:

2 functions to initialize corresponding secrets:

ngx_quic_set_initial_secret()
ngx_quic_set_encryption_secret()

and 2 functions to deal with packet processing:

ngx_quic_encrypt()
ngx_quic_decrypt()

Also, structures representing secrets are defined there.

All functions require SSL connection and a pool, only crypto operations
inside, no access to nginx connections or events.

Currently pool->log is used for the logging (instead of original c->log).
auto/modules
src/core/ngx_core.h
src/event/ngx_event_quic.c
src/event/ngx_event_quic.h
src/event/ngx_event_quic_protection.c [new file with mode: 0644]
src/event/ngx_event_quic_protection.h [new file with mode: 0644]