Mercurial > hg > nginx
comparison src/event/quic/ngx_event_quic_frames.h @ 8749:660c4a2f95f3 quic
QUIC: separate files for frames related processing.
author | Vladimir Homutov <vl@nginx.com> |
---|---|
date | Tue, 13 Apr 2021 14:38:46 +0300 |
parents | |
children | f52a2b77d406 |
comparison
equal
deleted
inserted
replaced
8748:e0cb1e58ca13 | 8749:660c4a2f95f3 |
---|---|
1 | |
2 /* | |
3 * Copyright (C) Nginx, Inc. | |
4 */ | |
5 | |
6 | |
7 #ifndef _NGX_EVENT_QUIC_FRAMES_H_INCLUDED_ | |
8 #define _NGX_EVENT_QUIC_FRAMES_H_INCLUDED_ | |
9 | |
10 | |
11 #include <ngx_config.h> | |
12 #include <ngx_core.h> | |
13 | |
14 | |
15 typedef ngx_int_t (*ngx_quic_frame_handler_pt)(ngx_connection_t *c, | |
16 ngx_quic_frame_t *frame, void *data); | |
17 | |
18 | |
19 ngx_quic_frame_t *ngx_quic_alloc_frame(ngx_connection_t *c); | |
20 void ngx_quic_free_frame(ngx_connection_t *c, ngx_quic_frame_t *frame); | |
21 void ngx_quic_free_frames(ngx_connection_t *c, ngx_queue_t *frames); | |
22 void ngx_quic_queue_frame(ngx_quic_connection_t *qc, ngx_quic_frame_t *frame); | |
23 ngx_int_t ngx_quic_split_frame(ngx_connection_t *c, ngx_quic_frame_t *f, | |
24 size_t len); | |
25 | |
26 ngx_chain_t *ngx_quic_alloc_buf(ngx_connection_t *c); | |
27 ngx_chain_t *ngx_quic_copy_buf(ngx_connection_t *c, u_char *data, | |
28 size_t len); | |
29 ngx_chain_t *ngx_quic_copy_chain(ngx_connection_t *c, ngx_chain_t *in, | |
30 size_t limit); | |
31 | |
32 ngx_int_t ngx_quic_handle_ordered_frame(ngx_connection_t *c, | |
33 ngx_quic_frames_stream_t *fs, ngx_quic_frame_t *frame, | |
34 ngx_quic_frame_handler_pt handler, void *data); | |
35 | |
36 #if (NGX_DEBUG) | |
37 void ngx_quic_log_frame(ngx_log_t *log, ngx_quic_frame_t *f, ngx_uint_t tx); | |
38 #else | |
39 #define ngx_quic_log_frame(log, f, tx) | |
40 #endif | |
41 | |
42 #endif /* _NGX_EVENT_QUIC_FRAMES_H_INCLUDED_ */ |