Date: Tue, 10 Aug 2010 18:54:41 -0700 From: Doug Barton <dougb@FreeBSD.org> To: Josh Paetzel <jpaetzel@FreeBSD.org> Cc: cvs-ports@FreeBSD.org, Richard Neese <r.neese@gmail.com>, cvs-all@FreeBSD.org, ports-committers@FreeBSD.org Subject: Re: cvs commit: ports/net/freeswitch-core Makefile pkg-plist ports/net/freeswitch-core/files freeswitch.in Message-ID: <4C6202E1.4010209@FreeBSD.org> In-Reply-To: <201008110139.o7B1dIR8053761@repoman.freebsd.org> References: <201008110139.o7B1dIR8053761@repoman.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] In addition to the plist issues you also made a change to the rc.d file, but you didn't go far enough. :) There are numerous issues with the existing file: 1. It's generally preferred that ports rc.d files use REQUIRE: LOGIN unless there is a good reason not to. However this service runs as an unprivileged user, which makes that a requirement. 2. The default variable assignments have to come after load_rc_config to be effective. 3. _flags should not be reproduced in command_args 4. The start and restart methods seem superfluous to me, most if not all of what you're going for can likely be accomplished by using wait_for_pids in the _stop method. The attached patch should accomplish these fixes, but it should be tested of course ... Doug On 08/10/2010 18:39, Josh Paetzel wrote: > jpaetzel 2010-08-11 01:39:18 UTC > > FreeBSD ports repository > > Modified files: > net/freeswitch-core Makefile pkg-plist > net/freeswitch-core/files freeswitch.in > Log: > Fix issues with plist caused by previous commit. > Remove BROKEN > > PR: ports/149119 http://www.FreeBSD.org/cgi/query-pr.cgi?pr=149119 > Submitted by: Richard Neese <r.neese@gmail.com> > > Revision Changes Path > 1.8 +43 -36 ports/net/freeswitch-core/Makefile > 1.3 +2 -2 ports/net/freeswitch-core/files/freeswitch.in > 1.3 +202 -200 ports/net/freeswitch-core/pkg-plist > > http://www.FreeBSD.org/cgi/cvsweb.cgi/ports/net/freeswitch-core/Makefile.diff?&r1=1.7&r2=1.8&f=h > http://www.FreeBSD.org/cgi/cvsweb.cgi/ports/net/freeswitch-core/files/freeswitch.in.diff?&r1=1.2&r2=1.3&f=h > http://www.FreeBSD.org/cgi/cvsweb.cgi/ports/net/freeswitch-core/pkg-plist.diff?&r1=1.2&r2=1.3&f=h > -- Improve the effectiveness of your Internet presence with a domain name makeover! http://SupersetSolutions.com/ Computers are useless. They can only give you answers. -- Pablo Picasso [-- Attachment #2 --] Index: freeswitch.in =================================================================== RCS file: /home/pcvs/ports/net/freeswitch-core/files/freeswitch.in,v retrieving revision 1.3 diff -u -r1.3 freeswitch.in --- freeswitch.in 11 Aug 2010 01:39:17 -0000 1.3 +++ freeswitch.in 11 Aug 2010 01:51:48 -0000 @@ -1,8 +1,7 @@ #!/bin/sh # PROVIDE: freeswitch -# REQUIRE: DAEMON -# BEFORE: LOGIN +# REQUIRE: LOGIN # KEYWORD: shutdown # # Add the following lines to /etc/rc.conf to enable freeswitch: @@ -15,56 +14,27 @@ . /etc/rc.subr +name=freeswitch +rcvar=`set_rcvar` + +load_rc_config $name + freeswitch_enable=${freeswitch_enable:-"NO"} freeswitch_user=${freeswitch_user:-"freeswitch"} freeswitch_group=${freeswitch_group:-"freeswitch"} freeswitch_flags=${freeswitch_flags:-"-nc -waste"} -name=freeswitch -rcvar=`set_rcvar` - command=%%PREFIX%%/bin/freeswitch -command_args="${freeswitch_flags} -u ${freeswitch_user} -g ${freeswitch_group}" +command_args="-u ${freeswitch_user} -g ${freeswitch_group}" pidfile=${freeswitch_pidfile:-"/var/run/freeswitch/freeswitch.pid"} -start_cmd="freeswitch_start" stop_precmd="freeswitch_stop" -restart_cmd="freeswitch_restart" - -sig_stop=KILL - -load_rc_config $name freeswitch_stop () { echo "Stopping FreeSWITCH." %%PREFIX%%/bin/freeswitch -stop - sleep 1 - return 0 + wait_for_pids `cat $pidfile` } -freeswitch_start () { - echo "Starting FreeSWITCH." - $command $command_args - sleep 1 - return -} - -freeswitch_restart () { - echo "Restarting FreeSwitch." - freeswitch_stop - if [ $? -eq 0 ]; - then - status=$? - freeswitch_start - sleep 1 - return 0 - else - echo "Problem stoping FreeSWITCH: $status" - sleep 1 - return 1 - fi -} - run_rc_command "$1" -
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C6202E1.4010209>
