3 /* ugly. copied from 'bits/mman.h' */
6 #define MAP_PRIVATE 0x02
8 #define MAP_ANONYMOUS 0x20
10 void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset);
16 /* try these adresses until one is free */
17 long *tries[TRIES] = {
26 for (t = 0; t < TRIES; t++) {
27 addr = mmap(tries[t], 4096, PROT_READ | PROT_WRITE,
28 MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED, -1, 0);
34 if ((void *)-1 == addr) {
35 puts("unable to map memory");
36 RET(1); /* keep the statistic clean */
41 printf("try %d\n", t);
44 case 0: RET(try0(0xcafebabe) == 1337);
45 case 1: RET(try1(0xcafebabe) == 1337);
46 case 2: RET(try2(0xcafebabe) == 1337);