Sophie

Sophie

distrib > Arklinux > devel > i586 > media > main-src > by-pkgid > ad3489b3c50d0d9f118d3c0c82aa2329 > files > 10

iputils-20071127-1ark.src.rpm

diff -up iputils-s20071127/rdisc.c.open_max iputils-s20071127/rdisc.c
--- iputils-s20071127/rdisc.c.open_max	2008-02-25 11:15:37.000000000 +0100
+++ iputils-s20071127/rdisc.c	2008-02-25 11:17:30.000000000 +0100
@@ -240,14 +240,25 @@ void do_fork(void)
 {
 	int t;
 	pid_t pid;
+	long open_max;
 
 	if (trace)
 		return;
+	if ((open_max = sysconf(_SC_OPEN_MAX)) == -1) {
+		if (errno == 0) {
+			(void) fprintf(stderr, "OPEN_MAX is not supported\n");
+		} 
+		else {
+			(void) fprintf(stderr, "sysconf() error\n");
+		}
+		exit(1);
+	}
+
 
 	if ((pid=fork()) != 0)
 		exit(0);
 
-	for (t = 0; t < OPEN_MAX; t++)
+	for (t = 0; t < open_max; t++)
 		if (t != s)
 			close(t);