1
Vote

EHLO command not returning correct responses?

description

I downloaded the source code of smtp4dev 2.0.9 and playing around with the Rnwood.SmtpServer to see if I can embed it in a custom server. In my server, I register only the Rnwood.SmtpServer.Extensions.SizeExtension. When I send a message using Mozilla Thunderbird, the transaction fails and Thunderbird says that the server responds with just "SIZE". In my case, server ends up in an infinite loop.

So, I debug using a telnet session to the server:
Trying 127.0.0.1...
Connected to goten.local.
Escape character is '^]'.
220 (none) smtp4dev ready
EHLO example.com
250 Nice to meet you.
SIZE
This is where I notice that the server responded incorrectly, so I sent the QUIT command back to the server and the everything closed correctly.
QUIT
221 See you later aligator
Connection closed by foreign host.
If I am interpreting RFC 1869 correctly, I think each line of the EHLO response is suppose start with a "250" code:
ehlo-ok-rsp  ::=     "250"    domain [ SP greeting ] CR LF
                    / (    "250-"   domain [ SP greeting ] CR LF
                        *( "250-"      ehlo-line           CR LF )
                           "250"    SP ehlo-line           CR LF   )
I think this is a bug. Any thoughts?

Thanks,
Ralph

comments