[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet] 18/32: transport (quic): check for closed connections
From: |
gnunet |
Subject: |
[gnunet] 18/32: transport (quic): check for closed connections |
Date: |
Tue, 18 Jul 2023 17:16:07 +0200 |
This is an automated email from the git hooks/post-receive script.
marshall pushed a commit to branch master
in repository gnunet.
commit 58a9dd7f23ac778adc3ed3ce536b42885fed0240
Author: marshall <stmr@umich.edu>
AuthorDate: Mon Jun 19 13:26:01 2023 -0400
transport (quic): check for closed connections
---
src/transport/gnunet-communicator-quic.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/src/transport/gnunet-communicator-quic.c
b/src/transport/gnunet-communicator-quic.c
index 388da4fff..0f82204ec 100644
--- a/src/transport/gnunet-communicator-quic.c
+++ b/src/transport/gnunet-communicator-quic.c
@@ -207,6 +207,37 @@ create_conn (uint8_t *scid, size_t scid_len,
}
+/**
+ * Check for closed connections, print stats
+*/
+static void
+check_conn_closed (void *cls,
+ const struct GNUNET_HashCode *key,
+ void *value)
+{
+ struct quic_conn *conn = value;
+
+ if (quiche_conn_is_closed (conn))
+ {
+ quiche_stats stats;
+ quiche_path_stats path_stats;
+
+ quiche_conn_stats (conn, &stats);
+ quiche_conn_path_stats (conn, 0, &stats);
+
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "connection closed. quiche stats: sent=%zu, recv=%zu\n",
+ stats.sent, stats.recv);
+ GNUNET_CONTAINER_multihashmap_remove (conn_map, key, value);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "removed closed connection from connection map\n");
+
+ quiche_conn_free (conn->conn);
+ GNUNET_free (conn);
+ }
+}
+
+
/**
* Shutdown the UNIX communicator.
*
@@ -589,6 +620,7 @@ sock_read (void *cls)
/**
* Connection cleanup, check for closed connections, delete entries, print
stats
*/
+ GNUNET_CONTAINER_multihashmap_iterate (conn_map, &check_conn_closed, NULL);
// if (rcvd > sizeof(struct UDPRekey))
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [gnunet] 04/32: transport (quic): UDP listener skeleton, (continued)
- [gnunet] 04/32: transport (quic): UDP listener skeleton, gnunet, 2023/07/18
- [gnunet] 05/32: transport (quic): change configure files/add changes, gnunet, 2023/07/18
- [gnunet] 01/32: transport (QUIC): create starter file and update Makefile, gnunet, 2023/07/18
- [gnunet] 06/32: transport (quic): remove binary, add quic communicator to gitignore, gnunet, 2023/07/18
- [gnunet] 09/32: transport (quic): link quiche w/ quic communicator, gnunet, 2023/07/18
- [gnunet] 12/32: transport (quic): get recv info from incoming data, gnunet, 2023/07/18
- [gnunet] 11/32: transport (quic): conn object implement, gnunet, 2023/07/18
- [gnunet] 14/32: transport (quic): more logic for reading stream, gnunet, 2023/07/18
- [gnunet] 15/32: transport (quic): mint_token for generating tokens, gnunet, 2023/07/18
- [gnunet] 13/32: transport (quic): establish connection, gnunet, 2023/07/18
- [gnunet] 18/32: transport (quic): check for closed connections,
gnunet <=
- [gnunet] 27/32: transport (quic): Add some pointers, gnunet, 2023/07/18
- [gnunet] 17/32: transport (quic): create connection functionality, gnunet, 2023/07/18
- [gnunet] 16/32: transport (quic): mint tokens, gnunet, 2023/07/18
- [gnunet] 20/32: transport (quic): cleanup, create header object, gnunet, 2023/07/18
- [gnunet] 19/32: transport (quic): minor cleanup, remove commented code, gnunet, 2023/07/18
- [gnunet] 22/32: transport (quic): token validation check, gnunet, 2023/07/18
- [gnunet] 23/32: transport (quic): get random block for cid, gnunet, 2023/07/18
- [gnunet] 25/32: transport (quic): comm connect, gnunet, 2023/07/18
- [gnunet] 24/32: transport (quic): remove gen_streamid, gnunet, 2023/07/18
- [gnunet] 21/32: transport (quic): fix compiler warnings, gnunet, 2023/07/18