diff options
Diffstat (limited to 'libtest/libtest_get_pagesize.c')
| -rw-r--r-- | libtest/libtest_get_pagesize.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/libtest/libtest_get_pagesize.c b/libtest/libtest_get_pagesize.c new file mode 100644 index 0000000..52adbdc --- /dev/null +++ b/libtest/libtest_get_pagesize.c @@ -0,0 +1,37 @@ +/* See LICENSE file for copyright and license details. */ +#include "common.h" +#ifndef TEST + + +size_t +libtest_get_pagesize(void) +{ + long int r; + int saved_errno = errno; + if ((r = sysconf(_SC_PAGESIZE)) <= 0) + if ((r = sysconf(_SC_PAGE_SIZE)) <= 0) + r = 4096L; + errno = saved_errno; + return (size_t)r; +} + + +#else + + +int +main(void) +{ + SET_UP_ALARM(); + +#ifdef __linux__ + errno = 0; + EXPECT(libtest_get_pagesize() == 4096u); + EXPECT(!errno); +#endif + + return 0; +} + + +#endif |
