in reply to Yet Another E-mail Validation Question

I've been using Mail::CheckUser for quite a while, and haven't had any complaints. It provides regex address syntax checking, with optional DNS and/or SMTP checks, and so far I haven't heard a complaint from a user that his valid email address has been rejected.

I usually just warn the user that the check could take up to 30 seconds, and do the full DNS and SMTP checks while the poor slob waits around. In cases where the wait is considered unacceptable, I just do the DNS checks when the form is submitted (catching things like "aol.cmo"), and then weed the mailing list with the SMTP checks later. qmail and postfix are the main culprits in later bounces, but they're fewer and further between than they would be if we just blindly mailed to all of the syntactically valid addresses.

Shouldn't your SMTP server be retrying on full mailboxes and other temporary (4xx) errors?

  • Comment on Re: Yet Another E-mail Validation Question

Replies are listed 'Best First'.
Re^2: Yet Another E-mail Validation Question
by eric256 (Parson) on Apr 21, 2005 at 16:31 UTC

    What is the point of wasting those 30 seconds checking if the email is in a valid domain? Anyone can type george@aol.com and pass your check. I'm not trying to be a pain here, I realy just wonder if there is some other benefit to this method of checking that I have missed. If you arn't checking that it is actualy their email address then it woudl seem there is little point in checking if it is an email address at all.


    ___________
    Eric Hodges

      Checking that the domain is valid, and, to the extent possible, that the email address exists, saves network and server resources that would be otherwise be consumed by rejections from the local SMTP server and bounces from remote SMTP servers.

      Of course anyone who's of a mind to be a pest can sign a disliked person up for a bajillion mailing lists -- that's why a well-designed list server will provide for double opt-in to confirm subscriptions. That's not the problem we're trying to solve here, though, is it?

        My point, and maybe i didn't communicate it well, was what problem does checking that the mail server exists solve? A nice good user wont enter fake mail servers, and a mean user trying to abuse it will obviously choose a domain that has a mail server active.

        So my real question is "what case did i miss?" Is there some other possiblity that I'm missing in which a nice user somehow accidentaly types in a bad domain name but doesn't mean to? And why is checking the domain in that case better than two email boxes or sending a test message?


        ___________
        Eric Hodges