summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlexander Barton <alex@barton.de>2020-05-03 03:04:29 +0200
committerAlexander Barton <alex@barton.de>2020-05-03 03:15:38 +0200
commit79a917f954bef8089967786bd3597a6e5ff5c336 (patch)
treea106997ea976a3fa8ee76da1772030d67aa253e3
parent42e8654d7b04197eb90ce1ccd8a055ffb6309c3d (diff)
downloadngircd-79a917f954bef8089967786bd3597a6e5ff5c336.tar.gz
ngircd-79a917f954bef8089967786bd3597a6e5ff5c336.zip
Set the "last data" time to "last ping" time when updating the latter
This is required because the PING can be received quite a bit earlier
than it is actually handled, for example during "server burst" or other
heavy operations:
So the times won't match and PING-PONG logic would become garbled,
because we test for "last ping > last data" to determine if a PING
already was sent or not.
-rw-r--r--src/ngircd/conn-func.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ngircd/conn-func.c b/src/ngircd/conn-func.c
index 72d38b86..4a2d32d6 100644
--- a/src/ngircd/conn-func.c
+++ b/src/ngircd/conn-func.c
@@ -51,7 +51,7 @@ GLOBAL void
 Conn_UpdatePing(CONN_ID Idx)
 {
 	assert(Idx > NONE);
-	My_Connections[Idx].lastping = time(NULL);
+	My_Connections[Idx].lastping = My_Connections[Idx].lastdata = time(NULL);
 }
 
 /*