Re: [Exim] style guide and quick reference

Top Page
Delete this message
Reply to this message
Author: Matthew Byng-Maddick
Date:  
To: exim-users
Subject: Re: [Exim] style guide and quick reference
On Fri, Oct 03, 2003 at 04:27:28PM +0100, Tony Finch wrote:
I'll try and remember the comments I made directly to you for the list
when Tony and I spoke about this on Friday.

> # $Cambridge: hermes/doc/misc/EximStyle,v 1.1 2003/10/03 15:18:49 fanf2 Exp $
> # first put macros that are used throughout the configuration.
> # if a macro is only used to adjust one main configuration
> # option then it can go next to that option.


# we talked about defining address, host and domain lists here. I would
# be inclined to put them after the macro section as my lists often include
# things I define in macros

[main]

[acl]

[local scan]

# I'm not sure if I agree that authenticators belong at this point, but
# I suspect that it's a matter of opinion
[authenticators]

> begin rewrite
> # in general addresses are rewritten the first time they are
> # seen, so put rewrite rules immediately before the routers.


# I like this idea, this is unusual but sensible after some thought.

> begin routers
> # the ordering for routers is mostly determined by external
> # factors. order the configuration options for each router
> # according to the generic template below.


# This seems sensible

[transports]

[retry]

All in all this seems nice, and it's probably sensible to have *some*
sort of style guide. Makes stuff easy(ish) to follow. I don't know if
some kind of style guide could be thought up for how to deal with expansion
items, as in my limited experience these are often what confuses people
when reading an exim configure file. Certainly in terms of finding bits of
the configuration, ordering it in a sensible way is good.

Just for reference, my current ordering goes something along the lines of:
## Macro definitions
## Main configuration : List settings
## Main configuration : ACL settings
## Main configuration : Qualifying and outgoing host stamp
## Main configuration : Interfaces on which we receive mail
## Main configuration : UIDs for delivery
## Main configuration : User lists
## Main configuration : TLS
## Main configuration : Logging
## Main configuration : Extra mail parameters
## Main configuration : Miscellaneous Options
## ACL configuration : RCPT TO checking
## ACL configuration : DATA checking
## Transports configuration: Remote Transports
## Transports configuration: Delivery to Cyrus IMAPd
## Transports configuration: Batch SMTP delivery
## Transports configuration: AutoDNS
## Transports configuration: OpenSRS
## Transports configuration: Address expansions
## Transports configuration: Mailman
## Routers configuration: Remote routers
## Routers configuration: Local system routers
## Routers configuration: Local user routers
## Routers configuration: Mailman
## Retry configuration

MBM

--
Matthew Byng-Maddick         <mbm@???>           http://colondot.net/