When the TIdIMAP4.AuthType property is set to iatSASL, the AUTHENTICATE command
is not formatted correctly so IMAP servers reject it. This is because
TIdSASLCollection.LoginSASL() uses the TIdTCPConnection.SendCmd() method to
send commands and read responses, but TIdIMAP4 does not override
TIdTCPConnection.SendCmd() or TIdTCPConnection.Get(Internal)Response(). It
reintroduces its own custom implementations instead that TIdSASLCollection does
not call at all. So TIdIMAP4 needs to be changed to either override the
TIdTCPConnection methods instead of reintroducing its own methods, or else to
send the AUTHENTICATE command directly and not use the
TIdSASLCollection.LoginSASL() method anymore.
Original issue reported on code.google.com by gambit47 on 8 Feb 2013 at 3:52
Original issue reported on code.google.com by
gambit47
on 8 Feb 2013 at 3:52