Check error return from sysconf in secure memory code
We use the sysconf function to provide details about the page size in the secure memory code. This function can return -1 on error so we should check for this before proceeding. Reviewed-by: Kurt Roeckx <kurt@openssl.org>
This commit is contained in:
parent
ae4d0c8d22
commit
9ae720b4dc
@ -333,8 +333,18 @@ static int sh_init(size_t size, int minsize)
|
|||||||
goto err;
|
goto err;
|
||||||
|
|
||||||
/* Allocate space for heap, and two extra pages as guards */
|
/* Allocate space for heap, and two extra pages as guards */
|
||||||
#ifdef _SC_PAGE_SIZE
|
#if defined(_SC_PAGE_SIZE) || defined (_SC_PAGESIZE)
|
||||||
pgsize = (size_t)sysconf(_SC_PAGE_SIZE);
|
{
|
||||||
|
# if defined(_SC_PAGE_SIZE)
|
||||||
|
long tmppgsize = sysconf(_SC_PAGE_SIZE);
|
||||||
|
# else
|
||||||
|
long tmppgsize = sysconf(_SC_PAGESIZE);
|
||||||
|
# endif
|
||||||
|
if (tmppgsize < 1)
|
||||||
|
pgsize = PAGE_SIZE;
|
||||||
|
else
|
||||||
|
pgsize = (size_t)tmppgsize;
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
pgsize = PAGE_SIZE;
|
pgsize = PAGE_SIZE;
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user