mirror of
https://github.com/curl/curl.git
synced 2026-08-26 11:53:49 +03:00
curl: --sasl-authzid added to support CURLOPT_SASL_AUTHZID from the tool
Ref: https://github.com/curl/curl/issues/3653
Ref: https://github.com/curl/curl/pull/3790
NOTE: This commit was cherry-picked and is part of a series of commits
that added the authzid feature for upcoming 7.66.0. The series was
temporarily reverted in db8ec1f so that it would not ship in a 7.65.x
patch release.
Closes https://github.com/curl/curl/pull/4186
This commit is contained in:
parent
7c469fa537
commit
1e08a79258
14 changed files with 358 additions and 4 deletions
|
|
@ -133,6 +133,7 @@ static void free_config_fields(struct OperationConfig *config)
|
|||
Curl_safefree(config->krblevel);
|
||||
|
||||
Curl_safefree(config->oauth_bearer);
|
||||
Curl_safefree(config->sasl_authzid);
|
||||
|
||||
Curl_safefree(config->unix_socket_path);
|
||||
Curl_safefree(config->writeout);
|
||||
|
|
|
|||
|
|
@ -96,6 +96,7 @@ struct OperationConfig {
|
|||
char *mail_from;
|
||||
struct curl_slist *mail_rcpt;
|
||||
char *mail_auth;
|
||||
char *sasl_authzid; /* Authorisation identity (identity to use) */
|
||||
bool sasl_ir; /* Enable/disable SASL initial response */
|
||||
bool proxytunnel;
|
||||
bool ftp_append; /* APPE on ftp */
|
||||
|
|
|
|||
|
|
@ -178,7 +178,8 @@ static const struct LongShort aliases[]= {
|
|||
{"$H", "mail-auth", ARG_STRING},
|
||||
{"$I", "post303", ARG_BOOL},
|
||||
{"$J", "metalink", ARG_BOOL},
|
||||
{"$K", "sasl-ir", ARG_BOOL},
|
||||
{"$6", "sasl-authzid", ARG_STRING},
|
||||
{"$K", "sasl-ir", ARG_BOOL },
|
||||
{"$L", "test-event", ARG_BOOL},
|
||||
{"$M", "unix-socket", ARG_FILENAME},
|
||||
{"$N", "path-as-is", ARG_BOOL},
|
||||
|
|
@ -1103,6 +1104,9 @@ ParameterError getparameter(const char *flag, /* f or -long-flag */
|
|||
#endif
|
||||
break;
|
||||
}
|
||||
case '6': /* --sasl-authzid */
|
||||
GetStr(&config->sasl_authzid, nextarg);
|
||||
break;
|
||||
case 'K': /* --sasl-ir */
|
||||
config->sasl_ir = toggle;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -391,6 +391,8 @@ static const struct helptxt helptext[] = {
|
|||
"Wait time between retries"},
|
||||
{" --retry-max-time <seconds>",
|
||||
"Retry only within this period"},
|
||||
{" --sasl-authzid <identity> ",
|
||||
"Use this identity to act as during SASL PLAIN authentication"},
|
||||
{" --sasl-ir",
|
||||
"Enable initial response in SASL authentication"},
|
||||
{" --service-name <name>",
|
||||
|
|
|
|||
|
|
@ -1778,6 +1778,10 @@ static CURLcode create_transfers(struct GlobalConfig *global,
|
|||
if(config->mail_auth)
|
||||
my_setopt_str(curl, CURLOPT_MAIL_AUTH, config->mail_auth);
|
||||
|
||||
/* new in 7.66.0 */
|
||||
if(config->sasl_authzid)
|
||||
my_setopt_str(curl, CURLOPT_SASL_AUTHZID, config->sasl_authzid);
|
||||
|
||||
/* new in 7.31.0 */
|
||||
if(config->sasl_ir)
|
||||
my_setopt(curl, CURLOPT_SASL_IR, 1L);
|
||||
|
|
@ -1801,6 +1805,7 @@ static CURLcode create_transfers(struct GlobalConfig *global,
|
|||
config->unix_socket_path);
|
||||
}
|
||||
}
|
||||
|
||||
/* new in 7.45.0 */
|
||||
if(config->proto_default)
|
||||
my_setopt_str(curl, CURLOPT_DEFAULT_PROTOCOL, config->proto_default);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue