Another wish.
[exim.git] / src / src / routers / README
1 $Cambridge: exim/src/src/routers/README,v 1.1 2004/10/07 13:10:02 ph10 Exp $
2
3 ROUTERS:
4
5 The yield of a router is one of:
6
7 OK the address was routed and either added to one of the
8 addr_local or addr_remote chains, or one or more new
9 addresses were added to addr_new. The original may be added
10 to addr_succeed.
11
12 REROUTED this is used when a child address is created and added to
13 addr_new as a consequence of a domain widening or because
14 "self = reroute" was encountered. The only time it is handled
15 differently from OK is when verifying, to force it to
16 continue with the child address.
17
18 DECLINE the address was not routed; pass to next router unless
19 no_more is set. It is permitted for additional addresses to
20 have been added to addr_new (or indeed for addresses to have
21 been put on the other chains).
22
23 PASS the address was not routed, but might have been modified;
24 pass to the next router unconditionally.
25
26 DISCARD the address was discarded (:blackhole: or "seen finish")
27
28 FAIL the address was not routed; do not pass to any subseqent
29 routers, i.e. cause routing to fail.
30
31 DEFER retry this address later.
32
33 Both ERROR and DEFER cause the message to be kept on the queue; either may
34 request freezing, but nowadays we try not to request freezing from routers
35 because it may hold up other addresses in the message.
36
37
38 When routing succeeds, the following field in the address can be set:
39
40 transport points to the transport instance control block
41
42 uid, gid are the uid and gid under which a local transport is to be
43 run if the transport does not itself specify them.
44
45 initgroups is set true if initgroups() is to be called when using the
46 uid and gid set up by the router.
47
48 fallback_hosts fallback host list - relevant only if the router sets up
49 a remote transport for the address.
50
51 errors_address where to send error messages for this address.
52
53 extra_headers additional headers to be added to the message for this
54 address.
55
56 remove_headers the names of headers to be removed from the message for this
57 address
58
59 ****