commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oliver Saggau (JIRA)" <>
Subject [jira] [Created] (NET-421) Problem connecting to TLS/SSL SMTP server using explicit mode
Date Mon, 29 Aug 2011 13:39:38 GMT
Problem connecting to TLS/SSL SMTP server using explicit mode

                 Key: NET-421
             Project: Commons Net
          Issue Type: Bug
          Components: SMTP
    Affects Versions: 3.0
            Reporter: Oliver Saggau
            Priority: Critical

Just tried to send an email through gmail servers by doing the following:
AuthenticatingSMTPClient client = new AuthenticatingSMTPClient();
client.connect("", 587); // reply: 220 220 ESMTP
client.login(); // reply: 250 250 at your service
client.execTLS(); // reply: 220 2.0.0 Ready to start TLS
client.auth(AUTH_METHOD.PLAIN, username, password); // exception

Unfortunality after execTLS() I get a MalformedServerReplyException. I looked at the SMTPSClient
source code and found out that the reader/writer are wrong after execTLS() got called. The
performSSLNegotiation() method sets _input_ and _output_ to the new input/output streams from
SSLSocket, but the reader/writer are still pointing to the values set inside _connectAction_().

Possible fix for this issue:
{code}public boolean execTLS() throws SSLException, IOException
	if (!SMTPReply.isPositiveCompletion(sendCommand("STARTTLS")))
		return false;
		//throw new SSLException(getReplyString());
	_reader = new CRLFLineReader(new InputStreamReader(_input_, encoding));
    	_writer = new BufferedWriter(new OutputStreamWriter(_output_, encoding));
	return true;

This message is automatically generated by JIRA.
For more information on JIRA, see:


View raw message