I'm trying to use SASL to authenticate with an XMPP server (in a TLS encrypted session) . However, when I use the gsasl_step64() function my program segfaults.
this->clear(buf, 1024); if (rc == GSASL_NEEDS_MORE) {
this->connection->receive_string(buf, 8192);
}
} while (rc == GSASL_NEEDS_MORE);
I have isolated gsasl_step64 as the place where the fault occurs . All of the client and session initialization(in different functions) appears to go just fine, so session seems like it is a valid pointer.
I know it is bad to use a fixed-size buffer, but it is just temporary..