rc = sasl_client_new(service_name, /* The service we are using*/
host_name_.c_str(),
NULL, NULL, /* Local and remote IP address strings
(NULL disables mechanisms which require this info)*/
NULL, /*connection-specific callbacks*/
0 /*security flags*/, &sconn_);
sasl_security_properties_t *props = new sasl_security_properties_t();
::memset(props, 0, sizeof(sasl_security_properties_t));
props->max_ssf = 2;
sasl_setprop(sconn_, SASL_SEC_PROPS, (void *)props);
const char *mechusing, *mechlist = "GSSAPI";
currentReturnCode = sasl_client_start(sconn_, /* the same context from above */
mechlist, /* the list of mechanisms
from the server */
NULL, /* filled in if an
interaction is needed */
&out, /* filled in on success */
&outlen, /* filled in on success */
&mechusing);
Return value from sasl_client_new() was SASL_OK
The return value from sasl_client_start() was -4.
Can someone tell me whether I missed any parameter(s) ?