annotate src/event/quic/ngx_event_quic_migration.c @ 8747:c8bda5e1e662 quic

QUIC: headers cleanup. The "ngx_event_quic.h" header file now contains only public definitions, used by modules. All internal definitions are moved into the "ngx_event_quic_connection.h" header file.
author Vladimir Homutov <vl@nginx.com>
date Wed, 14 Apr 2021 14:47:37 +0300
parents 76f476ce4d31
children 4117aa7fa38e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8737
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
1
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
2 /*
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
3 * Copyright (C) Nginx, Inc.
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
4 */
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
5
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
6
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
7 #include <ngx_config.h>
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
8 #include <ngx_core.h>
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
9 #include <ngx_event.h>
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
10 #include <ngx_event_quic_connection.h>
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
11
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
12
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
13 ngx_int_t
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
14 ngx_quic_handle_path_challenge_frame(ngx_connection_t *c,
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
15 ngx_quic_header_t *pkt, ngx_quic_path_challenge_frame_t *f)
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
16 {
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
17 ngx_quic_frame_t *frame;
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
18 ngx_quic_connection_t *qc;
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
19
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
20 qc = ngx_quic_get_connection(c);
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
21
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
22 frame = ngx_quic_alloc_frame(c);
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
23 if (frame == NULL) {
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
24 return NGX_ERROR;
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
25 }
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
26
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
27 frame->level = pkt->level;
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
28 frame->type = NGX_QUIC_FT_PATH_RESPONSE;
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
29 frame->u.path_response = *f;
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
30
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
31 ngx_quic_queue_frame(qc, frame);
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
32
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
33 return NGX_OK;
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
34 }
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
35
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
36
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
37 ngx_int_t
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
38 ngx_quic_handle_path_response_frame(ngx_connection_t *c,
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
39 ngx_quic_header_t *pkt, ngx_quic_path_challenge_frame_t *f)
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
40 {
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
41 /* TODO */
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
42 return NGX_OK;
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
43 }
76f476ce4d31 QUIC: distinct files for connection migration.
Vladimir Homutov <vl@nginx.com>
parents:
diff changeset
44