gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r33691 - gnunet/src/cadet


From: gnunet
Subject: [GNUnet-SVN] r33691 - gnunet/src/cadet
Date: Tue, 17 Jun 2014 14:13:32 +0200

Author: bartpolot
Date: 2014-06-17 14:13:32 +0200 (Tue, 17 Jun 2014)
New Revision: 33691

Modified:
   gnunet/src/cadet/gnunet-service-cadet_tunnel.c
Log:
- only create keys on new ephemeral info

Modified: gnunet/src/cadet/gnunet-service-cadet_tunnel.c
===================================================================
--- gnunet/src/cadet/gnunet-service-cadet_tunnel.c      2014-06-17 12:13:31 UTC 
(rev 33690)
+++ gnunet/src/cadet/gnunet-service-cadet_tunnel.c      2014-06-17 12:13:32 UTC 
(rev 33691)
@@ -400,7 +400,7 @@
   int ready;
 
   GCT_debug (t, GNUNET_ERROR_TYPE_DEBUG);
-  ready = (CADET_TUNNEL3_READY == t->cstate && CADET_TUNNEL3_KEY_OK == 
t->estate);
+  ready = CADET_TUNNEL3_READY == t->cstate && CADET_TUNNEL3_KEY_OK == 
t->estate;
   ready = ready || GCT_is_loopback (t);
   return ready;
 }
@@ -1704,8 +1704,12 @@
     t->kx_ctx->challenge =
         GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_NONCE, UINT32_MAX);
   }
-  t->peers_ephemeral_key = msg->ephemeral_key;
-  create_keys (t);
+  if (0 != memcmp (&t->peers_ephemeral_key, &msg->ephemeral_key,
+                   sizeof (msg->ephemeral_key)))
+  {
+    t->peers_ephemeral_key = msg->ephemeral_key;
+    create_keys (t);
+  }
   if (CADET_TUNNEL3_KEY_SENT == t->estate)
   {
     LOG (GNUNET_ERROR_TYPE_DEBUG, "  our key was sent, sending ping\n");




reply via email to

[Prev in Thread] Current Thread [Next in Thread]