summaryrefslogtreecommitdiff
path: root/src/regress/lib/libc/sleep
diff options
context:
space:
mode:
Diffstat (limited to 'src/regress/lib/libc/sleep')
-rw-r--r--src/regress/lib/libc/sleep/Makefile13
-rw-r--r--src/regress/lib/libc/sleep/sleep_test.c84
2 files changed, 0 insertions, 97 deletions
diff --git a/src/regress/lib/libc/sleep/Makefile b/src/regress/lib/libc/sleep/Makefile
deleted file mode 100644
index 3700b1662a..0000000000
--- a/src/regress/lib/libc/sleep/Makefile
+++ /dev/null
@@ -1,13 +0,0 @@
1# $OpenBSD: Makefile,v 1.1 2009/12/14 05:08:19 guenther Exp $
2
3NOMAN=
4PROG=sleep_test
5CPPFLAGS+=-I${.CURDIR}/../../../../lib/libc
6
7run-regress-${PROG}: ${PROG}
8 [ x$$(./${PROG} 1) = x0 ] || exit 1
9 file=$$(mktemp -t sleep.XXXXXXXXXX); ./${PROG} 4 >$$file & pid=$$!; \
10 sleep 1; kill $$pid; sleep 1; v=$$(cat $$file); rm -f $$file; \
11 { [ $$v -gt 0 ] && [ $$v -lt 4 ] ; } || exit 2
12
13.include <bsd.regress.mk>
diff --git a/src/regress/lib/libc/sleep/sleep_test.c b/src/regress/lib/libc/sleep/sleep_test.c
deleted file mode 100644
index c9ab0d095f..0000000000
--- a/src/regress/lib/libc/sleep/sleep_test.c
+++ /dev/null
@@ -1,84 +0,0 @@
1/* $OpenBSD: sleep_test.c,v 1.1 2009/12/14 05:08:19 guenther Exp $ */
2
3/*
4 * Copyright (c) 2009 Philip Guenther
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 *
11 * - Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 * - Redistributions in binary form must reproduce the above
14 * copyright notice, this list of conditions and the following
15 * disclaimer in the documentation and/or other materials provided
16 * with the distribution.
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
21 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
22 * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
23 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
24 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
28 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 * POSSIBILITY OF SUCH DAMAGE.
30 */
31
32/*
33 * Test whether sleep returns the correct value
34 */
35
36#include <sys/types.h>
37#include <err.h>
38#include <errno.h>
39#include <limits.h>
40#include <signal.h>
41#include <stddef.h>
42#include <stdio.h>
43#include <stdlib.h>
44#include <unistd.h>
45
46static void
47handler(int sig)
48{
49 return;
50}
51
52static void *
53garbage(void)
54{
55 char buf[20];
56 strlcpy(buf, "012354678901235467890123546789", sizeof buf);
57 return buf;
58}
59
60int
61main(int argc, char *argv[])
62{
63 struct sigaction sa;
64 char const *errstr;
65 int i;
66
67 if (argc != 2)
68 return (1);
69 errno = 0;
70 i = strtonum(argv[1], 0, INT_MAX, &errstr);
71 if (i == 0 && errno != 0) {
72 fprintf(stderr, "%s\n", errstr);
73 return (1);
74 }
75
76 memset(&sa, 0, sizeof sa);
77 sa.sa_handler = &handler;
78 if (sigaction(SIGTERM, &sa, NULL))
79 err(3, "sigaction");
80 garbage();
81 printf("%d\n", sleep(i));
82 return (0);
83}
84