=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/cvs/xmalloc.c,v retrieving revision 1.8 retrieving revision 1.9 diff -c -r1.8 -r1.9 *** src/usr.bin/cvs/xmalloc.c 2007/02/22 06:42:10 1.8 --- src/usr.bin/cvs/xmalloc.c 2009/06/07 08:39:13 1.9 *************** *** 1,4 **** ! /* $OpenBSD: xmalloc.c,v 1.8 2007/02/22 06:42:10 otto Exp $ */ /* * Author: Tatu Ylonen * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland --- 1,4 ---- ! /* $OpenBSD: xmalloc.c,v 1.9 2009/06/07 08:39:13 ray Exp $ */ /* * Author: Tatu Ylonen * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland *************** *** 41,48 **** if (size == 0 || nmemb == 0) fatal("xcalloc: zero size"); ! if (SIZE_T_MAX / nmemb < size) ! fatal("xcalloc: nmemb * size > SIZE_T_MAX"); ptr = calloc(nmemb, size); if (ptr == NULL) fatal("xcalloc: out of memory (allocating %lu bytes)", --- 41,48 ---- if (size == 0 || nmemb == 0) fatal("xcalloc: zero size"); ! if (SIZE_MAX / nmemb < size) ! fatal("xcalloc: nmemb * size > SIZE_MAX"); ptr = calloc(nmemb, size); if (ptr == NULL) fatal("xcalloc: out of memory (allocating %lu bytes)", *************** *** 58,65 **** if (new_size == 0) fatal("xrealloc: zero size"); ! if (SIZE_T_MAX / nmemb < size) ! fatal("xrealloc: nmemb * size > SIZE_T_MAX"); if (ptr == NULL) new_ptr = malloc(new_size); else --- 58,65 ---- if (new_size == 0) fatal("xrealloc: zero size"); ! if (SIZE_MAX / nmemb < size) ! fatal("xrealloc: nmemb * size > SIZE_MAX"); if (ptr == NULL) new_ptr = malloc(new_size); else