comparison extern/libbsd/reallocarray.c @ 1079:8f26ee9cc6dd

misc: unconditionnally add BSD->POSIX extensions
author David Demelier <markand@malikania.fr>
date Fri, 16 Jul 2021 20:18:29 +0200
parents 69b90a8d4d35
children
comparison
equal deleted inserted replaced
1078:d0adbcc0768e 1079:8f26ee9cc6dd
25 * if both s1 < MUL_NO_OVERFLOW and s2 < MUL_NO_OVERFLOW 25 * if both s1 < MUL_NO_OVERFLOW and s2 < MUL_NO_OVERFLOW
26 */ 26 */
27 #define MUL_NO_OVERFLOW ((size_t)1 << (sizeof(size_t) * 4)) 27 #define MUL_NO_OVERFLOW ((size_t)1 << (sizeof(size_t) * 4))
28 28
29 void * 29 void *
30 reallocarray(void *optr, size_t nmemb, size_t size) 30 openbsd_reallocarray(void *optr, size_t nmemb, size_t size)
31 { 31 {
32 if ((nmemb >= MUL_NO_OVERFLOW || size >= MUL_NO_OVERFLOW) && 32 if ((nmemb >= MUL_NO_OVERFLOW || size >= MUL_NO_OVERFLOW) &&
33 nmemb > 0 && SIZE_MAX / nmemb < size) { 33 nmemb > 0 && SIZE_MAX / nmemb < size) {
34 errno = ENOMEM; 34 errno = ENOMEM;
35 return NULL; 35 return NULL;