Alias recursion and nested list definitions

From Messaging Server Technical Reference Wiki
Jump to: navigation, search

Aliases may reference other aliases, in LDAP, in the alias database, in the alias file (legacy configuration), and in alias named group Unified Configuration option settings. To avoid possible infinite recursion reference loops, the MTA limits such nested or recursive references to a default maximum of ten levels (see the max_alias_levels MTA option).

If an alias references itself, either directly or indirectly, an alias loop results. The loop eventually terminates due to the level restriction, but the termination conditions may not produce consistent results in all cases.

The special case of an alias directly referencing itself is allowed and specially handled. For example, the alias file definition

alias-name: alias-name, other-address-1, other-address-2, ... 

will expand alias-name into itself plus other-address-1, other-address-2, and so on. alias-name may in turn get expanded in some other way (the system alias database or personal alias database) but it will not be expanded further by the alias file.

Note that implicit domain name use (having the MTA itself insert its default domain name onto "bare" usernames) may affect the "matching" of alias names needed for the MTA's special code to trigger. In order for a "match" to be assured, either use a "bare" username on both the left and right hand sides, or use a fully-qualified address on both the left and right hand sides.

See also: