aboutsummaryrefslogtreecommitdiff
path: root/src/include/gnunet_multicast_service.h
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2013-06-11 13:22:50 +0000
committerChristian Grothoff <christian@grothoff.org>2013-06-11 13:22:50 +0000
commit8ee4ad79af4d0db83c5fd60027bb5f8f11e27ef3 (patch)
treeb82624eea661578ce0543caac596e4150d91b9dc /src/include/gnunet_multicast_service.h
parent8599c7df4dff7eddba77260634dd7b94f9ebe016 (diff)
downloadgnunet-8ee4ad79af4d0db83c5fd60027bb5f8f11e27ef3.tar.gz
gnunet-8ee4ad79af4d0db83c5fd60027bb5f8f11e27ef3.zip
-allow asynchronous answers to membership test
Diffstat (limited to 'src/include/gnunet_multicast_service.h')
-rw-r--r--src/include/gnunet_multicast_service.h30
1 files changed, 23 insertions, 7 deletions
diff --git a/src/include/gnunet_multicast_service.h b/src/include/gnunet_multicast_service.h
index a110799c4..9573f3e08 100644
--- a/src/include/gnunet_multicast_service.h
+++ b/src/include/gnunet_multicast_service.h
@@ -299,19 +299,35 @@ typedef void (*GNUNET_MULTICAST_MembershipChangeCallback)(void *cls,
299 299
300 300
301/** 301/**
302 * Method called to test if a member was in the group at a particular time. 302 * Handle to pass back for the answer of a membership test.
303 */
304struct GNUNET_MULTICAST_MembershipTestHandle;
305
306
307/**
308 * Call informing multicast about the decision taken for membership test.
303 * 309 *
304 * FIXME: maybe allow reply to be asynchronous 310 * @param mth handle that was given for the query
311 * @param decision GNUNET_YES if peer was a member, GNUNET_NO if peer was not a member,
312 * GNUNET_SYSERR if we cannot answer the membership test
313 */
314void
315GNUNET_MULTICAST_membership_test_answer (struct GNUNET_MULTICAST_MembershipTestHandle *mth,
316 int decision);
317
318
319/**
320 * Method called to test if a member was in the group at a particular time.
305 * 321 *
306 * @param cls closure 322 * @param cls closure
307 * @param peer identity of the peer that we want to test 323 * @param peer identity of the peer that we want to test
308 * @param message_id message ID for which we want to do the test 324 * @param message_id message ID for which we want to do the test
309 * @return GNUNET_YES if peer was a member, GNUNET_NO if peer was not a member, 325 * @param mth handle to give to 'GNUNET_MULTICAST_membership_test_answer'
310 * GNUNET_SYSERR if we cannot answer the membership test
311 */ 326 */
312typedef int (*GNUNET_MULTICAST_MembershipTestCallback)(void *cls, 327typedef void (*GNUNET_MULTICAST_MembershipTestCallback)(void *cls,
313 const struct GNUNET_PeerIdentity *peer, 328 const struct GNUNET_PeerIdentity *peer,
314 uint64_t message_id); 329 uint64_t message_id,
330 struct GNUNET_MULTICAST_MembershipTestHandle *mth);
315 331
316 332
317/** 333/**