提交 8e452aba 编写于 作者: S Samuel Holland 提交者: Rich Felker

avoid out-of-bounds read for invalid quoted timezone

Parsing the timezone name must stop when reaching the null terminator.
In that case, there is no '>' to skip.
上级 526df238
......@@ -86,9 +86,9 @@ static void getname(char *d, const char **p)
int i;
if (**p == '<') {
++*p;
for (i=0; (*p)[i]!='>' && i<TZNAME_MAX; i++)
for (i=0; (*p)[i] && (*p)[i]!='>' && i<TZNAME_MAX; i++)
d[i] = (*p)[i];
++*p;
if ((*p)[i]) ++*p;
} else {
for (i=0; ((*p)[i]|32)-'a'<26U && i<TZNAME_MAX; i++)
d[i] = (*p)[i];
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册