From 67370e1b06a281cf45d9bf7d9019a2b86491d473 Mon Sep 17 00:00:00 2001 From: Gabor X Toth <*@tg-x.net> Date: Sun, 28 Jul 2013 19:57:04 +0000 Subject: [PATCH] multicast/psyc: join cb for members/slaves too --- src/include/gnunet_multicast_service.h | 6 ++++-- src/include/gnunet_psyc_service.h | 14 ++++++++------ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/include/gnunet_multicast_service.h b/src/include/gnunet_multicast_service.h index 46e6f824b..cc951495d 100644 --- a/src/include/gnunet_multicast_service.h +++ b/src/include/gnunet_multicast_service.h @@ -600,10 +600,11 @@ GNUNET_MULTICAST_origin_stop (struct GNUNET_MULTICAST_Origin *origin); * possible (lower IDs will be considered known and thus only * be replayed upon explicit request). * FIXME: needed? can be optional or moved to a separate function. + * @param join_cb Function called to approve / disapprove joining of a peer. + * @param test_cb Function multicast can use to test group membership. * @param replay_cb Function that can be called to replay messages * this peer already knows from this group; NULL if this * client is unable to support replay. - * @param test_cb Function multicast can use to test group membership. * @param message_cb Function to be called for all message fragments we * receive from the group, excluding those our @a replay_cb * already has. @@ -618,8 +619,9 @@ GNUNET_MULTICAST_member_join (const struct GNUNET_CONFIGURATION_Handle *cfg, const struct GNUNET_PeerIdentity *members, const struct GNUNET_MessageHeader *join_request, uint64_t max_known_fragment_id, - GNUNET_MULTICAST_ReplayCallback replay_cb, + GNUNET_MULTICAST_JoinCallback join_cb, GNUNET_MULITCAST_MembershipTestCallback test_cb, + GNUNET_MULITCAST_ReplayCallback replay_cb, GNUNET_MULTICAST_MessageCallback message_cb, void *cls); diff --git a/src/include/gnunet_psyc_service.h b/src/include/gnunet_psyc_service.h index fae52f6cd..399f2cad2 100644 --- a/src/include/gnunet_psyc_service.h +++ b/src/include/gnunet_psyc_service.h @@ -247,16 +247,16 @@ struct GNUNET_PSYC_Master; * one in the future. * @param policy Group policy specifying join and history restrictions. * Used to automate group management decisions. - * @param method_cb Function to invoke on messages received from members. + * @param method Function to invoke on messages received from members. * @param join_cb Function to invoke when a peer wants to join. - * @param cls Closure for the callbacks. + * @param cls Closure for @a method and @a join_cb. * @return Handle for the channel master, NULL on error. */ struct GNUNET_PSYC_Master * GNUNET_PSYC_master_start (const struct GNUNET_CONFIGURATION_Handle *cfg, const struct GNUNET_CRYPTO_EccPrivateKey *priv_key, enum GNUNET_MULTICAST_GroupPolicy policy, - GNUNET_PSYC_Method method_cb, + GNUNET_PSYC_Method method, GNUNET_PSYC_JoinCallback join_cb, void *cls); @@ -351,8 +351,9 @@ struct GNUNET_PSYC_Slave; * @param pub_key ECC key that identifies the channel we wish to join. * @param origin Peer identity of the origin. * @param method Function to invoke on messages received from the channel, - * typically at least contains functions for @e join and @e part. - * @param method_cls Closure for @a method. + * typically at least contains functions for @e join and @e part. + * @param join_cb Function to invoke when a peer wants to join. + * @param cls Closure for @a method_cb and @a join_cb. * @param method_name Method name for the join request. * @param env Environment containing transient variables for the request, or NULL. * @param data_size Number of bytes in @a data. @@ -364,7 +365,8 @@ GNUNET_PSYC_slave_join (const struct GNUNET_CONFIGURATION_Handle *cfg, const struct GNUNET_CRYPTO_EccPublicKey *pub_key, const struct GNUNET_PeerIdentity *origin, GNUNET_PSYC_Method method, - void *method_cls, + GNUNET_PSYC_JoinCallback join_cb, + void *cls, const char *method_name, const struct GNUNET_ENV_Environment *env, size_t data_size, -- 2.25.1