From 46e782c2732fe628e1c3d0e40b1a357df25bcc86 Mon Sep 17 00:00:00 2001 From: Jan Beich Date: Sun, 3 May 2015 07:33:40 +0000 Subject: mail/sympa: fix bugs in rc.d script * Current sympa.rc not show the correct status, always active. grep with pid string also process. * The output of ps depends on the windows size. Sometime truncated /usr/local/libexec/sympa/task_manager.pl -w for avoid it. * Change ps options to BSD-sytle. PR: 199145 Submitted by: Igor Zabelin Approved by: geoffroy desvernay (maintainer) --- mail/sympa/Makefile | 1 + mail/sympa/files/sympa.in | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'mail/sympa') diff --git a/mail/sympa/Makefile b/mail/sympa/Makefile index fea6ba3e943e..d527a8612390 100644 --- a/mail/sympa/Makefile +++ b/mail/sympa/Makefile @@ -3,6 +3,7 @@ PORTNAME= sympa PORTVERSION= 6.1.24 +PORTREVISION= 1 CATEGORIES= mail MASTER_SITES= http://www.sympa.org/distribution/ \ http://www.sympa.org/distribution/old/ diff --git a/mail/sympa/files/sympa.in b/mail/sympa/files/sympa.in index 1b89654788ef..c2d0d77fd90e 100644 --- a/mail/sympa/files/sympa.in +++ b/mail/sympa/files/sympa.in @@ -51,7 +51,7 @@ sub_status() if [ -f /var/run/sympa/$1.pid ] ; then pid=`head -1 /var/run/sympa/$1.pid | tr -s ' ' '|'` if [ "$pid" != "" ] ; then - running=`ps -A | egrep "$pid"` + running=`ps -axw | grep "^[[:space:]]*$pid[[:space:]]"` if [ "$running" != "" ]; then echo "$1 (pid(s) $pid) is active..." return 0 @@ -115,7 +115,7 @@ sub_stop() if [ "$pids" != "" ]; then for pid in $pids; do killcount=0 - running=`ps -A | grep "^[[:space:]]*$pid[[:space:]].*$1\\.pl"` + running=`ps -axw | grep "^[[:space:]]*$pid[[:space:]].*$1\\.pl"` while [ "$running" != "" ]; do if [ $killcount -gt 10 ]; then echo 'failure' @@ -123,13 +123,13 @@ sub_stop() fi kill -TERM $pid >/dev/null 2>&1 - running=`ps -A | grep "^[[:space:]]*$pid[[:space:]].*$1\\.pl"` + running=`ps -axw | grep "^[[:space:]]*$pid[[:space:]].*$1\\.pl"` if [ "$running" = "" ]; then runcount=`expr $runcount + 1` break fi sleep 2 - running=`ps -A | grep "^[[:space:]]*$pid[[:space:]].*$1\\.pl"` + running=`ps -axw | grep "^[[:space:]]*$pid[[:space:]].*$1\\.pl"` if [ "$running" = "" ]; then runcount=`expr $runcount + 1` break -- cgit v1.2.3