Date: Tue, 29 Aug 2006 18:03:45 GMT From: Aaron Gifford <astounding@gmail.com> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/102651: [patch] New command-line option for jabberd port start-up (for /usr/ports/net-im/jabberd) Message-ID: <200608291803.k7TI3jpZ009982@www.freebsd.org> Resent-Message-ID: <200608291810.k7TIAFot094300@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 102651 >Category: ports >Synopsis: [patch] New command-line option for jabberd port start-up (for /usr/ports/net-im/jabberd) >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue Aug 29 18:10:14 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Aaron Gifford >Release: 6.1-STABLE (not really applicable) >Organization: >Environment: Not applicable >Description: While the current jabberd port (jabberd-2.0.11_1 in /usr/ports/net-im/jabberd) supports command-line option -c to specify a configuration file, if one's OTHER configuration files are NOT in the default /usr/local/etc directory, start-up will fail. To fix this, I've added the option -d to specify an alternate configuration directory in which configuration files may reside. This patch is simple, and is quick and easy to apply. Aaron out. >How-To-Repeat: N/A >Fix: --- /usr/local/bin/jabberd.orig Tue Aug 29 01:19:01 2006 +++ /usr/local/bin/jabberd Tue Aug 29 11:57:21 2006 @@ -28,8 +28,7 @@ my $Bin = "/usr/local/bin"; my $VERSION = "2.0s11"; my $config_dir = "/usr/local/etc/jabberd"; -my $config = $config_dir."/jabberd.cfg"; -$config = "internal" unless (-e $config); +my $config = "jabberd.cfg"; my $debug = 0; my $daemon = 0; my $select = IO::Select->new(); @@ -43,13 +42,20 @@ # Process the command line arguments #----------------------------------------------------------------------------- my %opts; -getopts("c:Dhb",\%opts); +getopts("c:d:Dhb",\%opts); &usage if exists($opts{h}); if (exists($opts{c})) { $config = $opts{c} if (defined($opts{c}) && ($opts{c} ne "")); &usage() if (!defined($opts{c}) || ($opts{c} eq "")); } +if (exists($opts{d})) +{ + $config_dir = $opts{d} if (defined($opts{d}) && ($opts{d} ne "")); + &usage() if (!defined($opts{d}) || ($opts{d} eq "")); +} +$config = $config_dir.'/'.$config if ($config !~ /^\.?\//); +$config = "internal" unless (-e $config); $debug = 1 if exists($opts{D}); $daemon = 1 if exists($opts{b}); @@ -123,6 +129,7 @@ &debug("jabberd","stdout","debug on\n"); &debug("jabberd","stdout","version($VERSION)\n"); &debug("jabberd","stdout","config_dir($config_dir)\n"); + &debug("jabberd","stdout","config($config)\n"); } #----------------------------------------------------------------------------- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200608291803.k7TI3jpZ009982>