ports/95253: fix port: net-mgmt/sysutils

Oliver Lehmann oliver at FreeBSD.org
Mon Apr 3 09:40:19 UTC 2006


>Number:         95253
>Category:       ports
>Synopsis:       fix port: net-mgmt/sysutils
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Mon Apr 03 09:40:16 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Oliver Lehmann - admin
>Release:        FreeBSD 6.1-PRERELEASE i386
>Organization:
>Environment:
System: FreeBSD avocado.salatschuessel.net 6.1-PRERELEASE FreeBSD 6.1-PRERELEASE #0: Wed Feb 22 10:03:31 CET 2006 olivleh1 at avocado.salatschuessel.net:/usr/obj/usr/src/sys/AVOCADO i386


>Description:
	the start script assumes that group name == user name this could be wrong
	I need to start mrtg as root which renders the needed group name to wheel and
	not root! Furthermore mrtg itself needs to be modified since the function to
	get the GID/UID returns 0 and this results in die(ing).

>How-To-Repeat:
>Fix:


--- mrtg.diff begins here ---
diff -ruN mrtg.old/files/mrtg_daemon.sh.in mrtg/files/mrtg_daemon.sh.in
--- mrtg.old/files/mrtg_daemon.sh.in	Mon Apr  3 11:32:27 2006
+++ mrtg/files/mrtg_daemon.sh.in	Mon Apr  3 11:34:48 2006
@@ -17,9 +17,10 @@
 : ${mrtg_daemon_enable="NO"}
 : ${mrtg_daemon_pidfile="/var/run/mrtg/mrtg.pid"}
 : ${mrtg_daemon_user="mrtg"}
+: ${mrtg_daemon_group="mrtg"}
 : ${mrtg_daemon_config="%%PREFIX%%/etc/mrtg/mrtg.cfg"}
 
-: ${mrtg_daemon_flags="--pid-file $mrtg_daemon_pidfile --lock-file /var/run/mrtg/lockfile --confcache-file /var/run/mrtg/confcache --user $mrtg_daemon_user --group $mrtg_daemon_user --daemon $mrtg_daemon_config"}
+: ${mrtg_daemon_flags="--pid-file $mrtg_daemon_pidfile --lock-file /var/run/mrtg/lockfile --confcache-file /var/run/mrtg/confcache --user $mrtg_daemon_user --group $mrtg_daemon_group --daemon $mrtg_daemon_config"}
 
 start_precmd="mrtg_daemon_precmd"
 
diff -ruN mrtg.old/files/patch-bin_mrtg mrtg/files/patch-bin_mrtg
--- mrtg.old/files/patch-bin_mrtg	Thu Jan  1 01:00:00 1970
+++ mrtg/files/patch-bin_mrtg	Mon Apr  3 11:33:48 2006
@@ -0,0 +1,22 @@
+--- mrtg.old	Fri Feb  3 07:33:33 2006
++++ mrtg	Mon Apr  3 11:30:45 2006
+@@ -172,11 +172,17 @@
+     my $gid = $(;
+ 
+     if (defined $opts{group}) {
+-        $gid = getgrnam($opts{group}) or die "ERROR: Unknown Group: $opts{group})\n";
++	$gid = getgrnam($opts{group});
++	if( $gid =~ /^$/ ) {
++		die "ERROR: Unknown Group: $opts{group}\n";
++	}
+     }
+ 
+     if (defined $opts{user}) {
+-        $uid = getpwnam($opts{user}) or die "ERROR: Unknown User: $opts{user})\n";
++	$uid = getpwnam($opts{user});
++	if( $uid =~ /^$/ ) {
++		die "ERROR: Unknown User: $opts{user}\n";
++	}
+     }
+ 
+     # If we've specified using FHS (http://www.pathname.com/fhs/) on the command line,
--- mrtg.diff ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list