Mercurial > hg > nginx
comparison src/event/quic/ngx_event_quic_ssl.c @ 8916:ff473a6f656c quic
QUIC: ngx_quic_send_alert() callback moved to its place.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Tue, 30 Nov 2021 14:30:59 +0300 |
parents | 4b2d259bdadd |
children | 3341e4089c6c |
comparison
equal
deleted
inserted
replaced
8915:095f8a3e143d | 8916:ff473a6f656c |
---|---|
32 #endif | 32 #endif |
33 | 33 |
34 static int ngx_quic_add_handshake_data(ngx_ssl_conn_t *ssl_conn, | 34 static int ngx_quic_add_handshake_data(ngx_ssl_conn_t *ssl_conn, |
35 enum ssl_encryption_level_t level, const uint8_t *data, size_t len); | 35 enum ssl_encryption_level_t level, const uint8_t *data, size_t len); |
36 static int ngx_quic_flush_flight(ngx_ssl_conn_t *ssl_conn); | 36 static int ngx_quic_flush_flight(ngx_ssl_conn_t *ssl_conn); |
37 static int ngx_quic_send_alert(ngx_ssl_conn_t *ssl_conn, | |
38 enum ssl_encryption_level_t level, uint8_t alert); | |
37 static ngx_int_t ngx_quic_crypto_input(ngx_connection_t *c, ngx_chain_t *data); | 39 static ngx_int_t ngx_quic_crypto_input(ngx_connection_t *c, ngx_chain_t *data); |
38 | 40 |
39 | 41 |
40 static SSL_QUIC_METHOD quic_method = { | 42 static SSL_QUIC_METHOD quic_method = { |
41 #if BORINGSSL_API_VERSION >= 10 | 43 #if BORINGSSL_API_VERSION >= 10 |
285 #endif | 287 #endif |
286 return 1; | 288 return 1; |
287 } | 289 } |
288 | 290 |
289 | 291 |
292 static int | |
293 ngx_quic_send_alert(ngx_ssl_conn_t *ssl_conn, enum ssl_encryption_level_t level, | |
294 uint8_t alert) | |
295 { | |
296 ngx_connection_t *c; | |
297 ngx_quic_connection_t *qc; | |
298 | |
299 c = ngx_ssl_get_connection((ngx_ssl_conn_t *) ssl_conn); | |
300 | |
301 ngx_log_debug2(NGX_LOG_DEBUG_EVENT, c->log, 0, | |
302 "quic ngx_quic_send_alert() level:%s alert:%d", | |
303 ngx_quic_level_name(level), (int) alert); | |
304 | |
305 /* already closed on regular shutdown */ | |
306 | |
307 qc = ngx_quic_get_connection(c); | |
308 if (qc == NULL) { | |
309 return 1; | |
310 } | |
311 | |
312 qc->error = NGX_QUIC_ERR_CRYPTO(alert); | |
313 | |
314 return 1; | |
315 } | |
316 | |
317 | |
290 ngx_int_t | 318 ngx_int_t |
291 ngx_quic_handle_crypto_frame(ngx_connection_t *c, ngx_quic_header_t *pkt, | 319 ngx_quic_handle_crypto_frame(ngx_connection_t *c, ngx_quic_header_t *pkt, |
292 ngx_quic_frame_t *frame) | 320 ngx_quic_frame_t *frame) |
293 { | 321 { |
294 size_t len; | 322 size_t len; |