Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa
Archives de la liste
- From: Raphael Hertzog <adresse@cachée>
- To: adresse@cachée
- Subject: Re: Patch de Conf.pm
- Date: Wed, 2 Sep 1998 15:17:51 +0200
Le Tue, Sep 01, 1998 at 09:25:05PM +0200, Raphael Hertzog écrivait:
> je vous joins un patch permettant d'utiliser des paramètres
> spéciaux dans sympa.conf. Il s'agit d'autoriser des paramètres
> du genre `commande`. Exemple tiré de mon sympa.conf personnel :
>
> # Nom de machine utilisé par votre système Sympa
> host `/bin/cat /etc/mailname || /bin/dnsdomainname`
>
> Le patch est tout petit.
Et contient une petite erreur. Je joins le bon patch, il manque juste un
"chomp $value" dans le bloc conditionnel qui a été rajouté.
> + if ($value =~ /^\`(.*)\`$/) {
> + $value = qx/$1/;
=> chomp $value;
> + }
> + $o{$keyword} = [ $value, $line_num ];
Amicalement.
--
Hertzog Raphaël ¤ 0C4CABF1 ¤ http://www.mygale.org/~hra/
--- Conf.pm.old Wed Sep 2 15:13:49 1998
+++ Conf.pm Wed Sep 2 15:14:29 1998
@@ -32,6 +32,8 @@
my $config = shift;
my $line_num = 0;
my $config_err = 0;
+ my $keyword = '';
+ my $value = '';
my($i, %o);
## Open the configuration file or return and read the lines.
@@ -42,8 +44,14 @@
while (<IN>) {
$line_num++;
next if (/^\s*$/o || /^[#;]/o);
- if (/^(\S+)\s+(\S+)$/io) {
- $o{$1} = [ $2, $line_num ];
+ if (/^(\S+)\s+(\S.*)$/io) {
+ $keyword = $1; $value = $2;
+ ## Special case : `command that output the value`
+ if ($value =~ /^\`(.*)\`$/) {
+ $value = qx/$1/;
+ chomp $value;
+ }
+ $o{$keyword} = [ $value, $line_num ];
} else {
printf STDERR Msg(1, 3, "Malformed line %d: %s"), $config, $_;
$config_err++;
-
Patch de Conf.pm,
Raphael Hertzog, 01/09/1998
- Re: Patch de Conf.pm, Raphael Hertzog, 02/09/1998
Archives gérées par MHonArc 2.6.19+.