Accéder au contenu.
Menu Sympa

fr - Re: comment planter sympa

Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa

Archives de la liste

Chronologique Discussions  
  • From: Olivier Salaun - CRU <adresse@cachée>
  • To: adresse@cachée
  • Subject: Re: comment planter sympa
  • Date: Tue, 01 Dec 1998 13:45:44 +0100

> Pour une raison quelconque, je décide de renommer ma liste en 'manouvliste'.
> Je renomme mon répertoire et dans les alias, je commets l'erreur suivante :
> manouvliste : "|/home/sympa/bin/queue maliste"
> (j'ai donc oublié de changer le paramètre de la commande queue).
>
> Cette erreur est fatale à sympa, qui lors du traitement d'un message à
> 'manouvliste' plante, pour les puristes à la ligne 274 de sympa.pl à
> l'appel
> de :
> $max_size = $list->get_max_size();

Chez moi :

Can't call method "get_max_size" on unblessed reference at ./sympa.pl
line 277, <IN> chunk 33

> C'est logique, mais j'aurais préféré un message d'erreur envoyé à
> sympa-request.
>
> J'aurais pensé que la commande, un peu plus haut, "return 0 unless ($list
> &&
> $admin);", m'aurait protégé de ce type d'erreur, mais finalement non.

Le Problème :
Après
my $admin = $list->{'admin'};
$list n'est plus undefined

Solution :
Tester $list juste après l'appel au constucteur, idem pour $admin.

> N'ayant pas le temps actuellement de me replonger dans le code de sympa,
> quelqu'un a-t-il un patch pour protéger le programme d'une telle erreur ?

Tu trouveras un patch ci-joint.
[Ce patch est relatif au sympa.pl après application du
patch.privateorpublickey
http://adresse@cachée/1998-10/msg00045.html ]


--------------------------------------------------------------------------
Olivier SALAÜN Comité Réseau des Universités Tel: 02 99 84 71 27
Campus de Beaulieu 35042 Rennes Cedex

*** sympa.pl.orig Wed Oct 28 16:35:13 1998
--- sympa.pl Tue Dec 1 13:29:41 1998
***************
*** 259,267 ****

## Search for the list
my $list = new List ($listname);
my $admin = $list->{'admin'};
my $customheader = $admin->{'custom-header'};
- return 0 unless ($list && $admin);
$host = $admin->{'host'} if ($admin->{'host'});


--- 259,270 ----

## Search for the list
my $list = new List ($listname);
+ return 0 unless $list;
+
my $admin = $list->{'admin'};
+ return 0 unless $admin;
+
my $customheader = $admin->{'custom-header'};
$host = $admin->{'host'} if ($admin->{'host'});




  • Re: comment planter sympa, Olivier Salaun - CRU, 01/12/1998

Archives gérées par MHonArc 2.6.19+.

Haut de le page