From 9a34927cbc2a5d2113a9fea346de92a99465d94e Mon Sep 17 00:00:00 2001 From: Bart Polot Date: Fri, 27 Jul 2012 13:07:19 +0000 Subject: [PATCH] - dont send duplicate acks, allow null client --- src/mesh/gnunet-service-mesh.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/mesh/gnunet-service-mesh.c b/src/mesh/gnunet-service-mesh.c index 114dc8d6a..858b87bbd 100644 --- a/src/mesh/gnunet-service-mesh.c +++ b/src/mesh/gnunet-service-mesh.c @@ -1943,12 +1943,19 @@ send_client_tunnel_ack (struct MeshClient *c, struct MeshTunnel *t) struct GNUNET_MESH_LocalAck msg; uint32_t ack; + if (NULL == c) + return; + ack = tunnel_get_ack (t); + if (t->last_ack == ack) + return; + + t->last_ack = ack; msg.header.size = htons (sizeof (msg)); msg.header.type = htons (GNUNET_MESSAGE_TYPE_MESH_LOCAL_ACK); msg.tunnel_id = htonl (t->local_tid); - msg.max_pid = ack; + msg.max_pid = htonl (ack); GNUNET_SERVER_notification_context_unicast (nc, c->handle, &msg.header, GNUNET_NO); -- 2.25.1