diff libpurple/protocols/jabber/auth.c @ 29089:c1d41b7484ff

jabber: Complete (though untested) SCRAM implementation. Client proof calculations function properly, but parsing is untested.
author Paul Aurich <paul@darkrain42.org>
date Mon, 09 Nov 2009 03:42:26 +0000
parents 673ed3740cd7
children cea22db36ffc
line wrap: on
line diff
--- a/libpurple/protocols/jabber/auth.c	Sun Nov 08 18:39:30 2009 +0000
+++ b/libpurple/protocols/jabber/auth.c	Mon Nov 09 03:42:26 2009 +0000
@@ -485,11 +485,18 @@
 
 void jabber_auth_init(void)
 {
+	JabberSaslMech **tmp;
+	gint count, i;
+
 	auth_mechs = g_slist_insert_sorted(auth_mechs, jabber_auth_get_plain_mech(), compare_mech);
 	auth_mechs = g_slist_insert_sorted(auth_mechs, jabber_auth_get_digest_md5_mech(), compare_mech);
 #ifdef HAVE_CYRUS_SASL
 	auth_mechs = g_slist_insert_sorted(auth_mechs, jabber_auth_get_cyrus_mech(), compare_mech);
 #endif
+
+	tmp = jabber_auth_get_scram_mechs(&count);
+	for (i = 0; i < count; ++i)
+		auth_mechs = g_slist_insert_sorted(auth_mechs, tmp[i], compare_mech);
 }
 
 void jabber_auth_uninit(void)