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
{
struct GNUNET_TIME_Absolute av;
- av.value = now.value + 200000 - i * 1000;
+ av.value = now.value + 20000000 - i * 1000;
return av;
}
if (key == NULL)
{
- GNUNET_assert (crc->phase == RP_GET_MULTIPLE_DONE);
- crc->phase = RP_UPDATE;
+ if (crc->phase != RP_GET_MULTIPLE_DONE)
+ {
+ GNUNET_break (0);
+ crc->phase = RP_ERROR;
+ }
+ else
+ {
+ crc->phase = RP_UPDATE;
+ }
GNUNET_SCHEDULER_add_continuation (crc->sched,
&run_continuation,
crc,
GNUNET_SCHEDULER_REASON_PREREQ_DONE);
return;
}
- crc->phase++;
+ switch (crc->phase)
+ {
+ case RP_GET_MULTIPLE:
+ crc->phase = RP_GET_MULTIPLE_NEXT;
+ break;
+ case RP_GET_MULTIPLE_NEXT:
+ crc->phase = RP_GET_MULTIPLE_DONE;
+ break;
+ case RP_GET_MULTIPLE_DONE:
+ /* do not advance further */
+ break;
+ default:
+ GNUNET_break (0);
+ break;
+ }
+#if VERBOSE
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Test in phase %u\n", crc->phase);
+#endif
if (priority == get_priority (42))
crc->uid = uid;
GNUNET_DATASTORE_get_next (datastore, GNUNET_YES);