Mercurial > pidgin.yaz
diff libpurple/protocols/jabber/jabber.h @ 30881:a5131a257967
jabber: Fix a pernicious race condition in our cyrus auth code
About sasl_getsecret_t, sasl.h reads, in part:
outputs:
psecret set to password structure which must persist until
next call to getsecret **in same connection**, but middleware
will erase password data when it's done with it.
Clearly this needs to be per-JabberStream*, not a static var.
Jan Kaluza noted the static var and then I noted the sasl.h docs.
Fixes #11560
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Fri, 27 Aug 2010 04:30:23 +0000 |
parents | 116ca888e77d |
children | 8084631e2e84 |
line wrap: on
line diff
--- a/libpurple/protocols/jabber/jabber.h Thu Aug 26 04:37:24 2010 +0000 +++ b/libpurple/protocols/jabber/jabber.h Fri Aug 27 04:30:23 2010 +0000 @@ -206,6 +206,7 @@ #ifdef HAVE_CYRUS_SASL sasl_conn_t *sasl; sasl_callback_t *sasl_cb; + sasl_secret_t *sasl_secret; const char *current_mech; int auth_fail_count;