Password accessing in CRAM-MD5 authentication

Denis Malyshkin dmalyshkin at odesk.com
Thu Feb 15 07:55:35 EST 2007


Hello Denis,

Thursday, February 15, 2007, 2:23:07 PM, I wrote:

AM>> There is a patch to Cyrus SASL that can do proper reference counting.
DM> Could you say me where I can get it ?  Google knows nothing about it...

  I've written my own patch which adds different functions for server
and client termination:  sasl_server_done() & sasl_client_done(). This
patch is compatible with all existing applications, so you can include
it to the SASL library.

  In 'sasl.h':

/*** DEN 02/15/2007 ***** begin **********************************************/

/* dispose of SASL server.  Connection
 * states have to be disposed of before calling this.
 */
LIBSASL_API void sasl_server_done(void);

/* dispose of SASL client.  Connection
 * states have to be disposed of before calling this.
 */
LIBSASL_API void sasl_client_done(void);

/*** DEN 02/15/2007 ***** end ************************************************/


  In 'common.c':
  
/*** DEN 02/15/2007 ***** begin **********************************************/

void sasl_server_done(void)
{
    if (_sasl_server_cleanup_hook && _sasl_server_cleanup_hook() == SASL_OK) {
    _sasl_server_idle_hook = NULL;
    _sasl_server_cleanup_hook = NULL;
    }
    
    if(_sasl_server_cleanup_hook || _sasl_client_cleanup_hook)
    return;

    sasl_done();
}

void sasl_client_done(void)
{
    if (_sasl_client_cleanup_hook && _sasl_client_cleanup_hook() == SASL_OK) {
    _sasl_client_idle_hook = NULL;
    _sasl_client_cleanup_hook = NULL;
    }
    
    if(_sasl_server_cleanup_hook || _sasl_client_cleanup_hook)
    return;

    sasl_done();
}

/*** DEN 02/15/2007 ***** end ************************************************/


-- 
Best regards, 
  Denis Malyshkin,
  C++ Developer
  of ISS Art, Ltd., Omsk, Russia.
http://issart.com
http://issart.com/index/Portfolio/cpp&lang=eng
mailto:dmalyshkin at odesk.com



More information about the Cyrus-sasl mailing list