Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Jun 1998 05:20:18 -0400 (EDT)
From:      njs3@doc.ic.ac.uk
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   bin/6855: [URGENT][PATCH] svc_run: - select failed: No child processes
Message-ID:  <199806040920.FAA21144@www.in-design.com>

next in thread | raw e-mail | index | archive | help

>Number:         6855
>Category:       bin
>Synopsis:       [URGENT][PATCH] svc_run: - select failed: No child processes
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Quarter:
>Keywords:
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jun  4 02:20:01 PDT 1998
>Last-Modified:
>Originator:     njs3@doc.ic.ac.uk
>Organization:
>Release:        FreeBSD 2.2.5-RELEASE i386
>Environment:

-stable only, patch already committed to -current.

>Description:

portmap.c: reap() clobbers errno leading to failure of portmap daemon

>How-To-Repeat:

Run a busy RPC server

>Fix:


*** portmap.c	Thu Jun  4 10:02:58 1998
--- portmap.c	Thu Jun  4 10:02:49 1998
***************
*** 85,90 ****
--- 85,91 ----
   */
  
  #include <err.h>
+ #include <errno.h>
  #include <netdb.h>
  #include <stdio.h>
  #include <stdlib.h>
***************
*** 604,608 ****
--- 605,613 ----
  void
  reap()
  {
+ 	int save_errno;
+ 
+ 	save_errno = errno;
  	while (wait3((int *)NULL, WNOHANG, (struct rusage *)NULL) > 0);
+ 	errno = save_errno;
  }
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199806040920.FAA21144>