diff options
author | Christian Grothoff <christian@grothoff.org> | 2010-05-06 13:38:12 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2010-05-06 13:38:12 +0000 |
commit | 498559e25b6175e52fd0a219c562f4c0e7013605 (patch) | |
tree | 1c754bf23e9c9b09c45ea57a454bb683392bbd8c /src/fs/test_fs_search_persistence.c | |
parent | 2a63cab46cc16975a04cfd37a59e3deea417cac3 (diff) | |
download | gnunet-498559e25b6175e52fd0a219c562f4c0e7013605.tar.gz gnunet-498559e25b6175e52fd0a219c562f4c0e7013605.zip |
fixes
Diffstat (limited to 'src/fs/test_fs_search_persistence.c')
-rw-r--r-- | src/fs/test_fs_search_persistence.c | 35 |
1 files changed, 28 insertions, 7 deletions
diff --git a/src/fs/test_fs_search_persistence.c b/src/fs/test_fs_search_persistence.c index af4344515..eb25a2082 100644 --- a/src/fs/test_fs_search_persistence.c +++ b/src/fs/test_fs_search_persistence.c | |||
@@ -159,16 +159,25 @@ progress_cb (void *cls, | |||
159 | case GNUNET_FS_STATUS_PUBLISH_COMPLETED: | 159 | case GNUNET_FS_STATUS_PUBLISH_COMPLETED: |
160 | kuri = GNUNET_FS_uri_ksk_create_from_args (1, keywords); | 160 | kuri = GNUNET_FS_uri_ksk_create_from_args (1, keywords); |
161 | start = GNUNET_TIME_absolute_get (); | 161 | start = GNUNET_TIME_absolute_get (); |
162 | search = GNUNET_FS_search_start (fs, | 162 | GNUNET_FS_search_start (fs, |
163 | kuri, | 163 | kuri, |
164 | 1, | 164 | 1, |
165 | GNUNET_FS_SEARCH_OPTION_NONE, | 165 | GNUNET_FS_SEARCH_OPTION_NONE, |
166 | "search"); | 166 | "search"); |
167 | GNUNET_FS_uri_destroy (kuri); | 167 | GNUNET_FS_uri_destroy (kuri); |
168 | GNUNET_assert (search != NULL); | 168 | GNUNET_assert (search != NULL); |
169 | break; | 169 | break; |
170 | case GNUNET_FS_STATUS_PUBLISH_SUSPEND: | ||
171 | if (event->value.publish.sc == publish) | ||
172 | publish = NULL; | ||
173 | break; | ||
174 | case GNUNET_FS_STATUS_PUBLISH_RESUME: | ||
175 | if (NULL == publish) | ||
176 | publish = event->value.publish.sc; | ||
177 | break; | ||
170 | case GNUNET_FS_STATUS_SEARCH_RESULT: | 178 | case GNUNET_FS_STATUS_SEARCH_RESULT: |
171 | consider_restart (event->status); | 179 | /* FIXME: consider_restart (event->status); cannot be tested with |
180 | search result since we exit here after the first one... */ | ||
172 | #if VERBOSE | 181 | #if VERBOSE |
173 | printf ("Search complete.\n"); | 182 | printf ("Search complete.\n"); |
174 | #endif | 183 | #endif |
@@ -196,6 +205,17 @@ progress_cb (void *cls, | |||
196 | NULL, | 205 | NULL, |
197 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); | 206 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); |
198 | break; | 207 | break; |
208 | case GNUNET_FS_STATUS_SEARCH_SUSPEND: | ||
209 | if (event->value.search.sc == search) | ||
210 | search = NULL; | ||
211 | break; | ||
212 | case GNUNET_FS_STATUS_SEARCH_RESUME: | ||
213 | if (NULL == search) | ||
214 | { | ||
215 | search = event->value.search.sc; | ||
216 | return "search"; | ||
217 | } | ||
218 | break; | ||
199 | case GNUNET_FS_STATUS_PUBLISH_START: | 219 | case GNUNET_FS_STATUS_PUBLISH_START: |
200 | GNUNET_assert (0 == strcmp ("publish-context", event->value.publish.cctx)); | 220 | GNUNET_assert (0 == strcmp ("publish-context", event->value.publish.cctx)); |
201 | GNUNET_assert (NULL == event->value.publish.pctx); | 221 | GNUNET_assert (NULL == event->value.publish.pctx); |
@@ -213,18 +233,19 @@ progress_cb (void *cls, | |||
213 | case GNUNET_FS_STATUS_SEARCH_START: | 233 | case GNUNET_FS_STATUS_SEARCH_START: |
214 | consider_restart (event->status); | 234 | consider_restart (event->status); |
215 | GNUNET_assert (search == NULL); | 235 | GNUNET_assert (search == NULL); |
236 | search = event->value.search.sc; | ||
216 | GNUNET_assert (0 == strcmp ("search", event->value.search.cctx)); | 237 | GNUNET_assert (0 == strcmp ("search", event->value.search.cctx)); |
217 | GNUNET_assert (1 == event->value.search.anonymity); | 238 | GNUNET_assert (1 == event->value.search.anonymity); |
218 | break; | 239 | break; |
219 | case GNUNET_FS_STATUS_SEARCH_RESULT_STOPPED: | 240 | case GNUNET_FS_STATUS_SEARCH_RESULT_STOPPED: |
220 | break; | 241 | break; |
221 | case GNUNET_FS_STATUS_SEARCH_STOPPED: | 242 | case GNUNET_FS_STATUS_SEARCH_STOPPED: |
222 | consider_restart (event->status); | ||
223 | GNUNET_assert (search == event->value.search.sc); | 243 | GNUNET_assert (search == event->value.search.sc); |
224 | GNUNET_SCHEDULER_add_continuation (sched, | 244 | GNUNET_SCHEDULER_add_continuation (sched, |
225 | &abort_publish_task, | 245 | &abort_publish_task, |
226 | NULL, | 246 | NULL, |
227 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); | 247 | GNUNET_SCHEDULER_REASON_PREREQ_DONE); |
248 | search = NULL; | ||
228 | break; | 249 | break; |
229 | default: | 250 | default: |
230 | fprintf (stderr, | 251 | fprintf (stderr, |