This file is part of GNUnet.
Copyright (C) 2010-2013 GNUnet e.V.
- 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 3, or (at your
- option) any later version.
+ GNUnet is free software: you can redistribute it and/or modify it
+ under the terms of the GNU Affero General Public License as published
+ by the Free Software Foundation, either version 3 of the License,
+ or (at your option) any later version.
GNUnet is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
+ Affero General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with GNUnet; see the file COPYING. If not, write to the
- Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/**
* @author Matthias Wachs
*/
#include "platform.h"
-#include "gnunet-service-transport_blacklist.h"
-#include "gnunet-service-transport_clients.h"
#include "gnunet-service-transport_hello.h"
#include "gnunet-service-transport_neighbours.h"
#include "gnunet-service-transport_plugins.h"
/**
* Set traffic metric to manipulate
*
- * @param cls closure
- * @param client client sending message
* @param message containing information
*/
void
-GST_manipulation_set_metric (void *cls,
- struct GNUNET_SERVER_Client *client,
- const struct GNUNET_MessageHeader *message)
+GST_manipulation_set_metric (const struct TrafficMetricMessage *tm)
{
- const struct TrafficMetricMessage *tm;
static struct GNUNET_PeerIdentity zero;
struct TM_Peer *tmp;
- tm = (const struct TrafficMetricMessage *) message;
if (0 == memcmp (&tm->peer,
&zero,
sizeof(struct GNUNET_PeerIdentity)))
"Received traffic metrics for all peers\n");
delay_in = GNUNET_TIME_relative_ntoh (tm->delay_in);
delay_out = GNUNET_TIME_relative_ntoh (tm->delay_out);
- GNUNET_SERVER_receive_done (client,
- GNUNET_OK);
return;
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Received traffic metrics for peer `%s'\n",
- GNUNET_i2s(&tm->peer));
+ GNUNET_i2s (&tm->peer));
if (NULL ==
(tmp = GNUNET_CONTAINER_multipeermap_get (peers,
&tm->peer)))
&tm->properties);
tmp->delay_in = GNUNET_TIME_relative_ntoh (tm->delay_in);
tmp->delay_out = GNUNET_TIME_relative_ntoh (tm->delay_out);
- GNUNET_SERVER_receive_done (client,
- GNUNET_OK);
}
* message.
*
* @param cls the `struct DelayQueueEntry` to transmit
- * @param tc unused
*/
static void
-send_delayed (void *cls,
- const struct GNUNET_SCHEDULER_TaskContext *tc)
+send_delayed (void *cls)
{
struct DelayQueueEntry *dqe = cls;
struct DelayQueueEntry *next;
struct TM_Peer *tmp = dqe->tmp;
- struct GNUNET_TIME_Relative delay;
GNUNET_break (GNUNET_YES ==
GST_neighbours_test_connected (&dqe->id));
if (NULL != next)
{
/* More delayed messages */
- delay = GNUNET_TIME_absolute_get_remaining(next->sent_at);
- tmp->send_delay_task = GNUNET_SCHEDULER_add_delayed(delay,
- &send_delayed, next);
+ tmp->send_delay_task = GNUNET_SCHEDULER_add_at (next->sent_at,
+ &send_delayed,
+ next);
}
}
else
if (NULL != next)
{
/* More delayed messages */
- delay = GNUNET_TIME_absolute_get_remaining(next->sent_at);
- generic_send_delay_task = GNUNET_SCHEDULER_add_delayed (delay,
- &send_delayed,
- next);
+ generic_send_delay_task = GNUNET_SCHEDULER_add_at (next->sent_at,
+ &send_delayed,
+ next);
}
}
GST_neighbours_send (&dqe->id,
dqe->msg = &dqe[1];
dqe->msg_size = msg_size;
dqe->timeout = timeout;
- memcpy (dqe->msg,
+ GNUNET_memcpy (dqe->msg,
msg,
msg_size);
if (NULL == tmp)
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Delaying %u byte message to peer `%s' with peer specific delay for %s\n",
- msg_size,
+ (unsigned int) msg_size,
GNUNET_i2s (target),
GNUNET_STRINGS_relative_time_to_string (delay,
GNUNET_YES));
while (NULL != (dqe = next))
{
next = dqe->next;
- if (0 == memcmp(peer, &dqe->id, sizeof(dqe->id)))
+ if (0 == memcmp (peer,
+ &dqe->id,
+ sizeof (dqe->id)))
{
GNUNET_CONTAINER_DLL_remove (generic_dqe_head,
generic_dqe_tail,
generic_send_delay_task = NULL;
if (NULL != generic_dqe_head)
generic_send_delay_task
- = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_absolute_get_remaining(generic_dqe_head->sent_at),
- &send_delayed,
- generic_dqe_head);
+ = GNUNET_SCHEDULER_add_at (generic_dqe_head->sent_at,
+ &send_delayed,
+ generic_dqe_head);
}
}