gnunet-svn
[Top][All Lists]
Advanced

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

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


From: gnunet
Subject: [GNUnet-SVN] r35993 - gnunet/src/cadet
Date: Fri, 26 Jun 2015 04:03:22 +0200

Author: bartpolot
Date: 2015-06-26 04:03:22 +0200 (Fri, 26 Jun 2015)
New Revision: 35993

Modified:
   gnunet/src/cadet/gnunet-service-cadet_connection.c
Log:
- Fix #3846. When receiving a create request for an invalid path singal that 
register failed to avoid trying to unregister the connection on destroy.

Modified: gnunet/src/cadet/gnunet-service-cadet_connection.c
===================================================================
--- gnunet/src/cadet/gnunet-service-cadet_connection.c  2015-06-26 02:03:21 UTC 
(rev 35992)
+++ gnunet/src/cadet/gnunet-service-cadet_connection.c  2015-06-26 02:03:22 UTC 
(rev 35993)
@@ -1577,6 +1577,7 @@
 {
   struct CadetPeer *peer;
 
+  /* Either already unregistered or never got registered, it's ok either way. 
*/
   if (NULL == c->path)
     return;
 
@@ -2772,10 +2773,15 @@
   {
     if (0 == own_pos)
     {
-      path_invalidate (c->path);
+      /* We were the origin of this request, this means we have invalid
+       * info about the paths to reach the destination. We must invalidate
+       * the *original* path to avoid trying it again in the next minute.
+       */
+      path_invalidate (path);
       c->t = NULL;
-      c->path = NULL;
     }
+    path_destroy (c->path);
+    c->path = NULL;
     GCC_destroy (c);
     return NULL;
   }




reply via email to

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