sasl: implement EXTERNAL authentication mechanism.
Its use is only enabled by explicit requirement in URL (;AUTH=EXTERNAL) and by not setting the password.
This commit is contained in:
@@ -612,9 +612,9 @@ static CURLcode imap_perform_authentication(struct connectdata *conn)
|
||||
struct imap_conn *imapc = &conn->proto.imapc;
|
||||
saslprogress progress;
|
||||
|
||||
/* Check we have a username and password to authenticate with and end the
|
||||
/* Check we have enough data to authenticate with and end the
|
||||
connect phase if we don't */
|
||||
if(!conn->bits.user_passwd) {
|
||||
if(!Curl_sasl_can_authenticate(&imapc->sasl, conn)) {
|
||||
state(conn, IMAP_STOP);
|
||||
return result;
|
||||
}
|
||||
@@ -1962,7 +1962,7 @@ static CURLcode imap_parse_url_options(struct connectdata *conn)
|
||||
case SASL_AUTH_NONE:
|
||||
imapc->preftype = IMAP_TYPE_NONE;
|
||||
break;
|
||||
case SASL_AUTH_ANY:
|
||||
case SASL_AUTH_DEFAULT:
|
||||
imapc->preftype = IMAP_TYPE_ANY;
|
||||
break;
|
||||
default:
|
||||
|
Reference in New Issue
Block a user