From c8143074cf3954b1e169904eb9d843cfbe14acc3 Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Tue, 2 Sep 2025 11:41:10 -0400
Subject: [PATCH] cmCTestCurl: Avoid using undocumented type for
 CURLOPT_PROXYTYPE values

Since upstream curl commit `1a12663d06` (CURLOPT: bump `CURLPROXY_*`
enums to `long`, drop casts, 2025-07-28), the `CURLPROXY_*` constants
are integer literals instead of `enum curl_proxytype`.  It turns out
that `curl_easy_setopt` has always expected a `long` anyway, and that
`curl_proxytype` is not documented for public use.

Index: Source/CTest/cmCTestCurl.h
--- Source/CTest/cmCTestCurl.h.orig
+++ Source/CTest/cmCTestCurl.h
@@ -52,7 +52,7 @@ class cmCTestCurl (private)
   std::vector<std::string> HttpHeaders;
   std::string HTTPProxyAuth;
   std::string HTTPProxy;
-  curl_proxytype HTTPProxyType;
+  long HTTPProxyType;
   bool UseHttp10 = false;
   bool Quiet = false;
   int TimeOutSeconds = 0;
