Skip to content
  • Kevin J. McCarthy's avatar
    Add GNU SASL support for authentication. · 68caf914
    Kevin J. McCarthy authored
    It turns out Cyrus SASL's license may not be compatible with GPL
    programs, see Debian Bug 999672.
    
    So, add support for the GNU SASL library, using configure option
    --with-gsasl.
    
    I haven't touched the Cyrus SASL code in Mutt all that much in the
    past, but I've done my best to keep the gsasl code clean and simple.
    There are likely mistakes to be fixed and additions to be made,
    though.
    
    I queried the gsasl mailing list about the need for a socket
    wrapper (as is done for the cyrus code), and it seems this should no
    longer be needed.  As long as GSASL_QOP is left at the
    default (qop-auth), the client should ask for authentication, and not
    negotiate integrity or confidentiality.  (Thanks to Phil Pennock and
    Simon Josefsson for their reponses - although the blame is fully
    on *me* if this turns out to be incorrect).  Therefore there is no
    CONNECTION wrapping in this implementation.
    
    Add multiline response support for SMTP authentication (which is
    probably not actually needed).  Also add arbitrary line length for the
    SASL server responses (the RFCs note that for SASL, the protocol line
    lengths don't apply).
    68caf914