[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r29062 - in gnunet/src: consensus include set
From: |
gnunet |
Subject: |
[GNUnet-SVN] r29062 - in gnunet/src: consensus include set |
Date: |
Fri, 6 Sep 2013 13:37:39 +0200 |
Author: dold
Date: 2013-09-06 13:37:39 +0200 (Fri, 06 Sep 2013)
New Revision: 29062
Modified:
gnunet/src/consensus/consensus_api.c
gnunet/src/consensus/gnunet-service-consensus.c
gnunet/src/consensus/test_consensus_api.c
gnunet/src/include/gnunet_consensus_service.h
gnunet/src/set/test_set_api.c
Log:
- initialize set type in test case
- handle 1-peer consensus correcly
- don't store peers in consensus api
- updated consensus test case
Modified: gnunet/src/consensus/consensus_api.c
===================================================================
--- gnunet/src/consensus/consensus_api.c 2013-09-06 11:32:51 UTC (rev
29061)
+++ gnunet/src/consensus/consensus_api.c 2013-09-06 11:37:39 UTC (rev
29062)
@@ -65,16 +65,6 @@
struct GNUNET_HashCode session_id;
/**
- * Number of peers in the consensus. Optionally includes the local peer.
- */
- int num_peers;
-
- /**
- * Peer identities of peers participating in the consensus, includes the
local peer.
- */
- struct GNUNET_PeerIdentity **peers;
-
- /**
* GNUNES_YES iff the join message has been sent to the service.
*/
int joined;
@@ -194,15 +184,7 @@
consensus->cfg = cfg;
consensus->new_element_cb = new_element_cb;
consensus->new_element_cls = new_element_cls;
- consensus->num_peers = num_peers;
consensus->session_id = *session_id;
-
- if (0 == num_peers)
- consensus->peers = NULL;
- else if (num_peers > 0)
- consensus->peers =
- GNUNET_memdup (peers, num_peers * sizeof (struct GNUNET_PeerIdentity));
-
consensus->client = GNUNET_CLIENT_connect ("consensus", cfg);
consensus->mq = GNUNET_MQ_queue_for_connection_client (consensus->client,
mq_handlers, NULL,
consensus);
@@ -214,10 +196,10 @@
GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_JOIN);
join_msg->session_id = consensus->session_id;
- join_msg->num_peers = htonl (consensus->num_peers);
+ join_msg->num_peers = htonl (num_peers);
memcpy(&join_msg[1],
- consensus->peers,
- consensus->num_peers * sizeof (struct GNUNET_PeerIdentity));
+ peers,
+ num_peers * sizeof (struct GNUNET_PeerIdentity));
GNUNET_MQ_send (consensus->mq, ev);
return consensus;
@@ -318,8 +300,6 @@
GNUNET_CLIENT_disconnect (consensus->client);
consensus->client = NULL;
}
- if (NULL != consensus->peers)
- GNUNET_free (consensus->peers);
GNUNET_free (consensus);
}
Modified: gnunet/src/consensus/gnunet-service-consensus.c
===================================================================
--- gnunet/src/consensus/gnunet-service-consensus.c 2013-09-06 11:32:51 UTC
(rev 29061)
+++ gnunet/src/consensus/gnunet-service-consensus.c 2013-09-06 11:37:39 UTC
(rev 29062)
@@ -1187,8 +1187,8 @@
}
if (session->num_peers <= 1)
{
- /* FIXME: what to do here? */
- //send_client_conclude_done (session);
+ session->current_round = CONSENSUS_ROUND_FINISH;
+ GNUNET_SET_iterate (session->element_set, send_to_client_iter, session);
}
else
{
Modified: gnunet/src/consensus/test_consensus_api.c
===================================================================
--- gnunet/src/consensus/test_consensus_api.c 2013-09-06 11:32:51 UTC (rev
29061)
+++ gnunet/src/consensus/test_consensus_api.c 2013-09-06 11:37:39 UTC (rev
29062)
@@ -32,26 +32,23 @@
static struct GNUNET_HashCode session_id;
+static unsigned int elements_received;
-static int
-conclude_done (void *cls, const struct GNUNET_CONSENSUS_Group *group)
+
+static void
+conclude_done (void *cls)
{
- if (NULL == group)
- {
- GNUNET_log (GNUNET_ERROR_TYPE_INFO, "conclude over\n");
- GNUNET_SCHEDULER_shutdown ();
- return GNUNET_NO;
- }
- GNUNET_log (GNUNET_ERROR_TYPE_INFO, "concluded\n");
- return GNUNET_YES;
+ GNUNET_log (GNUNET_ERROR_TYPE_INFO, "conclude over\n");
+ if (2 != elements_received)
+ GNUNET_abort ();
+ GNUNET_SCHEDULER_shutdown ();
}
-static int
+static void
on_new_element (void *cls,
- struct GNUNET_CONSENSUS_Element *element)
+ const struct GNUNET_SET_Element *element)
{
- GNUNET_assert (0);
- return GNUNET_YES;
+ elements_received++;
}
static void
@@ -62,7 +59,7 @@
GNUNET_assert (GNUNET_NO == called);
called = GNUNET_YES;
GNUNET_log (GNUNET_ERROR_TYPE_INFO, "insert done\n");
- GNUNET_CONSENSUS_conclude (consensus, GNUNET_TIME_UNIT_SECONDS, 0,
&conclude_done, NULL);
+ GNUNET_CONSENSUS_conclude (consensus, GNUNET_TIME_UNIT_SECONDS,
&conclude_done, NULL);
}
@@ -91,8 +88,8 @@
{
char *str = "foo";
- struct GNUNET_CONSENSUS_Element el1 = {"foo", 4, 0};
- struct GNUNET_CONSENSUS_Element el2 = {"bar", 4, 0};
+ struct GNUNET_SET_Element el1 = {4, 0, "foo"};
+ struct GNUNET_SET_Element el2 = {5, 0, "quux"};
GNUNET_log_setup ("test_consensus_api",
"INFO",
Modified: gnunet/src/include/gnunet_consensus_service.h
===================================================================
--- gnunet/src/include/gnunet_consensus_service.h 2013-09-06 11:32:51 UTC
(rev 29061)
+++ gnunet/src/include/gnunet_consensus_service.h 2013-09-06 11:37:39 UTC
(rev 29062)
@@ -52,7 +52,7 @@
* @param element new element, NULL on error
*/
typedef void (*GNUNET_CONSENSUS_ElementCallback) (void *cls,
- const struct
GNUNET_SET_Element *element);
+ const struct
GNUNET_SET_Element *element);
Modified: gnunet/src/set/test_set_api.c
===================================================================
--- gnunet/src/set/test_set_api.c 2013-09-06 11:32:51 UTC (rev 29061)
+++ gnunet/src/set/test_set_api.c 2013-09-06 11:37:39 UTC (rev 29062)
@@ -136,9 +136,10 @@
{
struct GNUNET_SET_Element element;
-
GNUNET_log (GNUNET_ERROR_TYPE_INFO, "initializing set 2\n");
+ element.type = 0;
+
element.data = "hello";
element.size = strlen(element.data);
GNUNET_SET_add_element (set2, &element, NULL, NULL);
@@ -159,6 +160,8 @@
{
struct GNUNET_SET_Element element;
+ element.type = 0;
+
element.data = "hello";
element.size = strlen(element.data);
GNUNET_SET_add_element (set1, &element, NULL, NULL);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r29062 - in gnunet/src: consensus include set,
gnunet <=