Domtool Module Alias

E-mail aliases (AKA, redirects)


extern type emailUser
extern type email
extern type aliasSource
extern val userSource : emailUser -> aliasSource
extern val defaultSource : aliasSource
extern type aliasTarget
extern val addressTarget : email -> aliasTarget
extern val addressesTarget : [email] -> aliasTarget
extern val dropTarget : aliasTarget
extern val aliasPrim :
 aliasSource -> aliasTarget -> [Domain] {MailNodes : [mail_node]}
val emailAlias : emailUser -> email -> [Domain] {MailNodes : [mail_node]}
val aliasMulti : emailUser -> [email] -> [Domain] {MailNodes : [mail_node]}
val aliasDrop : emailUser -> [Domain] {MailNodes : [mail_node]}
val defaultAlias : email -> [Domain] {MailNodes : [mail_node]}
val defaultAliasDrop : [Domain] {MailNodes : [mail_node]}

extern type emailUser

A valid username to appear before the "@" in an e-mail address

extern type email

A valid e-mail address. It may also be a username only, in which case it is interpreted as a local user's mailbox.

extern type aliasSource

An e-mail recipient whose mail you want to redirect

extern val userSource : emailUser -> aliasSource

The part appear before the "@" in your desired source address

extern val defaultSource : aliasSource

Matches any mail to this domain that doesn't match any other rule.

extern type aliasTarget

A place to redirect messages

extern val addressTarget : email -> aliasTarget

Redirect to this e-mail address.

extern val addressesTarget : [email] -> aliasTarget

Redirect to all of these addresses.

extern val dropTarget : aliasTarget

Silently delete all mail to the associated source.

extern val aliasPrim :
 
aliasSource -> aliasTarget -> [Domain] {MailNodes : [mail_node]}

Request redirection of all mail from the source to the target, specifying on which nodes this redirection should be applied.

val emailAlias : emailUser -> email -> [Domain] {MailNodes : [mail_node]}

Redirect mail for the user at the current domain to the e-mail address.

val aliasMulti : emailUser -> [email] -> [Domain] {MailNodes : [mail_node]}

Redirect mail for the user at the current domain to all of the e-mail addresses listed.

val aliasDrop : emailUser -> [Domain] {MailNodes : [mail_node]}

Silently delete mail to the user at the current domain.

val defaultAlias : email -> [Domain] {MailNodes : [mail_node]}

When a message to the current domain doesn't match any other rule, send it to this e-mail address.

val defaultAliasDrop : [Domain] {MailNodes : [mail_node]}

Silently drop all mail not matching a specific rule.