cmechanism_t *m=NULL,*bestm=NULL;
size_t i, list_len;
sasl_ssf_t bestssf = 0, minssf = 0;
- int result, server_can_cb = 0, cb_flag;
+ int result, server_can_cb = 0;
+ unsigned int cbindingdisp = 0;
if(_sasl_client_active==0) return SASL_NOTINIT;
goto done;
if (SASL_CB_PRESENT(c_conn->cparams)) {
- if (server_can_cb == 0 &&
- (c_conn->cparams->chanbindingflags & SASL_CB_FLAG_CRIT)) {
+ if (server_can_cb == 0 && SASL_CB_CRITICAL(c_conn->cparams)) {
result = SASL_NOMECH;
goto done;
} else {
- cb_flag = SASL_CB_FLAG_WANT;
+ cbindingdisp = SASL_CB_DISP_WANT;
}
} else {
- cb_flag = SASL_CB_FLAG_NONE;
+ cbindingdisp = SASL_CB_DISP_NONE;
}
for (i = 0, name = ordered_mechs; i < list_len; i++) {
}
/* Prefer server advertised CB mechanisms */
- if (SASL_CB_PRESENT(c_conn->cparams) && plus)
- cb_flag = SASL_CB_FLAG_USED;
+ if (SASL_CB_PRESENT(c_conn->cparams) && plus) {
+ cbindingdisp = SASL_CB_DISP_USED;
+ }
if (mech) {
*mech = m->m.plug->mech_name;
c_conn->cparams->external_ssf = conn->external.ssf;
c_conn->cparams->props = conn->props;
- c_conn->cparams->chanbindingflags |= cb_flag;
+ c_conn->cparams->cbindingdisp = cbindingdisp;
c_conn->mech = bestm;
/* init that plugin */