Date: Mon, 26 Feb 2007 15:41:18 -0800 From: Doug Barton <dougb@FreeBSD.org> To: Gabor Kovesdan <gabor@FreeBSD.org> Cc: Dominic Fandrey <lon_kamikaze@gmx.de>, cvs-all@FreeBSD.org, ports-committers@FreeBSD.org, cvs-ports@FreeBSD.org, erwin@freebsd.org, Christian Lackas <delta@lackas.net> Subject: Re: cvs commit: ports/security/vpnc Makefile ports/security/vpnc/files vpnc.in vpnc.sh Message-ID: <45E3701E.9000900@FreeBSD.org> In-Reply-To: <200702261857.l1QIvVMT051664@repoman.freebsd.org> References: <200702261857.l1QIvVMT051664@repoman.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Gabor Kovesdan wrote: > gabor 2007-02-26 18:57:31 UTC > > FreeBSD ports repository > > Modified files: > security/vpnc Makefile > Added files: > security/vpnc/files vpnc.in > Log: > - Update rc.d script > - Use USE_RC_SUBR instead of direct patching > - Bump PORTREVISION > > PR: ports/107675 http://www.FreeBSD.org/cgi/query-pr.cgi?pr=107675 > Submitted by: Dominic Fandrey <lon_kamikaze@gmx.de> (with fixes from maintainer) > Approved by: Christian Lackas <delta@lackas.net> (maintainer), > erwin (mentor, implicit) > > Revision Changes Path > 1.21 +4 -6 ports/security/vpnc/Makefile > 1.1 +95 -0 ports/security/vpnc/files/vpnc.in (new) > > http://www.FreeBSD.org/cgi/cvsweb.cgi/ports/security/vpnc/Makefile.diff?&r1=1.20&r2=1.21&f=h > http://www.FreeBSD.org/cgi/cvsweb.cgi/ports/security/vpnc/files/vpnc.in First off I'd like to say that I always appreciate when people convert their ports to the new rc.d framework, so please don't take any of these comments as critical. They are meant to be constructive, especially given that there are so many people involved in this one commit. :) The Makefile changes look good, but there are a few problems with the new rc.d script. If you have any questions don't hesitate to ask for clarification. 1. Please remove the FreeBSD KEYWORD. We have ignored that keyword for a long time now, and yet somehow it keeps creeping back in. You might also consider changing the REQUIRE to LOGIN, unless there is a compelling reason to have it where it is. 2. In your default variable assignments, it's not necessary (and probably not a good idea) to add empty assignments for _conf and _flags. Rather you should document those flags in the comments as you do the _conf variable. 3. In vpnc_start(), you don't want to use a bare 'if [ "$variable" ]'. That's not good style, and it opens you up to problems. I would write that section like this: if [ -z "$vpnc_conf" ]; then # No configuration files given, run unmanaged. $command $vpnc_flags return $? fi # A list of configurations is present. Connect managing .... 4. In both functions, you use the following style: for foo in $bar; ( ... ) It's probably better to use: for foo in $bar; do ... done That way you avoid the subshell, and any possible related problems. 5. In vpnc_start() you could simplify the code by doing: if ! $command $current $vpnc_flags; then status=$? echo "Running 'vpnc $current $vpnc_flags' failed." return $status fi # Move files to allow a clean shutdown ... 6. For simplicity, I'd make the same change in vpnc_stop() that I suggested in _start, namely to do: if [ ! -e "$vpnc_record" ]; then /bin/sleep 1 # There's no record of connections, assume unmanaged shutdown. $command-disconnect return $? fi # A record of vpnc connections is present. Attempt a ... (BTW, there is a type at "asume") hope this helps, Doug -- This .signature sanitized for your protection
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45E3701E.9000900>