view src/event/quic/ngx_event_quic_ssl.h @ 8441:81d491f0dc8c quic

QUIC: unroll and inline ngx_quic_varint_len()/ngx_quic_build_int(). According to profiling, those two are among most frequently called, so inlining is generally useful, and unrolling should help with it. Further, this fixes undefined behaviour seen with invalid values. Inspired by Yu Liu.
author Sergey Kandaurov <pluknet@nginx.com>
date Sat, 22 May 2021 18:40:45 +0300
parents 46161c610919
children b3f6ad181df4
line wrap: on
line source


/*
 * Copyright (C) Nginx, Inc.
 */


#ifndef _NGX_EVENT_QUIC_SSL_H_INCLUDED_
#define _NGX_EVENT_QUIC_SSL_H_INCLUDED_


#include <ngx_config.h>
#include <ngx_core.h>

ngx_int_t ngx_quic_init_connection(ngx_connection_t *c);

ngx_int_t ngx_quic_handle_crypto_frame(ngx_connection_t *c,
    ngx_quic_header_t *pkt, ngx_quic_frame_t *frame);

ngx_int_t ngx_quic_crypto_input(ngx_connection_t *c,
    ngx_quic_frame_t *frame, void *data);

#endif /* _NGX_EVENT_QUIC_SSL_H_INCLUDED_ */