From 2169efb24f0a8ab610b4bb7bd0bc22c4700e667e Mon Sep 17 00:00:00 2001 From: Vincent Bernat Date: Sat, 22 Jun 2013 13:57:31 +0200 Subject: [PATCH] tokenizer: input buffer was too small --- NEWS | 4 ++++ src/client/tokenizer.c | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) 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; -- 2.39.5