1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-28 00:21:52 +03:00

Fix memory overrun in getifaddrs_internal. Fixes bug 15698.

This commit is contained in:
Ondřej Bílka
2014-06-05 19:21:32 +02:00
parent bd1b9d956b
commit d89b3d80f9
3 changed files with 19 additions and 13 deletions

View File

@ -780,10 +780,10 @@ getifaddrs_internal (struct ifaddrs **ifap)
else
preflen = ifam->ifa_prefixlen;
for (i = 0; i < (preflen / 8); i++)
for (i = 0; i < ((preflen - 1) / 8); i++)
*cp++ = 0xff;
c = 0xff;
c <<= (8 - (preflen % 8));
c <<= ((128 - preflen) % 8);
*cp = c;
}
}