File: test-e87b34ae.c

package info (click to toggle)
care 2.2.1-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, buster, stretch, trixie
  • size: 1,716 kB
  • sloc: ansic: 15,436; sh: 1,195; makefile: 6
file content (34 lines) | stat: -rw-r--r-- 643 bytes parent folder | download | duplicates (5)
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
27
28
29
30
31
32
33
34
#include <unistd.h> /* syscall(2), fork(2), usleep(3), */
#include <stdio.h>  /* perror(3), printf(3), */
#include <limits.h> /* PATH_MAX, */
#include <stdlib.h> /* exit(3), */
#include <sys/syscall.h> /* SYS_readlink, SYS_getcwd, */
#include <errno.h> /* errno, */

int main(void)
{
	pid_t pid;
	int status;
	int i;

	for (i = 0; i < 1000; i++) {
		pid = fork();
		switch (pid) {
		case -1:
			/* Is the maximum number of processes
			 * reached?  */
			if (errno == EAGAIN)
				break;
			perror("fork()");
			exit(EXIT_FAILURE);

		case 0: /* child */
			exit(EXIT_SUCCESS);

		default: /* parent */
			break;
		}
	}

	exit(EXIT_SUCCESS);
}