From e7dcc454c67a2fa9069b6393b7591a3d949049b4 Mon Sep 17 00:00:00 2001 From: "Kyle L. Huff" Date: Sun, 25 Aug 2013 13:18:59 -0400 Subject: curl: added basic SASL XOAUTH2 support Added the ability to specify an XOAUTH2 bearer token [RFC6750] via the --bearer option. Example usage: curl --url "imaps://imap.gmail.com:993/INBOX/;UID=1" --ssl-reqd --bearer ya29.AHES6Z...OMfsHYI --user username@example.com --- src/tool_getparam.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/tool_getparam.c') diff --git a/src/tool_getparam.c b/src/tool_getparam.c index d9deb3b2b..813cc70c0 100644 --- a/src/tool_getparam.c +++ b/src/tool_getparam.c @@ -75,6 +75,7 @@ static const struct LongShort aliases[]= { {"*", "url", TRUE}, {"*a", "random-file", TRUE}, {"*b", "egd-file", TRUE}, + {"*B", "bearer", TRUE}, {"*c", "connect-timeout", TRUE}, {"*d", "ciphers", TRUE}, {"*e", "disable-epsv", FALSE}, @@ -498,6 +499,9 @@ ParameterError getparameter(char *flag, /* f or -long-flag */ case 'b': /* egd-file */ GetStr(&config->egd_file, nextarg); break; + case 'B': /* XOAUTH2 Bearer */ + GetStr(&config->xoauth2_bearer, nextarg); + break; case 'c': /* connect-timeout */ err = str2udouble(&config->connecttimeout, nextarg); if(err) @@ -1632,9 +1636,11 @@ ParameterError getparameter(char *flag, /* f or -long-flag */ /* user:password */ GetStr(&config->userpwd, nextarg); cleanarg(nextarg); - err = checkpasswd("host", &config->userpwd); - if(err) - return err; + if(!config->xoauth2_bearer) { + err = checkpasswd("host", &config->userpwd); + if(err) + return err; + } break; case 'U': /* Proxy user:password */ -- cgit v1.2.3