1
2
3
4
5
6
7
8
9#define _GNU_SOURCE
10#include <errno.h>
11#include <stdio.h>
12#include <unistd.h>
13#include <sys/syscall.h>
14
15#include "utils.h"
16
17
18#define DO_TEST(_name, _num) \
19static int test_##_name(void) \
20{ \
21 int rc; \
22 printf("Testing " #_name); \
23 errno = 0; \
24 rc = syscall(_num, -1, 0, 0, 0, 0, 0); \
25 printf("\treturned %d, errno %d\n", rc, errno); \
26 return errno == ENOSYS; \
27}
28
29#include "ipc.h"
30#undef DO_TEST
31
32static int ipc_unmuxed(void)
33{
34 int tests_done = 0;
35
36#define DO_TEST(_name, _num) \
37 FAIL_IF(test_##_name()); \
38 tests_done++;
39
40#include "ipc.h"
41#undef DO_TEST
42
43
44
45
46
47
48
49 SKIP_IF(tests_done == 0);
50
51 return 0;
52}
53
54int main(void)
55{
56 return test_harness(ipc_unmuxed, "ipc_unmuxed");
57}
58