xref: /openbsd-src/gnu/usr.bin/cvs/lib/valloc.c (revision 1e72d8d26fae84dfb4bcd4cecabd10b989ec3f29)
1 /* valloc -- return memory aligned to the page size.  */
2 
3 #ifndef HAVE_GETPAGESIZE
4 #define getpagesize() 4096
5 #endif
6 
7 extern char *malloc ();
8 
9 char *
10 valloc (bytes)
11      int bytes;
12 {
13   long pagesize;
14   char *ret;
15 
16   pagesize = getpagesize ();
17   ret = (char *) malloc (bytes + pagesize - 1);
18   if (ret)
19     ret = (char *) ((long) (ret + pagesize - 1) &~ (pagesize - 1));
20   return ret;
21 }
22