diff options
author | Christian Grothoff <christian@grothoff.org> | 2012-03-04 21:00:26 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2012-03-04 21:00:26 +0000 |
commit | bbdae1a7c4614fcd38b321c1c0ee1096ffa59686 (patch) | |
tree | c6c34201663e8c04b72ab4eca5fc89fbba978376 /src/fs/fs_search.c | |
parent | fa2373ff7a4291216be7c00f76e276ee60aec654 (diff) | |
download | gnunet-bbdae1a7c4614fcd38b321c1c0ee1096ffa59686.tar.gz gnunet-bbdae1a7c4614fcd38b321c1c0ee1096ffa59686.zip |
-adding testcase for FS probes, minor bugfixes related to probes
Diffstat (limited to 'src/fs/fs_search.c')
-rw-r--r-- | src/fs/fs_search.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/fs/fs_search.c b/src/fs/fs_search.c index a163d97ef..994b97ce1 100644 --- a/src/fs/fs_search.c +++ b/src/fs/fs_search.c | |||
@@ -121,7 +121,7 @@ notify_client_chk_update (struct GNUNET_FS_SearchContext *sc, | |||
121 | struct GNUNET_FS_SearchResult *sr) | 121 | struct GNUNET_FS_SearchResult *sr) |
122 | { | 122 | { |
123 | struct GNUNET_FS_ProgressInfo pi; | 123 | struct GNUNET_FS_ProgressInfo pi; |
124 | 124 | ||
125 | pi.status = GNUNET_FS_STATUS_SEARCH_UPDATE; | 125 | pi.status = GNUNET_FS_STATUS_SEARCH_UPDATE; |
126 | pi.value.search.specifics.update.cctx = sr->client_info; | 126 | pi.value.search.specifics.update.cctx = sr->client_info; |
127 | pi.value.search.specifics.update.meta = sr->meta; | 127 | pi.value.search.specifics.update.meta = sr->meta; |
@@ -184,7 +184,7 @@ signal_probe_result (struct GNUNET_FS_SearchResult *sr) | |||
184 | { | 184 | { |
185 | struct GNUNET_FS_ProgressInfo pi; | 185 | struct GNUNET_FS_ProgressInfo pi; |
186 | 186 | ||
187 | pi.status = GNUNET_FS_STATUS_SEARCH_START; | 187 | pi.status = GNUNET_FS_STATUS_SEARCH_UPDATE; |
188 | pi.value.search.specifics.update.cctx = sr->client_info; | 188 | pi.value.search.specifics.update.cctx = sr->client_info; |
189 | pi.value.search.specifics.update.meta = sr->meta; | 189 | pi.value.search.specifics.update.meta = sr->meta; |
190 | pi.value.search.specifics.update.uri = sr->uri; | 190 | pi.value.search.specifics.update.uri = sr->uri; |
@@ -208,7 +208,10 @@ probe_failure_handler (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) | |||
208 | { | 208 | { |
209 | struct GNUNET_FS_SearchResult *sr = cls; | 209 | struct GNUNET_FS_SearchResult *sr = cls; |
210 | 210 | ||
211 | sr->probe_cancel_task = GNUNET_SCHEDULER_NO_TASK; | ||
211 | sr->availability_trials++; | 212 | sr->availability_trials++; |
213 | GNUNET_FS_download_stop (sr->probe_ctx, GNUNET_YES); | ||
214 | sr->probe_ctx = NULL; | ||
212 | GNUNET_FS_search_result_sync_ (sr); | 215 | GNUNET_FS_search_result_sync_ (sr); |
213 | signal_probe_result (sr); | 216 | signal_probe_result (sr); |
214 | } | 217 | } |
@@ -225,8 +228,11 @@ probe_success_handler (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) | |||
225 | { | 228 | { |
226 | struct GNUNET_FS_SearchResult *sr = cls; | 229 | struct GNUNET_FS_SearchResult *sr = cls; |
227 | 230 | ||
231 | sr->probe_cancel_task = GNUNET_SCHEDULER_NO_TASK; | ||
228 | sr->availability_trials++; | 232 | sr->availability_trials++; |
229 | sr->availability_success++; | 233 | sr->availability_success++; |
234 | GNUNET_FS_download_stop (sr->probe_ctx, GNUNET_YES); | ||
235 | sr->probe_ctx = NULL; | ||
230 | GNUNET_FS_search_result_sync_ (sr); | 236 | GNUNET_FS_search_result_sync_ (sr); |
231 | signal_probe_result (sr); | 237 | signal_probe_result (sr); |
232 | } | 238 | } |
@@ -287,8 +293,7 @@ GNUNET_FS_search_probe_progress_ (void *cls, | |||
287 | sr->probe_cancel_task = GNUNET_SCHEDULER_NO_TASK; | 293 | sr->probe_cancel_task = GNUNET_SCHEDULER_NO_TASK; |
288 | } | 294 | } |
289 | sr->probe_cancel_task = | 295 | sr->probe_cancel_task = |
290 | GNUNET_SCHEDULER_add_delayed (sr->remaining_probe_time, | 296 | GNUNET_SCHEDULER_add_now (&probe_success_handler, sr); |
291 | &probe_success_handler, sr); | ||
292 | break; | 297 | break; |
293 | case GNUNET_FS_STATUS_DOWNLOAD_STOPPED: | 298 | case GNUNET_FS_STATUS_DOWNLOAD_STOPPED: |
294 | if (sr->probe_cancel_task != GNUNET_SCHEDULER_NO_TASK) | 299 | if (sr->probe_cancel_task != GNUNET_SCHEDULER_NO_TASK) |