Index: Makefile =================================================================== --- Makefile (revision 374874) +++ Makefile (working copy) @@ -3,7 +3,7 @@ PORTNAME= mailgraph PORTVERSION= 1.14 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= mail MASTER_SITES= http://mailgraph.schweikert.ch/pub/ \ http://mailgraph.schweikert.ch/pub/old/ @@ -25,7 +25,7 @@ MAILGRAPH_GROUP?= ${WWWGRP} USE_RC_SUBR= ${PORTNAME} -SUB_LIST+= MAILGRAPH_USER=${MAILGRAPH_USER} MAILGRAPH_GROUP=${MAILGRAPH_GROUP} +SUB_LIST+= MAILGRAPH_USER=${MAILGRAPH_USER} MAILGRAPH_GROUP=${MAILGRAPH_GROUP} PERL=${PERL} PLIST_SUB= CGIDIR=${CGIDIR:S,${PREFIX}/,,} WWWROOT=${WWWROOT:S,${PREFIX}/,,} OPTIONS_DEFINE= DOCS Index: files/mailgraph.in =================================================================== --- files/mailgraph.in (revision 374874) +++ files/mailgraph.in (working copy) @@ -17,14 +17,18 @@ command=%%PREFIX%%/sbin/${name}.pl command_args='> /dev/null 2>&1' -command_interpreter=/usr/bin/perl +command_interpreter=%%PERL%% start_precmd=start_precmd stop_postcmd=stop_postcmd start_precmd() { - mkdir -p "%%DATADIR%%" - chown "%%MAILGRAPH_USER%%" "%%DATADIR%%" + mkdir -p "$mailgraph_chdir" + chown "$mailgraph_user" "$mailgraph_chdir" + if ! su -m $mailgraph_user -c 'sh -c "[ -r '$mailgraph_maillog' ]"'; then + echo "MAILGRAPH CANNOT RUN: $mailgraph_maillog not readable by $mailgraph_user" + return 1 + fi } stop_postcmd() @@ -35,10 +39,11 @@ load_rc_config $name : ${mailgraph_enable="NO"} -: ${mailgraph_pidfile="%%DATADIR%%/mailgraph.pid"} -: ${mailgraph_flags="--logfile /var/log/maillog --daemon-rrd=%%DATADIR%% --ignore-localhost --daemon --daemon-pid=${mailgraph_pidfile}"} +: ${mailgraph_chdir="%%DATADIR%%"} +: ${mailgraph_pidfile="$mailgraph_chdir/mailgraph.pid"} +: ${mailgraph_maillog="/var/log/maillog"} +: ${mailgraph_flags="--logfile $mailgraph_maillog --daemon-rrd=$mailgraph_chdir --ignore-localhost --daemon --daemon-pid=$mailgraph_pidfile"} : ${mailgraph_user="%%MAILGRAPH_USER%%"} -: ${mailgraph_chdir="%%DATADIR%%"} pidfile=${mailgraph_pidfile}