aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2010-08-17 09:42:50 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2010-08-17 09:42:50 +0000
commit7ac7ad63d881c9da37c4e52ec7396698a84a0b6d (patch)
treebaa5e1681b763f8c091e675952b64853d42fb60b /tools
parent3affea8f990e70e79b8a8582e7f9c4b011c0fa7c (diff)
downloadsrc-7ac7ad63d881c9da37c4e52ec7396698a84a0b6d.tar.gz
src-7ac7ad63d881c9da37c4e52ec7396698a84a0b6d.zip
Add simple test to check the functioning of retrieval of
pagesize()/pagesizes() after change to use aux vector. Note that public function getosreldate() is different from libc-internal __getosreldate() and does not use aux to fetch osreldate value. MFC after: 1 month
Notes
Notes: svn path=/head/; revision=211418
Diffstat (limited to 'tools')
-rw-r--r--tools/test/auxinfo/Makefile7
-rw-r--r--tools/test/auxinfo/auxinfo.c58
2 files changed, 65 insertions, 0 deletions
diff --git a/tools/test/auxinfo/Makefile b/tools/test/auxinfo/Makefile
new file mode 100644
index 000000000000..e6e57685db69
--- /dev/null
+++ b/tools/test/auxinfo/Makefile
@@ -0,0 +1,7 @@
+# $FreeBSD$
+
+PROG= auxinfo
+NO_MAN=
+WARNS?= 6
+
+.include <bsd.prog.mk>
diff --git a/tools/test/auxinfo/auxinfo.c b/tools/test/auxinfo/auxinfo.c
new file mode 100644
index 000000000000..374bed8b4299
--- /dev/null
+++ b/tools/test/auxinfo/auxinfo.c
@@ -0,0 +1,58 @@
+/*
+ * This file is in public domain.
+ * Written by Konstantin Belousov <kib@freebsd.org>
+ *
+ * $FreeBSD$
+ */
+
+#include <sys/mman.h>
+#include <err.h>
+#include <stdlib.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <unistd.h>
+
+static void
+test_pagesizes(void)
+{
+ size_t *ps;
+ int i, nelem;
+
+ nelem = getpagesizes(NULL, 0);
+ if (nelem == -1)
+ err(1, "getpagesizes(NULL, 0)");
+ ps = malloc(nelem * sizeof(size_t));
+ if (ps == NULL)
+ err(1, "malloc");
+ nelem = getpagesizes(ps, nelem);
+ if (nelem == -1)
+ err(1, "getpagesizes");
+ printf("Supported page sizes:");
+ for (i = 0; i < nelem; i++)
+ printf(" %jd", (intmax_t)ps[i]);
+ printf("\n");
+}
+
+static void
+test_pagesize(void)
+{
+
+ printf("Pagesize: %d\n", getpagesize());
+}
+
+static void
+test_osreldate(void)
+{
+
+ printf("OSRELDATE: %d\n", getosreldate());
+}
+
+int
+main(int argc __unused, char *argv[] __unused)
+{
+
+ test_pagesizes();
+ test_pagesize();
+ test_osreldate();
+ return (0);
+}