#!/usr/bin/perl
NAME¶
expn - recursively expand mail aliases
SYNOPSIS¶
expn [
-a] [
-v] [
-w] [
-d] [
-1]
user[@
hostname] [
user[@
hostname]]...
DESCRIPTION¶
expn will use the SMTP
expn and
vrfy commands to expand
mail aliases. It will first look up the addresses you provide on the command
line. If those expand into addresses on other systems, it will connect to the
other systems and expand again. It will keep doing this until no further
expansion is possible.
OPTIONS¶
The default output of
expn can contain many lines which are not valid
email addresses. With the
-aa flag, only expansions that result in
legal addresses are used. Since many mailing lists have an illegal address or
two, the single
-a, address, flag specifies that a few illegal
addresses can be mixed into the results. More
-a flags vary the ratio.
Read the source to track down the formula. With the
-a option, you
should be able to construct a new mailing list out of an existing one.
If you wish to limit the number of levels deep that
expn will recurse as
it traces addresses, use the
-1 option. For each
-1 another
level will be traversed. So,
-111 will traverse no more than three
levels deep.
The normal mode of operation for
expn is to do all of its work silently.
The following options make it more verbose. It is not necessary to make it
verbose to see what it is doing because as it works, it changes its
argv[0] variable to reflect its current activity. To see how it is
expanding things, the
-v, verbose, flag will cause
expn to show
each address before and after translation as it works. The
-w, watch,
flag will cause
expn to show you its conversations with the mail
daemons. Finally, the
-d, debug, flag will expose many of the inner
workings so that it is possible to eliminate bugs.
ENVIRONMENT¶
No environment variables are used.
FILES¶
/tmp/expn$$ temporary file used as input to nslookup.
SEE ALSO¶
aliases(5),
sendmail(8),
nslookup(8), RFC 823, and RFC
1123.
BUGS¶
Not all mail daemons will implement
expn or
vrfy. It is not
possible to verify addresses that are served by such daemons.
When attempting to connect to a system to verify an address,
expn only
tries one IP address. Most mail daemons will try harder.
It is assumed that you are running domain names and that the
nslookup(8)
program is available. If not,
expn will not be able to verify many
addresses. It will also pause for a long time unless you change the code where
it says
$have_nslookup = 1 to read
$have_nslookup = 0.
Lastly,
expn does not handle every valid address. If you have an example,
please submit a bug report.
CREDITS¶
In 1986 or so, Jon Broome wrote a program of the same name that did about the
same thing. It has since suffered bit rot and Jon Broome has dropped off the
face of the earth! (Jon, if you are out there, drop me a line)
AVAILABILITY¶
The latest version of
expn is available through anonymous ftp at
ftp://ftp.idiom.com/pub/muir-programs/expn.
AUTHOR¶
David Muir Sharnoff <muir@idiom.com>