prevent integer overflow
This change adds individual bounds checks for namelen and prefixlen in order to prevent integer overflow (which could cause memory corruption).
This commit is contained in:
parent
4db99f4012
commit
12bc3e2937
|
|
@ -711,7 +711,9 @@ rmib_call(const message * m_in)
|
||||||
*/
|
*/
|
||||||
/* A zero name length is valid and should always yield EISDIR. */
|
/* A zero name length is valid and should always yield EISDIR. */
|
||||||
namelen = m_in->m_mib_lsys_call.name_len;
|
namelen = m_in->m_mib_lsys_call.name_len;
|
||||||
if (prefixlen + namelen > __arraycount(name))
|
if (namelen > __arraycount(name) ||
|
||||||
|
prefixlen > __arraycount(name) ||
|
||||||
|
prefixlen + namelen > __arraycount(name))
|
||||||
return EINVAL;
|
return EINVAL;
|
||||||
|
|
||||||
if (namelen > 0) {
|
if (namelen > 0) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user