Blob


1 #if TEST_GETEXECNAME
2 #include <stdlib.h>
4 int
5 main(void)
6 {
7 const char * progname;
9 progname = getexecname();
10 return progname == NULL;
11 }
12 #endif /* TEST_GETEXECNAME */
13 #if TEST_GETPROGNAME
14 #include <stdlib.h>
16 int
17 main(void)
18 {
19 const char * progname;
21 progname = getprogname();
22 return progname == NULL;
23 }
24 #endif /* TEST_GETPROGNAME */
25 #if TEST_LIBEVENT
26 #include <event.h>
28 int
29 main(void)
30 {
31 struct event ev;
33 event_set(&ev, 0, EV_READ, NULL, NULL);
34 event_add(&ev, NULL);
35 event_del(&ev);
36 return 0;
37 }
38 #endif /* TEST_LIBEVENT */
39 #if TEST_LIBEVENT2
40 #include <event2/event.h>
41 #include <event2/event_compat.h>
42 #include <event2/event_struct.h>
43 #include <event2/buffer.h>
44 #include <event2/buffer_compat.h>
45 #include <event2/bufferevent.h>
46 #include <event2/bufferevent_struct.h>
47 #include <event2/bufferevent_compat.h>
49 int
50 main(void)
51 {
52 struct event ev;
54 event_set(&ev, 0, EV_READ, NULL, NULL);
55 event_add(&ev, NULL);
56 event_del(&ev);
57 return 0;
58 }
59 #endif /* TEST_LIBEVENT2 */
60 #if TEST_LIB_SOCKET
61 #include <sys/socket.h>
63 int
64 main(void)
65 {
66 int fds[2], c;
68 c = socketpair(AF_UNIX, SOCK_STREAM, 0, fds);
69 return c == -1;
70 }
71 #endif /* TEST_LIB_SOCKET */
72 #if TEST_PLEDGE
73 #include <unistd.h>
75 int
76 main(void)
77 {
78 return !!pledge("stdio", NULL);
79 }
80 #endif /* TEST_PLEDGE */
81 #if TEST_PROGRAM_INVOCATION_SHORT_NAME
82 #define _GNU_SOURCE /* See feature_test_macros(7) */
83 #include <errno.h>
85 int
86 main(void)
87 {
89 return !program_invocation_short_name;
90 }
91 #endif /* TEST_PROGRAM_INVOCATION_SHORT_NAME */
92 #if TEST_PR_SET_NAME
93 #include <sys/prctl.h>
95 int
96 main(void)
97 {
98 prctl(PR_SET_NAME, "foo");
99 return 0;
101 #endif /* TEST_PR_SET_NAME */
102 #if TEST_STATIC
103 int
104 main(void)
106 return 0; /* not meant to do anything */
108 #endif /* TEST_STATIC */
109 #if TEST_STRLCAT
110 #include <string.h>
112 int
113 main(void)
115 char buf[3] = "a";
116 return ! (strlcat(buf, "b", sizeof(buf)) == 2 &&
117 buf[0] == 'a' && buf[1] == 'b' && buf[2] == '\0');
119 #endif /* TEST_STRLCAT */
120 #if TEST_STRLCPY
121 #include <string.h>
123 int
124 main(void)
126 char buf[2] = "";
127 return ! (strlcpy(buf, "a", sizeof(buf)) == 1 &&
128 buf[0] == 'a' && buf[1] == '\0');
130 #endif /* TEST_STRLCPY */
131 #if TEST_STRTONUM
132 /*
133 * Copyright (c) 2015 Ingo Schwarze <schwarze@openbsd.org>
135 * Permission to use, copy, modify, and distribute this software for any
136 * purpose with or without fee is hereby granted, provided that the above
137 * copyright notice and this permission notice appear in all copies.
139 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
140 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
141 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
142 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
143 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
144 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
145 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
146 */
147 #ifdef __NetBSD__
148 # define _OPENBSD_SOURCE
149 #endif
150 #include <stdlib.h>
152 int
153 main(void)
155 const char *errstr;
157 if (strtonum("1", 0, 2, &errstr) != 1)
158 return 1;
159 if (errstr != NULL)
160 return 2;
161 if (strtonum("1x", 0, 2, &errstr) != 0)
162 return 3;
163 if (errstr == NULL)
164 return 4;
165 if (strtonum("2", 0, 1, &errstr) != 0)
166 return 5;
167 if (errstr == NULL)
168 return 6;
169 if (strtonum("0", 1, 2, &errstr) != 0)
170 return 7;
171 if (errstr == NULL)
172 return 8;
173 return 0;
175 #endif /* TEST_STRTONUM */
176 #if TEST_UNVEIL
177 #include <unistd.h>
179 int
180 main(void)
182 return -1 != unveil(NULL, NULL);
184 #endif /* TEST_UNVEIL */
185 #if TEST__MMD
186 int
187 main(void)
189 return 0;
191 #endif /* TEST_NOOP */
192 #if TEST___PROGNAME
193 int
194 main(void)
196 extern char *__progname;
198 return !__progname;
200 #endif /* TEST___PROGNAME */