diff options
author | Christian Grothoff <christian@grothoff.org> | 2011-08-15 21:54:06 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2011-08-15 21:54:06 +0000 |
commit | 5746309cb4be2073d550ad7a6885e918631dbc38 (patch) | |
tree | 89455bc4aadf977816b38df13f990372cd81d71a /src/fs/fs_search.c | |
parent | 6fd3e715cae09fa6e657c96f1c6f9711ee51f42f (diff) | |
download | gnunet-5746309cb4be2073d550ad7a6885e918631dbc38.tar.gz gnunet-5746309cb4be2073d550ad7a6885e918631dbc38.zip |
indentation
Diffstat (limited to 'src/fs/fs_search.c')
-rw-r--r-- | src/fs/fs_search.c | 154 |
1 files changed, 69 insertions, 85 deletions
diff --git a/src/fs/fs_search.c b/src/fs/fs_search.c index 60b7a1cc8..89a8c5582 100644 --- a/src/fs/fs_search.c +++ b/src/fs/fs_search.c | |||
@@ -48,8 +48,8 @@ GNUNET_FS_search_make_status_ (struct GNUNET_FS_ProgressInfo *pi, | |||
48 | 48 | ||
49 | pi->value.search.sc = sc; | 49 | pi->value.search.sc = sc; |
50 | pi->value.search.cctx = sc->client_info; | 50 | pi->value.search.cctx = sc->client_info; |
51 | pi->value.search.pctx | 51 | pi->value.search.pctx = |
52 | = (sc->psearch_result == NULL) ? NULL : sc->psearch_result->client_info; | 52 | (sc->psearch_result == NULL) ? NULL : sc->psearch_result->client_info; |
53 | pi->value.search.query = sc->uri; | 53 | pi->value.search.query = sc->uri; |
54 | pi->value.search.duration = | 54 | pi->value.search.duration = |
55 | GNUNET_TIME_absolute_get_duration (sc->start_time); | 55 | GNUNET_TIME_absolute_get_duration (sc->start_time); |
@@ -121,10 +121,10 @@ notify_client_chk_update (struct GNUNET_FS_SearchContext *sc, | |||
121 | pi.value.search.specifics.update.cctx = sr->client_info; | 121 | pi.value.search.specifics.update.cctx = sr->client_info; |
122 | pi.value.search.specifics.update.meta = sr->meta; | 122 | pi.value.search.specifics.update.meta = sr->meta; |
123 | pi.value.search.specifics.update.uri = sr->uri; | 123 | pi.value.search.specifics.update.uri = sr->uri; |
124 | pi.value.search.specifics.update.availability_rank | 124 | pi.value.search.specifics.update.availability_rank = |
125 | = 2 * sr->availability_success - sr->availability_trials; | 125 | 2 * sr->availability_success - sr->availability_trials; |
126 | pi.value.search.specifics.update.availability_certainty | 126 | pi.value.search.specifics.update.availability_certainty = |
127 | = sr->availability_trials; | 127 | sr->availability_trials; |
128 | pi.value.search.specifics.update.applicability_rank = sr->optional_support; | 128 | pi.value.search.specifics.update.applicability_rank = sr->optional_support; |
129 | sr->client_info = GNUNET_FS_search_make_status_ (&pi, sc); | 129 | sr->client_info = GNUNET_FS_search_make_status_ (&pi, sc); |
130 | } | 130 | } |
@@ -386,16 +386,15 @@ process_ksk_result (struct GNUNET_FS_SearchContext *sc, | |||
386 | /* check if new */ | 386 | /* check if new */ |
387 | GNUNET_FS_uri_to_key (uri, &key); | 387 | GNUNET_FS_uri_to_key (uri, &key); |
388 | if (GNUNET_SYSERR == | 388 | if (GNUNET_SYSERR == |
389 | GNUNET_CONTAINER_multihashmap_get_multiple (ent->results, | 389 | GNUNET_CONTAINER_multihashmap_get_multiple (ent->results, &key, |
390 | &key, | ||
391 | &test_result_present, | 390 | &test_result_present, |
392 | (void *) uri)) | 391 | (void *) uri)) |
393 | return; /* duplicate result */ | 392 | return; /* duplicate result */ |
394 | /* try to find search result in master map */ | 393 | /* try to find search result in master map */ |
395 | grc.sr = NULL; | 394 | grc.sr = NULL; |
396 | grc.uri = uri; | 395 | grc.uri = uri; |
397 | GNUNET_CONTAINER_multihashmap_get_multiple (sc->master_result_map, | 396 | GNUNET_CONTAINER_multihashmap_get_multiple (sc->master_result_map, &key, |
398 | &key, &get_result_present, &grc); | 397 | &get_result_present, &grc); |
399 | sr = grc.sr; | 398 | sr = grc.sr; |
400 | is_new = (NULL == sr) || (sr->mandatory_missing > 0); | 399 | is_new = (NULL == sr) || (sr->mandatory_missing > 0); |
401 | if (NULL == sr) | 400 | if (NULL == sr) |
@@ -406,9 +405,7 @@ process_ksk_result (struct GNUNET_FS_SearchContext *sc, | |||
406 | sr->meta = GNUNET_CONTAINER_meta_data_duplicate (meta); | 405 | sr->meta = GNUNET_CONTAINER_meta_data_duplicate (meta); |
407 | sr->mandatory_missing = sc->mandatory_count; | 406 | sr->mandatory_missing = sc->mandatory_count; |
408 | sr->key = key; | 407 | sr->key = key; |
409 | GNUNET_CONTAINER_multihashmap_put (sc->master_result_map, | 408 | GNUNET_CONTAINER_multihashmap_put (sc->master_result_map, &key, sr, |
410 | &key, | ||
411 | sr, | ||
412 | GNUNET_CONTAINER_MULTIHASHMAPOPTION_MULTIPLE); | 409 | GNUNET_CONTAINER_MULTIHASHMAPOPTION_MULTIPLE); |
413 | } | 410 | } |
414 | else | 411 | else |
@@ -464,8 +461,7 @@ static struct GNUNET_FS_SearchContext *search_start (struct GNUNET_FS_Handle *h, | |||
464 | * @param meta metadata associated with the URI | 461 | * @param meta metadata associated with the URI |
465 | */ | 462 | */ |
466 | static void | 463 | static void |
467 | process_sks_result (struct GNUNET_FS_SearchContext *sc, | 464 | process_sks_result (struct GNUNET_FS_SearchContext *sc, const char *id_update, |
468 | const char *id_update, | ||
469 | const struct GNUNET_FS_Uri *uri, | 465 | const struct GNUNET_FS_Uri *uri, |
470 | const struct GNUNET_CONTAINER_MetaData *meta) | 466 | const struct GNUNET_CONTAINER_MetaData *meta) |
471 | { | 467 | { |
@@ -475,11 +471,10 @@ process_sks_result (struct GNUNET_FS_SearchContext *sc, | |||
475 | 471 | ||
476 | /* check if new */ | 472 | /* check if new */ |
477 | GNUNET_FS_uri_to_key (uri, &key); | 473 | GNUNET_FS_uri_to_key (uri, &key); |
478 | GNUNET_CRYPTO_hash_xor (&uri->data.chk.chk.key, | 474 | GNUNET_CRYPTO_hash_xor (&uri->data.chk.chk.key, &uri->data.chk.chk.query, |
479 | &uri->data.chk.chk.query, &key); | 475 | &key); |
480 | if (GNUNET_SYSERR == | 476 | if (GNUNET_SYSERR == |
481 | GNUNET_CONTAINER_multihashmap_get_multiple (sc->master_result_map, | 477 | GNUNET_CONTAINER_multihashmap_get_multiple (sc->master_result_map, &key, |
482 | &key, | ||
483 | &test_result_present, | 478 | &test_result_present, |
484 | (void *) uri)) | 479 | (void *) uri)) |
485 | return; /* duplicate result */ | 480 | return; /* duplicate result */ |
@@ -488,9 +483,7 @@ process_sks_result (struct GNUNET_FS_SearchContext *sc, | |||
488 | sr->uri = GNUNET_FS_uri_dup (uri); | 483 | sr->uri = GNUNET_FS_uri_dup (uri); |
489 | sr->meta = GNUNET_CONTAINER_meta_data_duplicate (meta); | 484 | sr->meta = GNUNET_CONTAINER_meta_data_duplicate (meta); |
490 | sr->key = key; | 485 | sr->key = key; |
491 | GNUNET_CONTAINER_multihashmap_put (sc->master_result_map, | 486 | GNUNET_CONTAINER_multihashmap_put (sc->master_result_map, &key, sr, |
492 | &key, | ||
493 | sr, | ||
494 | GNUNET_CONTAINER_MULTIHASHMAPOPTION_MULTIPLE); | 487 | GNUNET_CONTAINER_MULTIHASHMAPOPTION_MULTIPLE); |
495 | GNUNET_FS_search_result_sync_ (sr); | 488 | GNUNET_FS_search_result_sync_ (sr); |
496 | GNUNET_FS_search_start_probe_ (sr); | 489 | GNUNET_FS_search_start_probe_ (sr); |
@@ -515,8 +508,8 @@ process_sks_result (struct GNUNET_FS_SearchContext *sc, | |||
515 | * @param size size of kb | 508 | * @param size size of kb |
516 | */ | 509 | */ |
517 | static void | 510 | static void |
518 | process_kblock (struct GNUNET_FS_SearchContext *sc, | 511 | process_kblock (struct GNUNET_FS_SearchContext *sc, const struct KBlock *kb, |
519 | const struct KBlock *kb, size_t size) | 512 | size_t size) |
520 | { | 513 | { |
521 | unsigned int i; | 514 | unsigned int i; |
522 | size_t j; | 515 | size_t j; |
@@ -544,9 +537,9 @@ process_kblock (struct GNUNET_FS_SearchContext *sc, | |||
544 | } | 537 | } |
545 | /* decrypt */ | 538 | /* decrypt */ |
546 | GNUNET_CRYPTO_hash_to_aes_key (&sc->requests[i].key, &skey, &iv); | 539 | GNUNET_CRYPTO_hash_to_aes_key (&sc->requests[i].key, &skey, &iv); |
547 | if (-1 == GNUNET_CRYPTO_aes_decrypt (&kb[1], | 540 | if (-1 == |
548 | size - sizeof (struct KBlock), | 541 | GNUNET_CRYPTO_aes_decrypt (&kb[1], size - sizeof (struct KBlock), &skey, |
549 | &skey, &iv, pt)) | 542 | &iv, pt)) |
550 | { | 543 | { |
551 | GNUNET_break (0); | 544 | GNUNET_break (0); |
552 | return; | 545 | return; |
@@ -593,8 +586,8 @@ process_kblock (struct GNUNET_FS_SearchContext *sc, | |||
593 | * @param size size of nb | 586 | * @param size size of nb |
594 | */ | 587 | */ |
595 | static void | 588 | static void |
596 | process_nblock (struct GNUNET_FS_SearchContext *sc, | 589 | process_nblock (struct GNUNET_FS_SearchContext *sc, const struct NBlock *nb, |
597 | const struct NBlock *nb, size_t size) | 590 | size_t size) |
598 | { | 591 | { |
599 | unsigned int i; | 592 | unsigned int i; |
600 | size_t j; | 593 | size_t j; |
@@ -622,9 +615,9 @@ process_nblock (struct GNUNET_FS_SearchContext *sc, | |||
622 | } | 615 | } |
623 | /* decrypt */ | 616 | /* decrypt */ |
624 | GNUNET_CRYPTO_hash_to_aes_key (&sc->requests[i].key, &skey, &iv); | 617 | GNUNET_CRYPTO_hash_to_aes_key (&sc->requests[i].key, &skey, &iv); |
625 | if (-1 == GNUNET_CRYPTO_aes_decrypt (&nb[1], | 618 | if (-1 == |
626 | size - sizeof (struct NBlock), | 619 | GNUNET_CRYPTO_aes_decrypt (&nb[1], size - sizeof (struct NBlock), &skey, |
627 | &skey, &iv, pt)) | 620 | &iv, pt)) |
628 | { | 621 | { |
629 | GNUNET_break (0); | 622 | GNUNET_break (0); |
630 | return; | 623 | return; |
@@ -654,11 +647,9 @@ process_nblock (struct GNUNET_FS_SearchContext *sc, | |||
654 | sizeof (struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded), | 647 | sizeof (struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded), |
655 | &uri->data.sks.namespace); | 648 | &uri->data.sks.namespace); |
656 | uris = GNUNET_FS_uri_to_string (uri); | 649 | uris = GNUNET_FS_uri_to_string (uri); |
657 | GNUNET_CONTAINER_meta_data_insert (meta, | 650 | GNUNET_CONTAINER_meta_data_insert (meta, "<gnunet>", EXTRACTOR_METATYPE_URI, |
658 | "<gnunet>", | 651 | EXTRACTOR_METAFORMAT_UTF8, "text/plain", |
659 | EXTRACTOR_METATYPE_URI, | 652 | uris, strlen (uris) + 1); |
660 | EXTRACTOR_METAFORMAT_UTF8, | ||
661 | "text/plain", uris, strlen (uris) + 1); | ||
662 | GNUNET_free (uris); | 653 | GNUNET_free (uris); |
663 | GNUNET_PSEUDONYM_add (sc->h->cfg, &uri->data.sks.namespace, meta); | 654 | GNUNET_PSEUDONYM_add (sc->h->cfg, &uri->data.sks.namespace, meta); |
664 | /* process */ | 655 | /* process */ |
@@ -678,8 +669,8 @@ process_nblock (struct GNUNET_FS_SearchContext *sc, | |||
678 | * @param size size of sb | 669 | * @param size size of sb |
679 | */ | 670 | */ |
680 | static void | 671 | static void |
681 | process_sblock (struct GNUNET_FS_SearchContext *sc, | 672 | process_sblock (struct GNUNET_FS_SearchContext *sc, const struct SBlock *sb, |
682 | const struct SBlock *sb, size_t size) | 673 | size_t size) |
683 | { | 674 | { |
684 | size_t len = size - sizeof (struct SBlock); | 675 | size_t len = size - sizeof (struct SBlock); |
685 | char pt[len]; | 676 | char pt[len]; |
@@ -719,8 +710,8 @@ process_sblock (struct GNUNET_FS_SearchContext *sc, | |||
719 | uri = GNUNET_FS_uri_parse (uris, &emsg); | 710 | uri = GNUNET_FS_uri_parse (uris, &emsg); |
720 | if (uri == NULL) | 711 | if (uri == NULL) |
721 | { | 712 | { |
722 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | 713 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Failed to parse URI `%s': %s\n", uris, |
723 | "Failed to parse URI `%s': %s\n", uris, emsg); | 714 | emsg); |
724 | GNUNET_break_op (0); /* sblock malformed */ | 715 | GNUNET_break_op (0); /* sblock malformed */ |
725 | GNUNET_free_non_null (emsg); | 716 | GNUNET_free_non_null (emsg); |
726 | GNUNET_CONTAINER_meta_data_destroy (meta); | 717 | GNUNET_CONTAINER_meta_data_destroy (meta); |
@@ -744,10 +735,9 @@ process_sblock (struct GNUNET_FS_SearchContext *sc, | |||
744 | * @param size size of data | 735 | * @param size size of data |
745 | */ | 736 | */ |
746 | static void | 737 | static void |
747 | process_result (struct GNUNET_FS_SearchContext *sc, | 738 | process_result (struct GNUNET_FS_SearchContext *sc, enum GNUNET_BLOCK_Type type, |
748 | enum GNUNET_BLOCK_Type type, | 739 | struct GNUNET_TIME_Absolute expiration, const void *data, |
749 | struct GNUNET_TIME_Absolute expiration, | 740 | size_t size) |
750 | const void *data, size_t size) | ||
751 | { | 741 | { |
752 | if (GNUNET_TIME_absolute_get_duration (expiration).rel_value > 0) | 742 | if (GNUNET_TIME_absolute_get_duration (expiration).rel_value > 0) |
753 | { | 743 | { |
@@ -840,8 +830,7 @@ receive_results (void *cls, const struct GNUNET_MessageHeader *msg) | |||
840 | const struct PutMessage *cm; | 830 | const struct PutMessage *cm; |
841 | uint16_t msize; | 831 | uint16_t msize; |
842 | 832 | ||
843 | if ((NULL == msg) || | 833 | if ((NULL == msg) || (ntohs (msg->type) != GNUNET_MESSAGE_TYPE_FS_PUT) || |
844 | (ntohs (msg->type) != GNUNET_MESSAGE_TYPE_FS_PUT) || | ||
845 | (ntohs (msg->size) <= sizeof (struct PutMessage))) | 834 | (ntohs (msg->size) <= sizeof (struct PutMessage))) |
846 | { | 835 | { |
847 | try_reconnect (sc); | 836 | try_reconnect (sc); |
@@ -851,13 +840,12 @@ receive_results (void *cls, const struct GNUNET_MessageHeader *msg) | |||
851 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 840 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
852 | "Receiving %u bytes of result from fs service\n", msize); | 841 | "Receiving %u bytes of result from fs service\n", msize); |
853 | cm = (const struct PutMessage *) msg; | 842 | cm = (const struct PutMessage *) msg; |
854 | process_result (sc, | 843 | process_result (sc, ntohl (cm->type), |
855 | ntohl (cm->type), | 844 | GNUNET_TIME_absolute_ntoh (cm->expiration), &cm[1], |
856 | GNUNET_TIME_absolute_ntoh (cm->expiration), | 845 | msize - sizeof (struct PutMessage)); |
857 | &cm[1], msize - sizeof (struct PutMessage)); | ||
858 | /* continue receiving */ | 846 | /* continue receiving */ |
859 | GNUNET_CLIENT_receive (sc->client, | 847 | GNUNET_CLIENT_receive (sc->client, &receive_results, sc, |
860 | &receive_results, sc, GNUNET_TIME_UNIT_FOREVER_REL); | 848 | GNUNET_TIME_UNIT_FOREVER_REL); |
861 | } | 849 | } |
862 | 850 | ||
863 | 851 | ||
@@ -867,8 +855,8 @@ receive_results (void *cls, const struct GNUNET_MessageHeader *msg) | |||
867 | * | 855 | * |
868 | * @param sc context for the search | 856 | * @param sc context for the search |
869 | */ | 857 | */ |
870 | static void | 858 | static void schedule_transmit_search_request (struct GNUNET_FS_SearchContext |
871 | schedule_transmit_search_request (struct GNUNET_FS_SearchContext *sc); | 859 | *sc); |
872 | 860 | ||
873 | 861 | ||
874 | /** | 862 | /** |
@@ -1064,8 +1052,8 @@ transmit_search_request (void *cls, size_t size, void *buf) | |||
1064 | return msize; | 1052 | return msize; |
1065 | } | 1053 | } |
1066 | } | 1054 | } |
1067 | GNUNET_CLIENT_receive (sc->client, | 1055 | GNUNET_CLIENT_receive (sc->client, &receive_results, sc, |
1068 | &receive_results, sc, GNUNET_TIME_UNIT_FOREVER_REL); | 1056 | GNUNET_TIME_UNIT_FOREVER_REL); |
1069 | return msize; | 1057 | return msize; |
1070 | } | 1058 | } |
1071 | 1059 | ||
@@ -1090,8 +1078,7 @@ schedule_transmit_search_request (struct GNUNET_FS_SearchContext *sc) | |||
1090 | fit = (GNUNET_SERVER_MAX_MESSAGE_SIZE - 1 - size) / sizeof (GNUNET_HashCode); | 1078 | fit = (GNUNET_SERVER_MAX_MESSAGE_SIZE - 1 - size) / sizeof (GNUNET_HashCode); |
1091 | fit = GNUNET_MIN (fit, sqms); | 1079 | fit = GNUNET_MIN (fit, sqms); |
1092 | size += sizeof (GNUNET_HashCode) * fit; | 1080 | size += sizeof (GNUNET_HashCode) * fit; |
1093 | GNUNET_CLIENT_notify_transmit_ready (sc->client, | 1081 | GNUNET_CLIENT_notify_transmit_ready (sc->client, size, |
1094 | size, | ||
1095 | GNUNET_CONSTANTS_SERVICE_TIMEOUT, | 1082 | GNUNET_CONSTANTS_SERVICE_TIMEOUT, |
1096 | GNUNET_NO, &transmit_search_request, sc); | 1083 | GNUNET_NO, &transmit_search_request, sc); |
1097 | 1084 | ||
@@ -1140,9 +1127,9 @@ try_reconnect (struct GNUNET_FS_SearchContext *sc) | |||
1140 | GNUNET_CLIENT_disconnect (sc->client, GNUNET_NO); | 1127 | GNUNET_CLIENT_disconnect (sc->client, GNUNET_NO); |
1141 | sc->client = NULL; | 1128 | sc->client = NULL; |
1142 | } | 1129 | } |
1143 | sc->task | 1130 | sc->task = |
1144 | = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS, | 1131 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS, &do_reconnect, |
1145 | &do_reconnect, sc); | 1132 | sc); |
1146 | } | 1133 | } |
1147 | 1134 | ||
1148 | 1135 | ||
@@ -1159,10 +1146,8 @@ try_reconnect (struct GNUNET_FS_SearchContext *sc) | |||
1159 | * @return context that can be used to control the search | 1146 | * @return context that can be used to control the search |
1160 | */ | 1147 | */ |
1161 | static struct GNUNET_FS_SearchContext * | 1148 | static struct GNUNET_FS_SearchContext * |
1162 | search_start (struct GNUNET_FS_Handle *h, | 1149 | search_start (struct GNUNET_FS_Handle *h, const struct GNUNET_FS_Uri *uri, |
1163 | const struct GNUNET_FS_Uri *uri, | 1150 | uint32_t anonymity, enum GNUNET_FS_SearchOptions options, |
1164 | uint32_t anonymity, | ||
1165 | enum GNUNET_FS_SearchOptions options, | ||
1166 | void *cctx, struct GNUNET_FS_SearchResult *psearch) | 1151 | void *cctx, struct GNUNET_FS_SearchResult *psearch) |
1167 | { | 1152 | { |
1168 | struct GNUNET_FS_SearchContext *sc; | 1153 | struct GNUNET_FS_SearchContext *sc; |
@@ -1215,8 +1200,9 @@ GNUNET_FS_search_start_searching_ (struct GNUNET_FS_SearchContext *sc) | |||
1215 | if (GNUNET_FS_uri_test_ksk (sc->uri)) | 1200 | if (GNUNET_FS_uri_test_ksk (sc->uri)) |
1216 | { | 1201 | { |
1217 | GNUNET_assert (0 != sc->uri->data.ksk.keywordCount); | 1202 | GNUNET_assert (0 != sc->uri->data.ksk.keywordCount); |
1218 | sc->requests = GNUNET_malloc (sizeof (struct SearchRequestEntry) * | 1203 | sc->requests = |
1219 | sc->uri->data.ksk.keywordCount); | 1204 | GNUNET_malloc (sizeof (struct SearchRequestEntry) * |
1205 | sc->uri->data.ksk.keywordCount); | ||
1220 | for (i = 0; i < sc->uri->data.ksk.keywordCount; i++) | 1206 | for (i = 0; i < sc->uri->data.ksk.keywordCount; i++) |
1221 | { | 1207 | { |
1222 | keyword = &sc->uri->data.ksk.keywords[i][1]; | 1208 | keyword = &sc->uri->data.ksk.keywords[i][1]; |
@@ -1253,8 +1239,8 @@ GNUNET_FS_search_start_searching_ (struct GNUNET_FS_SearchContext *sc) | |||
1253 | * @return GNUNET_OK | 1239 | * @return GNUNET_OK |
1254 | */ | 1240 | */ |
1255 | static int | 1241 | static int |
1256 | search_result_freeze_probes (void *cls, | 1242 | search_result_freeze_probes (void *cls, const GNUNET_HashCode * key, |
1257 | const GNUNET_HashCode * key, void *value) | 1243 | void *value) |
1258 | { | 1244 | { |
1259 | struct GNUNET_FS_SearchResult *sr = value; | 1245 | struct GNUNET_FS_SearchResult *sr = value; |
1260 | 1246 | ||
@@ -1283,8 +1269,8 @@ search_result_freeze_probes (void *cls, | |||
1283 | * @return GNUNET_OK | 1269 | * @return GNUNET_OK |
1284 | */ | 1270 | */ |
1285 | static int | 1271 | static int |
1286 | search_result_resume_probes (void *cls, | 1272 | search_result_resume_probes (void *cls, const GNUNET_HashCode * key, |
1287 | const GNUNET_HashCode * key, void *value) | 1273 | void *value) |
1288 | { | 1274 | { |
1289 | struct GNUNET_FS_SearchResult *sr = value; | 1275 | struct GNUNET_FS_SearchResult *sr = value; |
1290 | 1276 | ||
@@ -1383,8 +1369,7 @@ GNUNET_FS_search_signal_suspend_ (void *cls) | |||
1383 | */ | 1369 | */ |
1384 | struct GNUNET_FS_SearchContext * | 1370 | struct GNUNET_FS_SearchContext * |
1385 | GNUNET_FS_search_start (struct GNUNET_FS_Handle *h, | 1371 | GNUNET_FS_search_start (struct GNUNET_FS_Handle *h, |
1386 | const struct GNUNET_FS_Uri *uri, | 1372 | const struct GNUNET_FS_Uri *uri, uint32_t anonymity, |
1387 | uint32_t anonymity, | ||
1388 | enum GNUNET_FS_SearchOptions options, void *cctx) | 1373 | enum GNUNET_FS_SearchOptions options, void *cctx) |
1389 | { | 1374 | { |
1390 | struct GNUNET_FS_SearchContext *ret; | 1375 | struct GNUNET_FS_SearchContext *ret; |
@@ -1460,13 +1445,12 @@ search_result_free (void *cls, const GNUNET_HashCode * key, void *value) | |||
1460 | if (NULL != sr->download) | 1445 | if (NULL != sr->download) |
1461 | { | 1446 | { |
1462 | sr->download->search = NULL; | 1447 | sr->download->search = NULL; |
1463 | sr->download->top = GNUNET_FS_make_top (sr->download->h, | 1448 | sr->download->top = |
1464 | &GNUNET_FS_download_signal_suspend_, | 1449 | GNUNET_FS_make_top (sr->download->h, |
1465 | sr->download); | 1450 | &GNUNET_FS_download_signal_suspend_, sr->download); |
1466 | if (NULL != sr->download->serialization) | 1451 | if (NULL != sr->download->serialization) |
1467 | { | 1452 | { |
1468 | GNUNET_FS_remove_sync_file_ (sc->h, | 1453 | GNUNET_FS_remove_sync_file_ (sc->h, GNUNET_FS_SYNC_PATH_CHILD_DOWNLOAD, |
1469 | GNUNET_FS_SYNC_PATH_CHILD_DOWNLOAD, | ||
1470 | sr->download->serialization); | 1454 | sr->download->serialization); |
1471 | GNUNET_free (sr->download->serialization); | 1455 | GNUNET_free (sr->download->serialization); |
1472 | sr->download->serialization = NULL; | 1456 | sr->download->serialization = NULL; |
@@ -1519,14 +1503,14 @@ GNUNET_FS_search_stop (struct GNUNET_FS_SearchContext *sc) | |||
1519 | if (sc->serialization != NULL) | 1503 | if (sc->serialization != NULL) |
1520 | { | 1504 | { |
1521 | GNUNET_FS_remove_sync_file_ (sc->h, | 1505 | GNUNET_FS_remove_sync_file_ (sc->h, |
1522 | (sc->psearch_result != NULL) | 1506 | (sc->psearch_result != |
1523 | ? GNUNET_FS_SYNC_PATH_CHILD_SEARCH | 1507 | NULL) ? GNUNET_FS_SYNC_PATH_CHILD_SEARCH : |
1524 | : GNUNET_FS_SYNC_PATH_MASTER_SEARCH, | 1508 | GNUNET_FS_SYNC_PATH_MASTER_SEARCH, |
1525 | sc->serialization); | 1509 | sc->serialization); |
1526 | GNUNET_FS_remove_sync_dir_ (sc->h, | 1510 | GNUNET_FS_remove_sync_dir_ (sc->h, |
1527 | (sc->psearch_result != NULL) | 1511 | (sc->psearch_result != |
1528 | ? GNUNET_FS_SYNC_PATH_CHILD_SEARCH | 1512 | NULL) ? GNUNET_FS_SYNC_PATH_CHILD_SEARCH : |
1529 | : GNUNET_FS_SYNC_PATH_MASTER_SEARCH, | 1513 | GNUNET_FS_SYNC_PATH_MASTER_SEARCH, |
1530 | sc->serialization); | 1514 | sc->serialization); |
1531 | GNUNET_free (sc->serialization); | 1515 | GNUNET_free (sc->serialization); |
1532 | } | 1516 | } |