X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fdv%2Fdv.h;h=10b531cedc0e9efcae5a5aeeccd2e7698bd20653;hb=cb3c882dbb05a797728dfd8b5983ade5a8999eac;hp=f80ecd4ed9ddad8d10fedfe9dd42ca36bce16033;hpb=5f9efe3ff20656b7900fc0b503f3e0cbe75eb20a;p=oweals%2Fgnunet.git diff --git a/src/dv/dv.h b/src/dv/dv.h index f80ecd4ed..10b531ced 100644 --- a/src/dv/dv.h +++ b/src/dv/dv.h @@ -4,7 +4,7 @@ GNUnet is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 2, or (at your + by the Free Software Foundation; either version 3, or (at your option) any later version. GNUnet is distributed in the hope that it will be useful, but @@ -29,10 +29,12 @@ #include "gnunet_common.h" #define DEBUG_DV_GOSSIP GNUNET_NO -#define DEBUG_DV_GOSSIP_SEND GNUNET_YES -#define DEBUG_DV_GOSSIP_RECEIPT GNUNET_YES -#define DEBUG_DV GNUNET_YES -#define DEBUG_DV_API GNUNET_YES +#define DEBUG_DV_GOSSIP_SEND GNUNET_NO +#define DEBUG_DV_GOSSIP_RECEIPT GNUNET_NO +#define DEBUG_DV_MESSAGES GNUNET_NO +#define DEBUG_DV GNUNET_NO +#define DEBUG_DV_PEER_NUMBERS GNUNET_NO +#define DEBUG_MESSAGE_DROP GNUNET_NO typedef void (*GNUNET_DV_MessageReceivedHandler) (void *cls, struct GNUNET_PeerIdentity *sender, @@ -44,7 +46,7 @@ typedef void (*GNUNET_DV_MessageReceivedHandler) (void *cls, /** * DV Message, contains a message that was received - * via DV for this peer! + * via DV for this peer! Internal. * * Sender address is copied to the end of this struct, * followed by the actual message received. @@ -62,7 +64,7 @@ struct GNUNET_DV_MessageReceived struct GNUNET_PeerIdentity sender; /** - * The message that was sent + * The length of the message that was sent (appended to this end of struct) */ uint32_t msg_len; @@ -71,16 +73,12 @@ struct GNUNET_DV_MessageReceived */ uint32_t distance; - /** - * Length of the sender address, appended to end of this message - */ - uint32_t sender_address_len; - }; /** * DV Message, indicates that we have learned of a new DV level peer. + * Internal. * * Sender address is copied to the end of this struct. */ @@ -114,7 +112,8 @@ struct GNUNET_DV_ConnectMessage }; /** - * Message to return result from a send attempt + * Message to return result from a send attempt. + * Internal. */ struct GNUNET_DV_SendResultMessage { @@ -136,7 +135,8 @@ struct GNUNET_DV_SendResultMessage }; /** - * Message to send a message over DV via a specific peer + * Message to send a message over DV via a specific peer. + * Internal. */ struct GNUNET_DV_SendMessage { @@ -150,11 +150,6 @@ struct GNUNET_DV_SendMessage */ struct GNUNET_PeerIdentity target; - /** - * The size of the msgbuf - */ - uint32_t msgbuf_size; - /** * Message priority */ @@ -198,7 +193,7 @@ typedef struct /** * Cost from received from node to neighbor node, takes distance into account */ - unsigned int cost GNUNET_PACKED; + uint32_t cost GNUNET_PACKED; /** * Identity of neighbor we learned information about @@ -224,19 +219,25 @@ typedef struct { struct GNUNET_MessageHeader header; + /** + * Unique ID for this message. Will be zero unless + * message tracking is desired. + */ + uint32_t uid GNUNET_PACKED; + /** * Identity of peer that ultimately sent the message. * Should be looked up in the set of 'neighbor_id's of * the referring peer. */ - unsigned int sender GNUNET_PACKED; + uint32_t sender GNUNET_PACKED; /** * Identity of neighbor this message is going to. Should * be looked up in the set of our own identifiers for * neighbors! */ - unsigned int recipient GNUNET_PACKED; + uint32_t recipient GNUNET_PACKED; } p2p_dv_MESSAGE_Data; @@ -257,9 +258,15 @@ typedef struct struct GNUNET_DV_Handle * -GNUNET_DV_connect (struct GNUNET_SCHEDULER_Handle *sched, - const struct GNUNET_CONFIGURATION_Handle *cfg, +GNUNET_DV_connect (const struct GNUNET_CONFIGURATION_Handle *cfg, GNUNET_DV_MessageReceivedHandler receive_handler, void *receive_handler_cls); +/** + * Disconnect from the DV service + * + * @param handle the current handle to the service to disconnect + */ +void GNUNET_DV_disconnect(struct GNUNET_DV_Handle *handle); + #endif