next up previous contents index
Next: Niveaux de debug Up: Mise au point Previous: Syslog   Contents   Index


Option test

Il est souhaitable de tester une nouvelle configuration avec l'option -bt. Par exemple :

soleil$ /usr/lib/sendmail -bt -C $HOME/sendmail.cf.new

L'option -C spécifie un fichier de configuration différent du fichier de configuration par défaut. L'option -bt demande à sendmaild'utiliser le mode test. L'affichage est alors :

ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
>

Il faut alors entrer un ou plusieurs ensembles de règles, puis une adresse à tester. Par exemple :

> 3 pda@uvsq.fr
rewrite: ruleset  3   input: pda @ uvsq . fr
rewrite: ruleset 19   input: pda < @ uvsq . fr >
rewrite: ruleset 19 returns: pda < @ uvsq . fr . LOCAL >
rewrite: ruleset  3 returns: pda < @ uvsq . fr . LOCAL >

Dans cet exemple, la règle 3 est appelée avec comme entrée pda@uvsq.fr. La règle 3 appelle la règle 19 (elle est programmée comme ça dans sendmail.cf.new), qui renvoie l'adresse pda<@uvsq.fr.LOCAL> après toutes les réécritures. Cette nouvelle adresse est également l'adresse que renvoie la règle 3, c'est donc l'adresse canonisée.

On peut aussi enchaîner plusieurs ensembles :

> 3,0 pda@prism.uvsq.fr
rewrite: ruleset  3   input: pda @ prism . uvsq . fr
rewrite: ruleset 19   input: pda < @ prism . uvsq . fr >
rewrite: ruleset 19 returns: pda < @ prism . uvsq . fr . INTERNE >
rewrite: ruleset  3 returns: pda < @ prism . uvsq . fr . INTERNE >
rewrite: ruleset  0   input: pda < @ prism . uvsq . fr . INTERNE >
rewrite: ruleset  0 returns: $# smtp $@ [ mailhost . prism . uvsq . fr ]
             $: pda < @ prism . uvsq . fr . INTERNE >

Dans cet exemple, l'adresse est passée par la règle 3, puis l'adresse une fois canonisée (c'est-à-dire sous la forme pda<@prism.uvsq.fr.INTERNE> dans ce cas) est transmise à la règle 0. Le but de celle-ci étant de déterminer l'agent de transport, la règle 0 se termine par un triplet (agent de transport, relais, nouvelle enveloppe). L'agent de transport est ici smtp, le relais est [mailhost.prism.uvsq.fr] ce qui signifie, en version 8, qu'il ne faut pas consulter les MX puisque le nom est entre crochets. La nouvelle enveloppe correspond à l'adresse originale dans ce cas.

Pour tester la réécriture de l'adresse de l'expéditeur, on peut faire, en considérant que la règle 11 est la règle de réécriture des adresses d'expéditeur pour l'agent de transport SMTP :

> 3,1,11,4 pda
rewrite: ruleset  3   input: pda
rewrite: ruleset 19   input: pda
rewrite: ruleset 19   input: pda < @ . LOCAL >
rewrite: ruleset 19 returns: pda < @ . LOCAL >
rewrite: ruleset 19 returns: pda < @ . LOCAL >
rewrite: ruleset  3 returns: pda < @ . LOCAL >
rewrite: ruleset  1   input: pda < @ . LOCAL >
rewrite: ruleset 17   input: pda < @ . LOCAL >
rewrite: ruleset 17 returns: Pierre . David < @ . LOCAL >
rewrite: ruleset  1 returns: Pierre . David < @ . LOCAL >
rewrite: ruleset 11   input: Pierre . David < @ . LOCAL >
rewrite: ruleset 16   input: Pierre . David < @ . LOCAL >
rewrite: ruleset 16 returns: Pierre . David < @ uvsq . fr . LOCAL >
rewrite: ruleset 11 returns: Pierre . David < @ uvsq . fr . LOCAL >
rewrite: ruleset  4   input: Pierre . David < @ uvsq . fr . LOCAL >
rewrite: ruleset  4 returns: Pierre . David @ uvsq . fr


next up previous contents index
Next: Niveaux de debug Up: Mise au point Previous: Syslog   Contents   Index
Pierre DAVID 2001-11-26