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;