gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r27413 - gnunet/src/include


From: gnunet
Subject: [GNUnet-SVN] r27413 - gnunet/src/include
Date: Tue, 11 Jun 2013 15:22:50 +0200

Author: grothoff
Date: 2013-06-11 15:22:50 +0200 (Tue, 11 Jun 2013)
New Revision: 27413

Modified:
   gnunet/src/include/gnunet_multicast_service.h
Log:
-allow asynchronous answers to membership test

Modified: gnunet/src/include/gnunet_multicast_service.h
===================================================================
--- gnunet/src/include/gnunet_multicast_service.h       2013-06-11 13:14:16 UTC 
(rev 27412)
+++ gnunet/src/include/gnunet_multicast_service.h       2013-06-11 13:22:50 UTC 
(rev 27413)
@@ -299,19 +299,35 @@
 
 
 /**
+ * Handle to pass back for the answer of a membership test.
+ */
+struct GNUNET_MULTICAST_MembershipTestHandle;
+
+
+/**
+ * Call informing multicast about the decision taken for membership test.
+ *
+ * @param mth handle that was given for the query
+ * @param decision GNUNET_YES if peer was a member, GNUNET_NO if peer was not 
a member,
+ *         GNUNET_SYSERR if we cannot answer the membership test
+ */
+void
+GNUNET_MULTICAST_membership_test_answer (struct 
GNUNET_MULTICAST_MembershipTestHandle *mth,
+                                        int decision);
+
+
+/**
  * Method called to test if a member was in the group at a particular time.
  *
- * FIXME: maybe allow reply to be asynchronous
- *
  * @param cls closure
  * @param peer identity of the peer that we want to test
  * @param message_id message ID for which we want to do the test
- * @return GNUNET_YES if peer was a member, GNUNET_NO if peer was not a member,
- *         GNUNET_SYSERR if we cannot answer the membership test
+ * @param mth handle to give to 'GNUNET_MULTICAST_membership_test_answer'
  */
-typedef int (*GNUNET_MULTICAST_MembershipTestCallback)(void *cls,
-                                                      const struct 
GNUNET_PeerIdentity *peer,
-                                                      uint64_t message_id);
+typedef void (*GNUNET_MULTICAST_MembershipTestCallback)(void *cls,
+                                                       const struct 
GNUNET_PeerIdentity *peer,
+                                                       uint64_t message_id,
+                                                       struct 
GNUNET_MULTICAST_MembershipTestHandle *mth);
 
 
 /**




reply via email to

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