Skip to content

Commit 4558c8f

Browse files
peffgitster
authored andcommitted
curl: fix symbolic constant typechecks with curl_easy_setopt()
As with the previous two commits, we should be passing long integers, not regular ones, to curl_easy_setopt(), and compiling against curl 8.14 loudly complains if we don't. This patch catches the remaining cases, which are ones where we pass curl's own symbolic constants. We'll cast them to long manually in each call. It seems kind of weird to me that curl doesn't define these constants as longs, since the point of them is to pass to curl_easy_setopt(). But in the curl documentation and examples, they clearly show casting them as part of the setopt calls. It may be that there is some reason not to push the type into the macro, like backwards compatibility. I didn't dig, as it doesn't really matter: we have to follow what existing curl versions ask for anyway. Signed-off-by: Jeff King <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 30325e2 commit 4558c8f

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

http.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1057,7 +1057,7 @@ static CURL *get_curl_handle(void)
10571057

10581058
if (http_ssl_backend && !strcmp("schannel", http_ssl_backend) &&
10591059
!http_schannel_check_revoke) {
1060-
curl_easy_setopt(result, CURLOPT_SSL_OPTIONS, CURLSSLOPT_NO_REVOKE);
1060+
curl_easy_setopt(result, CURLOPT_SSL_OPTIONS, (long)CURLSSLOPT_NO_REVOKE);
10611061
}
10621062

10631063
if (http_proactive_auth != PROACTIVE_AUTH_NONE)
@@ -1118,7 +1118,7 @@ static CURL *get_curl_handle(void)
11181118
}
11191119

11201120
curl_easy_setopt(result, CURLOPT_MAXREDIRS, 20L);
1121-
curl_easy_setopt(result, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL);
1121+
curl_easy_setopt(result, CURLOPT_POSTREDIR, (long)CURL_REDIR_POST_ALL);
11221122

11231123
#ifdef GIT_CURL_HAVE_CURLOPT_PROTOCOLS_STR
11241124
{
@@ -1193,18 +1193,18 @@ static CURL *get_curl_handle(void)
11931193

11941194
if (starts_with(curl_http_proxy, "socks5h"))
11951195
curl_easy_setopt(result,
1196-
CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME);
1196+
CURLOPT_PROXYTYPE, (long)CURLPROXY_SOCKS5_HOSTNAME);
11971197
else if (starts_with(curl_http_proxy, "socks5"))
11981198
curl_easy_setopt(result,
1199-
CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
1199+
CURLOPT_PROXYTYPE, (long)CURLPROXY_SOCKS5);
12001200
else if (starts_with(curl_http_proxy, "socks4a"))
12011201
curl_easy_setopt(result,
1202-
CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4A);
1202+
CURLOPT_PROXYTYPE, (long)CURLPROXY_SOCKS4A);
12031203
else if (starts_with(curl_http_proxy, "socks"))
12041204
curl_easy_setopt(result,
1205-
CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4);
1205+
CURLOPT_PROXYTYPE, (long)CURLPROXY_SOCKS4);
12061206
else if (starts_with(curl_http_proxy, "https")) {
1207-
curl_easy_setopt(result, CURLOPT_PROXYTYPE, CURLPROXY_HTTPS);
1207+
curl_easy_setopt(result, CURLOPT_PROXYTYPE, (long)CURLPROXY_HTTPS);
12081208

12091209
if (http_proxy_ssl_cert)
12101210
curl_easy_setopt(result, CURLOPT_PROXY_SSLCERT, http_proxy_ssl_cert);

0 commit comments

Comments
 (0)