From 468641cbc30c67bef830d92b7a84044c6a09378e Mon Sep 17 00:00:00 2001 From: Vladimir Homutov Date: Wed, 1 Dec 2021 18:33:29 +0300 Subject: [PATCH] QUIC: removed excessive check. The c->udp->dgram may be NULL only if the quic connection was just created: the ngx_event_udp_recvmsg() passes information about datagrams to existing connections by providing information in c->udp. If case of a new connection, c->udp is allocated by the QUIC code during creation of quic connection (it uses c->sockaddr to initialize qsock->path). Thus the check for qsock->path is excessive and can be read wrong, assuming that other options possible, leading to warnings from clang static analyzer. --- src/event/quic/ngx_event_quic_migration.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/event/quic/ngx_event_quic_migration.c b/src/event/quic/ngx_event_quic_migration.c index 887824573..c3758ad4f 100644 --- a/src/event/quic/ngx_event_quic_migration.c +++ b/src/event/quic/ngx_event_quic_migration.c @@ -289,7 +289,7 @@ ngx_quic_update_paths(ngx_connection_t *c, ngx_quic_header_t *pkt) qsock = ngx_quic_get_socket(c); - if (c->udp->dgram == NULL && qsock->path) { + if (c->udp->dgram == NULL) { /* 1st ever packet in connection, path already exists */ path = qsock->path; goto update;