avoid sending a request for "keys/fp" (for which we'll get a 400 bad

request) if we need more v3 certs but we've already got pending requests
for all of them.


svn:r12370
This commit is contained in:
Roger Dingledine 2007-11-04 02:06:09 +00:00
parent 9ef72079ae
commit 5bf61633e3

View File

@ -367,6 +367,12 @@ authority_certs_fetch_missing(networkstatus_vote_t *status, time_t now)
fp[HEX_DIGEST_LEN+1] = '\0'; fp[HEX_DIGEST_LEN+1] = '\0';
smartlist_add(fps, fp); smartlist_add(fps, fp);
}); });
if (smartlist_len(fps) == 1) {
/* we didn't add any: they were all pending */
SMARTLIST_FOREACH(fps, char *, cp, tor_free(cp));
smartlist_free(fps);
goto done;
}
resource = smartlist_join_strings(fps, "", 0, NULL); resource = smartlist_join_strings(fps, "", 0, NULL);
resource[strlen(resource)-1] = '\0'; resource[strlen(resource)-1] = '\0';
SMARTLIST_FOREACH(fps, char *, cp, tor_free(cp)); SMARTLIST_FOREACH(fps, char *, cp, tor_free(cp));