/*
This file is part of GNUnet.
- (C) 2004, 2005, 2006, 2008, 2009, 2010 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2004, 2005, 2006, 2008, 2009, 2010 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
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.
*/
/**
* @brief simple testcase for persistence of simple download operation
* @author Christian Grothoff
*/
-
#include "platform.h"
#include "gnunet_util_lib.h"
-#include "gnunet_arm_service.h"
-#include "gnunet_testing_lib-new.h"
+#include "gnunet_testing_lib.h"
#include "gnunet_fs_service.h"
/**
static struct GNUNET_FS_PublishContext *publish;
-static GNUNET_SCHEDULER_TaskIdentifier timeout_kill;
+static struct GNUNET_SCHEDULER_Task * timeout_kill;
static char *fn;
static void
-timeout_kill_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+timeout_kill_task (void *cls)
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Timeout downloading file\n");
if (download != NULL)
GNUNET_FS_publish_stop (publish);
publish = NULL;
}
- timeout_kill = GNUNET_SCHEDULER_NO_TASK;
+ timeout_kill = NULL;
err = 1;
}
static void
-abort_publish_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+abort_publish_task (void *cls)
{
if (publish != NULL)
{
static void
-abort_download_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+abort_download_task (void *cls)
{
uint64_t size;
GNUNET_free (fn);
fn = NULL;
GNUNET_SCHEDULER_cancel (timeout_kill);
- timeout_kill = GNUNET_SCHEDULER_NO_TASK;
+ timeout_kill = NULL;
}
static void
-restart_fs_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+restart_fs_task (void *cls)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Restarting FS.\n");
GNUNET_FS_stop (fs);
(unsigned long long) event->value.publish.specifics.
progress.offset);
break;
+ case GNUNET_FS_STATUS_PUBLISH_PROGRESS_DIRECTORY:
+ break;
case GNUNET_FS_STATUS_PUBLISH_COMPLETED:
printf ("Publishing complete, %llu kbps.\n",
- (unsigned long long) (FILESIZE * 1000LL /
+ (unsigned long long) (FILESIZE * 1000000LL /
(1 +
GNUNET_TIME_absolute_get_duration
- (start).rel_value) / 1024LL));
+ (start).rel_value_us) / 1024LL));
fn = GNUNET_DISK_mktemp ("gnunet-download-test-dst");
start = GNUNET_TIME_absolute_get ();
GNUNET_assert (download == NULL);
case GNUNET_FS_STATUS_DOWNLOAD_COMPLETED:
consider_restart (event->status);
printf ("Download complete, %llu kbps.\n",
- (unsigned long long) (FILESIZE * 1000LL /
+ (unsigned long long) (FILESIZE * 1000000LL /
(1 +
GNUNET_TIME_absolute_get_duration
- (start).rel_value) / 1024LL));
+ (start).rel_value_us) / 1024LL));
GNUNET_SCHEDULER_add_now (&abort_download_task, NULL);
break;
case GNUNET_FS_STATUS_DOWNLOAD_PROGRESS:
FPRINTF (stderr, "Error publishing file: %s\n",
event->value.publish.specifics.error.message);
GNUNET_break (0);
- GNUNET_SCHEDULER_add_continuation (&abort_publish_task, NULL,
- GNUNET_SCHEDULER_REASON_PREREQ_DONE);
+ GNUNET_SCHEDULER_add_now (&abort_publish_task, NULL);
break;
case GNUNET_FS_STATUS_DOWNLOAD_ERROR:
FPRINTF (stderr, "Error downloading file: %s\n",
break;
case GNUNET_FS_STATUS_DOWNLOAD_STOPPED:
GNUNET_assert (download == event->value.download.dc);
- GNUNET_SCHEDULER_add_continuation (&abort_publish_task, NULL,
- GNUNET_SCHEDULER_REASON_PREREQ_DONE);
+ GNUNET_SCHEDULER_add_now (&abort_publish_task, NULL);
download = NULL;
break;
default:
static void
-run (void *cls,
- const struct GNUNET_CONFIGURATION_Handle *c)
+run (void *cls,
+ const struct GNUNET_CONFIGURATION_Handle *c,
+ struct GNUNET_TESTING_Peer *peer)
{
const char *keywords[] = {
"down_foo",