Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
vrfy(1)			    General Commands Manual		       vrfy(1)

       vrfy - Verify electronic	mail addresses

       vrfy [options] [-v] address [host]
       vrfy [options] [-v] -f [file] [host]
       vrfy [options] [-v] -p domain
       vrfy [options] [-v] -T domain [name]

       vrfy  is	a tool to verify electronic mail addresses.  The only required
       parameter is the	address	to be verified.	 The actual verification  will
       be  carried  out	 at the	remote machine where mail to the given address
       would normally be delivered.  This may be a mail	exchange host and  not
       the final destination host.  If an explicit host	is given as the	second
       argument	on the command line, the specified address is verified at that

       The  output of the program shows	whether	or not the address can be han-
       dled at the contacted host. Error messages will be printed if  the  ad-
       dress  is  invalid.  If the address is recognized, the output shows the
       remote host's notion of the (possibly translated) address. If it	repre-
       sents  a	local user at that host, additional information	about the user
       may be displayed.

       Note that if the	address	is accepted by the contacted host, but this is
       not  the	 final destination host, one still cannot be sure that the ad-
       dress represents	a valid	recipient.

       It is a handy tool to verify local mail addresses.
       If you have set up a .forward file, you can verify your own address  to
       check that the forwarding is done properly.
       If  you	specify	an arbitrary name, you can check whether this resolves
       to any valid recipients.

       Some flags put the program in a special operation mode.

       If the -f option	is specified, the program enters a special file	 mode.
       The  (optional)	parameter  is the name of a file containing electronic
       mail addresses, such as used for	mailing	lists.	 Verification  of  all
       addresses  present  in the file is attempted.  If no filename is	speci-
       fied, vrfy acts as a filter and the addresses to	be verified  are  read
       from standard input.

       If  the -p option is specified, the program enters a special ping mode.
       The required parameter is an electronic mail domain for which  it  will
       be verified whether the corresponding mail exchangers are currently re-
       sponding	to SMTP	requests.

       If the -T option	is specified, the program enters a special etrn	 mode.
       The  required  parameter	 is  an	electronic mail	domain.	 An ESMTP ETRN
       command will be delivered to its	corresponding mail exchangers. An  op-
       tional name is used as the ETRN parameter.  If not specified, the local
       host name is used instead.  ETRN	is defined in RFC 1985,	and is	imple-
       mented in sendmail 8.8.

       If the -L level option is specified, the	received replies to an address
       verification are	resursively verified up	to level levels	deep. This  is
       handy for checking mailing list expansions, and detecting possible mail
       forwarding loops.

       Recursion stops automatically if	the reply represents a local recipient
       address,	or in case a forwarding	loop is	detected.  If the received re-
       ply is the same (modulo comments) as the	address	that  was  asked  for,
       the  request  is	 retried at its	domain itself, unless this was the ma-
       chine we	just queried, or it is not an internet domain host.

       The option -R is	equivalent to ``-L 17''.   This	 is  the  maximum  hop
       count  normally	used during actual mail	relaying. This option also im-
       plies ``-s''.

       -v      Sets verbose mode. Prints the action the	program	 is  going  to
	       If  specified as	-vv, very verbose output is printed.  The SMTP
	       transactions with the remote host are shown in detail.
	       If the verbose mode level is set	to 3 with  -vvv,  the  actions
	       taken  by  the remote host are shown, such as alias and forward
	       expansions. This	can be quite amusing.  The  remote  host  must
	       support the SMTP	VERB command for this to work.
	       In ping mode, the verbose mode level 3 will cause an extra SMTP
	       command HELO to be generated.

       -d      Prints debugging	output showing the various phases of the  SMTP
	       connection  with	 the  remote host. This	is normally not	of any
	       interest. Also prints various messages that are otherwise shown
	       in very verbose mode.
	       If  specified as	-dd, in	addition all nameserver	query transac-
	       tions are shown in detail.
	       A level 3 debug mode -ddd will not make any SMTP	connections at

       -a      If  multiple  mail  exchange hosts were found, this option will
	       cause the operation to be carried out at	each of	 these	hosts.
	       Normally	only the primary mail exchanger	is contacted.

       -l      Sets  local mode	for error handling. Address syntax and parsing
	       errors are handled entirely by the program. The default	is  to
	       pass faulty addresses to	the local host to get the official er-
	       ror messages.

       -s      Strips all  comments  from  full	 address  specifications,  and
	       presents	 only the plain	address	to the remote host to be veri-
	       fied.  Some hosts may get confused when	a  multiple  bracketed
	       address is presented. This option is implied when -R is given.

       -e      Uses the	EXPN command instead of	the VRFY command. Some systems
	       may have	different treatment for	these commands,	so this	option
	       may be a	possible alternative.  By sendmail V5 they are usually
	       treated the same, but not by the	sendmail V8 versions.  In case
	       treatment is different, the VRFY	command	will just show whether
	       the presented address is	valid or not,  but  the	 EXPN  command
	       will return alias expansions, if	appropriate.  Some systems al-
	       low VRFY, but disallow EXPN for privacy reasons.

       -h      This option causes an SMTP HELO command to  be  issued  to  the
	       contacted  server  before  subsequent  commands	are attempted.
	       Servers can be configured to refuse commands unless a HELO com-
	       mand  is	given first.  The HELO is not issued by	default, since
	       old versions of sendmail	refuse SMTP connections	originating on
	       the  same  machine (i.e.	if the domain name in the HELO command
	       is its own name).

       -H      Similar to the -h option, but now the  ESMTP  EHLO  command  is
	       tried  first. If	the contacted server does not understand this,
	       the SMTP	HELO command is	tried next.

       -n      Many non-sendmail hosts do not, or incorrectly or incompletely,
	       implement  the  VRFY  command.  Other systems have VRFY or EXPN
	       disabled	for privacy reasons. This option uses  an  alternative
	       protocol	 suite with the	regular	HELO, MAIL, RCPT and RSET com-
	       mands.  This gives only a global	indication whether the recipi-
	       ent  is valid. Recursive	mode is	not possible, and will be dis-

       -S sender
	       Defines an explicit envelope sender address to be used  in  the
	       MAIL command during the alternative protocol suite, to overrule
	       the default empty sender	address	``<>''.	 This  option  implies

       -c secs Sets a connect timeout value to override	the default timeout of
	       6 seconds. This may be necessary	if it takes considerable  time
	       to connect to the remote	host.

       -t secs Sets a read timeout value to override the default timeout of 60
	       seconds.	This may be necessary if it  takes  considerable  time
	       for  the	 remote	host to	assemble all addresses in long mailing

       Default options and parameters can be preset in an environment variable
       VRFY_DEFAULTS  using  the same syntax as	on the command line. They will
       be evaluated before the command line arguments.

       vrfy sets up an SMTP connection with the	remote host where the  verify-
       ing  is	to be carried out.  SMTP is the	TCP/IP protocol	for electronic
       mail exchange.

       If the given host does not speak	SMTP, the  error  message  "Connection
       refused"	is printed.

       If  the	SMTP  protocol	is blocked, a "Host is unreachable" message is

       If the remote host doesn't respond in time, you will get	a  "Connection
       timed out" message.

       The  remote host	must support the SMTP VRFY command for doing the veri-
       fication. If not, a "Command not	implemented" is	printed.

       The following strategy is used to find the remote host where the	 veri-
       fication	is to be carried out.

       a.  If  an  explicit  verification host is specified, that host is con-
	   tacted unconditionally.

       b.  If the address to be	verified has no	domain part after an '@' sign,
	   it  is supposed to be a local recipient and will be verified	at the
	   local host.

       c.  If the address contains a domain part after an '@' sign,  mail  ex-
	   change  hosts  will be fetched for that domain. If no such mail ex-
	   changers are	found, the domain part is supposed to represent	a spe-
	   cific host, and that	host itself will be contacted.

       d.  If mail exchangers were found, the verification will	be carried out
	   at the primary mail exchange	host.

       e.  If the -a option was	given, and multiple mail exchangers exist, the
	   verification	is also	carried	out at all other mail exchange hosts.

       f.  For	the pseudo domains ".uucp" and ".bitnet" a specific server can
	   be compiled-in. The default is to contact the local host.

       g.  If no mail exchangers were found for	an  unqualified	 single	 host-
	   name, the local host	is contacted by	default. The actual meaning of
	   such	addresses depend on your local strategy.

       Environment variables can be used to overrule several  compiled-in  de-

       This is your nearest host running the sendmail daemon.  It is contacted
       in case local addresses without a domain	are given.  Also  (unless  the
       -l is given) when domain	parsing	errors were encountered, assuming that
       this host can give a more appropriate error message.  The default value
       is localhost.

       This host is contacted when a .uucp address is specified.  You probably
       won't get much useful information.  The default value is	localhost.

       This host is contacted when a .bitnet or	.earn  address	is  specified.
       You  probably  won't get	much useful information.  The default value is

       This host is contacted when a single unqualified	host name could	not be
       resolved	 to a fully qualified MX domain	host.  It is assumed that sin-
       gle hosts in your own domain can	be resolved,  i.e.  they  have	an  MX
       record.	 It  depends on	your local strategy for	unqualified hosts what
       they mean: a .uucp host,	a .bitnet host,	or just	a local	 host  without
       MX.  The	default	value is localhost.

       Some hosts have a lousy VRFY handling. Sometimes	the command is not im-
       plemented at all. Other hosts are willing to verify only	local  recipi-
       ents. The ``-n''	option may be necessary.

       Other servers may refuse	the VRFY command for privacy reasons.

       If the verification is not performed at the final destination host, one
       cannot be sure that the given address is	valid.

       Note the	following subtle differences if	you want to check an  existing
       mailing	list  list.  Suppose that ``list-users'' is the	local alias to
       include the actual file ``/mail/lists/list-users'' with recipients.

       The command ``vrfy list-users'' will verify the proper expansion	of the
       mailing list at the local host. No remote hosts are contacted to	verify

       The command ``vrfy -f /mail/lists/list-users'' will verify  each	 indi-
       vidual address at the appropriate remote	hosts.

       The   same   effect   can   be	reached	 when  you  give  the  command
       ``vrfy -L 1 list-users''. Use a higher recursion	level if you  want  to
       see further expansion of	the mailing list.

       Eric Wassenaar, Nikhef-H, <>

				    971114			       vrfy(1)


Want to link to this manual page? Use this URL:

home | help