/*
This file is part of GNUnet.
- (C) 2009-2014 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2009-2014 Christian Grothoff (and other contributing authors)
GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
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., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
+ Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
*/
/**
* @file core/core_api.c
* ID of timeout task for the 'pending_head' handle
* which is the one with the smallest timeout.
*/
- GNUNET_SCHEDULER_TaskIdentifier timeout_task;
+ struct GNUNET_SCHEDULER_Task * timeout_task;
/**
* ID of task to run 'next_request_transmission'.
*/
- GNUNET_SCHEDULER_TaskIdentifier ntr_task;
+ struct GNUNET_SCHEDULER_Task * ntr_task;
/**
* SendMessageRequest ID generator for this peer.
/**
* ID of reconnect task (if any).
*/
- GNUNET_SCHEDULER_TaskIdentifier reconnect_task;
+ struct GNUNET_SCHEDULER_Task * reconnect_task;
/**
* Current delay we use for re-trying to connect to core.
{
struct GNUNET_CORE_Handle *h = cls;
- h->reconnect_task = GNUNET_SCHEDULER_NO_TASK;
+ h->reconnect_task = NULL;
LOG (GNUNET_ERROR_TYPE_DEBUG,
"Connecting to CORE service after delay\n");
reconnect (h);
struct GNUNET_CORE_TransmitHandle *th;
struct PeerRecord *pr = value;
- if (GNUNET_SCHEDULER_NO_TASK != pr->timeout_task)
+ if (NULL != pr->timeout_task)
{
GNUNET_SCHEDULER_cancel (pr->timeout_task);
- pr->timeout_task = GNUNET_SCHEDULER_NO_TASK;
+ pr->timeout_task = NULL;
}
- if (GNUNET_SCHEDULER_NO_TASK != pr->ntr_task)
+ if (NULL != pr->ntr_task)
{
GNUNET_SCHEDULER_cancel (pr->ntr_task);
- pr->ntr_task = GNUNET_SCHEDULER_NO_TASK;
+ pr->ntr_task = NULL;
}
if ( (NULL != pr->prev) ||
(NULL != pr->next) ||
GNUNET_assert (GNUNET_YES ==
GNUNET_CONTAINER_multipeermap_remove (h->peers, key, pr));
GNUNET_assert (pr->ch == h);
- GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == pr->timeout_task);
- GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == pr->ntr_task);
+ GNUNET_assert (NULL == pr->timeout_task);
+ GNUNET_assert (NULL == pr->ntr_task);
GNUNET_free (pr);
return GNUNET_YES;
}
struct ControlMessage *cm;
struct PeerRecord *pr;
- GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == h->reconnect_task);
+ GNUNET_assert (NULL == h->reconnect_task);
if (NULL != h->cth)
{
GNUNET_CLIENT_notify_transmit_ready_cancel (h->cth);
h->client = NULL;
}
h->currently_down = GNUNET_YES;
- GNUNET_assert (h->reconnect_task == GNUNET_SCHEDULER_NO_TASK);
+ GNUNET_assert (h->reconnect_task == NULL);
h->reconnect_task =
GNUNET_SCHEDULER_add_delayed (h->retry_backoff,
&reconnect_task, h);
struct SendMessageRequest *smr;
struct GNUNET_CORE_TransmitHandle *th;
- if (pr->timeout_task != GNUNET_SCHEDULER_NO_TASK)
+ if (pr->timeout_task != NULL)
{
GNUNET_SCHEDULER_cancel (pr->timeout_task);
- pr->timeout_task = GNUNET_SCHEDULER_NO_TASK;
+ pr->timeout_task = NULL;
}
th = &pr->th;
if (NULL == th->peer)
struct GNUNET_CORE_Handle *h = pr->ch;
struct GNUNET_CORE_TransmitHandle *th;
- pr->timeout_task = GNUNET_SCHEDULER_NO_TASK;
- if (GNUNET_SCHEDULER_NO_TASK != pr->ntr_task)
+ pr->timeout_task = NULL;
+ if (NULL != pr->ntr_task)
{
GNUNET_SCHEDULER_cancel (pr->ntr_task);
- pr->ntr_task = GNUNET_SCHEDULER_NO_TASK;
+ pr->ntr_task = NULL;
}
th = &pr->th;
th->peer = NULL;
uint16_t msize;
size_t ret;
- GNUNET_assert (h->reconnect_task == GNUNET_SCHEDULER_NO_TASK);
+ GNUNET_assert (h->reconnect_task == NULL);
h->cth = NULL;
if (NULL == buf)
{
h->ready_peer_tail,
pr);
th->peer = NULL;
- if (GNUNET_SCHEDULER_NO_TASK != pr->timeout_task)
+ if (NULL != pr->timeout_task)
{
GNUNET_SCHEDULER_cancel (pr->timeout_task);
- pr->timeout_task = GNUNET_SCHEDULER_NO_TASK;
+ pr->timeout_task = NULL;
}
LOG (GNUNET_ERROR_TYPE_DEBUG,
"Transmitting SEND request to `%s' with %u bytes.\n",
&h->me, pr,
GNUNET_CONTAINER_MULTIHASHMAPOPTION_UNIQUE_FAST));
if (NULL != h->connects)
- h->connects (h->cls, &h->me);
+ h->connects (h->cls, &pr->peer);
break;
case GNUNET_MESSAGE_TYPE_CORE_NOTIFY_CONNECT:
if (msize < sizeof (struct ConnectNotifyMessage))
&cnm->peer, pr,
GNUNET_CONTAINER_MULTIHASHMAPOPTION_UNIQUE_FAST));
if (NULL != h->connects)
- h->connects (h->cls, &cnm->peer);
+ h->connects (h->cls, &pr->peer);
break;
case GNUNET_MESSAGE_TYPE_CORE_NOTIFY_DISCONNECT:
if (msize != sizeof (struct DisconnectNotifyMessage))
{
LOG (GNUNET_ERROR_TYPE_DEBUG,
"Failed to exchange INIT with core, retrying\n");
- if (h->reconnect_task == GNUNET_SCHEDULER_NO_TASK)
+ if (h->reconnect_task == NULL)
reconnect_later (h);
return;
}
GNUNET_CONTAINER_multipeermap_iterate (handle->peers,
&disconnect_and_free_peer_entry,
handle);
- if (handle->reconnect_task != GNUNET_SCHEDULER_NO_TASK)
+ if (handle->reconnect_task != NULL)
{
GNUNET_SCHEDULER_cancel (handle->reconnect_task);
- handle->reconnect_task = GNUNET_SCHEDULER_NO_TASK;
+ handle->reconnect_task = NULL;
}
GNUNET_CONTAINER_multipeermap_destroy (handle->peers);
handle->peers = NULL;
{
struct PeerRecord *pr = cls;
- pr->ntr_task = GNUNET_SCHEDULER_NO_TASK;
+ pr->ntr_task = NULL;
request_next_transmission (pr);
}
th->priority = priority;
th->msize = notify_size;
th->cork = cork;
- GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == pr->ntr_task);
+ GNUNET_assert (NULL == pr->ntr_task);
pr->ntr_task =
GNUNET_SCHEDULER_add_now (&run_request_next_transmission, pr);
LOG (GNUNET_ERROR_TYPE_DEBUG,
h->ready_peer_tail,
pr);
}
- if (GNUNET_SCHEDULER_NO_TASK != pr->ntr_task)
+ if (NULL != pr->ntr_task)
{
GNUNET_SCHEDULER_cancel (pr->ntr_task);
- pr->ntr_task = GNUNET_SCHEDULER_NO_TASK;
+ pr->ntr_task = NULL;
}
}