450 - greylisted

jozef.benicky - April 28, 2009 - 14:31
Project:Email Verification
Version:6.x-1.1
Component:Code
Category:bug report
Priority:normal
Assigned:Unassigned
Status:active
Description

There are some servers using 450 error code for greylisting:

Resolving host name "xxxx"...
Connecting to host address "xxxx"...
Connected.
S 220 xxxx ESMTP Postfix
C HELO xxxx
S 250 xxxx
C MAIL FROM:
S 250 Ok
C RCPT TO:
S 450 : Recipient address rejected: Greylisted, see http://isg.ee.ethz.ch/tools/postgrey/help/xxxx.html
This host states that the address is undetermined.
Disconnected.

I think this one is using postfix with postgrey.. It would be better to match "Greylist", not the code itself.

#1

spatz4000 - April 28, 2009 - 15:41
Title:450 - greilisted» 450 - greylisted

#2

jozef.benicky - September 20, 2009 - 11:17

this is in the source code:

// Any 4xx error also means we couldn't really check^
// except 450, which is explcitely a non-existing mailbox:^
// 450 = "Requested mail action not taken: mailbox unavailable"^
ereg("^4", $to) && !ereg("^450", $to)) {^

but this isn't right, it should be like this:
450 Requested mail action not taken: mailbox unavailable (e.g., mailbox busy)
550 Requested action not taken: mailbox unavailable (e.g., mailbox not found, no access, or command rejected for policy reasons)

#3

Rainman - September 20, 2009 - 11:46

I did a quick google on the SMTP codes, here is a handy reference:

http://email.about.com/cs/standards/a/smtp_error_code_2.htm

(from the first page of that link) the first number: 4: The server has encountered a temporary failure. If the command is repeated without any change, it might be completed. Mail servers can use such temporary failures to keep untrusted senders at bay.
5: The server has encountered an error.

So actually both 450 and 550 are valid codes, the difference is that 450 is "temporary". I would say it is probably safe overall to allow 450 codes, especially since the known greylisting issue. although I still like the idea of checking for the "greylist" keyword along with 450 to be sure that was the issue.

Ahh. had to read again what was posted, that appears correct. basically if the server is inviting you to try again later, well email verify should take that as a good response. ok now I am in favor of just removing that whole 450 part.

 
 

Drupal is a registered trademark of Dries Buytaert.