From: Gisle Vanem Date: Wed, 6 Sep 2017 06:22:49 +0000 (-0400) Subject: vtls: select ssl backend case-insensitive (follow-up) X-Git-Tag: curl-7_56_0~94 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=61825be02ba3d86dcf6ce8c3854d31d212796094;p=thirdparty%2Fcurl.git vtls: select ssl backend case-insensitive (follow-up) - Do a case-insensitive comparison of CURL_SSL_BACKEND env as well. - Change Curl_strcasecompare calls to strcasecompare (maps to the former but shorter). Follow-up to c290b8f. Bug: https://github.com/curl/curl/commit/c290b8f#commitcomment-24094313 Co-authored-by: Jay Satiro --- diff --git a/lib/vauth/digest_sspi.c b/lib/vauth/digest_sspi.c index f5d619c992..a3f96ed245 100644 --- a/lib/vauth/digest_sspi.c +++ b/lib/vauth/digest_sspi.c @@ -352,8 +352,8 @@ CURLcode Curl_auth_decode_digest_http_message(const char *chlg, if(!Curl_auth_digest_get_pair(p, value, content, &p)) break; - if(Curl_strcasecompare(value, "stale") - && Curl_strcasecompare(content, "true")) { + if(strcasecompare(value, "stale") && + strcasecompare(content, "true")) { stale = true; break; } diff --git a/lib/vtls/vtls.c b/lib/vtls/vtls.c index 3647dff714..f157603423 100644 --- a/lib/vtls/vtls.c +++ b/lib/vtls/vtls.c @@ -1250,12 +1250,14 @@ static int multissl_init(const struct Curl_ssl *backend) if(!env) env = CURL_DEFAULT_SSL_BACKEND; #endif - if(env) - for(i = 0; available_backends[i]; i++) - if(!strcmp(env, available_backends[i]->info.name)) { + if(env) { + for(i = 0; available_backends[i]; i++) { + if(strcasecompare(env, available_backends[i]->info.name)) { Curl_ssl = available_backends[i]; return 0; } + } + } /* Fall back to first available backend */ Curl_ssl = available_backends[0]; @@ -1270,12 +1272,13 @@ CURLsslset curl_global_sslset(curl_sslbackend id, const char *name, if(Curl_ssl != &Curl_ssl_multi) return id == Curl_ssl->info.id ? CURLSSLSET_OK : CURLSSLSET_TOO_LATE; - for(i = 0; available_backends[i]; i++) + for(i = 0; available_backends[i]; i++) { if(available_backends[i]->info.id == id || - (name && Curl_strcasecompare(available_backends[i]->info.name, name))) { + (name && strcasecompare(available_backends[i]->info.name, name))) { multissl_init(available_backends[i]); return CURLSSLSET_OK; } + } if(avail) *avail = (const curl_ssl_backend **)&available_backends;