infinite loop when server expects SSL

Giganews Newsgroups
Subject: infinite loop when server expects SSL
Posted by:  Rasmus W (r-remove-w@blue-remove-position.com)
Date: Wed, 26 Aug 2009

Hello.
I am experiencing problems when trying to send a message to a mail server
which requires SSL (STARTTLS) (the mail server is smtp.gmail.com).
It seems that when TIdSMTPBase.SendPipeLining sends MAIL FROM, the server
returns an error which is "530 Must issue a STARTTLS command first".
SendPipeLining receives the error and stores it in LError, but does no
checking on that before it sends RCPT TO.
While waiting for the response to RCPT TO it then waits forever (well,
almost. - the while loop in TIdIOHandler.ReadLnWait waits until MaxInt
passes).

Is there a way around this problem?

I am using the Delphi 2007 built-in Indy10.

Regards,
Rasmus

Replies