Canonical table Cristiano Otto Von Trompczynski 11.. IInnttrroodduuccttiioonn Before the cleanup daemon stores inbound mail into the incoming queue, it uses the canonical table to rewrite all addresses in message envelopes and in message headers, local or remote. The mapping is useful to replace login names by Firstname.Lastname style addresses, or to clean up invalid domains in mail addresses produced by legacy mail systems. The canonical mapping affects both message header addresses (i.e. addresses that appear inside messages) and message envelope addresses (for example, the addresses that are used in SMTP protocol commands). Typically, one would use the canonical table to replace login names by Firstname.Lastname, or to clean up addresses produced by legacy mail systems. The canonical mapping is not to be confused with virtual domain support. Use the virtual(5) map for that purpose. The canonical mapping is not to be confused with local aliasing. Use the aliases(5) map for that purpose. The format of the canonical table is as follows, mappings being tried in the order as listed in this help: name = user@domain address = address user@domain is replaced by address. This form has the highest precedence. This form useful to clean up addresses produced by legacy mail systems. It can also be used to produce Firstname.Lastname style addresses, but see below for a simpler solution. name = user address = address user@site is replaced by address when site is equal to $myorigin, when site is listed in $mydestination, or when it is listed in $inet_interfaces. name = @domain address = address Every address in domain is replaced by address. This form has the lowest precedence. In all the above forms, when address has the form @otherdomain, the result is the same user in other-domain. ADDRESS EXTENSION When table lookup fails, and the address localpart contains the optional recipient delimiter (e.g.,user+foo@domain), the search is repeated for the unextended address (e.g. user@domain), and the unmatched extension is propagated to the result of table lookup. The matching order is: user+foo@domain, user@domain, user+foo, user, and @domain. P.S. The table format does not understand quoting conventions. 22.. SSeettttiinngg aa ppaatthh ffoorr ccaannoonniiccaall ttaabblleess The path for a canonical table must be set by the "Canonical maps" option found in the "Table locations" item. One or more paths may be defined. However, only local paths and table formats recognised by the module will be editable (see "Canonical maps" help). 33.. EEddiittiinngg aa ccaannoonniiccaall ttaabbllee After choosing the "Canonical tables" option, it will be shown a list with the path for possible tables set. You must select a table to edit. 33..11.. EEddiittiinngg aann iitteemm You can edit a selected item selecting the desired item. After changing it, click on Accept. 33..22.. AAddddiinngg aann iitteemm After selecting the Add option, a window will be shown asking you to entry with 'name' and 'address'. Fill in acording to your needs, as described above. Click on Accept to add this new entry. 33..33.. DDeelleettiinngg aann iitteemm To delete an item on the table you must select it first, so that the edition window will be shown. Click on Delete to delete this item.