mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-27 03:41:23 +08:00
Do recend check before realigning on strict alignment arches, as otherwise it was comparing a stack address + offset with a mmap address.
This commit is contained in:
parent
1a77d37f92
commit
3687a5a7c5
@ -122,6 +122,10 @@ nscd_getserv_r (const char *crit, size_t critlen, const char *proto,
|
||||
retval = -2;
|
||||
goto out;
|
||||
}
|
||||
if (__builtin_expect ((const char *) aliases_len
|
||||
+ serv_resp.s_aliases_cnt * sizeof (uint32_t)
|
||||
> recend, 0))
|
||||
goto out;
|
||||
|
||||
#ifndef _STRING_ARCH_unaligned
|
||||
/* The aliases_len array in the mapped database might very
|
||||
@ -138,10 +142,6 @@ nscd_getserv_r (const char *crit, size_t critlen, const char *proto,
|
||||
* sizeof (uint32_t));
|
||||
}
|
||||
#endif
|
||||
if (__builtin_expect ((const char *) aliases_len
|
||||
+ serv_resp.s_aliases_cnt * sizeof (uint32_t)
|
||||
> recend, 0))
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user