Depends on the crypto module.
Added two functions, one which performs the hashing and sends a response to the server's challenge string, and one function that checks the server's reply to determine whether we logged in successfully.
Altered the _actionEHLO function to check for CRAM-MD5 as a supported auth type.
Added support for CRAM-MD5 authentication to the client
Added CRAM-MD5 to the list of supported auth types
Thanks! I had CRAM support implemented in a previous version of SMTP client library but when I rewrote the module, didn't really bother to reimplement CRAM support. It is not a good authentication method mainly because servers need to store plaintext passwords in order to support it - with LOGIN or PLAIN they can store hashes but with CRAM the original password is needed. In addition to that, security should be provided by using encrypted transport.