Welcome! Log In Create A New Profile

Advanced

[nginx] QUIC: removed path->limited flag.

Roman Arutyunyan
August 14, 2023 10:02AM
details: https://hg.nginx.org/nginx/rev/bba136612fe4
branches:
changeset: 9144:bba136612fe4
user: Roman Arutyunyan <arut@nginx.com>
date: Thu Jul 06 17:49:01 2023 +0400
description:
QUIC: removed path->limited flag.

Its value is the opposite of path->validated.

diffstat:

src/event/quic/ngx_event_quic.c | 1 -
src/event/quic/ngx_event_quic_connection.h | 1 -
src/event/quic/ngx_event_quic_migration.c | 4 ----
src/event/quic/ngx_event_quic_migration.h | 7 +++----
src/event/quic/ngx_event_quic_output.c | 4 ++--
src/event/quic/ngx_event_quic_socket.c | 1 -
6 files changed, 5 insertions(+), 13 deletions(-)

diffs (100 lines):

diff -r 48691bab4474 -r bba136612fe4 src/event/quic/ngx_event_quic.c
--- a/src/event/quic/ngx_event_quic.c Mon Aug 14 08:28:30 2023 +0400
+++ b/src/event/quic/ngx_event_quic.c Thu Jul 06 17:49:01 2023 +0400
@@ -1013,7 +1013,6 @@ ngx_quic_handle_payload(ngx_connection_t

if (!qc->path->validated) {
qc->path->validated = 1;
- qc->path->limited = 0;
ngx_quic_path_dbg(c, "in handshake", qc->path);
ngx_post_event(&qc->push, &ngx_posted_events);
}
diff -r 48691bab4474 -r bba136612fe4 src/event/quic/ngx_event_quic_connection.h
--- a/src/event/quic/ngx_event_quic_connection.h Mon Aug 14 08:28:30 2023 +0400
+++ b/src/event/quic/ngx_event_quic_connection.h Thu Jul 06 17:49:01 2023 +0400
@@ -101,7 +101,6 @@ struct ngx_quic_path_s {
u_char text[NGX_SOCKADDR_STRLEN];
unsigned validated:1;
unsigned validating:1;
- unsigned limited:1;
};


diff -r 48691bab4474 -r bba136612fe4 src/event/quic/ngx_event_quic_migration.c
--- a/src/event/quic/ngx_event_quic_migration.c Mon Aug 14 08:28:30 2023 +0400
+++ b/src/event/quic/ngx_event_quic_migration.c Thu Jul 06 17:49:01 2023 +0400
@@ -168,7 +168,6 @@ valid:

path->validated = 1;
path->validating = 0;
- path->limited = 0;

ngx_quic_set_path_timer(c);

@@ -208,8 +207,6 @@ ngx_quic_new_path(ngx_connection_t *c,
path->cid = cid;
cid->used = 1;

- path->limited = 1;
-
path->seqnum = qc->path_seqnum++;

path->sockaddr = &path->sa.sockaddr;
@@ -665,7 +662,6 @@ ngx_quic_path_validation_handler(ngx_eve

path->validated = 0;
path->validating = 0;
- path->limited = 1;


/* RFC 9000, 9.3.2. On-Path Address Spoofing
diff -r 48691bab4474 -r bba136612fe4 src/event/quic/ngx_event_quic_migration.h
--- a/src/event/quic/ngx_event_quic_migration.h Mon Aug 14 08:28:30 2023 +0400
+++ b/src/event/quic/ngx_event_quic_migration.h Thu Jul 06 17:49:01 2023 +0400
@@ -18,11 +18,10 @@
#define NGX_QUIC_PATH_BACKUP 2

#define ngx_quic_path_dbg(c, msg, path) \
- ngx_log_debug7(NGX_LOG_DEBUG_EVENT, c->log, 0, \
- "quic path seq:%uL %s sent:%O recvd:%O state:%s%s%s", \
+ ngx_log_debug6(NGX_LOG_DEBUG_EVENT, c->log, 0, \
+ "quic path seq:%uL %s sent:%O recvd:%O state:%s%s", \
path->seqnum, msg, path->sent, path->received, \
- path->limited ? "L" : "", path->validated ? "V": "N", \
- path->validating ? "R": "");
+ path->validated ? "V": "N", path->validating ? "R": "");

ngx_int_t ngx_quic_handle_path_challenge_frame(ngx_connection_t *c,
ngx_quic_header_t *pkt, ngx_quic_path_challenge_frame_t *f);
diff -r 48691bab4474 -r bba136612fe4 src/event/quic/ngx_event_quic_output.c
--- a/src/event/quic/ngx_event_quic_output.c Mon Aug 14 08:28:30 2023 +0400
+++ b/src/event/quic/ngx_event_quic_output.c Thu Jul 06 17:49:01 2023 +0400
@@ -281,7 +281,7 @@ ngx_quic_allow_segmentation(ngx_connecti
return 0;
}

- if (qc->path->limited) {
+ if (!qc->path->validated) {
/* don't even try to be faster on non-validated paths */
return 0;
}
@@ -1275,7 +1275,7 @@ ngx_quic_path_limit(ngx_connection_t *c,
{
off_t max;

- if (path->limited) {
+ if (!path->validated) {
max = path->received * 3;
max = (path->sent >= max) ? 0 : max - path->sent;

diff -r 48691bab4474 -r bba136612fe4 src/event/quic/ngx_event_quic_socket.c
--- a/src/event/quic/ngx_event_quic_socket.c Mon Aug 14 08:28:30 2023 +0400
+++ b/src/event/quic/ngx_event_quic_socket.c Thu Jul 06 17:49:01 2023 +0400
@@ -82,7 +82,6 @@ ngx_quic_open_sockets(ngx_connection_t *

if (pkt->validated) {
qc->path->validated = 1;
- qc->path->limited = 0;
}

ngx_quic_path_dbg(c, "set active", qc->path);
_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

[nginx] QUIC: removed path->limited flag.

Roman Arutyunyan 229 August 14, 2023 10:02AM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 173
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready