fix uninitialized scopeid in lookups from hosts file and ip literals

This commit is contained in:
Timo Teräs 2015-09-11 06:15:06 +00:00 committed by Rich Felker
parent 878887c50c
commit cb1c88d42b
1 changed files with 2 additions and 2 deletions

View File

@ -24,7 +24,7 @@ int __lookup_ipliteral(struct address buf[static 1], const char *name, int famil
if (family != AF_INET) { if (family != AF_INET) {
char tmp[64]; char tmp[64];
char *p = strchr(name, '%'), *z; char *p = strchr(name, '%'), *z;
unsigned long long scopeid; unsigned long long scopeid = 0;
if (p && p-name < 64) { if (p && p-name < 64) {
memcpy(tmp, name, p-name); memcpy(tmp, name, p-name);
tmp[p-name] = 0; tmp[p-name] = 0;
@ -44,8 +44,8 @@ int __lookup_ipliteral(struct address buf[static 1], const char *name, int famil
if (!scopeid) return EAI_NONAME; if (!scopeid) return EAI_NONAME;
} }
if (scopeid > UINT_MAX) return EAI_NONAME; if (scopeid > UINT_MAX) return EAI_NONAME;
buf[0].scopeid = scopeid;
} }
buf[0].scopeid = scopeid;
return 1; return 1;
} }
return 0; return 0;