uint32_t flags GNUNET_PACKED;
/**
- * Sending slave's public key. NULL if the message is from the master, or when
- * transmitting a message.
+ * Sending slave's public key.
+ * NULL if the message is from the master, or when transmitting a message.
*/
- struct GNUNET_CRYPTO_EccPublicSignKey slave_key;
+ struct GNUNET_CRYPTO_EddsaPublicKey slave_key;
/* Followed by NUL-terminated method name. */
};
struct GNUNET_PSYC_MessageData
{
/**
- * Type: GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_MODIFIER
+ * Type: GNUNET_MESSAGE_TYPE_PSYC_MESSAGE_DATA
*/
struct GNUNET_MessageHeader header;
*/
typedef int
(*GNUNET_PSYC_Method) (void *cls,
- const struct GNUNET_CRYPTO_EccPublicSignKey *slave_key,
+ const struct GNUNET_CRYPTO_EddsaPublicKey *slave_key,
uint64_t message_id,
const char *method_name,
size_t modifier_count,
*/
typedef int
(*GNUNET_PSYC_JoinCallback) (void *cls,
- const struct GNUNET_CRYPTO_EccPublicSignKey
+ const struct GNUNET_CRYPTO_EddsaPublicKey
*slave_key,
const char *method_name,
size_t variable_count,
void
GNUNET_PSYC_join_decision (struct GNUNET_PSYC_JoinHandle *jh,
int is_admitted,
- unsigned int relay_count,
+ uint32_t relay_count,
const struct GNUNET_PeerIdentity *relays,
const char *method_name,
const struct GNUNET_ENV_Environment *env,
* Used to automate join decisions.
* @param method Function to invoke on messages received from slaves.
* @param join_cb Function to invoke when a peer wants to join.
- * @param start_cb Function to invoke after the channel master started.
+ * @param master_started_cb Function to invoke after the channel master started.
* @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 *channel_key,
+ const struct GNUNET_CRYPTO_EddsaPrivateKey *channel_key,
enum GNUNET_PSYC_Policy policy,
GNUNET_PSYC_Method method,
GNUNET_PSYC_JoinCallback join_cb,
- GNUNET_PSYC_MasterStartCallback start_cb,
+ GNUNET_PSYC_MasterStartCallback master_started_cb,
void *cls);
* as relays and used to join the group at.
* @param method Function to invoke on messages received from the channel,
* 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 join_cb function invoked once we have joined with the current
+ * message ID of the channel
+ * @param slave_joined_cb Function to invoke when a peer wants to join.
+ * @param cls Closure for @a method_cb and @a slave_joined_cb.
* @param method_name Method name for the join request.
* @param env Environment containing transient variables for the request, or NULL.
* @param data Payload for the join message.
*/
struct GNUNET_PSYC_Slave *
GNUNET_PSYC_slave_join (const struct GNUNET_CONFIGURATION_Handle *cfg,
- const struct GNUNET_CRYPTO_EccPublicSignKey *channel_key,
- const struct GNUNET_CRYPTO_EccPrivateKey *slave_key,
+ const struct GNUNET_CRYPTO_EddsaPublicKey *channel_key,
+ const struct GNUNET_CRYPTO_EddsaPrivateKey *slave_key,
const struct GNUNET_PeerIdentity *origin,
- size_t relay_count,
+ uint32_t relay_count,
const struct GNUNET_PeerIdentity *relays,
GNUNET_PSYC_Method method,
GNUNET_PSYC_JoinCallback join_cb,
const char *method_name,
const struct GNUNET_ENV_Environment *env,
const void *data,
- size_t data_size);
+ uint16_t data_size);
/**
* Part a PSYC channel.
*
* Will terminate the connection to the PSYC service. Polite clients should
- * first explicitly send a @e part request (via GNUNET_PSYC_slave_transmit()).
+ * first explicitly send a part request (via GNUNET_PSYC_slave_transmit()).
*
* @param slave Slave handle.
*/
*/
void
GNUNET_PSYC_channel_slave_add (struct GNUNET_PSYC_Channel *channel,
- const struct GNUNET_CRYPTO_EccPublicSignKey
- *slave_key,
+ const struct GNUNET_CRYPTO_EddsaPublicKey *slave_key,
uint64_t announced_at,
uint64_t effective_since);
*/
void
GNUNET_PSYC_channel_slave_remove (struct GNUNET_PSYC_Channel *channel,
- const struct GNUNET_CRYPTO_EccPublicSignKey
+ const struct GNUNET_CRYPTO_EddsaPublicKey
*slave_key,
uint64_t announced_at);