1*4f52dfbbSDag-Erling Smørgrav /* Placed in the public domain */ 2*4f52dfbbSDag-Erling Smørgrav 3*4f52dfbbSDag-Erling Smørgrav #ifndef HAVE_GETPAGESIZE 4*4f52dfbbSDag-Erling Smørgrav 5*4f52dfbbSDag-Erling Smørgrav #include <unistd.h> 6*4f52dfbbSDag-Erling Smørgrav #include <limits.h> 7*4f52dfbbSDag-Erling Smørgrav 8*4f52dfbbSDag-Erling Smørgrav int 9*4f52dfbbSDag-Erling Smørgrav getpagesize(void) 10*4f52dfbbSDag-Erling Smørgrav { 11*4f52dfbbSDag-Erling Smørgrav #if defined(HAVE_SYSCONF) && defined(_SC_PAGESIZE) 12*4f52dfbbSDag-Erling Smørgrav long r = sysconf(_SC_PAGESIZE); 13*4f52dfbbSDag-Erling Smørgrav if (r > 0 && r < INT_MAX) 14*4f52dfbbSDag-Erling Smørgrav return (int)r; 15*4f52dfbbSDag-Erling Smørgrav #endif 16*4f52dfbbSDag-Erling Smørgrav /* 17*4f52dfbbSDag-Erling Smørgrav * This is at the lower end of common values and appropriate for 18*4f52dfbbSDag-Erling Smørgrav * our current use of getpagesize() in recallocarray(). 19*4f52dfbbSDag-Erling Smørgrav */ 20*4f52dfbbSDag-Erling Smørgrav return 4096; 21*4f52dfbbSDag-Erling Smørgrav } 22*4f52dfbbSDag-Erling Smørgrav 23*4f52dfbbSDag-Erling Smørgrav #endif /* HAVE_GETPAGESIZE */ 24