Fix a couple of crashes on malformed config files.

Thanks to Stephan Zeisberg and
american fuzzy lop http://lcamtuf.coredump.cx/afl/
This commit is contained in:
Simon Kelley
2017-05-03 22:54:09 +01:00
parent b2a9c571eb
commit 561441320f
2 changed files with 6 additions and 2 deletions

View File

@@ -3848,9 +3848,12 @@ err:
while (arg != last)
{
alias = canonicalise_opt(arg);
if (!alias || !target)
ret_err(_("bad CNAME"));
for (new = daemon->cnames; new; new = new->next)
if (hostname_isequal(new->alias, arg))
if (hostname_isequal(new->alias, alias))
ret_err(_("duplicate CNAME"));
new = opt_malloc(sizeof(struct cname));
new->next = daemon->cnames;

View File

@@ -503,7 +503,8 @@ int parse_hex(char *in, unsigned char *out, int maxlen,
return -1;
out[i] = strtol(&in[j*2], NULL, 16);
mask = mask << 1;
i++;
if (i++ == maxlen)
break;
if (j < bytes - 1)
in[(j+1)*2] = sav;
}