SHORT DESCRIPTION This Perl module provides routines for checking validity of email address. It makes several checks: 1) it checks syntax of email address; 2) it checks if there any MX record or at least A record for domain in email address; 3) it tries to connect to email server directly via SMTP to check if mailbox is valid. Old versions of this module have performed this check via VRFY command. Now module uses another check: it uses combination of commands MAIL and RCPT which simulates fake sending of email. It can detect bas mailboxes in many cases. For example hotmail.com mailboxes can be verified with MAIL/RCPT check. This module was designed with CGIs in mind. It has support for check timeout so it can be used to filter fast wrong e-mail adresses in CGI forms (passing as valid e-mail addresses that can't be checked fastly). For details see pod documentation in Mail::CheckUser REQUIREMENTS This module requires next Perl modules: 1) Net::SMTP (libnet package) 2) Net::DNS (Net-DNS package) 3) IO::Handle (IO package) Perl distributions before 5.6 contain version of IO::Handle which has bugs in timeouts handling. Download latest version from CPAN if you haven't did it before. INSTALLATION perl Makefile.PL make make test make install Tests can run very slowly especially if you have network down. LICENSE Mail::CheckUser is provided "as is" and without any express or implied warranties, including, without limitation, the implied warranties of merchantibility and fitness for a particular purpose. Mail::CheckUser is released under the same terms as Perl itself. For more information see the "README" or "Artistic" files provided with the Perl distribution. BUGS If you have encountered any problems with this module fill free to contact me. My email: Ilya Martynov