I believe it can. MTAs are highly configurable to return any sort of errors
and/or disconnects on various conditions, thus the postfix smtp-sink
capabilities to test out all of those settings, and that's how we
encountered this issue.



*Matthew Altman*
*Sr. Software Engineer*

On Fri, Jul 1, 2016 at 3:16 PM, Ian Lance Taylor <i...@golang.org> wrote:

> On Fri, Jul 1, 2016 at 1:17 PM, 'Matthew Altman' via golang-nuts
> <golang-nuts@googlegroups.com> wrote:
> > https://github.com/golang/go/blob/master/src/net/smtp/smtp.go#L76-L79
> >
> > This method can make two distinct SMTP calls. First an EHLO and then a
> HELO.
> > If the EHLO fails it attempts HELO. However, if the connection was closed
> > remotely after EHLO the HELO will of course also fail but the error
> message
> > returned will be a simple EOF from the HELO and the real response will be
> > dropped.
> > This can be duplicated by sending to a postfix smtp-sink with the flag -Q
> > EHLO,HELO   which returns a 4xx response and disconnects.
> >
> > Since two separate calls are made, maybe it would make sense for this
> method
> > to return two errors? Or perhaps a single composite error?
>
> I suggest that if EHLO returns a non-nil error and HELO returns an
> EOF, then the hello method should return the EHLO error.
>
> That said, does this case actually happen in the real world?
>
> Ian
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to