File: mkstatval.c

package info (click to toggle)
rc 1.7.2-1
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 1,084 kB
  • ctags: 1,050
  • sloc: ansic: 7,631; sh: 1,123; yacc: 124; makefile: 100; perl: 13
file content (26 lines) | stat: -rw-r--r-- 438 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdio.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>

int main(void) {
	int cstatus, pstatus;
	pid_t pid;
	
	for (cstatus = 0; cstatus < 2; ++cstatus) {
		switch (pid = fork()) {
		case -1:
			perror("fork");
			return 1;
		case 0:
			_exit(cstatus);
		default:
			if (wait(&pstatus) != pid) {
				perror("wait");
				return 1;
			}
			printf("#define STATUS%d %d\n", cstatus, pstatus);
		}
	}
	return 0;
}