As of version 5.0,
EmailVerify for .NET comes with a total of
40 different result statuses, giving precise indication about the nature of the
failures the component generates while validating email addresses; along with these, the software reports back every single detail about
each validation process, including information about the
syntactical analysis,
embedded comments,
internationalized parts,
DNS MX (mail exchanger) records as well as the complete transcript of the eventual SMTP session.
After each email validation, EmailVerify for .NET either reports back a success - meaning it completed the validation process up to the required level -
or a failure; among the kinds of failure the component supports, some should be considered as temporary failures, meaning they could disappear
on a new, subsequent validation, and include network and timeout issues as well as greylisting detections and mailboxes over quota and conditions where a mail exchanger
appears to be too busy. On the other side, some failures should not be considered as temporary; these include syntactical issues and critical
DNS configuration problems.
EmailVerify for .NET exposes the email validation statuses it supports by way of the VerificationStatus enumeration; the following sections mention the
most used values and their meanings.
Syntax-related failures
InvalidCharacterInSequence
This failure means that an invalid character has been detected in the provided email address, like in the following example:
me@ex@mple.com
InvalidWordBoundaryStart
This failure means that a new word boundary start has been detected at an invalid position, like in the following example:
hi.\\there@example.com
UnmatchedQuotedPair
This failure means that a quoted pair within a quoted word in the provided email address is not closed properly.
UnexpectedQuotedPairSequence
This failure means that an unexpected quoted pair sequence has been found within a quoted word in the provided email address, like in the following example:
"find it in \§ 3"@example.com
UnbalancedCommentParenthesis
This failure means that the number of parenthesis used to open comments in the provided email address is not equal to the one used to close them.
DoubleDotSequence
This failure means that an invalid sequence of two adjacent dots has been found in the provided email addres, like in the following example:
where.is..it@example.com
InvalidLocalPartLength
This failure means that the local part of the email address has an invalid length, according to the IETF standards.
InvalidFoldingWhiteSpaceSequence
This failure means that an invalid folding white space (FWS) sequence has been found.
AtSignNotFound
This failure means that the at sign symbol (@), used to separate the local part from the domain part of the address, has not been found, like in the following example:
me-at-example.com
InvalidEmptyQuotedWord
This failure means that an invalid quoted word with no content has been found, like in the following example:
freddy."".krueger@example.com
InvalidAddressLength
This failure means that the provided email address has an invalid total length.
DomainPartCompliancyFailure
This failure means that the domain part of the email address is not compliant with the IETF standards, like in the following example:
michael@example."hi there".com
DNS-related failures
DnsQueryTimeout
This failure means that a timeout has occured while querying the DNS server(s) for records about the email address domain.
DnsConnectionFailure
This failure means that the verification failed because of a socket connection error occured while querying the DNS server.
DomainDoesNotExist
This failure means that the domain of the email address does not exist, like in the following example (at the time of this writing):
alice@i-do-not-exist.xyz
DomainIsMisconfigured
This failure means that the domain of the email address does not have any valid DNS record and couldn't accept messages from another
host on the Internet.
Well-known disposable email address failures
DomainIsWellKnownDea
This failure means that the email address is provided by a well-known disposable email address provider (DEA), like the ones mentioned
in the section above.
MailExchangerIsWellKnownDea
This failure means that the mail exchanger being tested is a well-known disposable email address provider (DEA).
MailboxIsDea
This failure means that, while both the domain and the mail exchanger for the email address being tested are not from a well-known
disposable email address provider (DEA), the mailbox is actually disposable.
SMTP failures
SmtpConnectionTimeout
This failure means that a timeout has occured while connecting to the mail exchanger which serves the domain for the provided email address.
SmtpConnectionFailure
This failure means that a socket connection error occured while connecting to the mail exchanger which serves the domain for the provided email address.
Mailbox validation failures
MailboxDoesNotExist
This failure means that the mailbox for the provided email address does not exist.
MailboxValidationTimeout
This failure means that a timeout occured while verifying the existence of the mailbox for the provided email address.
MailboxTemporarilyUnavailable
This failure means that the requested mailbox is temporarily unavailable; this is not an indicator that the mailbox actually
exists or not but, often, a message sent by external mail exchangers with greylisting enabled.
LocalSenderAddressRejected
This failure means that the external mail exchanger rejected the local sender address configured for the component (this value
is specified by way of the LocalSenderAddress property).
ServerDoesNotSupportInternationalMailboxes
This failure means that the external mail exchanger does not support international mailbox names, while the provided email address
uses a non-ASCII encoding for its local part.
Catch-all rejection failures
ServerIsCatchAll
This failure means that the external mail exchanger under test accepts fake, non existent, email addresses; therefore the provided email
address MAY be inexistent too.
CatchAllValidationTimeout
This failure means that a timeout occured while verifying fake email address rejection for the mail server.
CatchAllConnectionFailure
This failure means that a connection error occurred while verifying the external mail exchanger rejects inexistent email addresses.