Ticket #1105 (closed defect: fixed)

Opened 5 years ago

Last modified 5 years ago

création de liste inutilisable avec alternc-mailman v1.5, mailman v1:2.1.9-7, alternc v0.9.7, etch

Reported by: anonyme Owned by: anarcat
Priority: high Milestone: alternc-mailman-1.6
Component: alternc-mailman Version: mailman-1.5
Severity: major Keywords:
Cc:

Description

Depuis la mise à jour de alternc sur etch, sans modification, les listes créées avec alternc-mailman ne sont pas utilisables.

Après la création d'une liste :

Dans /var/log/alternc/bureau :

16/03/2008 00:09:44 - CALL - admin - mailman - add_lst -
test-encore@chezmoi.org - moi@ chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore@chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore-request@chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore-owner@chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore-admin@chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore-bounces@chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore-confirm@chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore-join@chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore-leave@chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore-subscribe@chezmoi.org
16/03/2008 00:09:44 - CALL - admin - mail - available -
test-encore-unsubscribe@chezmoi.org

Lorsqu'on essaie d'accéder à la page de gestion de la liste, on a une erreur, qui se retrouve dans les logs :

/var/log/mailman/error :

Mar 16 00:09:58 2008 (11588) admin.py access for non-existent list:
test-encore-chezmoi.org

Par contre la liste existe pour Alternc.

Et lorsqu'elle est retirée :

  • ça apparait dans /var/log/alternc/bureau -> ok
  • rien dans /var/log/mailman/error

Change History

comment:1 Changed 5 years ago by anonyme

Pour faire des listes utilisables :

  • les créer avec l'interface du bureau
  • mettre les mains dans mysql :
    • dans la base alternc dans la table mail_alias, pour chaque entrée correspondant à nom_liste, modifier comme ça :

update mail_alias set alias = '"|/var/lib/mailman/mail/mailman unsubscribe nom_liste"' where mail = 'nom_liste-unsubscribe_chezmoi.org';

  • dans la base alternc dans la table mailman, modifier comme ça :

update mailman set name = 'nom_liste' where list = 'nom_liste';

Après, ça a l'air de marcher.

comment:2 Changed 5 years ago by anonyme

Je croyais avoir trouvé une solution en modifiant /var/alternc/bureau/class/m_mailman.php à la ligne 115 en remplaçant : $name = $login . '-' . $domain;

par

$name = $login;

Mais ça ne fonctionne qu'avec les noms de liste sans "-" dedans.

comment:3 Changed 5 years ago by anonyme

Pour que ça fonctionne avec les tirets dedans, en plus de la modif ci-dessus on a modifié la ligne 26 de /usr/lib/alternc/mailman.create en remplacant $listname =~ /([a-z0-9]+@[a-z0-9.-]+)$/ par $listname =~ /([a-z0-9._-]+@[a-z0-9.-]+)$/

Donc en résumé pour faire marcher les listes comme elles fonctionnaient sur la 0.9.6 :

  1. /var/alternc/bureau/class/m_mailman.php ligne 115
  • $name = $login . '-' . $domain;

+ $name = $login;

  1. /usr/lib/alternc/mailman.create ligne 26
  • if (!($listname =~ /([a-z0-9]+@[a-z0-9.-]+)$/)) {

+ if (!($listname =~ /([a-z0-9._-]+@[a-z0-9.-]+)$/)) {

comment:4 Changed 5 years ago by anonyme

Pour que ça fonctionne avec les tirets dedans, en plus de la modif ci-dessus on a modifié la ligne 26 de /usr/lib/alternc/mailman.create en remplacant
$listname =~ /([a-z0-9]+@[a-z0-9.-]+)$/
par
$listname =~ /([a-z0-9._-]+@[a-z0-9.-]+)$/

Donc en résumé pour faire marcher les listes comme elles fonctionnaient sur la 0.9.6 :

  1. /var/alternc/bureau/class/m_mailman.php ligne 115
  • $name = $login . '-' . $domain;

+ $name = $login;

  1. /usr/lib/alternc/mailman.create ligne 26
  • if (!($listname =~ /([a-z0-9]+@[a-z0-9.-]+)$/)) {

+ if (!($listname =~ /([a-z0-9._-]+@[a-z0-9.-]+)$/)) {

comment:5 Changed 5 years ago by anarcat

  • Owner set to anarcat
  • Status changed from new to assigned
  • Milestone set to alternc-mailman-1.6

Je confirme que les listes ne sont pas créés correctement avec alternc-mailman 1.5~svn2190.

  1. Le nom visible de la liste est "Test-example.com".
  2. Les adresses de retour sont également brisées (e.g. test-example.com-bounces@…)
  3. Par contre, l'envoi à la liste fonctionne, a priori:
    Apr 24 17:34:29 alternc postfix/local[1551]: 8E619703E6: to=<test_example.com@alternc.koumbit.net>, orig_to=<test@example.com>, relay=local, de
    lay=0.85, delays=0.14/0.02/0/0.69, dsn=2.0.0, status=sent (delivered to command:  /var/lib/mailman/mail/mailman post test-example.com)
    

comment:6 Changed 5 years ago by anarcat

J'ai essayé de corriger le problème ici avec le commit [2192], sans succès:

Apr 24 17:46:45 alternc postfix/local[3788]: B2E9A703EB: to=<test_example.com@alternc.koumbit.net>, orig_to=<test@example.com>, relay=local, delay=0.54, delays=0.2/0.07/0/0.27, dsn=5.3.0, status=bounced (Command died with status 1: " /var/lib/mailman/mail/mailman post test". Command output: post script, list not found: test )

La liste ne semble pas se créer...

comment:7 Changed 5 years ago by anarcat

(In [2194]) be more tolerant on list names: allow names with dashes, underscores and periods in them.

See #1105

comment:8 Changed 5 years ago by anarcat

(In [2201]) remove another VirtualMailman patch trace

See #1105

comment:9 Changed 5 years ago by anarcat

  • Status changed from assigned to closed
  • Resolution set to fixed

In [2202], we fix the mailman scripts again, and at this point, I am able to create a list, without the VirtualMailman patches, and it works.

alternc-mailman also happens to have much better error control for list creation now.

comment:10 Changed 5 years ago by anarcat

(In [2207]) revert commit [2206]: this actually breaks mailout with non-VirtualMailman installations

See #1105 See #1106

Note: See TracTickets for help on using tickets.