diff options
author | Liubov Dmitrieva <liubov.dmitrieva@intel.com> | 2012-12-22 20:51:45 +0400 |
---|---|---|
committer | Liubov Dmitrieva <ldmitrie@sourceware.org> | 2013-10-23 19:07:37 +0400 |
commit | 3bfd26d36c5ec07910d1cf6b6df7c8f331964824 (patch) | |
tree | e0a08c3d87f8fee3b862250dd171131f457d9829 | |
parent | 90cb32ab6fc7f40d9c16aada2cfc34d9beb0b3e8 (diff) | |
download | glibc-3bfd26d36c5ec07910d1cf6b6df7c8f331964824.tar glibc-3bfd26d36c5ec07910d1cf6b6df7c8f331964824.tar.gz glibc-3bfd26d36c5ec07910d1cf6b6df7c8f331964824.tar.bz2 glibc-3bfd26d36c5ec07910d1cf6b6df7c8f331964824.zip |
Buffer overrun detected by Intel MPX at sysdeps/unix/sysv/linux/ifaddrs.c [BZ 15698]
-rw-r--r-- | sysdeps/unix/sysv/linux/ifaddrs.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sysdeps/unix/sysv/linux/ifaddrs.c b/sysdeps/unix/sysv/linux/ifaddrs.c index 89fda156a2..4f5f7b5d46 100644 --- a/sysdeps/unix/sysv/linux/ifaddrs.c +++ b/sysdeps/unix/sysv/linux/ifaddrs.c @@ -782,9 +782,11 @@ getifaddrs_internal (struct ifaddrs **ifap) for (i = 0; i < (preflen / 8); i++) *cp++ = 0xff; - c = 0xff; - c <<= (8 - (preflen % 8)); - *cp = c; + if (preflen < max_prefixlen) { + c = 0xff; + c <<= (8 - (preflen % 8)); + *cp = c; + } } } } |