diff mbox series

[v3,4/7] http: drop support for curl < 7.19.3 and <= 7.16.4 (or <7.17.0) (again)

Message ID patch-v3-4.7-230b968382f-20210730T092843Z-avarab@gmail.com (mailing list archive)
State New
Headers show
Series drop support for ancient curl, improve version checks | expand

Commit Message

Ævar Arnfjörð Bjarmason July 30, 2021, 9:31 a.m. UTC
Remove the conditional use of CURLAUTH_DIGEST_IE and
CURLOPT_USE_SSL. These two have been split from earlier simpler checks
against LIBCURL_VERSION_NUM for ease of review.

The CURLAUTH_DIGEST_IE flag was added in 7.19.3[1], and
CURLOPT_USE_SSL in 7.16.4[2] or 7.17.0[3], depending on the source. As
noted in [2] it was then renamed around that time from the older
CURLOPT_FTP_SSL.

1. https://curl.se/libcurl/c/CURLOPT_HTTPAUTH.html
2. https://curl.se/libcurl/c/CURLOPT_USE_SSL.html
3. https://github.com/curl/curl/blob/master/docs/libcurl/symbols-in-versions

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
---
 http.c | 4 ----
 http.h | 9 ---------
 2 files changed, 13 deletions(-)

Comments

Junio C Hamano July 30, 2021, 4:18 p.m. UTC | #1
Ævar Arnfjörð Bjarmason  <avarab@gmail.com> writes:

> Remove the conditional use of CURLAUTH_DIGEST_IE and
> CURLOPT_USE_SSL. These two have been split from earlier simpler checks
> against LIBCURL_VERSION_NUM for ease of review.
>
> The CURLAUTH_DIGEST_IE flag was added in 7.19.3[1], and
> CURLOPT_USE_SSL in 7.16.4[2] or 7.17.0[3], depending on the source. As
> noted in [2] it was then renamed around that time from the older
> CURLOPT_FTP_SSL.
>
> 1. https://curl.se/libcurl/c/CURLOPT_HTTPAUTH.html
> 2. https://curl.se/libcurl/c/CURLOPT_USE_SSL.html
> 3. https://github.com/curl/curl/blob/master/docs/libcurl/symbols-in-versions

I still think "depending on the source" is wronge.  Let's read #2
(whose copy we also have in our comment) again:

    This option was known as CURLOPT_FTP_SSL up to 7.16.4, and the
    constants were known as CURLFTPSSL_*

A program that uses the CURLOPT_USE_SSL symbol would have failed to
compile with 7.16.4, as that version and older ones, even they had
the feature itself, did not use CUROPT_USE_SSL to invoke the
feature.  That is how I read the above sentence.

Perhaps everything after the first paragraph can be like this instead?

    The CURLAUTH_DIGEST_IE flag was added in 7.19.3 and
    CURLOPT_USE_SSL in 7.17.0.
    (cf. https://github.com/curl/curl/blob/master/docs/libcurl/symbols-in-versions)

The patch text looks good to me.

Thanks.
diff mbox series

Patch

diff --git a/http.c b/http.c
index 1f0d7664d35..e9446850a62 100644
--- a/http.c
+++ b/http.c
@@ -120,9 +120,7 @@  static int http_auth_methods_restricted;
 /* Modes for which empty_auth cannot actually help us. */
 static unsigned long empty_auth_useless =
 	CURLAUTH_BASIC
-#ifdef CURLAUTH_DIGEST_IE
 	| CURLAUTH_DIGEST_IE
-#endif
 	| CURLAUTH_DIGEST;
 
 static struct curl_slist *pragma_header;
@@ -893,10 +891,8 @@  static CURL *get_curl_handle(void)
 	if (curl_ftp_no_epsv)
 		curl_easy_setopt(result, CURLOPT_FTP_USE_EPSV, 0);
 
-#ifdef CURLOPT_USE_SSL
 	if (curl_ssl_try)
 		curl_easy_setopt(result, CURLOPT_USE_SSL, CURLUSESSL_TRY);
-#endif
 
 	/*
 	 * CURL also examines these variables as a fallback; but we need to query
diff --git a/http.h b/http.h
index 19f19dbe74c..3db5a0cf320 100644
--- a/http.h
+++ b/http.h
@@ -12,15 +12,6 @@ 
 
 #define DEFAULT_MAX_REQUESTS 5
 
-/*
- * CURLOPT_USE_SSL was known as CURLOPT_FTP_SSL up to 7.16.4,
- * and the constants were known as CURLFTPSSL_*
-*/
-#if !defined(CURLOPT_USE_SSL) && defined(CURLOPT_FTP_SSL)
-#define CURLOPT_USE_SSL CURLOPT_FTP_SSL
-#define CURLUSESSL_TRY CURLFTPSSL_TRY
-#endif
-
 struct slot_results {
 	CURLcode curl_result;
 	long http_code;