From owner-svn-src-stable@FreeBSD.ORG Tue Jun 12 20:05:22 2012 Return-Path: Delivered-To: svn-src-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B12B7106566C; Tue, 12 Jun 2012 20:05:22 +0000 (UTC) (envelope-from trociny@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 9B1A28FC1E; Tue, 12 Jun 2012 20:05:22 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q5CK5M0i073059; Tue, 12 Jun 2012 20:05:22 GMT (envelope-from trociny@svn.freebsd.org) Received: (from trociny@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q5CK5Mod073055; Tue, 12 Jun 2012 20:05:22 GMT (envelope-from trociny@svn.freebsd.org) Message-Id: <201206122005.q5CK5Mod073055@svn.freebsd.org> From: Mikolaj Golub Date: Tue, 12 Jun 2012 20:05:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r236971 - stable/8/usr.sbin/daemon X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Jun 2012 20:05:22 -0000 Author: trociny Date: Tue Jun 12 20:05:22 2012 New Revision: 236971 URL: http://svn.freebsd.org/changeset/base/236971 Log: MFC r236550, r236551: r236550: On a child exit, call waitpid(2) to clean up the process table. Submitted by: Andrey Zonov r236551: Document -r option in SYNOPSIS and usage statement. Submitted by: Andrey Zonov Modified: stable/8/usr.sbin/daemon/daemon.8 stable/8/usr.sbin/daemon/daemon.c Directory Properties: stable/8/usr.sbin/daemon/ (props changed) Modified: stable/8/usr.sbin/daemon/daemon.8 ============================================================================== --- stable/8/usr.sbin/daemon/daemon.8 Tue Jun 12 20:04:23 2012 (r236970) +++ stable/8/usr.sbin/daemon/daemon.8 Tue Jun 12 20:05:22 2012 (r236971) @@ -26,7 +26,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 19, 2012 +.Dd June 4, 2012 .Dt DAEMON 8 .Os .Sh NAME @@ -34,7 +34,7 @@ .Nd run detached from the controlling terminal .Sh SYNOPSIS .Nm -.Op Fl cf +.Op Fl cfr .Op Fl p Ar pidfile .Op Fl u Ar user .Ar command arguments ... Modified: stable/8/usr.sbin/daemon/daemon.c ============================================================================== --- stable/8/usr.sbin/daemon/daemon.c Tue Jun 12 20:04:23 2012 (r236970) +++ stable/8/usr.sbin/daemon/daemon.c Tue Jun 12 20:05:22 2012 (r236971) @@ -217,6 +217,10 @@ wait_child(pid_t pid, sigset_t *mask) } switch (signo) { case SIGCHLD: + if (waitpid(pid, NULL, WNOHANG) == -1) { + warn("waitpid"); + return (-1); + } return (terminate); case SIGTERM: terminate = 1; @@ -236,7 +240,7 @@ static void usage(void) { (void)fprintf(stderr, - "usage: daemon [-cf] [-p pidfile] [-u user] command " + "usage: daemon [-cfr] [-p pidfile] [-u user] command " "arguments ...\n"); exit(1); }