[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r32195 - gnunet/src/mesh
From: |
gnunet |
Subject: |
[GNUnet-SVN] r32195 - gnunet/src/mesh |
Date: |
Tue, 4 Feb 2014 13:36:33 +0100 |
Author: bartpolot
Date: 2014-02-04 13:36:33 +0100 (Tue, 04 Feb 2014)
New Revision: 32195
Modified:
gnunet/src/mesh/gnunet-service-mesh_peer.c
Log:
- merge hellos in case old hello is still valid
Modified: gnunet/src/mesh/gnunet-service-mesh_peer.c
===================================================================
--- gnunet/src/mesh/gnunet-service-mesh_peer.c 2014-02-04 12:36:33 UTC (rev
32194)
+++ gnunet/src/mesh/gnunet-service-mesh_peer.c 2014-02-04 12:36:33 UTC (rev
32195)
@@ -1842,7 +1842,24 @@
void
GMP_set_hello (struct MeshPeer *peer, const struct GNUNET_HELLO_Message *hello)
{
- peer->hello = hello;
+ struct GNUNET_TIME_Absolute expiration;
+ struct GNUNET_TIME_Relative remaining;
+
+ if (NULL == peer->hello)
+ {
+ peer->hello = hello;
+ return;
+ }
+
+ expiration = GNUNET_HELLO_get_last_expiration (peer->hello);
+ remaining = GNUNET_TIME_absolute_get_remaining (expiration);
+ if (0 == remaining.rel_value_us)
+ {
+ GNUNET_free (peer->hello);
+ peer->hello = hello;
+ }
+ else
+ peer->hello = GNUNET_HELLO_merge (peer->hello, hello);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r32195 - gnunet/src/mesh,
gnunet <=