From c08e1f146fa54cd6d855610000fc7861c4fee678 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Mon, 26 Oct 2009 08:42:01 +0000 Subject: [PATCH] fixes --- src/fs/test_fs_list_indexed.c | 76 ++++++++++++++++++++++++++--------- 1 file changed, 56 insertions(+), 20 deletions(-) diff --git a/src/fs/test_fs_list_indexed.c b/src/fs/test_fs_list_indexed.c index 1585e2117..6044e6955 100644 --- a/src/fs/test_fs_list_indexed.c +++ b/src/fs/test_fs_list_indexed.c @@ -109,19 +109,26 @@ static void * progress_cb (void *cls, const struct GNUNET_FS_ProgressInfo *event) { + void *ret; + ret = NULL; switch (event->status) { case GNUNET_FS_STATUS_PUBLISH_COMPLETED: + ret = event->value.publish.cctx; printf ("Publish complete, %llu kbps.\n", (unsigned long long) (FILESIZE * 1000 / (1+GNUNET_TIME_absolute_get_duration (start).value) / 1024)); - GNUNET_SCHEDULER_add_continuation (sched, - GNUNET_NO, - &list_indexed_task, - NULL, - GNUNET_SCHEDULER_REASON_PREREQ_DONE); + if (0 == strcmp ("list_indexed-context-dir", + event->value.publish.cctx)) + GNUNET_SCHEDULER_add_continuation (sched, + GNUNET_NO, + &list_indexed_task, + NULL, + GNUNET_SCHEDULER_REASON_PREREQ_DONE); + break; case GNUNET_FS_STATUS_PUBLISH_PROGRESS: + ret = event->value.publish.cctx; GNUNET_assert (publish == event->value.publish.sc); #if VERBOSE printf ("Publish is progressing (%llu/%llu at level %u off %llu)...\n", @@ -132,33 +139,62 @@ progress_cb (void *cls, #endif break; case GNUNET_FS_STATUS_PUBLISH_ERROR: + ret = event->value.publish.cctx; fprintf (stderr, "Error publishing file: %s\n", event->value.publish.specifics.error.message); err = 1; - GNUNET_SCHEDULER_add_continuation (sched, - GNUNET_NO, - &abort_publish_task, - NULL, - GNUNET_SCHEDULER_REASON_PREREQ_DONE); + if (0 == strcmp ("list_indexed-context-dir", + event->value.publish.cctx)) + GNUNET_SCHEDULER_add_continuation (sched, + GNUNET_NO, + &abort_publish_task, + NULL, + GNUNET_SCHEDULER_REASON_PREREQ_DONE); break; case GNUNET_FS_STATUS_PUBLISH_START: - GNUNET_assert (0 == strcmp ("publish-context", event->value.publish.cctx)); - GNUNET_assert (NULL == event->value.publish.pctx); - GNUNET_assert (FILESIZE == event->value.publish.size); - GNUNET_assert (0 == event->value.publish.completed); - GNUNET_assert (1 == event->value.publish.anonymity); + ret = event->value.publish.cctx; + if (0 == strcmp ("list_indexed-context1", + event->value.publish.cctx)) + { + GNUNET_assert (0 == strcmp ("list_indexed-context-dir", + event->value.publish.pctx)); + GNUNET_assert (FILESIZE == event->value.publish.size); + GNUNET_assert (0 == event->value.publish.completed); + GNUNET_assert (1 == event->value.publish.anonymity); + } + else if (0 == strcmp ("list_indexed-context2", + event->value.publish.cctx)) + { + GNUNET_assert (0 == strcmp ("list_indexed-context-dir", + event->value.publish.pctx)); + GNUNET_assert (FILESIZE == event->value.publish.size); + GNUNET_assert (0 == event->value.publish.completed); + GNUNET_assert (2 == event->value.publish.anonymity); + } + else if (0 == strcmp ("list_indexed-context-dir", + event->value.publish.cctx)) + { + GNUNET_assert (0 == event->value.publish.completed); + GNUNET_assert (3 == event->value.publish.anonymity); + } + else + GNUNET_assert (0); break; case GNUNET_FS_STATUS_PUBLISH_STOPPED: - GNUNET_assert (publish == event->value.publish.sc); - publish = NULL; + if (0 == strcmp ("list_indexed-context-dir", + event->value.publish.cctx)) + { + GNUNET_assert (publish == event->value.publish.sc); + publish = NULL; + } break; default: printf ("Unexpected event: %d\n", event->status); break; } - return NULL; + return ret; } @@ -261,13 +297,13 @@ run (void *cls, kuri, meta, GNUNET_YES, - 1, + 2, 42, GNUNET_TIME_relative_to_absolute (LIFETIME)); fidir = GNUNET_FS_file_information_create_empty_directory ("list_indexed-context-dir", kuri, meta, - 1, + 3, 42, GNUNET_TIME_relative_to_absolute (LIFETIME)); GNUNET_assert (GNUNET_OK == GNUNET_FS_file_information_add (fidir, fi1)); -- 2.25.1