4. mailUsers Configuration merging

The mailUsers module expects at least two properties to be made available with each and every object in the PigeonDeliver tree:

When merging user configurations with domain configurations, each module is considered in turn.

For each module, the user configurations take precedence, unless the ``force'' flag has value ``TRUE'' into the domain configuration.

In this case, the domain configuration is used unless the ``force'' flag into the user configuration is also set to ``TRUE'', leading to four combinations (considering the force flag):

user FALSE, domain FALSE

user configuration is used

user TRUE, domain FALSE

user configuration is used - this combination is often used by web interfaces to forbid access to simple users (meaningless to the server).

user TRUE, domain TRUE

user configuration is used

user FALSE, domain TRUE

domain configuration is used

The above considerations were made upon the assumption that a single module is available both in the domain configuration and the user configuration. If this assumption is not true, the only available module is used.

Note, however, that the absence of a module implies that nothing is said about the module, while its availability either implies that the module is enabled or disabled, depending on the enable flags and depending on how the force flags interacts with user/domain modules.