libpurple/protocols/jabber/auth_scram.c

branch
cpw.darkrain42.xmpp.scram
changeset 29090
b351fcdeede7
parent 29088
6f36294367f4
child 30036
747b4a361046
--- a/libpurple/protocols/jabber/auth_scram.c	Fri Dec 04 06:04:18 2009 +0000
+++ b/libpurple/protocols/jabber/auth_scram.c	Fri Dec 04 06:18:05 2009 +0000
@@ -349,7 +349,7 @@
 }
 
 static JabberSaslState
-scram_start(JabberStream *js, xmlnode *mechanisms, xmlnode **out, const char **error)
+scram_start(JabberStream *js, xmlnode *mechanisms, xmlnode **out, char **error)
 {
 	xmlnode *reply;
 	JabberScramData *data;
@@ -363,7 +363,7 @@
 
 	prepped_node = jabber_saslprep(js->user->node);
 	if (!prepped_node) {
-		*error = _("Unable to canonicalize username");
+		*error = g_strdup(_("Unable to canonicalize username"));
 		return JABBER_SASL_STATE_FAIL;
 	}
 
@@ -374,7 +374,7 @@
 	prepped_pass = jabber_saslprep(purple_connection_get_password(js->gc));
 	if (!prepped_pass) {
 		g_free(prepped_node);
-		*error = _("Unable to canonicalize password");
+		*error = g_strdup(_("Unable to canonicalize password"));
 		return JABBER_SASL_STATE_FAIL;
 	}
 
@@ -415,7 +415,7 @@
 }
 
 static JabberSaslState
-scram_handle_challenge(JabberStream *js, xmlnode *challenge, xmlnode **out, const char **error)
+scram_handle_challenge(JabberStream *js, xmlnode *challenge, xmlnode **out, char **error)
 {
 	JabberScramData *data = js->auth_mech_data;
 	xmlnode *reply;
@@ -429,7 +429,7 @@
 		reply = xmlnode_new("abort");
 		xmlnode_set_namespace(reply, NS_XMPP_SASL);
 		data->step = -1;
-		*error = _("Invalid challenge from server");
+		*error = g_strdup(_("Invalid challenge from server"));
 		goto out;
 	}
 
@@ -440,7 +440,7 @@
 		reply = xmlnode_new("abort");
 		xmlnode_set_namespace(reply, NS_XMPP_SASL);
 		data->step = -1;
-		*error = _("Malicious challenge from server");
+		*error = g_strdup(_("Malicious challenge from server"));
 		goto out;
 	}
 
@@ -450,7 +450,7 @@
 		reply = xmlnode_new("abort");
 		xmlnode_set_namespace(reply, NS_XMPP_SASL);
 		data->step = -1;
-		*error = _("Invalid challenge from server");
+		*error = g_strdup(_("Invalid challenge from server"));
 		goto out;
 	}
 
@@ -476,7 +476,7 @@
 }
 
 static JabberSaslState
-scram_handle_success(JabberStream *js, xmlnode *packet, const char **error)
+scram_handle_success(JabberStream *js, xmlnode *packet, char **error)
 {
 	JabberScramData *data = js->auth_mech_data;
 	char *enc_in, *dec_in;
@@ -490,7 +490,7 @@
 		return JABBER_SASL_STATE_OK;
 
 	if (data->step != 2) {
-		*error = _("Unexpected response from server");
+		*error = g_strdup(_("Unexpected response from server"));
 		return JABBER_SASL_STATE_FAIL;
 	}
 
@@ -499,7 +499,7 @@
 	if (!dec_in || len != strlen(dec_in)) {
 		/* Danger afoot; SCRAM shouldn't contain NUL bytes */
 		g_free(dec_in);
-		*error = _("Invalid challenge from server");
+		*error = g_strdup(_("Invalid challenge from server"));
 		return JABBER_SASL_STATE_FAIL;
 	}
 
@@ -507,7 +507,7 @@
 
 	if (!jabber_scram_feed_parser(data, dec_in, &dec_out) || dec_out != NULL) {
 		g_free(dec_out);
-		*error = _("Invalid challenge from server");
+		*error = g_strdup(_("Invalid challenge from server"));
 		return JABBER_SASL_STATE_FAIL;
 	}
 

mercurial