Project LID Homepage: Distributable Modules
LCCEmailVerification Homepage
Updates

Update 10/30/2008 (2:57 pm): Updated program to handle open/close of sockets differently. Added checking for '.' at end of address.

Update 10/27/2008 (2:57 pm): Updated program to handle root level MX records (like Microsoft live reroute).

Update 10/27/2008 (1:43 pm): Program's SMTP connection enhanced to handle multiple retries on the same server. Extended connection try from 3 second max, to 30 second max (some servers were taking 4.9 seconds in testing).

Update 10/27/2008: Program released.


Description

The lccEmailVerification program was created to verify e-mail addreses. The following tests are ran against each mail address, in order. If any test fails, the program will mark the address as 'failed' and move on to the next one.

+ no spaces

+ at least one '@' (at) character, and only one

+ at least one '.' (period) character after the '@' character

+ at least something before the '@' character

+ at least something after the '@' character

+ the DNS Name portion (what is after the '@' character) exists on the internet

+ at least one of the IPs returned by DNS Name is valid IP

+ at least one of the DNS Server provided by the user is reachable

+ at least one valid MX (mail server) records exists for the address DNS Name

+ at least one of the servers referred to in the MX records is reachable

+ at least one of the mail servers respond to a SMTP connection

+ at least one of the mail servers respond to a HELO command

+ at least one of the mail servers respond to a MAIL FROM command

+ at least one of the mail servers allow a new message to be sent to the mail address
note: a message is not actually sent, just an attempt at sending one

If all of the tests passed, the mailbox is labled as 'Verified'.
If any of the tests fail, the mailbox is labled as 'Failed'.


Application Files

Disclaimer
The programs, scripts and documentation are provided AS IS without warranty of any kind. Lower Columbia College further disclaims all implied warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the programs, scripts and documentation remains with you. In no event shall Lower Columbia College, its authors, or anyone else involved in the creation, production, or delivery of the programs, scripts or documentation be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the programs, scripts or documentation, even if Lower Columbia College has been advised of the possibility of such damages.