gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r37163 - gnunet/src/rps


From: gnunet
Subject: [GNUnet-SVN] r37163 - gnunet/src/rps
Date: Thu, 12 May 2016 10:58:20 +0200

Author: ch3
Date: 2016-05-12 10:58:20 +0200 (Thu, 12 May 2016)
New Revision: 37163

Modified:
   gnunet/src/rps/gnunet-service-rps.c
Log:
-rps: restructure service internals

Modified: gnunet/src/rps/gnunet-service-rps.c
===================================================================
--- gnunet/src/rps/gnunet-service-rps.c 2016-05-12 08:58:17 UTC (rev 37162)
+++ gnunet/src/rps/gnunet-service-rps.c 2016-05-12 08:58:20 UTC (rev 37163)
@@ -646,11 +646,13 @@
  * Insert PeerID in #view
  *
  * Called once we know a peer is live.
+ * Implements #PeerOp
  */
 static void
 insert_in_view (void *cls,
                const struct GNUNET_PeerIdentity *peer)
 {
+  GNUNET_assert (GNUNET_YES == Peers_check_peer_flag (peer, Peers_ONLINE));
   View_put (peer);
 }
 
@@ -657,6 +659,7 @@
 
 /**
  * Update sampler with given PeerID.
+ * Implements #PeerOp
  */
 static void
 insert_in_sampler (void *cls,
@@ -678,7 +681,24 @@
   }
 }
 
+/**
+ * @brief If @a peer was unknown, check liveliness and insert it in view and
+ *        sampler
+ *
+ * @param peer peer to insert
+ */
+static void
+got_peer (const struct GNUNET_PeerIdentity *peer)
+{
+  /* If we did not know this peer already, insert it into sampler and view */
+  if (GNUNET_YES == Peers_insert_peer_check_liveliness (peer))
+  {
+    Peers_schedule_operation (peer, insert_in_sampler);
+    Peers_schedule_operation (peer, insert_in_view);
+  }
+}
 
+
 /**
  * @brief Checks if there is a sending channel and if it is needed
  *
@@ -1117,11 +1137,7 @@
          i,
          GNUNET_i2s (&peers[i]));
 
-    if (GNUNET_YES == Peers_insert_peer_check_liveliness (&peers[i]))
-    {
-      Peers_schedule_operation (&peers[i], insert_in_sampler);
-      Peers_schedule_operation (&peers[i], insert_in_view);
-    }
+    got_peer (&peers[i]);
 
     //RPS_sampler_update (prot_sampler,   &peers[i]);
     //RPS_sampler_update (client_sampler, &peers[i]);
@@ -1995,9 +2011,7 @@
     LOG (GNUNET_ERROR_TYPE_DEBUG,
          "Got peer_id %s from cadet\n",
          GNUNET_i2s (peer));
-    Peers_insert_peer_check_liveliness (peer);
-    Peers_schedule_operation (peer, insert_in_sampler);
-    Peers_schedule_operation (peer, insert_in_view);
+    got_peer (peer);
   }
 }
 
@@ -2021,9 +2035,7 @@
     LOG (GNUNET_ERROR_TYPE_DEBUG,
          "Got peer_id %s from peerinfo\n",
          GNUNET_i2s (peer));
-    Peers_insert_peer_check_liveliness (peer);
-    Peers_schedule_operation (peer, insert_in_sampler);
-    Peers_schedule_operation (peer, insert_in_view);
+    got_peer (peer);
   }
 }
 




reply via email to

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