All,

To scratch an itch, I\'ve written some code against the SVN codebase (rev 362) 
to connect to SMTP servers that use STARTTLS. This ought to resolve ticket 
#1483813 (or at least it does for me).

Briefly, I\'ve:

Added main.inc.php::$rcmail_config[\'smtp_starttls\'] to control use of STARTTLS

Modified rcube_smtp.inc::smtp_mail() to check configuration variable and try 
STARTTLS if set

Modified Net_SMTP::Net_SMTP() to accept an optional param indicating if 
STARTTLS should be used.
Modified Net_SMTP::connect() to establish and negotiate TLS session if using 
STARTTLS.
Added Net_SMTP::_starttls() to attempt TLS handshake and establish secure 
connection.

Added Net_Socket::enableCrypto() to turn encryption on/off on the socket.

Caveats:

This relies on functionality only available in PHP 5.1.0rc1 (with OpenSSL 
support) and higher. The code checks for a suitable environment but I 
appreciate that this is higher than the minimum PHP requirements listed on your 
wiki.

It\'s been a little while (about two years) since I last wrote any php code so 
it isn\'t as polished as I\'d like.

If a developer is interested in the code, please let me know how to get it to 
you.

Oh, and thanks for such great software. It says a lot that it was worth my 
while to roll up my sleeves and add support for a personal show stopper rather 
than switch to a different webmail client!

Regards,

Matt




Reply via email to