From: Nick Mathewson Date: Wed, 15 Mar 2017 20:43:24 +0000 (-0400) Subject: Make CONSENSUS_LINE_MAX_LEN a real define X-Git-Tag: tor-0.3.1.1-alpha~213^2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=83049cebc0b3c8221f0b2a7d0848acf9477478c4;p=thirdparty%2Ftor.git Make CONSENSUS_LINE_MAX_LEN a real define --- diff --git a/src/or/consdiff.c b/src/or/consdiff.c index a01299c747..2a97797f3f 100644 --- a/src/or/consdiff.c +++ b/src/or/consdiff.c @@ -1139,6 +1139,9 @@ consdiff_apply_diff(const smartlist_t *cons1, return cons2_str; } +/** Any consensus line longer than this means that the input is invalid. */ +#define CONSENSUS_LINE_MAX_LEN (1<<20) + /** * Helper: For every NL-terminated line in s, add a cdline referring to * that line (without trailing newline) to out. Return -1 if there are @@ -1160,7 +1163,7 @@ consensus_split_lines(smartlist_t *out, const char *s, memarea_t *area) /* File doesn't end with newline. */ return -1; } - if (eol - s > UINT32_MAX) { + if (eol - s > CONSENSUS_LINE_MAX_LEN) { /* Line is far too long. */ return -1; }