dirparse: reject votes with malformed routerstatus entries

This commit is contained in:
cypherpunks 2020-02-08 20:10:40 +00:00
parent 44facb83d5
commit 5d330997f6

View File

@ -1432,6 +1432,7 @@ networkstatus_parse_vote_from_string(const char *s, const char **eos_out,
smartlist_add(ns->routerstatus_list, rs);
} else {
vote_routerstatus_free(rs);
goto err; // Malformed routerstatus, reject this vote.
}
} else {
routerstatus_t *rs;
@ -1441,6 +1442,8 @@ networkstatus_parse_vote_from_string(const char *s, const char **eos_out,
flav))) {
/* Use exponential-backoff scheduling when downloading microdescs */
smartlist_add(ns->routerstatus_list, rs);
} else {
goto err; // Malformed routerstatus, reject this vote.
}
}
}