Implemented public Base64 interface

Base64 is required for vCard avatars. It will also be useful for
an authentication mechanism with future xmpp_connect_raw() interface.
This commit is contained in:
Dmitry Podgorny
2016-04-30 18:04:56 +00:00
parent 7f57e3987a
commit 2ffb278aa4
6 changed files with 356 additions and 294 deletions

View File

@@ -442,7 +442,7 @@ static int _handle_scram_sha1_challenge(xmpp_conn_t * const conn,
if (!text)
goto err;
challenge = (char *)base64_decode(conn->ctx, text, strlen(text));
challenge = xmpp_base64_decode_str(conn->ctx, text, strlen(text));
xmpp_free(conn->ctx, text);
if (!challenge)
goto err;
@@ -639,8 +639,8 @@ static void _auth(xmpp_conn_t * const conn)
return;
}
str = (char *)base64_encode(conn->ctx, (unsigned char *)scram_init,
strlen(scram_init));
str = xmpp_base64_encode(conn->ctx, (unsigned char *)scram_init,
strlen(scram_init));
if (!str) {
xmpp_free(conn->ctx, scram_init);
xmpp_stanza_release(auth);