Sign In | Sign Out | Mailing Lists | Unsubscribe or Change Settings | Help |
OpenBSD Mailing List Server
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = configset GLOBAL addr_xforms <<TAG [VALUE LINES] TAG - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Default Value : no default Data Type : xform_array Category : address Password Notes: Visible only with password. = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = EXAMPLE: configset GLOBAL addr_xforms << ENDTAG /\@.+\.msn.com$/\@msn.com/i ignore case ENDTAG The addr_xforms setting contains a list of transformations. These transformations are applied to all addresses before comparing them for equivalence or storing them in the internal databases. Transformations can be used to remove address extensions, to remove part of the domain name, or to convert capital letters into small letters, for example. Each transformation must appear on a separate line and should be in the form: /pattern/replacement/ unless a special name is used. Each transformation must continue to give the same result when applied to the same email address multiple times in succession. The transformations will not take full effect until the "rekey" command is run. See "help rekey" for more details. For ease of use, seven transformations are supported that have specific names. To use one of these transformations, include its name in the list, as illustrated in the previous example. flatten domain - keep only specified portion of domain name ignore case - ignore case in the local parts (user names) of addresses map domain - replace specified portion of domain name with another string mungedomain - identical to "two level" (see below) three level - strips all but the first 3 domain levels from addresses trim mbox - removes the +mailbox from the local part of all addresses two level - strips all but the first 2 domain levels from addresses More details about each transformation appear in the following sections. All other transformations take the form: /PATTERN1/REPLACEMENT/ Portions of addresses matching PATTERN1 will be replaced by the text of REPLACEMENT. (See "help patterns" for an introduction to patterns.) For example, the following transformation: /example\.net/example.org/ would cause the following two e-mail addresses to be considered equivalent: fred@example.net fred@example.org It is possible, with a poor choice of transformations, to lose data from a subscriber or registry database. If two addresses which are subscribed to a mailing list become equivalent after the transformations, one of the addresses may be removed silently from the subscriber database. Seven Named Transformations 1. flatten domain XXX - keeps only specified portion (XXX) of domain name EXAMPLE: tibbs@w.x.y.a.b.c => tibbs@a.b.c (for 'flatten domain a.b.c') This special string requires you to specify the part of the domain name you want to keep, the rest of the domain will be discarded. ------------------------------------------------------------------------ 2. ignore case - ignores case in local (left-hand) parts of all addresses EXAMPLE: TiBbS@math.uh.edu => tibbs@math.uh.edu To make all addresses case insensitive (for purposes of subscribe, unsubscribe, access_rules, etc): /(.*)/\L$1/ or just use the special string ignore case The user portion of an address (left of the '@') is not usually case sensitive, though on some systems it is. By default Majordomo pays attention to case when comparing addresses in order to follow all relevant standards and be completely safe when faced with the innumerable number of addresses it must deal with, but this may be surprising to those who expect the opposite behavior. Domain names (right of the '@') are never case sensitive. ------------------------------------------------------------------------ 3. map domain XXX to YYY - replaces specified portion of domain name with another string EXAMPLE: tibbs@z.a.b.c => tibbs@z.d.e.f (for 'map a.b.c to d.e.f') ------------------------------------------------------------------------ 4. mungedomain - this transformation is provided for backward compatibility with Majordomo version 1. It is otherwise identical to the "two level" transformation. EXAMPLE: tibbs@karazm.math.uh.edu => tibbs@uh.edu ------------------------------------------------------------------------ 5. three level - strips all but the first 3 domain levels from addresses EXAMPLE: tibbs@a.b.c.math.uh.edu => tibbs@math.uh.edu ------------------------------------------------------------------------ 6. trim mbox - removes the +mailbox from the local part of all addresses EXAMPLE: tibbs+blah@math.uh.edu => tibbs@math.uh.edu To remove the "+mailbox" specifier from an address, changing from "joe+remote@xyz.com" to just "joe@xyz.com": /(.*?)\+.*(\@.*)/$1$2/ or just use the special string trim mbox ------------------------------------------------------------------------ 7. two level - strips all but the first 2 domain levels from addresses EXAMPLE: tibbs@karazm.math.uh.edu => tibbs@uh.edu To strip useless domain levels from an address at a single domain, making "jane@mail.xyz.com" equivalent to "jane@xyz.com": /\@.+\.xyz.com$/\@xyz.com/i or to take the same action for ALL domains, just use the special string two level which is the same as the special string mungedomain ------------------------------------------------------------------------ See Also: help alias help configset_access_rules (for how to trap or match specific addresses) help patterns (for details of regular expressions and replacement strings) help rekey (must clean up the internal database after new transforms) This is the "configset_addr_xforms" help document for Majordomo 2, version 0.1201103110. For a list of all help documents, send the following command: help topics in the body of a message to majordomo@openbsd.org.
For assistance, please contact the openbsd.org administrators.
Sign In | Sign Out | Mailing Lists | Unsubscribe or Change Settings | Help |