mirror of
https://github.com/curl/curl.git
synced 2026-05-30 08:17:30 +03:00
sasl: clear canceled mechanism instead of toggling it
Use &= ~authused in SASL_CANCEL (was ^=) to actually remove the offending mechanism and avoid re-enabling a disabled mech on retry. Closes #18573
This commit is contained in:
parent
44a586472b
commit
a80abc45a5
1 changed files with 3 additions and 1 deletions
|
|
@ -812,7 +812,9 @@ CURLcode Curl_sasl_continue(struct SASL *sasl, struct Curl_easy *data,
|
|||
|
||||
case SASL_CANCEL:
|
||||
/* Remove the offending mechanism from the supported list */
|
||||
sasl->authmechs ^= sasl->authused;
|
||||
sasl->authmechs &= (unsigned short)~sasl->authused;
|
||||
sasl->authused = SASL_AUTH_NONE;
|
||||
sasl->curmech = NULL;
|
||||
|
||||
/* Start an alternative SASL authentication */
|
||||
return Curl_sasl_start(sasl, data, sasl->force_ir, progress);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue