====== Les envois (send) ======
===== Scénarios par défaut =====
==== send.closed ====
fermé
title.gettext closed
true() smtp,dkim,smime,md5 -> reject(reason='send_closed')
==== send.confidential ====
resteint aux abonnés, modérateurs, propriétaires
title.gettext restricted to subscribers
is_subscriber([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_editor([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_owner([listname],[sender]) smtp,dkim,smime,md5 -> do_it
true() smtp,dkim,md5,smime -> reject,quiet
==== send.editorkey ====
Modérée
title.gettext Moderated
is_editor([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_editor([listname],[header->X-sender]) smtp,dkim,smime,md5 -> do_it
true() smtp,dkim,smime,md5 -> editorkey
==== send.editorkeyonly ====
Modérée, même pour les modérateurs
title.gettext Moderated, even for moderators
is_editor([listname],[sender]) smime,md5 -> do_it
true() smtp,dkim,smime,md5 -> editorkey
==== send.editorkeyonlyauth ====
Modérée, avec confirmation du modérateur
title.gettext Moderated, with editor confirmation
is_editor([listname],[sender]) md5,smime -> do_it
is_editor([listname],[sender]) smtp,dkim -> request_auth
true() smtp,dkim,smime,md5 -> editorkey
==== send.intranet ====
limité aux utilisateurs du domaine local
title.gettext restricted to local domain
# if subscriber request come from local domain do_it else reject
is_editor([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_owner([listname],[sender]) smtp,dkim,smime,md5 -> do_it
match([sender],/[conf->host]$/) smtp,dkim,smime,md5 -> do_it
true() smtp,dkim,smime,md5 -> reject(reason='send_local_user')
==== send.intranetorprivate ====
Moderée, pour les utilisateurs du domaine local (intranet) et les abonnés
title.gettext restricted to local domain and subscribers
is_subscriber([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_editor([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_owner([listname],[sender]) smtp,dkim,smime,md5 -> do_it
match([sender],/[conf->host]$/) smtp,dkim,smime,md5 -> do_it
true() smtp,dkim,smime,md5 -> reject(reason='send_local_user_sub')
==== send.newsletter ====
Newsletter, limité aux modérateurs
title.gettext Newsletter, restricted to moderators
is_editor([listname],[sender]) smtp,dkim,smime,md5 -> do_it
true() smtp,dkim,smime,md5 -> reject(reason='send_editor')
==== send.newsletterkeyonly ====
Newsletter, limité aux modérateurs après confirmation
title.gettext Newsletter, restricted to moderators after confirmation
is_editor([listname],[sender]) smime -> do_it
is_editor([listname],[sender]) smtp,dkim,md5,smime -> editorkey
true() smtp,dkim,smime,md5 -> reject(reason='send_editor')
==== send.private ou send.default ====
limité aux abonnés
title.gettext restricted to subscribers
is_subscriber([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_editor([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_owner([listname],[sender]) smtp,dkim,smime,md5 -> do_it
true() smtp,dkim,md5,smime -> reject(reason='send_subscriber')
==== send.privateandeditorkey ====
Modérée, limitée aux abonnés
title.gettext Moderated, restricted to subscribers
is_editor([listname],[sender]) smtp,smime,md5 -> do_it
is_subscriber([listname],[sender]) smtp,smime,md5 -> editorkey
true() smtp,md5,smime -> reject(reason='send_subscriber')
==== send.privateandnomultipartoreditorkey ====
Modérée, pour les non abonnés postant un message multipart
title.gettext Moderated, for non subscribers sending multipart messages
is_editor([listname],[sender]) smtp,dkim,md5,smime -> do_it
match([header->Content-Type],/multipart/) smtp,dkim,smime,md5 -> editorkey
is_subscriber([listname],[sender]) smtp,dkim,md5,smime -> do_it
true() smtp,dkim,smime,md5 -> editorkey
==== send.privatekey ====
réservé aux abonnés avec authentification MD5 préalable
title.gettext restricted to subscribers with previous md5 authentication
is_subscriber([listname],[sender]) smtp,dkim -> request_auth
is_subscriber([listname],[sender]) md5,smime -> do_it
true() smtp,dkim,md5,smime -> reject(reason='send_subscriber')
==== send.privatekeyandeditorkeyonly ====
Modérée, pour les abonnés et les modérateurs
title.gettext Moderated, for subscribers and moderators
is_subscriber([listname],[sender]) smtp,dkim -> request_auth
is_subscriber([listname],[sender]) md5,smime -> editorkey
is_editor([listname],[sender]) smtp,dkim -> request_auth
is_editor([listname],[sender]) md5,smime -> do_it
true() smtp,dkim,md5,smime -> reject(reason='send_subscriber')
==== send.privateoreditorkey ====
Privée, modérée pour les non abonnés
title.gettext Private, moderated for non subscribers
is_subscriber([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_editor([listname],[sender]) smtp,dkim,smime,md5 -> do_it
true() smtp,dkim,smime,md5 -> editorkey
==== send.privateorpublickey ====
Privée, confirmation pour les non abonnés
title.gettext Private, confirmation for non subscribers
true() md5,smime -> do_it
is_subscriber([listname],[sender]) smtp,dkim -> do_it
true() smtp,dkim -> request_auth
==== send.private_smime ====
limité aux abonnés, vérif de la signature smime
title.gettext restricted to subscribers check smime signature
is_subscriber([listname],[sender]) smime -> do_it
is_editor([listname],[sender]) smime -> do_it
is_owner([listname],[sender]) smime -> do_it
true() smtp,md5,smime -> reject(reason='send_subscriber_smime')
==== send.public ====
liste ouverte
title.gettext public list
true() smtp,dkim,smime,md5 -> do_it
==== send.publickey ====
quiconque mais avec authentification md5
title.gettext anyone with previous md5 authentication
true() smtp -> request_auth
true() dkim,md5,smime -> do_it
==== send.publicnoattachment ====
liste ouverte mais attachements passés au modérateur
title.gettext public list multipart/mixed messages are forwarded to moderator
match([header->Content-Disposition],/attachment/) smtp,dkim,smime,md5 -> editorkey
match([header->Content-Type],/multipart\/mixed/) smtp,dkim,smime,md5 -> editorkey
true() smtp,dkim,md5,smime -> do_it
==== send.public_nobcc ====
liste ouverte, Bcc interdit (anti-spam)
title.gettext public list, Bcc rejected (anti-spam)
equal([is_bcc],1) smtp,dkim,smime,md5 -> reject
true() smtp,dkim,md5,smime -> do_it
==== send.publicnomultipart ====
liste ouverte mais attachements interdits
title.gettext public list multipart messages are rejected
match([header->Content-Type],/multipart/) smtp,dkim,smime,md5 -> reject(reason='send_multipart')
true() smtp,dkim,md5,smime -> do_it
===== Scénarios locaux =====
==== intranetandprivateandeditorkey ====
Modérée, limitée aux abonnés et au domaine local
title.gettext Moderée, pour les utilisateurs du domaine local (intranet) et les abonnés
is_editor([listname],[sender]) smtp,smime,md5 -> do_it
is_subscriber([listname],[sender]) smtp,smime,md5 -> editorkey
match([sender],/[conf->host]$/) smtp,smime,md5 -> editorkey
match([sender], /imag\.fr$/) smtp,smime,md5 -> editorkey
match([sender], /grenet\.fr$/) smtp,smime,md5 -> editorkey
match([sender], /grenoble\-inp\.fr$/) smtp,smime,md5 -> editorkey
true() smtp,smime,md5 -> reject(reason='send_local_user_sub')
==== envoi que par une adresse mail définie ====
match([sender],/jean\.dupont\@grenoble\-inp\.fr/) smtp,smime,md5 -> do_it
==== envoi que par les abonnés d'une autre liste ====
is_subscriber('liste-emetteurs',[sender]) smtp,smime,md5 -> do_it
==== envoi interdit à certains abonnés comme d'une autre liste ====
is_subscriber('liste-emetteurs',[sender]) smtp,smime,md5 -> reject
==== envoi que par les abonnés d'une autre liste avec demande de confirmation de l’émetteur et modération pour les extérieurs ====
is_subscriber('liste-emetteurs',[sender]) smime,md5 -> do_it
is_subscriber('liste-emetteurs',[sender]) smtp -> request_auth
true() smtp,md5,smime -> editorkey
==== envoi par intranet et demande de confirmation pour extérieurs ====
title.gettext restricted to local domain, confirmation for non subscribers
# if subscriber request come from local domain do_it else reject
is_editor([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_owner([listname],[sender]) smtp,dkim,smime,md5 -> do_it
is_subscriber([listname],[sender]) smtp,dkim -> do_it
match([sender],/[conf->host]$/) smtp,dkim,smime,md5 -> do_it
true() smtp,dkim -> request_auth