diff options
author | Nathan S. Evans <evans@in.tum.de> | 2010-11-05 18:21:50 +0000 |
---|---|---|
committer | Nathan S. Evans <evans@in.tum.de> | 2010-11-05 18:21:50 +0000 |
commit | 75a33a1499cf60ea4364c9aa673816629a6c1413 (patch) | |
tree | 0620da4312bb04de4d7b65074fdd3b0c3dd6cc0e /src/fs/test_fs_download.c | |
parent | 7217c601ad30760872823193d62307e7a335d226 (diff) | |
download | gnunet-75a33a1499cf60ea4364c9aa673816629a6c1413.tar.gz gnunet-75a33a1499cf60ea4364c9aa673816629a6c1413.zip |
big scheduler refactoring, expect some issues
Diffstat (limited to 'src/fs/test_fs_download.c')
-rw-r--r-- | src/fs/test_fs_download.c | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/src/fs/test_fs_download.c b/src/fs/test_fs_download.c index 4bcedcb4d..549a2eeed 100644 --- a/src/fs/test_fs_download.c +++ b/src/fs/test_fs_download.c | |||
@@ -60,8 +60,6 @@ static struct PeerContext p1; | |||
60 | 60 | ||
61 | static struct GNUNET_TIME_Absolute start; | 61 | static struct GNUNET_TIME_Absolute start; |
62 | 62 | ||
63 | static struct GNUNET_SCHEDULER_Handle *sched; | ||
64 | |||
65 | static struct GNUNET_FS_Handle *fs; | 63 | static struct GNUNET_FS_Handle *fs; |
66 | 64 | ||
67 | static struct GNUNET_FS_DownloadContext *download; | 65 | static struct GNUNET_FS_DownloadContext *download; |
@@ -127,7 +125,7 @@ abort_download_task (void *cls, | |||
127 | GNUNET_DISK_directory_remove (fn); | 125 | GNUNET_DISK_directory_remove (fn); |
128 | GNUNET_free (fn); | 126 | GNUNET_free (fn); |
129 | fn = NULL; | 127 | fn = NULL; |
130 | GNUNET_SCHEDULER_cancel (sched, timeout_kill); | 128 | GNUNET_SCHEDULER_cancel (timeout_kill); |
131 | timeout_kill = GNUNET_SCHEDULER_NO_TASK; | 129 | timeout_kill = GNUNET_SCHEDULER_NO_TASK; |
132 | } | 130 | } |
133 | 131 | ||
@@ -168,8 +166,7 @@ progress_cb (void *cls, | |||
168 | case GNUNET_FS_STATUS_DOWNLOAD_COMPLETED: | 166 | case GNUNET_FS_STATUS_DOWNLOAD_COMPLETED: |
169 | printf ("Download complete, %llu kbps.\n", | 167 | printf ("Download complete, %llu kbps.\n", |
170 | (unsigned long long) (FILESIZE * 1000LL / (1+GNUNET_TIME_absolute_get_duration (start).rel_value) / 1024LL)); | 168 | (unsigned long long) (FILESIZE * 1000LL / (1+GNUNET_TIME_absolute_get_duration (start).rel_value) / 1024LL)); |
171 | GNUNET_SCHEDULER_add_now (sched, | 169 | GNUNET_SCHEDULER_add_now (&abort_download_task, |
172 | &abort_download_task, | ||
173 | NULL); | 170 | NULL); |
174 | break; | 171 | break; |
175 | case GNUNET_FS_STATUS_DOWNLOAD_PROGRESS: | 172 | case GNUNET_FS_STATUS_DOWNLOAD_PROGRESS: |
@@ -187,8 +184,7 @@ progress_cb (void *cls, | |||
187 | "Error publishing file: %s\n", | 184 | "Error publishing file: %s\n", |
188 | event->value.publish.specifics.error.message); | 185 | event->value.publish.specifics.error.message); |
189 | GNUNET_break (0); | 186 | GNUNET_break (0); |
190 | GNUNET_SCHEDULER_add_continuation (sched, | 187 | GNUNET_SCHEDULER_add_continuation (&abort_publish_task, |
191 | &abort_publish_task, | ||
192 | NULL, | 188 | NULL, |
193 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); | 189 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); |
194 | break; | 190 | break; |
@@ -196,8 +192,7 @@ progress_cb (void *cls, | |||
196 | fprintf (stderr, | 192 | fprintf (stderr, |
197 | "Error downloading file: %s\n", | 193 | "Error downloading file: %s\n", |
198 | event->value.download.specifics.error.message); | 194 | event->value.download.specifics.error.message); |
199 | GNUNET_SCHEDULER_add_now (sched, | 195 | GNUNET_SCHEDULER_add_now (&abort_download_task, |
200 | &abort_download_task, | ||
201 | NULL); | 196 | NULL); |
202 | break; | 197 | break; |
203 | case GNUNET_FS_STATUS_DOWNLOAD_ACTIVE: | 198 | case GNUNET_FS_STATUS_DOWNLOAD_ACTIVE: |
@@ -214,8 +209,7 @@ progress_cb (void *cls, | |||
214 | GNUNET_assert (publish == event->value.publish.pc); | 209 | GNUNET_assert (publish == event->value.publish.pc); |
215 | GNUNET_assert (FILESIZE == event->value.publish.size); | 210 | GNUNET_assert (FILESIZE == event->value.publish.size); |
216 | GNUNET_assert (1 == event->value.publish.anonymity); | 211 | GNUNET_assert (1 == event->value.publish.anonymity); |
217 | GNUNET_SCHEDULER_add_now (sched, | 212 | GNUNET_SCHEDULER_add_now (&stop_fs_task, |
218 | &stop_fs_task, | ||
219 | NULL); | 213 | NULL); |
220 | break; | 214 | break; |
221 | case GNUNET_FS_STATUS_DOWNLOAD_START: | 215 | case GNUNET_FS_STATUS_DOWNLOAD_START: |
@@ -230,8 +224,7 @@ progress_cb (void *cls, | |||
230 | break; | 224 | break; |
231 | case GNUNET_FS_STATUS_DOWNLOAD_STOPPED: | 225 | case GNUNET_FS_STATUS_DOWNLOAD_STOPPED: |
232 | GNUNET_assert (download == event->value.download.dc); | 226 | GNUNET_assert (download == event->value.download.dc); |
233 | GNUNET_SCHEDULER_add_continuation (sched, | 227 | GNUNET_SCHEDULER_add_continuation (&abort_publish_task, |
234 | &abort_publish_task, | ||
235 | NULL, | 228 | NULL, |
236 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); | 229 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); |
237 | break; | 230 | break; |
@@ -279,7 +272,6 @@ stop_arm (struct PeerContext *p) | |||
279 | 272 | ||
280 | static void | 273 | static void |
281 | run (void *cls, | 274 | run (void *cls, |
282 | struct GNUNET_SCHEDULER_Handle *s, | ||
283 | char *const *args, | 275 | char *const *args, |
284 | const char *cfgfile, | 276 | const char *cfgfile, |
285 | const struct GNUNET_CONFIGURATION_Handle *cfg) | 277 | const struct GNUNET_CONFIGURATION_Handle *cfg) |
@@ -294,10 +286,8 @@ run (void *cls, | |||
294 | struct GNUNET_FS_FileInformation *fi; | 286 | struct GNUNET_FS_FileInformation *fi; |
295 | size_t i; | 287 | size_t i; |
296 | 288 | ||
297 | sched = s; | ||
298 | setup_peer (&p1, "test_fs_download_data.conf"); | 289 | setup_peer (&p1, "test_fs_download_data.conf"); |
299 | fs = GNUNET_FS_start (sched, | 290 | fs = GNUNET_FS_start (cfg, |
300 | cfg, | ||
301 | "test-fs-download", | 291 | "test-fs-download", |
302 | &progress_cb, | 292 | &progress_cb, |
303 | NULL, | 293 | NULL, |
@@ -322,8 +312,7 @@ run (void *cls, | |||
322 | GNUNET_FS_uri_destroy (kuri); | 312 | GNUNET_FS_uri_destroy (kuri); |
323 | GNUNET_CONTAINER_meta_data_destroy (meta); | 313 | GNUNET_CONTAINER_meta_data_destroy (meta); |
324 | GNUNET_assert (NULL != fi); | 314 | GNUNET_assert (NULL != fi); |
325 | timeout_kill = GNUNET_SCHEDULER_add_delayed (sched, | 315 | timeout_kill = GNUNET_SCHEDULER_add_delayed (TIMEOUT, |
326 | TIMEOUT, | ||
327 | &timeout_kill_task, | 316 | &timeout_kill_task, |
328 | NULL); | 317 | NULL); |
329 | start = GNUNET_TIME_absolute_get (); | 318 | start = GNUNET_TIME_absolute_get (); |