From jon@perineum.corp.telocity.net  Tue Mar 13 16:29:44 2001
Return-Path: <jon@perineum.corp.telocity.net>
Received: from perineum.corp.telocity.net (perineum.yoonix.com [216.227.125.10])
	by hub.freebsd.org (Postfix) with ESMTP id AAE3037B719
	for <FreeBSD-gnats-submit@freebsd.org>; Tue, 13 Mar 2001 16:29:43 -0800 (PST)
	(envelope-from jon@perineum.corp.telocity.net)
Received: from jon by perineum.corp.telocity.net with local (Exim 3.14 #1)
	id 14czDd-0009rP-00; Tue, 13 Mar 2001 16:32:49 -0800
Message-Id: <E14czDd-0009rP-00@perineum.corp.telocity.net>
Date: Tue, 13 Mar 2001 16:32:49 -0800
From: jonv@ivmg.net
Sender: Jon Villarreal <jon@perineum.corp.telocity.net>
Reply-To: jonv@ivmg.net
To: FreeBSD-gnats-submit@freebsd.org
Cc: jonv@ivmg.net
Subject: syslogd alternate PID file
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         25784
>Category:       bin
>Synopsis:       Ability to specify alternate PID file for syslogd
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    dwmalone
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Mar 13 16:30:01 PST 2001
>Closed-Date:    Tue May 29 06:17:02 PDT 2001
>Last-Modified:  Tue May 29 06:17:34 PDT 2001
>Originator:     Jon Villarreal
>Release:        FreeBSD 4.3-BETA i386
>Organization:
IVMG, Inc.
>Environment:
System: FreeBSD abydos.ivmg.net 4.3-BETA FreeBSD 4.3-BETA #0: Tue Mar 13 23:06:14 UTC 2001 jon@abydos.ivmg.net:/usr/src/sys/compile/ABYDOS i386


>Description:
	We have have a situation where we're running multiple copies
	of syslogd on the same host.  There is currently no way
	to specify an alternate PID file for syslogd, so the last
	copy of syslogd started clobbers the earlier one's PID file.

>How-To-Repeat:
>Fix:

*** syslogd.c.orig	Tue Mar 13 14:41:49 2001
--- syslogd.c	Tue Mar 13 15:45:43 2001
***************
*** 325,331 ****
  	pid_t ppid = 1;
  	socklen_t len;
  
! 	while ((ch = getopt(argc, argv, "46Aa:df:kl:m:np:suv")) != -1)
  		switch (ch) {
  		case '4':
  			family = PF_INET;
--- 325,331 ----
  	pid_t ppid = 1;
  	socklen_t len;
  
! 	while ((ch = getopt(argc, argv, "46Aa:df:kl:m:np:P:suv")) != -1)
  		switch (ch) {
  		case '4':
  			family = PF_INET;
***************
*** 367,372 ****
--- 367,375 ----
  		case 'p':		/* path */
  			funixn[0] = optarg;
  			break;
+ 		case 'P':		/* path for alt. PID */
+ 			PidFile = optarg;
+ 			break;
  		case 's':		/* no network mode */
  			SecureMode++;
  			break;
***************
*** 597,603 ****
  	fprintf(stderr, "%s\n%s\n%s\n",
  		"usage: syslogd [-46Adnsuv] [-a allowed_peer] [-f config_file]",
  		"               [-m mark_interval] [-p log_socket]",
! 		"               [-l log_socket]");
  	exit(1);
  }
  
--- 600,606 ----
  	fprintf(stderr, "%s\n%s\n%s\n",
  		"usage: syslogd [-46Adnsuv] [-a allowed_peer] [-f config_file]",
  		"               [-m mark_interval] [-p log_socket]",
! 		"               [-l log_socket] [-P pid_file");
  	exit(1);
  }
  
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->dwmalone 
Responsible-Changed-By: dwmalone 
Responsible-Changed-When: Wed Mar 14 02:30:27 PST 2001 
Responsible-Changed-Why:  
I'll have a look at this, as I've looked at some syslogd stuff recently. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=25784 
State-Changed-From-To: open->closed 
State-Changed-By: dwmalone 
State-Changed-When: Tue May 29 06:17:02 PDT 2001 
State-Changed-Why:  
Patch now in -current and -stable. Thanks! 

http://www.FreeBSD.org/cgi/query-pr.cgi?pr=25784 
>Unformatted:
