- 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;
- if (0 == strcmp ("list_indexed-context-dir",
- event->value.publish.cctx))
- GNUNET_SCHEDULER_add_continuation (sched,
- &abort_publish_task,
- NULL,
- GNUNET_SCHEDULER_REASON_PREREQ_DONE);
- break;
- case GNUNET_FS_STATUS_PUBLISH_START:
- consider_restart (event->status);
- ret = event->value.publish.cctx;
- if (0 == strcmp ("publish-context1",
- event->value.publish.cctx))
- {
- GNUNET_assert (0 == strcmp ("publish-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 ("publish-context2",
- event->value.publish.cctx))
- {
- GNUNET_assert (0 == strcmp ("publish-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 ("publish-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:
- consider_restart (event->status);
- if (0 == strcmp ("list_indexed-context-dir",
- event->value.publish.cctx))
- {
- GNUNET_assert (publish == event->value.publish.sc);
- GNUNET_SCHEDULER_add_continuation (sched,
- &abort_publish_task,
- NULL,
- GNUNET_SCHEDULER_REASON_PREREQ_DONE);
- }
- break;
- default:
- printf ("Unexpected event: %d\n",
- event->status);
- break;
+ break;
+ case GNUNET_FS_STATUS_PUBLISH_SUSPEND:
+ if (event->value.publish.pc == publish)
+ publish = NULL;
+ break;
+ case GNUNET_FS_STATUS_PUBLISH_RESUME:
+ if (NULL == publish)
+ {
+ GNUNET_assert (GNUNET_YES ==
+ GNUNET_FS_file_information_is_directory (event->
+ value.publish.
+ fi));
+ publish = event->value.publish.pc;
+ return "publish-context-dir";