From: Vincent Bernat Date: Sat, 22 Jun 2013 11:57:31 +0000 (+0200) Subject: tokenizer: input buffer was too small X-Git-Tag: 0.7.5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2169efb24f0a8ab610b4bb7bd0bc22c4700e667e;p=thirdparty%2Flldpd.git tokenizer: input buffer was too small --- diff --git a/NEWS b/NEWS index 2315b74c..81123307 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,7 @@ +lldpd (0.7.5) + * Fixes: + + Segfault while tokenizing in lldpcli. + lldpd (0.7.4) * Fixes: + Segfault in lldpcli. diff --git a/src/client/tokenizer.c b/src/client/tokenizer.c index c1fd758c..e751d729 100644 --- a/src/client/tokenizer.c +++ b/src/client/tokenizer.c @@ -41,8 +41,8 @@ tokenize_line(const char *line, int *argc, char ***argv) int escaped = 0; int ipos = 0; char quote = 0; - char input[2*strlen(line) + 2]; - memset(input, 0, 2*strlen(line) + 4); + char input[2*strlen(line) + 3]; /* 3 = 2 for '\n ' and 1 for \0 */ + memset(input, 0, 2*strlen(line) + 3); for (int pos = 0; line[pos]; pos++) { if (!escaped && strchr(escapes, line[pos])) escaped = 1;