commit a17dc0875ad0d434d9cf66d36ed23fbd69286bf3 Author: Nick Mathewson nickm@torproject.org Date: Mon May 7 13:56:39 2018 -0400
Avoid unsigned integer underflow on empty input. --- src/or/dirserv.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/src/or/dirserv.c b/src/or/dirserv.c index d9a9b8522..e47533759 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -2641,6 +2641,12 @@ measured_bw_line_parse(measured_bw_line_t *out, const char *orig_line) int got_node_id = 0; char *strtok_state; /* lame sauce d'jour */
+ if (strlen(line) == 0) { + log_warn(LD_DIRSERV, "Empty line in bandwidth file"); + tor_free(line); + return -1; + } + /* Remove end of line character, so that is not part of the token */ if (line[strlen(line) - 1] == '\n') { line[strlen(line) - 1] = '\0';