diff options
author | 2004-08-04 12:02:57 +0000 | |
---|---|---|
committer | 2004-08-04 12:02:57 +0000 | |
commit | 06ccd5dad87daa7ede3ae33928857a729a8043ea (patch) | |
tree | 4edc5a832d45af2da2ff2d07a694b12f7749d3fc /regress/lib/libc | |
parent | return group14 when no primes found - fixes hang on empty /etc/moduli; (diff) | |
download | wireguard-openbsd-06ccd5dad87daa7ede3ae33928857a729a8043ea.tar.xz wireguard-openbsd-06ccd5dad87daa7ede3ae33928857a729a8043ea.zip |
Unbreak malloc0test for use with mmap malloc which allocates objects
in a non-contiguous manner. ok art@
Diffstat (limited to 'regress/lib/libc')
-rw-r--r-- | regress/lib/libc/malloc/malloc0test/malloc0test.c | 27 |
1 files changed, 7 insertions, 20 deletions
diff --git a/regress/lib/libc/malloc/malloc0test/malloc0test.c b/regress/lib/libc/malloc/malloc0test/malloc0test.c index a782424ba18..eb00954f928 100644 --- a/regress/lib/libc/malloc/malloc0test/malloc0test.c +++ b/regress/lib/libc/malloc/malloc0test/malloc0test.c @@ -1,4 +1,4 @@ -/* $OpenBSD: malloc0test.c,v 1.3 2004/02/11 08:16:00 deraadt Exp $ */ +/* $OpenBSD: malloc0test.c,v 1.4 2004/08/04 12:02:57 otto Exp $ */ /* * Public domain. 2001, Theo de Raadt */ @@ -58,10 +58,8 @@ char *prot_table[] = { int main(int argc, char *argv[]) { - caddr_t rblob = malloc(1); - caddr_t zblob = malloc(0); - caddr_t *blobp, blob; - int size, rsize, tsize; + caddr_t blob; + int size, tsize; int prot; int rval = 0, fuckup = 0; long limit = 200000, count; @@ -101,32 +99,21 @@ usage: exit(rval); } - if (size == 0) { - blobp = &zblob; - tsize = 16; - } else { - blobp = &rblob; - tsize = size; - } - - rsize = blob - *blobp; - fuckup = SIZE < 16 && size >= rsize; + tsize = size == 0 ? 16 : size; + fuckup = 0; prot = test(blob, tsize); - if (size == 0 && rsize < 16) - fuckup = 1; if (size == 0 && prot < 2) fuckup = 1; if (fuckup) { - printf("%8p %6d %6d %20s %10s\n", blob, size, rsize, + printf("%8p %6d %20s %10s\n", blob, size, prot_table[prot], fuckup ? "fuckup" : ""); rval = 1; } - *blobp = blob; if (!silent && count % 100000 == 0 && count != 0) - fprintf(stderr, "count = %d\n", count); + fprintf(stderr, "count = %ld\n", count); } return rval; |