This is a simple wrapper around gsasl_step() that base64 decodes
the input and base64 encodes the output.
The contents of the b64output buffer is unspecified if this
functions returns anything other than GSASL_OK or
GSASL_NEEDS_MORE. If this function return GSASL_OK or
GSASL_NEEDS_MORE, however, the b64output buffer is allocated by
this function, and it is the responsibility of caller to deallocate
it by calling free (b64output).
Returns GSASL_OK if authenticated terminated
successfully, GSASL_NEEDS_MORE if more data is needed, or error