summaryrefslogtreecommitdiff
path: root/src/transport/gnunet-service-transport_manipulation.c
diff options
context:
space:
mode:
authorMatthias Wachs <wachs@net.in.tum.de>2013-04-03 14:18:39 +0000
committerMatthias Wachs <wachs@net.in.tum.de>2013-04-03 14:18:39 +0000
commitc2aa1e73ecc27f7a0d7eb4f119f3f2ea16542df2 (patch)
treeed305c2bc552b87f400cadb13481cee5afe64343 /src/transport/gnunet-service-transport_manipulation.c
parente82ddb1df77b55906949f158745866133e835acf (diff)
docu
Diffstat (limited to 'src/transport/gnunet-service-transport_manipulation.c')
-rw-r--r--src/transport/gnunet-service-transport_manipulation.c55
1 files changed, 54 insertions, 1 deletions
diff --git a/src/transport/gnunet-service-transport_manipulation.c b/src/transport/gnunet-service-transport_manipulation.c
index 5c26a8038..4543add00 100644
--- a/src/transport/gnunet-service-transport_manipulation.c
+++ b/src/transport/gnunet-service-transport_manipulation.c
@@ -87,14 +87,49 @@ struct TM_Peer;
*/
struct DelayQueueEntry
{
+ /**
+ * Next in DLL
+ */
struct DelayQueueEntry *prev;
+
+ /**
+ * Previous in DLL
+ */
struct DelayQueueEntry *next;
+
+ /**
+ * Peer this entry is belonging to
+ */
struct TM_Peer *tmp;
+
+ /**
+ * Absolute time when to send
+ */
struct GNUNET_TIME_Absolute sent_at;
+
+ /**
+ * The message
+ */
void *msg;
+
+ /**
+ * The message size
+ */
size_t msg_size;
+
+ /**
+ * Message timeout
+ */
struct GNUNET_TIME_Relative timeout;
+
+ /**
+ * Transports send continuation
+ */
GST_NeighbourSendContinuation cont;
+
+ /**
+ * Transports send continuation cls
+ */
void *cont_cls;
};
@@ -103,15 +138,33 @@ struct DelayQueueEntry
*/
struct TM_Peer
{
+ /**
+ * Peer ID
+ */
struct GNUNET_PeerIdentity peer;
+
+ /**
+ * Peer specific manipulation metrics
+ */
uint32_t metrics [TM_BOTH][GNUNET_ATS_QualityPropertiesCount];
+
+ /**
+ * Task to schedule delayed sendding
+ */
GNUNET_SCHEDULER_TaskIdentifier send_delay_task;
+
+ /**
+ * Send queue DLL head
+ */
struct DelayQueueEntry *send_head;
+
+ /**
+ * Send queue DLL tail
+ */
struct DelayQueueEntry *send_tail;
};
-
static void
set_delay(struct TM_Peer *tmp, struct GNUNET_PeerIdentity *peer, int direction, uint32_t value)
{