17.3 Rule Set 0Rule set 0 checks for errors and selects delivery agents. First it disposes of the null address:
R<@> $#local $: <@> Recall from Section 17.1.1.3, "Handle null address" that the null address needs to be disposed of locally. Next a whole series of error conditions need to be detected before they can lead to harm:
R$* : $* ; <@> $#error $@ 5.1.3 $: "list:; syntax illegal for recipient addresses" R<@ $+> $#error $@ 5.1.1 $: "user address required" R$* <$* : $* > $* $#error $@ 5.1.1 $: "colon illegal in host name part" R$* < @ . > $* $#error $@ 5.1.2 $: "invalid host name"
First, addresses are checked to see whether they are of the The rest of rule set 0 selects delivery agents. It can be simple or complex depending on your specific needs. In its simplest form, it detects local addresses and network mail:
R$+ < @ $=w . > $#local $: $1 regular local name R$* < @ $* > $* $#smtp $@ $2 $: $1 < @ $2 > $3 user@host.domain Rule set 0 can also do mailertable lookups (see Section 19.6.14 ) and forward to a hub:
R< $+ > $* $: < $(mailertable $1 $) > $2 lookup R$* < @ $* > $* $: $>95 < $S > $1 < @ $2 > $3 glue on smarthost name Note that these rules would not be grouped right next to each other. We presented them like this just to give you the flavor of a rule set 0, without the details. Leap ahead to Section 29.6, "Rule Set 0" if you hunger for more. |
|