From: Jay Satiro Date: Sat, 4 Nov 2017 22:36:07 +0000 (-0400) Subject: url: remove arg value check from CURLOPT_SSH_AUTH_TYPES X-Git-Tag: curl-7_57_0~64 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=462f3cac34c09b9c28b449258e71dc37171dc604;p=thirdparty%2Fcurl.git url: remove arg value check from CURLOPT_SSH_AUTH_TYPES Since CURLSSH_AUTH_ANY (aka CURLSSH_AUTH_DEFAULT) is ~0 an arg value check on this option is incorrect; we have to accept any value. Prior to this change since f121575 (7.56.1+) CURLOPT_SSH_AUTH_TYPES erroneously rejected CURLSSH_AUTH_ANY with CURLE_BAD_FUNCTION_ARGUMENT. Bug: https://github.com/curl/curl/commit/f121575#commitcomment-25347120 --- diff --git a/lib/url.c b/lib/url.c index c3fb297d22..374ac6cfa9 100644 --- a/lib/url.c +++ b/lib/url.c @@ -2710,10 +2710,7 @@ CURLcode Curl_setopt(struct Curl_easy *data, CURLoption option, #ifdef USE_LIBSSH2 /* we only include SSH options if explicitly built to support SSH */ case CURLOPT_SSH_AUTH_TYPES: - arg = va_arg(param, long); - if(arg < CURLSSH_AUTH_NONE) - return CURLE_BAD_FUNCTION_ARGUMENT; - data->set.ssh_auth_types = arg; + data->set.ssh_auth_types = va_arg(param, long); break; case CURLOPT_SSH_PUBLIC_KEYFILE: