1 #include <common.h>
2 
3 int
4 main(void) {
5 	sem_t id;
6 	int val;
7 
8 	if (sem_init(&id, 0, SEM_VALUE_MAX) < 0) {
9 		perror("sem_init");
10 		return 1;
11 	}
12 	if (sem_getvalue(&id, &val) < 0) {
13 		perror("sem_getvalue");
14 		sem_destroy(&id);
15 		return 1;
16 	}
17 	if (val != SEM_VALUE_MAX) {
18 		fprintf(stderr, "value %d != SEM_VALUE_MAX", val);
19 		sem_destroy(&id);
20 		return 1;
21 	}
22 	if (val < 0) {
23 		fprintf(stderr, "value < 0");
24 		sem_destroy(&id);
25 		return 1;
26 	}
27 	if (sem_destroy(&id) < 0) {
28 		perror("sem_destroy");
29 		return 1;
30 	}
31 	return 0;
32 }
33