Trying to fix base64 problems.
This commit is contained in:
@@ -97,8 +97,9 @@ SessionData::CreateClientAuthSession(Gsasl *context, const string &userName, con
|
|||||||
if (errorCode == GSASL_OK)
|
if (errorCode == GSASL_OK)
|
||||||
{
|
{
|
||||||
char *base64User = NULL;
|
char *base64User = NULL;
|
||||||
gsasl_base64_to(userName.c_str(), userName.length(), &base64User, NULL);
|
size_t lenBase64User = 0;
|
||||||
gsasl_property_set(m_authSession, GSASL_AUTHID, base64User);
|
gsasl_base64_to(userName.c_str(), userName.length(), &base64User, &lenBase64User);
|
||||||
|
gsasl_property_set(m_authSession, GSASL_AUTHID, string(base64User, lenBase64User).c_str());
|
||||||
gsasl_free(base64User);
|
gsasl_free(base64User);
|
||||||
|
|
||||||
gsasl_property_set(m_authSession, GSASL_PASSWORD, password.c_str());
|
gsasl_property_set(m_authSession, GSASL_PASSWORD, password.c_str());
|
||||||
@@ -142,11 +143,12 @@ SessionData::AuthGetUser() const
|
|||||||
if (m_authSession)
|
if (m_authSession)
|
||||||
{
|
{
|
||||||
char *base64User = NULL;
|
char *base64User = NULL;
|
||||||
|
size_t lenBase64User = 0;
|
||||||
const char *tmpUser = gsasl_property_fast(m_authSession, GSASL_AUTHID);
|
const char *tmpUser = gsasl_property_fast(m_authSession, GSASL_AUTHID);
|
||||||
gsasl_base64_from(tmpUser, strlen(tmpUser), &base64User, NULL);
|
gsasl_base64_from(tmpUser, strlen(tmpUser), &base64User, &lenBase64User);
|
||||||
if (base64User)
|
if (base64User)
|
||||||
{
|
{
|
||||||
retStr = base64User;
|
retStr = string(base64User, lenBase64User);
|
||||||
gsasl_free(base64User);
|
gsasl_free(base64User);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user