From patchwork Thu Oct 10 23:56:09 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831319 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E52BD1BE251 for ; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604596; cv=none; b=Sk1XZaF6A2Rw5rfbXpANtR9pKvI0X9zrtF4XSiLckihilMXB0maHGmCk8uoAxhIXG6HzAHK8Ou25Qx1p6i7/8fq9FNWiCymgIQ5F8mVSKT1ZWlKYSVWJLkkSZQdCGcmoVH8caW6g05/a0iQzWqHIRzj99/VEwngRhPaB5SHn4Xs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604596; c=relaxed/simple; bh=rm5bBDWTTSSWTi4eZzplkX+H7XnajPSwm+siZAe9Kns=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cxl5BIHhXMSnL5TIWW+cw/JGkkD3/pWXs9IaY1/7mVF/yT+72d/r5BfjmsRVRwow2Yj9epa8NoVk7hsPHvPPiGb5oOybynXG+7degOPYnoxUK0Hs1CdaTerZhBLS0WQxFAiqzCBdYfLgPVTA/B1tBG+2r6XSkPxCgrKXVjlyEgk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=RlOHPbhT; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="RlOHPbhT" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604593; bh=rm5bBDWTTSSWTi4eZzplkX+H7XnajPSwm+siZAe9Kns=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=RlOHPbhToZ9fJIWUDnTntMhMsWHWdW+hUVAzoYaJP24RD7R0IlpW5bSIuqg82bQYI 6Br+WTbuZBLfU+Jx7f0mgMrZOsY65X3zLp7XoFKKPetBMZcE5HIsv6gwW5B/HxysGh 5hNckrsFjdeq3HchKasbZSCJORhgTFnShO8379QN1Vy5M65TKxKYbbE9WIa+xNIY76 0yWzHILycXHM9ozdsr1QcHCpWbrXIIuKVv2f4VPkCybdGIrN9SkYk6+eSnsYE8ULUn vrfhfMc479oHDmOjD/olRw80GmJ28NVYSp7pBqLW6EuczqMeU55SZ3gRhjo/9FNbjT 0pKyVap3n0rnOmKaYhLNuQgIsHcegoK1Vro1utrqXwfpMTpQqBKM8dzohWQ676BUpW tczD95GEirdST8sazbyaVLIwcmi/EnqcyxkkOoLzjwASKfP+Ba+E7VnkBlOi4UimEz /pFowMn7I+estB7C+6nznIg1WxkaXUZaRYctlNhAyZGA6uVLabT Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id EB121200B4; Thu, 10 Oct 2024 23:56:33 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 01/13] git-curl-compat: remove check for curl 7.21.5 Date: Thu, 10 Oct 2024 23:56:09 +0000 Message-ID: <20241010235621.738239-2-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 libcurl 7.21.5 was released in April 2011, which is well over ten years ago, and no major operating system vendor is still providing security support for it. Debian 7, RHEL 7, and Ubuntu 12.04, all of which are out of mainstream security support, have all supported a newer version. Remove the check for this version and use this functionality unconditionally. Signed-off-by: brian m. carlson --- git-curl-compat.h | 7 ------- 1 file changed, 7 deletions(-) diff --git a/git-curl-compat.h b/git-curl-compat.h index e1d0bdd273..c24ed686c1 100644 --- a/git-curl-compat.h +++ b/git-curl-compat.h @@ -28,13 +28,6 @@ * introduced, oldest first, in the official version of cURL library. */ -/** - * CURL_SOCKOPT_OK was added in 7.21.5, released in April 2011. - */ -#if LIBCURL_VERSION_NUM < 0x071505 -#define CURL_SOCKOPT_OK 0 -#endif - /** * CURLOPT_TCP_KEEPALIVE was added in 7.25.0, released in March 2012. */ From patchwork Thu Oct 10 23:56:10 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831321 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E53C31C9B93 for ; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604597; cv=none; b=Z/ovO1vMdK8a5ur3DDuPVosJp4B6pRtTufLF1D6sNQ+hnpjOH6q+L89KAa6tvEnjeudtxsluqsAxF/1rwIzKyD7eldB1MoycmZL/Jc2+vruxbuogZYbZC3B2CyEqI5ox0XwDG6jwSDYtC6Pgzkz7GkWLrKye0gLQVOzd5oZM6pQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604597; c=relaxed/simple; bh=BQa8EISFWbwCF6AOQjRJNUTzXNdQVdIfGLAt8WXpLaM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=WsTJJ07zma4vW3faRPmO3icXcE6A+QK75Rx2OyvHsX7Kr2nMKHb00wgVUfgIU+8XaxmzMm4JRv58LfuxaUuUKNRQNyWUO9tpWbhESbsOzOjbZ9vgE33BN1l6RVar1hSGlOtrKdjJ7rRmilMONvr3hpj0c62w7YdSzUH5kEE6UzM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=o15U3QG9; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="o15U3QG9" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=BQa8EISFWbwCF6AOQjRJNUTzXNdQVdIfGLAt8WXpLaM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=o15U3QG9N0cguPU7xNavMfH00u3FhM1mYCDgxVe5S9KC8A1lD8BEjG7FFrTYlrxZC V456wQTcXKO1X0QonkxfiJsDxCkvUkPUiUbKWUID+tLN50la86CfiF3h68uL50Nhvy sgunoIvRajPZfrGulnBf6PxM1g5/FsQAnl5yPdsMVIqjZ9eN5W6yn9nsXLp9cHfqEi G2Ju3S9U7VV5803NCtvX0JPKNefjMXaRWjBQ35o7zUBomUqOAQ8NOCTxtrpEjt4OEF QVORHbkM3JIv/39/0T3MqkJsMSPAiUkgc9d0elvkBbHhzSi+jIQlDF2Sy/1ebyLYj4 bY8IWKD76eAEOr3y8F15WIJ+wFT3msSK7/4i4nShpMew6jWMxfwMDgMWzrLL/v7pid OyInM2q8JoJ8mwSihCZbAroQghOwWAtGKSSRLmaTBlbWc2k5EbcZFrsLnCODpvTa6M lujW3wYwm4n3q2l0Og5GRpuv0tKobvCkzhFUnYo/JnJJMuRMag8 Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 00F29200B8; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 02/13] git-curl-compat: remove check for curl 7.25.0 Date: Thu, 10 Oct 2024 23:56:10 +0000 Message-ID: <20241010235621.738239-3-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 libcurl 7.25.0 was released in March 2012, which is well over ten years ago, and no major operating system vendor is still providing security support for it. Debian 8, RHEL 7, and Ubuntu 12.10, all of which are out of mainstream security support, have all supported a newer version. Remove the check for this version and use this functionality unconditionally. Signed-off-by: brian m. carlson --- git-curl-compat.h | 8 -------- http.c | 24 ------------------------ 2 files changed, 32 deletions(-) diff --git a/git-curl-compat.h b/git-curl-compat.h index c24ed686c1..9100af027f 100644 --- a/git-curl-compat.h +++ b/git-curl-compat.h @@ -28,14 +28,6 @@ * introduced, oldest first, in the official version of cURL library. */ -/** - * CURLOPT_TCP_KEEPALIVE was added in 7.25.0, released in March 2012. - */ -#if LIBCURL_VERSION_NUM >= 0x071900 -#define GITCURL_HAVE_CURLOPT_TCP_KEEPALIVE 1 -#endif - - /** * CURLOPT_LOGIN_OPTIONS was added in 7.34.0, released in December * 2013. diff --git a/http.c b/http.c index d59e59f66b..633bbf74ee 100644 --- a/http.c +++ b/http.c @@ -716,35 +716,11 @@ static int has_proxy_cert_password(void) } #endif -#ifdef GITCURL_HAVE_CURLOPT_TCP_KEEPALIVE static void set_curl_keepalive(CURL *c) { curl_easy_setopt(c, CURLOPT_TCP_KEEPALIVE, 1); } -#else -static int sockopt_callback(void *client, curl_socket_t fd, curlsocktype type) -{ - int ka = 1; - int rc; - socklen_t len = (socklen_t)sizeof(ka); - - if (type != CURLSOCKTYPE_IPCXN) - return 0; - - rc = setsockopt(fd, SOL_SOCKET, SO_KEEPALIVE, (void *)&ka, len); - if (rc < 0) - warning_errno("unable to set SO_KEEPALIVE on socket"); - - return CURL_SOCKOPT_OK; -} - -static void set_curl_keepalive(CURL *c) -{ - curl_easy_setopt(c, CURLOPT_SOCKOPTFUNCTION, sockopt_callback); -} -#endif - /* Return 1 if redactions have been made, 0 otherwise. */ static int redact_sensitive_header(struct strbuf *header, size_t offset) { From patchwork Thu Oct 10 23:56:11 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831322 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E53651C1AD8 for ; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604598; cv=none; b=EtkCs3txRlTxT9BlqR3dglLyY7qVzWGfiyAUdadW8fa9hOz832NTf7iqfTayD4ZG1W3yQ5faBcNxXniuxXd53g0i4+ntX014v5IrWoRIiAzFP171G0YVAccPZ9rEd5KPDQZESDbJw4z0ROaOQBjrV6j/r3SkCLKw/nmpH0d6GKA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604598; c=relaxed/simple; bh=yAqcvlaKyIMF7BH0xkxVj5SI8sM+mq1ekp/FwBpmvzk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=h115MpJopg7H+xKTqK+5kngDHmIok/mF8WNoj3v1qTSPY1h2s4aowdNtKEise7bJ3SvmNljyC4STxEVrj3j1afv6SAi3uU7ZyhygUDg/MXF2/x2t6x0TD9ZMGErwVZwdId7SdWqyyxKucoRjBuEoDm29SFmfctFio39Wpu+Iep0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=hvCPOl12; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="hvCPOl12" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=yAqcvlaKyIMF7BH0xkxVj5SI8sM+mq1ekp/FwBpmvzk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=hvCPOl12qpsKJoggz6RKmfSbiXAbV8k7ykRdW7/sZAqThjyf1Au3zEwDnF7bkE2bo 3gXwWKgThWV1t8RNyRdNcO7/6iR9runO1x6cz8fbVLIrTH+0Xtj7CMqYvNLcqQNMSo kDt8ZJUdAmNSjkBdW439XthpgeRpaeUqA4IeLhkgSqOxlgjuc9L4fRMjkxrqaLNYde VRX/JrG5ZPbX31ELU37bLhoMJru6qCFwoMIHY8P4wF3CyJ6+0sWNPXIhKJm5QI32dy KeO8ZM6iuJxcsPfIAQL0yW9UarjAUFEv85hy1fowW8OcEczUiLkXkJolwPEoCzYhDC gqNu45II+NdDbzK26nhzH3gLmg1cFC45jXzGTkqOTJw6DCCvb0gAWe8IQF7gAV7nCU lPbpRZWCjupWaPyqdVUg1ekRYYJ/n2tGAt2JFmEUwglji3BWWYhC/McHcmi4DFBzwA k3wpKqZmU1fjIpISaDyxYOm2FZHBRq0anntheCRjDend/C62uwe Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 0A063200B9; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 03/13] git-curl-compat: remove check for curl 7.34.0 Date: Thu, 10 Oct 2024 23:56:11 +0000 Message-ID: <20241010235621.738239-4-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 libcurl 7.34.0 was released in December 2013, which is well over ten years ago, and no major operating system vendor is still providing security support for it. Debian 8 and Ubuntu 14.04, both of which are out of mainstream security support, have supported a newer version, and RHEL 8, which is still in support, also has a newer version. Remove the check for this version and use this functionality unconditionally. Signed-off-by: brian m. carlson --- git-curl-compat.h | 22 ---------------------- http.c | 2 -- imap-send.c | 4 ---- 3 files changed, 28 deletions(-) diff --git a/git-curl-compat.h b/git-curl-compat.h index 9100af027f..21306fa88f 100644 --- a/git-curl-compat.h +++ b/git-curl-compat.h @@ -28,28 +28,6 @@ * introduced, oldest first, in the official version of cURL library. */ -/** - * CURLOPT_LOGIN_OPTIONS was added in 7.34.0, released in December - * 2013. - * - * If we start requiring 7.34.0 we might also be able to remove the - * code conditional on USE_CURL_FOR_IMAP_SEND in imap-send.c, see - * 1e16b255b95 (git-imap-send: use libcurl for implementation, - * 2014-11-09) and the check it added for "072200" in the Makefile. - - */ -#if LIBCURL_VERSION_NUM >= 0x072200 -#define GIT_CURL_HAVE_CURLOPT_LOGIN_OPTIONS 1 -#endif - -/** - * CURL_SSLVERSION_TLSv1_[012] was added in 7.34.0, released in - * December 2013. - */ -#if LIBCURL_VERSION_NUM >= 0x072200 -#define GIT_CURL_HAVE_CURL_SSLVERSION_TLSv1_0 -#endif - /** * CURLOPT_PINNEDPUBLICKEY was added in 7.39.0, released in November * 2014. CURLE_SSL_PINNEDPUBKEYNOTMATCH was added in that same version. diff --git a/http.c b/http.c index 633bbf74ee..ac4b98baa0 100644 --- a/http.c +++ b/http.c @@ -52,11 +52,9 @@ static struct { { "sslv2", CURL_SSLVERSION_SSLv2 }, { "sslv3", CURL_SSLVERSION_SSLv3 }, { "tlsv1", CURL_SSLVERSION_TLSv1 }, -#ifdef GIT_CURL_HAVE_CURL_SSLVERSION_TLSv1_0 { "tlsv1.0", CURL_SSLVERSION_TLSv1_0 }, { "tlsv1.1", CURL_SSLVERSION_TLSv1_1 }, { "tlsv1.2", CURL_SSLVERSION_TLSv1_2 }, -#endif #ifdef GIT_CURL_HAVE_CURL_SSLVERSION_TLSv1_3 { "tlsv1.3", CURL_SSLVERSION_TLSv1_3 }, #endif diff --git a/imap-send.c b/imap-send.c index ec68a06687..954cc9be65 100644 --- a/imap-send.c +++ b/imap-send.c @@ -1417,15 +1417,11 @@ static CURL *setup_curl(struct imap_server_conf *srvc, struct credential *cred) curl_easy_setopt(curl, CURLOPT_PORT, srvc->port); if (srvc->auth_method) { -#ifndef GIT_CURL_HAVE_CURLOPT_LOGIN_OPTIONS - warning("No LOGIN_OPTIONS support in this cURL version"); -#else struct strbuf auth = STRBUF_INIT; strbuf_addstr(&auth, "AUTH="); strbuf_addstr(&auth, srvc->auth_method); curl_easy_setopt(curl, CURLOPT_LOGIN_OPTIONS, auth.buf); strbuf_release(&auth); -#endif } if (!srvc->use_ssl) From patchwork Thu Oct 10 23:56:12 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831326 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E53091BE857 for ; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604599; cv=none; b=rWqURntoGAV0P/M35H9WB5iyJe9TOgRZhEhigeb+PqhAegzMHQ2cU8+SszKakv6K7WSFsUyMQhyxffXM95vzP0iAUxNm9i8V4sK1mLLcQOcH/iZbF/gcXY2aZGkmj/AYkQ6Hzbj1Snqip3UfMY1pq//29ujUYmaFwrzGKcyzSVk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604599; c=relaxed/simple; bh=2yteCggdA6LXgbOa72SHjQ2rtzToPOp6SaBetTTikRA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Is2duycxSanlzX3FTAnmvwG8+aLilYUWLE2kyG0C7cZQOg6WnSObrRuUYegKmFEqzeKEcHL6mu2lN3Ewink5cZEKeyLLjdBTYrBxu99Y8dqCqS6AcBVrKS9dv6dE6/tph5YJNnULQNzlfIknwBwQKP4OI5TwHGd3RvCzw/hB+n4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=poURlDID; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="poURlDID" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=2yteCggdA6LXgbOa72SHjQ2rtzToPOp6SaBetTTikRA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=poURlDID2ag9TPkE+vc7S/nd6a5zKV05fk79yoNIIxzbY851iu23f7mgbcEu+7vjk 98uDYxux14YYchBQo8LLXviIISn2PrTIyMeqeUE3BFfMMQOrlkOQGcSaqxbfseSxRB RMQ5H7jaBFWDMNxA4Mvw7EJGPnpNZ321GfjgDfutlb7h58D0tsVCIgN3QPjPScUdSK rXj1GVNeNUK06A8chnUosXDeEb1QDDB8YQcx6uLPyoyZA44PMZNh7wVKYjX0+WphhF rvweu7YYl0awX67Pq1xVidTtqDkrLcd2n+G+FrgtbEaxZWiAAotCzTlW+D2va/okry FTcI4DlmIct6+90vzi2U+DR7DoL7NgKAmxwl4tikf14w4ZhR1x1H5hOToeFc5NR37Q mZg00N5X34sarc2vHHFIlPqjK+jbxjzIi7HaM1kzT8fRQxaz65hise1twjKEmblHaz sW+YZvSzpuK+OXHoyj0rKPWpgmUO8R+3RjzmRmhqXd+R8yZ3hRK Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 1381B200BA; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 04/13] git-curl-compat: remove check for curl 7.39.0 Date: Thu, 10 Oct 2024 23:56:12 +0000 Message-ID: <20241010235621.738239-5-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 libcurl 7.39.0 was released in November 2014, which is almost ten years ago, and no major operating system vendor is still providing security support for it. Debian 9 and Ubuntu 16.04, both of which are out of mainstream security support, have supported a newer version, and RHEL 8, which is still in support, also has a newer version. Remove the check for this version and use this functionality unconditionally. Signed-off-by: brian m. carlson --- git-curl-compat.h | 9 --------- http.c | 11 ----------- 2 files changed, 20 deletions(-) diff --git a/git-curl-compat.h b/git-curl-compat.h index 21306fa88f..b301ef154c 100644 --- a/git-curl-compat.h +++ b/git-curl-compat.h @@ -28,15 +28,6 @@ * introduced, oldest first, in the official version of cURL library. */ -/** - * CURLOPT_PINNEDPUBLICKEY was added in 7.39.0, released in November - * 2014. CURLE_SSL_PINNEDPUBKEYNOTMATCH was added in that same version. - */ -#if LIBCURL_VERSION_NUM >= 0x072c00 -#define GIT_CURL_HAVE_CURLOPT_PINNEDPUBLICKEY 1 -#define GIT_CURL_HAVE_CURLE_SSL_PINNEDPUBKEYNOTMATCH 1 -#endif - /** * CURL_HTTP_VERSION_2 was added in 7.43.0, released in June 2015. * diff --git a/http.c b/http.c index ac4b98baa0..cdef059090 100644 --- a/http.c +++ b/http.c @@ -63,9 +63,7 @@ static char *ssl_key; static char *ssl_key_type; static char *ssl_capath; static char *curl_no_proxy; -#ifdef GIT_CURL_HAVE_CURLOPT_PINNEDPUBLICKEY static char *ssl_pinnedkey; -#endif static char *ssl_cainfo; static long curl_low_speed_limit = -1; static long curl_low_speed_time = -1; @@ -509,12 +507,7 @@ static int http_options(const char *var, const char *value, } if (!strcmp("http.pinnedpubkey", var)) { -#ifdef GIT_CURL_HAVE_CURLOPT_PINNEDPUBLICKEY return git_config_pathname(&ssl_pinnedkey, var, value); -#else - warning(_("Public key pinning not supported with cURL < 7.39.0")); - return 0; -#endif } if (!strcmp("http.extraheader", var)) { @@ -1104,10 +1097,8 @@ static CURL *get_curl_handle(void) curl_easy_setopt(result, CURLOPT_SSLKEYTYPE, ssl_key_type); if (ssl_capath) curl_easy_setopt(result, CURLOPT_CAPATH, ssl_capath); -#ifdef GIT_CURL_HAVE_CURLOPT_PINNEDPUBLICKEY if (ssl_pinnedkey) curl_easy_setopt(result, CURLOPT_PINNEDPUBLICKEY, ssl_pinnedkey); -#endif if (http_ssl_backend && !strcmp("schannel", http_ssl_backend) && !http_schannel_use_ssl_cainfo) { curl_easy_setopt(result, CURLOPT_CAINFO, NULL); @@ -1825,10 +1816,8 @@ static int handle_curl_result(struct slot_results *results) */ credential_reject(&cert_auth); return HTTP_NOAUTH; -#ifdef GIT_CURL_HAVE_CURLE_SSL_PINNEDPUBKEYNOTMATCH } else if (results->curl_result == CURLE_SSL_PINNEDPUBKEYNOTMATCH) { return HTTP_NOMATCHPUBLICKEY; -#endif } else if (missing_target(results)) return HTTP_MISSING_TARGET; else if (results->http_code == 401) { From patchwork Thu Oct 10 23:56:13 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831323 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 444821E571F for ; Thu, 10 Oct 2024 23:56:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604598; cv=none; b=TyU2BRxm4WUHyLi29c3P8oW507bKsmwVywOF98jCDuH4p8IHVLlMFu2Jgv0CK6WrqdonNgjTWkwquYTz3HLq96Y8nZrNEso80uLmsCxz9atWWNthr4MUdatMaIarDvsqFKUncs8JeLoZe35kKiWR/JQAEY75BIIHOOU88wvcNmI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604598; c=relaxed/simple; bh=/eZ0oHRZKK+QdeosQHMaDtMJ5DTkT1eLqH/CW8IIE3I=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=K2xZZqlY9RcapRQ/Ja6UcFmq8hjs2nkARyiz+Y3rqDbFsfwWq62JmChgcXVJfGpa/22MqtCu+dLw/wLW2CwNe7+7G5neraqb8rkg7uMxB3Ki6DLEGC8imZt5W269hpj5OtrWyemQdz3DRfgoU5LVSMbobjGANa3PG+YbWIv2xVY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=DLNktl+6; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="DLNktl+6" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=/eZ0oHRZKK+QdeosQHMaDtMJ5DTkT1eLqH/CW8IIE3I=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=DLNktl+6X9wgdOHGz4KasXSSVQTIYr+X7vPjb1Wa1U6mfWleNtT5QsrhYr8vAoSaL Jp8bewbSjns4+mmuht3jk6vM2Q4ElM1PqTSIqoDCY+ofBN9w1yolkxoewNxLCWp6Wt L59FtP+YoTWSbFDcle/PFh611Q2FRkvuPocUWFNBwXNzaDjtgsI0D3sfqODF2DLk0A /rQ13DdxxCBQn/zOfGNw+UvhqRXWl3F0SMi4tEAuAXIL0DL75QZQziVrNuy6KtiK1C CuhcmBXFQSOlWDAJSig0g7KQyItm6ogm3TCnvSwisaqXhjy2ZMnQg9HHg4KPuVxaxN xUhN8iGV+IpWjiNdQC+DnbrKD6pJd99+3BdjQ6gOs8wNMw7UWE0C9ggxgomUAQtR1o ivR/DumxrehN9iOwcLaB4qY7AAeIZ4es0XRfgS97ZZ7RLd5czVc8T5kbwk/JGrtnra k6zdF4MUc2oHX78mwahXaIa39k/kehoJxiWY0NG7BdlBEzTAv9I Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 1D70A200BB; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 05/13] git-curl-compat: remove check for curl 7.43.0 Date: Thu, 10 Oct 2024 23:56:13 +0000 Message-ID: <20241010235621.738239-6-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 libcurl 7.43.0 was released in June 2015, which is over nine years ago, and no major operating system vendor is still providing security support for it. Debian 9 and Ubuntu 16.04, both of which are out of mainstream security support, have supported a newer version, and RHEL 8, which is still in support, also has a newer version. Remove the check for this version and use this functionality unconditionally. Signed-off-by: brian m. carlson --- git-curl-compat.h | 11 ----------- http.c | 5 ----- 2 files changed, 16 deletions(-) diff --git a/git-curl-compat.h b/git-curl-compat.h index b301ef154c..cd970e34d6 100644 --- a/git-curl-compat.h +++ b/git-curl-compat.h @@ -28,17 +28,6 @@ * introduced, oldest first, in the official version of cURL library. */ -/** - * CURL_HTTP_VERSION_2 was added in 7.43.0, released in June 2015. - * - * The CURL_HTTP_VERSION_2 alias (but not CURL_HTTP_VERSION_2_0) has - * always been a macro, not an enum field (checked on curl version - * 7.78.0) - */ -#if LIBCURL_VERSION_NUM >= 0x072b00 -#define GIT_CURL_HAVE_CURL_HTTP_VERSION_2 1 -#endif - /** * CURLSSLOPT_NO_REVOKE was added in 7.44.0, released in August 2015. * diff --git a/http.c b/http.c index cdef059090..945df9a628 100644 --- a/http.c +++ b/http.c @@ -980,7 +980,6 @@ static long get_curl_allowed_protocols(int from_user, struct strbuf *list) return bits; } -#ifdef GIT_CURL_HAVE_CURL_HTTP_VERSION_2 static int get_curl_http_version_opt(const char *version_string, long *opt) { int i; @@ -1003,8 +1002,6 @@ static int get_curl_http_version_opt(const char *version_string, long *opt) return -1; /* not found */ } -#endif - static CURL *get_curl_handle(void) { CURL *result = curl_easy_init(); @@ -1022,7 +1019,6 @@ static CURL *get_curl_handle(void) curl_easy_setopt(result, CURLOPT_SSL_VERIFYHOST, 2); } -#ifdef GIT_CURL_HAVE_CURL_HTTP_VERSION_2 if (curl_http_version) { long opt; if (!get_curl_http_version_opt(curl_http_version, &opt)) { @@ -1030,7 +1026,6 @@ static CURL *get_curl_handle(void) curl_easy_setopt(result, CURLOPT_HTTP_VERSION, opt); } } -#endif curl_easy_setopt(result, CURLOPT_NETRC, CURL_NETRC_OPTIONAL); curl_easy_setopt(result, CURLOPT_HTTPAUTH, CURLAUTH_ANY); From patchwork Thu Oct 10 23:56:14 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831324 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C7F351E7C34 for ; Thu, 10 Oct 2024 23:56:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604599; cv=none; b=CldJqAqFao29CC24yayB5+3Ir5gSfSnVHoP07N595clIO2EziAlDZS4lws4tF+zcLtX2lYSImRvJ5Wh4d01GyecuD9N5u/YLu6JwHp767RF700gXKsKhrs/UeShaiqikdmFXrt9QztODYoNXYG6+vqX19whcmjDzpF979SYXpbY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604599; c=relaxed/simple; bh=dtfw2xRbiDHcM4T1nUorlbwVxN0N9b9G/mFEo9WO2M4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=nIPsMV94XT5cBFLeytDorYw9CTxGsY+OzD+2m+IuLOgeHdHLFV/yMV8z+KlmN8AxWIi0fm/k+I2FD66uCyLLEqqvK9C0f/a/F/AgHzgWVzkTRqTCBAeEC2XF7RSVWAq/n+mP7EPw0UpDWp4FycEXAoUi0n4uc0j4O4bgSKfVntw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=DmNlynHn; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="DmNlynHn" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=dtfw2xRbiDHcM4T1nUorlbwVxN0N9b9G/mFEo9WO2M4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=DmNlynHnDw1OYCjC7dCVmJ+aA4V2G6Sec73iQX0QPtQa6Kkhspu3mH1Pae6JIZSJL xcCjKbgTUEiRvpJQqapE6aOeLcSlQuYnNCstf1Z77s6qXnZX67vC684vm04xCou1wT a/m+eS8bB6pkOJbGi1UoQ/7OG9sZkBGRn0E6erH9cbVt+GX5MDoqFAQ4pLuYAO7XQB egdIXc4uf3xWmIDxuPmhA2+scKaiSmEB7jqgV3htyaPc4g/kNKJexqebi0GzjY2NfC tVlHo011wx8NahFeuDlxd7k7sGxGNqLUapY2tOCfiSHo1ipY/qYf+g8Dv6dVdEJEQC RP+tzBva5/JNXaiG51beCZ1gLWOwojqYWH21XN3xZeqxTAqKhuF/JfYhAfn2hjqhXV SzAC7e3+wNx943V5JB11EiHVjyDTHq62ogse/lwuz2YHuxjcR4mwrepdve8DhBys9u qhWrjbJ/TJZhtz6hjZeII/Jc96u3IQXGILJfNKGHe7yZV1JEo8w Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 27047200BC; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 06/13] git-curl-compat: remove check for curl 7.44.0 Date: Thu, 10 Oct 2024 23:56:14 +0000 Message-ID: <20241010235621.738239-7-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 libcurl 7.44.0 was released in August 2015, which is over nine years ago, and no major operating system vendor is still providing security support for it. Debian 9 and Ubuntu 16.04, both of which are out of mainstream security support, have supported a newer version, and RHEL 8, which is still in support, also has a newer version. Remove the check for this version and use this functionality unconditionally. Signed-off-by: brian m. carlson --- git-curl-compat.h | 10 ---------- http.c | 4 ---- 2 files changed, 14 deletions(-) diff --git a/git-curl-compat.h b/git-curl-compat.h index cd970e34d6..6b05d70d42 100644 --- a/git-curl-compat.h +++ b/git-curl-compat.h @@ -28,16 +28,6 @@ * introduced, oldest first, in the official version of cURL library. */ -/** - * CURLSSLOPT_NO_REVOKE was added in 7.44.0, released in August 2015. - * - * The CURLSSLOPT_NO_REVOKE is, has always been a macro, not an enum - * field (checked on curl version 7.78.0) - */ -#if LIBCURL_VERSION_NUM >= 0x072c00 -#define GIT_CURL_HAVE_CURLSSLOPT_NO_REVOKE 1 -#endif - /** * CURLOPT_PROXY_CAINFO was added in 7.52.0, released in August 2017. */ diff --git a/http.c b/http.c index 945df9a628..bdf8bf7b59 100644 --- a/http.c +++ b/http.c @@ -1048,11 +1048,7 @@ static CURL *get_curl_handle(void) if (http_ssl_backend && !strcmp("schannel", http_ssl_backend) && !http_schannel_check_revoke) { -#ifdef GIT_CURL_HAVE_CURLSSLOPT_NO_REVOKE curl_easy_setopt(result, CURLOPT_SSL_OPTIONS, CURLSSLOPT_NO_REVOKE); -#else - warning(_("CURLSSLOPT_NO_REVOKE not supported with cURL < 7.44.0")); -#endif } if (http_proactive_auth != PROACTIVE_AUTH_NONE) From patchwork Thu Oct 10 23:56:15 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831325 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 05DA61E882E for ; Thu, 10 Oct 2024 23:56:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604599; cv=none; b=B5oCiTJZLdjL+6L43BzdJ/gJy4FbIyibypBcKq61S01k3oF9Qq3ZCXGp3R5AoRX1B//brn2/gU0O5Ur35aGrLgruhYscCo+t13/FgyEM3/q+HSYlhfGUy+dDNJdtGQ78wN6iMNa57IrcUpENnb2gPvy97UEl8LLWGOvLyZ2Zzu4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604599; c=relaxed/simple; bh=H9yfEMCXOdKkCyMy4ehXK57MDNa4HiytfYISS7UhBLU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=WI4ISHIki4HoC7610+CaHH56k8C0RGw2PzPaRZFbr5otX+RoyUuYPXIPvqgxt5w/bJNaIVthqeLi4PQG46dwTcPtEMui2BPmBF4UkSNibyR3FsEDk9VYlV/VSnRhjo9sFJsd83w9i24NuhYbVoCwkhtk+PDHBNqk0CzBcOvh3SQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=d8/8gNiM; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="d8/8gNiM" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=H9yfEMCXOdKkCyMy4ehXK57MDNa4HiytfYISS7UhBLU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=d8/8gNiMtlAiIh6KvLyNGOici1++muEx0iPDz5JcGshYYKeU//km/hw9JjwiOdq+e W4/UHTV24NwCpPy4xUGat3+lv8tq0FeG5OSfjQyBIRLRt5je2Rw5R4qQluvqJ6j1Xs /HtLRqxKK9rc/1DS//IoqxcFS189bzO9X1HGXLZfDjvTyX79wyCJm8ikilPLXJRnxL DZtYEfXgVn8xUIStKHxTRSE/+lTcGsDrLc0Rof19XCpe6hX4q8D9Rx1NfI1aUjLSr7 fpnzGWagbmWIYJ506u9tGxZaR/vmkR/0IqFBOwrCpJeBuAn7dH9xCojinGWQqzudyt HHedpGTPj9wnVP4FUQQ3EfCUFM8xPGvYDRcLZ8xNvf08UYxT5sq27oC7SXwhxhKHzN Cxlyagj81LoR0CZHoTX83KOZnoiDkec2QmMUDOZTaAc8H+CNQaxXKhwk/ORh8aa/Mb v4MqfX8O2WIo+cn+trZtGQvVDubZj4PL6PhH6xXUAQfBXDhrSv2 Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 3013B200BD; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 07/13] git-curl-compat: remove check for curl 7.52.0 Date: Thu, 10 Oct 2024 23:56:15 +0000 Message-ID: <20241010235621.738239-8-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 libcurl 7.52.0 was released in August 2017, which is over seven years ago, and no major operating system vendor is still providing security support for it. Debian 9 and Ubuntu 18.04, both of which are out of mainstream security support, have supported a newer version, and RHEL 8, which is still in support, also has a newer version. Remove the check for this version and use this functionality unconditionally. Signed-off-by: brian m. carlson --- git-curl-compat.h | 15 --------------- http.c | 8 -------- 2 files changed, 23 deletions(-) diff --git a/git-curl-compat.h b/git-curl-compat.h index 6b05d70d42..edee8f2ba0 100644 --- a/git-curl-compat.h +++ b/git-curl-compat.h @@ -28,21 +28,6 @@ * introduced, oldest first, in the official version of cURL library. */ -/** - * CURLOPT_PROXY_CAINFO was added in 7.52.0, released in August 2017. - */ -#if LIBCURL_VERSION_NUM >= 0x073400 -#define GIT_CURL_HAVE_CURLOPT_PROXY_CAINFO 1 -#endif - -/** - * CURLOPT_PROXY_{KEYPASSWD,SSLCERT,SSLKEY} was added in 7.52.0, - * released in August 2017. - */ -#if LIBCURL_VERSION_NUM >= 0x073400 -#define GIT_CURL_HAVE_CURLOPT_PROXY_KEYPASSWD 1 -#endif - /** * CURL_SSLVERSION_TLSv1_3 was added in 7.53.0, released in February * 2017. diff --git a/http.c b/http.c index bdf8bf7b59..24764f1272 100644 --- a/http.c +++ b/http.c @@ -691,7 +691,6 @@ static int has_cert_password(void) return 1; } -#ifdef GIT_CURL_HAVE_CURLOPT_PROXY_KEYPASSWD static int has_proxy_cert_password(void) { if (http_proxy_ssl_cert == NULL || proxy_ssl_cert_password_required != 1) @@ -705,7 +704,6 @@ static int has_proxy_cert_password(void) } return 1; } -#endif static void set_curl_keepalive(CURL *c) { @@ -1093,16 +1091,12 @@ static CURL *get_curl_handle(void) if (http_ssl_backend && !strcmp("schannel", http_ssl_backend) && !http_schannel_use_ssl_cainfo) { curl_easy_setopt(result, CURLOPT_CAINFO, NULL); -#ifdef GIT_CURL_HAVE_CURLOPT_PROXY_CAINFO curl_easy_setopt(result, CURLOPT_PROXY_CAINFO, NULL); -#endif } else if (ssl_cainfo != NULL || http_proxy_ssl_ca_info != NULL) { if (ssl_cainfo) curl_easy_setopt(result, CURLOPT_CAINFO, ssl_cainfo); -#ifdef GIT_CURL_HAVE_CURLOPT_PROXY_CAINFO if (http_proxy_ssl_ca_info) curl_easy_setopt(result, CURLOPT_PROXY_CAINFO, http_proxy_ssl_ca_info); -#endif } if (curl_low_speed_limit > 0 && curl_low_speed_time > 0) { @@ -1198,7 +1192,6 @@ static CURL *get_curl_handle(void) else if (starts_with(curl_http_proxy, "socks")) curl_easy_setopt(result, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4); -#ifdef GIT_CURL_HAVE_CURLOPT_PROXY_KEYPASSWD else if (starts_with(curl_http_proxy, "https")) { curl_easy_setopt(result, CURLOPT_PROXYTYPE, CURLPROXY_HTTPS); @@ -1211,7 +1204,6 @@ static CURL *get_curl_handle(void) if (has_proxy_cert_password()) curl_easy_setopt(result, CURLOPT_PROXY_KEYPASSWD, proxy_cert_auth.password); } -#endif if (strstr(curl_http_proxy, "://")) credential_from_url(&proxy_auth, curl_http_proxy); else { From patchwork Thu Oct 10 23:56:16 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831331 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 37D451E8845 for ; Thu, 10 Oct 2024 23:56:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604601; cv=none; b=MTl6RGKhN1FyrYx+oSOYCKq3dCHsMIV1nNaLo1c5tJyig9AQnqsFOX6v1NpvLqACG41jVhne1wxrzWtVztYmgcz2XwXBIYqYXUs8d9lhjL+aqYKvxRnMaiFEun4WABvhWHJOYTHokwvwCFT6ckijkZs1ePNznj+F/6DHlxNhXgA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604601; c=relaxed/simple; bh=Yyx1/9ezc1jQ37JvF0zD81szsoSHY4VK/1sVGZmQ6ew=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=LuhY6tJj83LVjYWNCZAqjAEZsb3oduywkcDZMaXy0jL8ibRgsm1eT/bc3V7BKIJoU4M2TyY0ezkwD30y+ASt8SoItkFc9pzitzZjt0gZlJ8GH6IX+iLQjIvQsRDK9OQSJvtgumc56jGA+MGlO1P09WC9iGZrNLSWsDZjLBQO7js= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=v9dl44O4; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="v9dl44O4" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=Yyx1/9ezc1jQ37JvF0zD81szsoSHY4VK/1sVGZmQ6ew=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=v9dl44O4aIUv9edpdxy6chw6G0Sw87IBzcY1LZR9m4e65EbSpEREFNolQgPmCLhr0 LD3i9YUmw+MfIwXFcSLeUjGXQ6p4hK0Gj88l/hun6Y3xTlX5Ynix2zTgMHEjkLgN18 JoJlA+QBcwxYDXhKAWHksxkLCYQa+JsdD/QyyW/cKXUO2uqeoR7btA3bPUoWpgWD2B kprXn/tHCza0zHdKBwFvYQ1NkNljxFv8U0GlAiQ4bkFRSIyoGKTCCsyZ30tNeGHyoa +435yCTeRK7/h1V0j9p54iGmo9xU6CMEXrq8Td38Wvjl3IW4Yy00Jkxw5GDCE3D+hj 8ymr4sek6kIaVuVM9J9a2d3sfjS1ZFssYgUAvTU6mopNTO682eYLtn0HxeMtXWER6t AzSKUYKcAA1jKMVP2nT0gYm9pcYyR25OrbPPNOYN1ZJIh/LTRTP0eABdQsaOHiV0GW yRptiDjxqbqoaBZNElTq4K+vs++EfRYPBjIgE7T4jkmPQLJ7SjA Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 457B9200BE; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 08/13] git-curl-compat: remove check for curl 7.53.0 Date: Thu, 10 Oct 2024 23:56:16 +0000 Message-ID: <20241010235621.738239-9-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 libcurl 7.53.0 was released in February 2017, which is over seven years ago, and no major operating system vendor is still providing security support for it. Debian 10 and Ubuntu 18.04, both of which are out of mainstream security support, have supported a newer version, and RHEL 8, which is still in support, also has a newer version. Remove the check for this version and use this functionality unconditionally. Signed-off-by: brian m. carlson --- git-curl-compat.h | 8 -------- http.c | 2 -- 2 files changed, 10 deletions(-) diff --git a/git-curl-compat.h b/git-curl-compat.h index edee8f2ba0..65ba1ee0f8 100644 --- a/git-curl-compat.h +++ b/git-curl-compat.h @@ -28,14 +28,6 @@ * introduced, oldest first, in the official version of cURL library. */ -/** - * CURL_SSLVERSION_TLSv1_3 was added in 7.53.0, released in February - * 2017. - */ -#if LIBCURL_VERSION_NUM >= 0x073400 -#define GIT_CURL_HAVE_CURL_SSLVERSION_TLSv1_3 1 -#endif - /** * CURLSSLSET_{NO_BACKENDS,OK,TOO_LATE,UNKNOWN_BACKEND} were added in * 7.56.0, released in September 2017. diff --git a/http.c b/http.c index 24764f1272..c5fdf1cd4c 100644 --- a/http.c +++ b/http.c @@ -55,9 +55,7 @@ static struct { { "tlsv1.0", CURL_SSLVERSION_TLSv1_0 }, { "tlsv1.1", CURL_SSLVERSION_TLSv1_1 }, { "tlsv1.2", CURL_SSLVERSION_TLSv1_2 }, -#ifdef GIT_CURL_HAVE_CURL_SSLVERSION_TLSv1_3 { "tlsv1.3", CURL_SSLVERSION_TLSv1_3 }, -#endif }; static char *ssl_key; static char *ssl_key_type; From patchwork Thu Oct 10 23:56:17 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831327 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3B9D81E8849 for ; Thu, 10 Oct 2024 23:56:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604599; cv=none; b=RltAJhymoCH/sbXME2ui2PncMfaDT10uU/tL6zOR1AEkYoAL0r6hEDZ55V79N1FVfDe9z9ItiEooVWA42j5FARkVObigBP21X//7ZmtodMgpP8SX9jbFgQoOhybW0TDRMIJiMLrHKwLux2uz4Sn41edUiZ1JeIYSAIg+UjIHPlQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604599; c=relaxed/simple; bh=8w0UuLbT1GF7DW2uvm6+8bk6iPrUfl/xm0kSoWBbMtQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tMMEQX5VUButVaoJRBF+YiTQeo/w7aqjOpdBOPATnwBQgDiSvplx57TVWsWBI/LJ0NIG1banVLWa5Z8gR5+E/x+dsnKEv8BLTARm15MBvRmnwcRBHV046rnfvLHjqKA0fBAAh99ivep33/mfmGpaDSuN/r0jBsa5LaUGgdjgMNY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=NTM6pY+x; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="NTM6pY+x" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=8w0UuLbT1GF7DW2uvm6+8bk6iPrUfl/xm0kSoWBbMtQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=NTM6pY+xzKPCNFKFC8GORBysLxmvw2b809F+Hmng/wzkSpz8qRqHiDRjvjvbj0VzM vPtS4RZvfvtLjdc345U7xJOMKW1sqd769kTyefnLgVurDSlrIiXP1h1yd8y/zVtui0 OXhEJkFSV/CLllpLAwSDGNlEaOfbRfwxgYuvrhqXM/KzeuAO0ipmXfYMWaAY2TyT98 WZ4ukD60XSUXoKpNUuvAatURgc0JW3bql/kcO5NwmomnHNmIMX/7U1ac1ssrJilXww vKXIzdBVhWycFpVjxk705YOAUvxCTy0dD02JYfiCP6Mm0SNKPf+tgBvognnyyHTwa8 YtcbwZ80Rfbyk95uMhpzrDgOg4nvVdSLdFhP8EgIhmY04OvGncmZf3iyCb97ExLRCo hstqbsJ6FYn1L+0Hrdlg51ms0Z15jcXYYh78L8NfwNQmvaqxTSZGC159xzkes57nS0 MC5YoktjwEUAsfbfEriG3SdsYX6ytb1RqgEB2YZSy8ZYFg0TdR5 Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 4FD0F200BF; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 09/13] git-curl-compat: remove check for curl 7.56.0 Date: Thu, 10 Oct 2024 23:56:17 +0000 Message-ID: <20241010235621.738239-10-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 libcurl 7.56.0 was released in September 2017, which is over seven years ago, and no major operating system vendor is still providing security support for it. Debian 10, which is out of mainstream security support, has supported a newer version, and Ubuntu 20.04 and RHEL 8, which are still in support, also have a newer version. Remove the check for this version and use this functionality unconditionally. Signed-off-by: brian m. carlson --- git-curl-compat.h | 8 -------- http.c | 2 -- 2 files changed, 10 deletions(-) diff --git a/git-curl-compat.h b/git-curl-compat.h index 65ba1ee0f8..703756ba85 100644 --- a/git-curl-compat.h +++ b/git-curl-compat.h @@ -28,14 +28,6 @@ * introduced, oldest first, in the official version of cURL library. */ -/** - * CURLSSLSET_{NO_BACKENDS,OK,TOO_LATE,UNKNOWN_BACKEND} were added in - * 7.56.0, released in September 2017. - */ -#if LIBCURL_VERSION_NUM >= 0x073800 -#define GIT_CURL_HAVE_CURLSSLSET_NO_BACKENDS -#endif - /** * Versions before curl 7.66.0 (September 2019) required manually setting the * transfer-encoding for a streaming POST; after that this is handled diff --git a/http.c b/http.c index c5fdf1cd4c..4d59f11ad2 100644 --- a/http.c +++ b/http.c @@ -1275,7 +1275,6 @@ void http_init(struct remote *remote, const char *url, int proactive_auth) free(normalized_url); string_list_clear(&config.vars, 1); -#ifdef GIT_CURL_HAVE_CURLSSLSET_NO_BACKENDS if (http_ssl_backend) { const curl_ssl_backend **backends; struct strbuf buf = STRBUF_INIT; @@ -1300,7 +1299,6 @@ void http_init(struct remote *remote, const char *url, int proactive_auth) break; /* Okay! */ } } -#endif if (curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) die("curl_global_init failed"); From patchwork Thu Oct 10 23:56:18 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831328 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 735B21E8857 for ; Thu, 10 Oct 2024 23:56:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604600; cv=none; b=jAZ/fmwulpesH2eT4QfH/MLGd11XQbyVdCMfEWoUAyyn75L7ZZX++xIPEIgEwXKBHoUySkNYY9weKDu1vCzKylrT/DPwUvI12uI6nLI962mYj19anNZr6OlxFTAALN0IkMlIhk6aQ6DICrVNctX7EpRYZiMm41UtHtmxHyF9Wrg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604600; c=relaxed/simple; bh=u9igHWBuSr2c88DQ0ItXsvOXaMorSxMBiSW3OfzCajQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=D4RW5eD2SQ3keJjcPIoOBwE2MatgeNBFxaxEgyZpBetJsm4wKzGCBWjyNtDTuxPP2bqktuhPtzwKm14pHrKM8CKgqC+QUzzPEEF9PujVju/DTKu97aeh3eNUAdjg1iJOPlpbn7ApVLXPGuCAl73mbst/UIbEEVIQEMR9XIPyNFw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=oPnB3M1B; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="oPnB3M1B" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=u9igHWBuSr2c88DQ0ItXsvOXaMorSxMBiSW3OfzCajQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=oPnB3M1BPrgtWtOrbj10jLpoPxoCqb9XeHxDZ1e/i/pePwbglMWOYzua/HzyB65Gu uIVgQmHuTpY/dJgp5hWdBwElBRmb2LmitNefZIrZL6nn50oxJ+XO0CBEv0Vjcj790U dNZ8sEeKaWASMWlQoDiO4/oHhjA+EOG+PQ8aigs1iaifbXxu7RAPWOskAi/tqKBMYS ceftE6fTw8EKY50+BpKh318jDqUgga9/Qk1EsXDn4aov8s4Fq2yk6nKq0x7SerE/uX gZsdc7MxLGx9JT0TR1DuVvQ/4dnJrA10drYWQKGcOw032aAF+WL3qsQ7amqytq+3jb oEn3yn8fyRTkS6AFajUKvhc4ErLe7Hgc+35oGWY1kpT5av9/IadTTJBsJR30vOIzuK E7YXxVxToukN+xXRSae4WLk7OOl8TEuorEaPYbWC/yglu2CdNpl1iL9giKQLYc+lXK mxcPSVMYLdWtpR9gur5rHGLgN3/AycziM0Cw/zg4tYHGawC7ACW Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 651BD200C0; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 10/13] INSTALL: document requirement for libcurl 7.61.0 Date: Thu, 10 Oct 2024 23:56:18 +0000 Message-ID: <20241010235621.738239-11-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Our platform support policy states that we require "versions of dependencies which are generally accepted as stable and supportable, e.g., in line with the version used by other long-term-support distributions". Of Debian, Ubuntu, and RHEL, the three most common distributions that provide LTS versions, the version with mainstream long-term security support with the oldest libcurl is 7.61.0 in RHEL 8. Update the documentation to state that this is the new base version for libcurl. Remove text that is no longer applicable to older versions. Signed-off-by: brian m. carlson --- INSTALL | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/INSTALL b/INSTALL index 2a46d04592..6e0321ff0e 100644 --- a/INSTALL +++ b/INSTALL @@ -129,17 +129,12 @@ Issues of note: itself, e.g. Digest::MD5, File::Spec, File::Temp, Net::Domain, Net::SMTP, and Time::HiRes. - - git-imap-send needs the OpenSSL library to talk IMAP over SSL if - you are using libcurl older than 7.34.0. Otherwise you can use - NO_OPENSSL without losing git-imap-send. - - "libcurl" library is used for fetching and pushing repositories over http:// or https://, as well as by - git-imap-send if the curl version is >= 7.34.0. If you do - not need that functionality, use NO_CURL to build without - it. + git-imap-send. If you do not need that functionality, + use NO_CURL to build without it. - Git requires version "7.21.3" or later of "libcurl" to build + Git requires version "7.61.0" or later of "libcurl" to build without NO_CURL. This version requirement may be bumped in the future. From patchwork Thu Oct 10 23:56:19 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831330 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CA64F1E9068 for ; Thu, 10 Oct 2024 23:56:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604600; cv=none; b=EtrEigoW2CRvt3iiOIWiH47hBKIt55bUjAAC20cLonwJoTnEqew6/jJfZ4Mc9etCB0o2zRVgGNhEDkwjH1H46Lpm+0b5C31zN5DTTQEVXGLex9dbfMKiGIwoasBLMJ8vy5NcM1ZmQqaF8FBhW+IwxUmkmcm4kveLWXJdX6kAkA4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604600; c=relaxed/simple; bh=fQMu6H2F671dMG3E6eFxHnH0fphsCRtRNbQ5FKxOthk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XAX28Z3UUUYmZXFWwjqhNXVdLSOekkrU/GEtD7cUmG1T1WkU1+Fnd3wcONwe11p336/F7u/mfF8Aar33WFxgWCJpgvLEZU/uVJ69LMDOPEC2MJ8/bkQ0ISp1/ubcLDaw8No3EcS5f0zxScg89h1Kk5p4L4khV8w6c3lan1aPKVk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=YIBPa32n; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="YIBPa32n" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=fQMu6H2F671dMG3E6eFxHnH0fphsCRtRNbQ5FKxOthk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=YIBPa32nTXjlmiMJuji5OagxJGLh1tu9IPTrfKtSAu7DnyZWpo+Nqh3DgpaMYeUxg rpJRdtTzFRlrFelThOa/ogtZDLjE04PblQPTgoKAY+raG6cwL4YUMg50W0SOJyzTzt WVrb5BZhmMWlLo1g1QecQzeNVXMFwc/ESKHNqm0Q3rOcSJNquipKQ0RI/k9gAT1kpc iVSTsAf1SeH3oOTDLws3TRqOqU7FXeevB/l2+WTCr/XoPNgyaX0k/ANSENmCkFyGAE JgnCfX8KRJ0VdICIZ3PWobpbDQcBTr8xlamVL4ypmjhJxZU9/u0GEzPLCh01RictVX aGEA7Odpi0prIebhrhoGP1lv32DwoBvP/OTWbi8vuFccFiTnxbmASbG4Jeea3CW857 zg3ShKqMiXRqLspdG0TJLqFjAn+0PFIdXJVFC14/+HwZB404Ktbyfmu3TEym8jne6o 9cqn/Y/Xe8WKWPGnFeWaFxH7R3OtanWAMUGtP771p7jAPAAHvKf Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 6F390200C1; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 11/13] Require Perl 5.26.0 Date: Thu, 10 Oct 2024 23:56:19 +0000 Message-ID: <20241010235621.738239-12-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Our platform support policy states that we require "versions of dependencies which are generally accepted as stable and supportable, e.g., in line with the version used by other long-term-support distributions". Of Debian, Ubuntu, RHEL, and SLES, the four most common distributions that provide LTS versions, the version with mainstream long-term security support with the oldest Perl is 5.26.0 in SLES 15.6. This is a major upgrade, since Perl 5.8.1, according to the Perl documentation, was released in September of 2003. It brings a lot of new features that we can choose to use, such as s///r to return the modified string, the postderef functionality, and subroutine signatures, although the latter was still considered experimental until 5.36. This change was made with the following one-liner, which intentionally excludes modifying the vendored modules we include to avoid conflicts: git grep -l 'use 5.008001' | grep -v 'LoadCPAN/' | xargs perl -pi -e 's/use 5.008001/use 5.026000/' Signed-off-by: brian m. carlson --- contrib/diff-highlight/DiffHighlight.pm | 2 +- contrib/mw-to-git/Git/Mediawiki.pm | 2 +- git-archimport.perl | 2 +- git-cvsexportcommit.perl | 2 +- git-cvsimport.perl | 2 +- git-cvsserver.perl | 2 +- git-send-email.perl | 2 +- git-svn.perl | 2 +- gitweb/gitweb.perl | 2 +- perl/Git.pm | 2 +- perl/Git/I18N.pm | 2 +- perl/Git/LoadCPAN.pm | 2 +- perl/Git/Packet.pm | 2 +- t/t0202/test.pl | 2 +- t/t5562/invoke-with-content-length.pl | 2 +- t/t9700/test.pl | 2 +- t/test-terminal.perl | 2 +- 17 files changed, 17 insertions(+), 17 deletions(-) diff --git a/contrib/diff-highlight/DiffHighlight.pm b/contrib/diff-highlight/DiffHighlight.pm index 636add6968..15be2a49a2 100644 --- a/contrib/diff-highlight/DiffHighlight.pm +++ b/contrib/diff-highlight/DiffHighlight.pm @@ -1,6 +1,6 @@ package DiffHighlight; -use 5.008001; +use 5.026000; use warnings FATAL => 'all'; use strict; diff --git a/contrib/mw-to-git/Git/Mediawiki.pm b/contrib/mw-to-git/Git/Mediawiki.pm index ff7811225e..0c0df63d54 100644 --- a/contrib/mw-to-git/Git/Mediawiki.pm +++ b/contrib/mw-to-git/Git/Mediawiki.pm @@ -1,6 +1,6 @@ package Git::Mediawiki; -use 5.008001; +use 5.026000; use strict; use POSIX; use Git; diff --git a/git-archimport.perl b/git-archimport.perl index f5a317b899..0a1e08f6c3 100755 --- a/git-archimport.perl +++ b/git-archimport.perl @@ -54,7 +54,7 @@ =head1 Devel Notes =cut -use 5.008001; +use 5.026000; use strict; use warnings; use Getopt::Std; diff --git a/git-cvsexportcommit.perl b/git-cvsexportcommit.perl index 1e03ba94d1..c4fbb4bef3 100755 --- a/git-cvsexportcommit.perl +++ b/git-cvsexportcommit.perl @@ -1,6 +1,6 @@ #!/usr/bin/perl -use 5.008001; +use 5.026000; use strict; use warnings; use Getopt::Std; diff --git a/git-cvsimport.perl b/git-cvsimport.perl index 211ec8459a..d7229679cf 100755 --- a/git-cvsimport.perl +++ b/git-cvsimport.perl @@ -13,7 +13,7 @@ # The head revision is on branch "origin" by default. # You can change that with the '-o' option. -use 5.008001; +use 5.026000; use strict; use warnings; use Getopt::Long; diff --git a/git-cvsserver.perl b/git-cvsserver.perl index 124f598bdc..145e12cb3e 100755 --- a/git-cvsserver.perl +++ b/git-cvsserver.perl @@ -15,7 +15,7 @@ #### #### -use 5.008001; +use 5.026000; use strict; use warnings; use bytes; diff --git a/git-send-email.perl b/git-send-email.perl index c835d4c11a..166d6635bc 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -16,7 +16,7 @@ # and second line is the subject of the message. # -use 5.008001; +use 5.026000; use strict; use warnings $ENV{GIT_PERL_FATAL_WARNINGS} ? qw(FATAL all) : (); use Getopt::Long; diff --git a/git-svn.perl b/git-svn.perl index 01e7a70de1..d1e969feb9 100755 --- a/git-svn.perl +++ b/git-svn.perl @@ -1,7 +1,7 @@ #!/usr/bin/perl # Copyright (C) 2006, Eric Wong # License: GPL v2 or later -use 5.008001; +use 5.026000; use warnings $ENV{GIT_PERL_FATAL_WARNINGS} ? qw(FATAL all) : (); use strict; use vars qw/ $AUTHOR $VERSION diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index b09a8d0523..c4f92386eb 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -7,7 +7,7 @@ # # This program is licensed under the GPLv2 -use 5.008001; +use 5.026000; use strict; use warnings; # handle ACL in file access tests diff --git a/perl/Git.pm b/perl/Git.pm index 667152c6c6..b6312e6156 100644 --- a/perl/Git.pm +++ b/perl/Git.pm @@ -7,7 +7,7 @@ =head1 NAME package Git; -use 5.008001; +use 5.026000; use strict; use warnings $ENV{GIT_PERL_FATAL_WARNINGS} ? qw(FATAL all) : (); diff --git a/perl/Git/I18N.pm b/perl/Git/I18N.pm index 475e90a6df..cdffe19a59 100644 --- a/perl/Git/I18N.pm +++ b/perl/Git/I18N.pm @@ -1,5 +1,5 @@ package Git::I18N; -use 5.008001; +use 5.026000; use strict; use warnings $ENV{GIT_PERL_FATAL_WARNINGS} ? qw(FATAL all) : (); BEGIN { diff --git a/perl/Git/LoadCPAN.pm b/perl/Git/LoadCPAN.pm index 8c7fa805f9..c2bbcdc957 100644 --- a/perl/Git/LoadCPAN.pm +++ b/perl/Git/LoadCPAN.pm @@ -1,5 +1,5 @@ package Git::LoadCPAN; -use 5.008001; +use 5.026000; use strict; use warnings $ENV{GIT_PERL_FATAL_WARNINGS} ? qw(FATAL all) : (); diff --git a/perl/Git/Packet.pm b/perl/Git/Packet.pm index d896e69523..9ffe3a17c5 100644 --- a/perl/Git/Packet.pm +++ b/perl/Git/Packet.pm @@ -1,5 +1,5 @@ package Git::Packet; -use 5.008001; +use 5.026000; use strict; use warnings $ENV{GIT_PERL_FATAL_WARNINGS} ? qw(FATAL all) : (); BEGIN { diff --git a/t/t0202/test.pl b/t/t0202/test.pl index 47d96a2a13..853f3ddc47 100755 --- a/t/t0202/test.pl +++ b/t/t0202/test.pl @@ -1,5 +1,5 @@ #!/usr/bin/perl -use 5.008001; +use 5.026000; use lib (split(/:/, $ENV{GITPERLLIB})); use strict; use warnings; diff --git a/t/t5562/invoke-with-content-length.pl b/t/t5562/invoke-with-content-length.pl index 9babb9a375..ef9671ca51 100644 --- a/t/t5562/invoke-with-content-length.pl +++ b/t/t5562/invoke-with-content-length.pl @@ -1,4 +1,4 @@ -use 5.008001; +use 5.026000; use strict; use warnings; diff --git a/t/t9700/test.pl b/t/t9700/test.pl index 2e1d50d4d1..7572c638bf 100755 --- a/t/t9700/test.pl +++ b/t/t9700/test.pl @@ -1,7 +1,7 @@ #!/usr/bin/perl use lib (split(/:/, $ENV{GITPERLLIB})); -use 5.008001; +use 5.026000; use warnings; use strict; diff --git a/t/test-terminal.perl b/t/test-terminal.perl index b8fd6a4f13..77e79db553 100755 --- a/t/test-terminal.perl +++ b/t/test-terminal.perl @@ -1,5 +1,5 @@ #!/usr/bin/perl -use 5.008001; +use 5.026000; use strict; use warnings; use IO::Pty; From patchwork Thu Oct 10 23:56:20 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831329 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CCB401E9069 for ; Thu, 10 Oct 2024 23:56:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604600; cv=none; b=eqOtg1EYVelTinhuQbpchlZ+8YIkia+3Fzpq5RHO9/CIVS4I7Y/4LkE1vWXzuy4ia1gt3b6YB6kr/d3oOIrD+Yv9bZOc7bJZc320iXfncomzahW8ae8SnegYF1/tq3kELHEVv28EnodwHq7/By25XTEFvRosTJBRHkb/TdegyAo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604600; c=relaxed/simple; bh=A6RvymvX1A1TXa6m4bLhK0vIlclZi8ntV/v14mWLupY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=S48YiMh5iTnCowbXdMdykBhJ+nJjy64V4sG5ktbBoh+bQaUKI6bJFOTKs5BibTmelogbQNnVYW+ySGIyZAFKl8qMVD758AsCcoAop/amMEH3oUjQuE73niT15x0icO4jRvWk/G99AnEFYQRroIs2m6tGnEE/UBeNeUFeiiLV7EQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=rbL17OQA; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="rbL17OQA" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=A6RvymvX1A1TXa6m4bLhK0vIlclZi8ntV/v14mWLupY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=rbL17OQAzHrWneju9sfrfKHVZM+4cw3ZylJWO5H5KVq3hVvIZEVL4Jaa9dDpvMEXz 2VM7z7cYixH5sqrcMKZJxISdczE+BDMeJZz5J2UiACSV1tAC6FMqUiqM4NoWOIs7ed AFc2Oy5sM0rVAu/ejfpjGJtkDsGi2JbAFGHrFcvzCMFvPakpl+VU7gg3dDCr0o35Fz 2muh3S7wd3cCTS6RHFK5nkHThOXfYRlR1sj0N/ImACo2xhi7bvbuzlleCHOWf2kjHn 1CMYlySEYvmE62dOMcyLR5+4bSIGB0eAMTuAs5lewTYiZwdc3A90Ebs9gxgcO8SvQN PLgiWjaciYHoKwGVjsrpQ38QMu8/eOeZZ6dFdkm0XlrByYFm5DS/1L22W0pamvaa5F lNbkiSPF4cHhgxsq7XW0nMa02kt6PYRhLGqPgPoeg1ZKUCdaEl8uY4LbrhNlDC4O2Q R7n6eKH6jVMkOX0UxhDHVMJc8aV1jYj7tgzkbA5kT0IpiQuBQ2p Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 7AA8D200C2; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 12/13] INSTALL: require Perl 5.26.0 Date: Thu, 10 Oct 2024 23:56:20 +0000 Message-ID: <20241010235621.738239-13-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Our platform support policy states that we require "versions of dependencies which are generally accepted as stable and supportable, e.g., in line with the version used by other long-term-support distributions". Of Debian, Ubuntu, RHEL, and SLES, the four most common distributions that provide LTS versions, the version with mainstream long-term security support with the oldest Perl is 5.26.0 in SLES 15.6. This is a major upgrade, since Perl 5.8.1, according to the Perl documentation, was released in September of 2003. It brings a lot of new features that we can choose to use, such as s///r to return the modified string, the postderef functionality, and subroutine signatures, although the latter was still considered experimental until 5.36. Update the INSTALL file to reflect our new dependency requirement. Signed-off-by: brian m. carlson --- INSTALL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/INSTALL b/INSTALL index 6e0321ff0e..54d7528f9e 100644 --- a/INSTALL +++ b/INSTALL @@ -119,7 +119,7 @@ Issues of note: - A POSIX-compliant shell is required to run some scripts needed for everyday use (e.g. "bisect", "request-pull"). - - "Perl" version 5.8.1 or later is needed to use some of the + - "Perl" version 5.26.0 or later is needed to use some of the features (e.g. sending patches using "git send-email", interacting with svn repositories with "git svn"). If you can live without these, use NO_PERL. Note that recent releases of From patchwork Thu Oct 10 23:56:21 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "brian m. carlson" X-Patchwork-Id: 13831332 Received: from complex.crustytoothpaste.net (complex.crustytoothpaste.net [172.105.7.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 012EB1EABB3 for ; Thu, 10 Oct 2024 23:56:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=172.105.7.114 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604601; cv=none; b=uiOZ0WtFKI4zdA3wkjusuyCK5RViO6t90ZIfDo+QGjqE/TnIYb40LGssm8CRL5BqkifpSz7VvN7E1XDCgUiR5mHIKFL1aXTA2KSXfXnetGLH4NXynd3g2hsWfJjFPp1qx9+pSKZf0mVeNLrIhUKLfdB9Dz8Z08Wswrsec73OXrQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1728604601; c=relaxed/simple; bh=vZ4m+6+T6wBo/Q/VL8ZZwKE0cBp/C/cfDgA2El8hRjk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pFj9t/h9AUyxGHXRZPSI87JmV6iERfwrVcOad5ELpG25Dr9usTAwBOIcKQuk9JmpU8bGvn4P/7W4RQTqaxgr3cjx7yjTuaJ6yh2KfSOo0Db08CcuNC/xIjI6Z2CufxZvPp3Qim3HgJq9eRnJuqHP0iePWvLErlNTZawCbgZKGKA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net; spf=pass smtp.mailfrom=crustytoothpaste.net; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b=R7veVgtO; arc=none smtp.client-ip=172.105.7.114 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=crustytoothpaste.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (3072-bit key) header.d=crustytoothpaste.net header.i=@crustytoothpaste.net header.b="R7veVgtO" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=crustytoothpaste.net; s=default; t=1728604594; bh=vZ4m+6+T6wBo/Q/VL8ZZwKE0cBp/C/cfDgA2El8hRjk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From:Reply-To: Subject:Date:To:CC:Resent-Date:Resent-From:Resent-To:Resent-Cc: In-Reply-To:References:Content-Type:Content-Disposition; b=R7veVgtOi6BFut9DLrzUJ/q2td8434avEo0iKyUoPxdX+PNT006ySltPznSoBjhHl 3qHyTcWevsICI5XccBw5BdlCnCa/r7/ZE33pOtXbBQ4n8iRI8DVCQQvnFl6YHHxBHZ LTQMGarYGt+jQPHvnRKLsCGLRrd336p62Codf9zy/QMXhUKYAcNFSUWJYLtZuwxj7a dwKyv4+n8smYghofsuUW//Z9iFDdAW7i3kRG0fXC1WJvYwopL5Tkzs5lr64YTrM2iS 09mJ1R3QUDiKB38V4jFcfPdMwcEwyJKpdXiGvHDUMvsZQwORHA59B0T5m9YI7d85VG ZBrHtYPASjb76/5gcc8tBgQIirQAxlK4qMCSSy96BceBXyuVwKSufKzmXroHXZM+fQ +S5ZyzxxqdtKoe3dIKBxyBCtAIHona/mK3OSuDnDnxrisSqKiZbUCP4WGKXkOV9V94 JuoNBj1fsgPFzUesxw63gI6UFCbEKa+7n7OjX+E5o9j7cWtSjcV Received: from tapette.. (ipagstaticip-2d4b363b-56b8-9979-23b8-fd468af1db4c.sdsl.bell.ca [142.112.6.242]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by complex.crustytoothpaste.net (Postfix) with ESMTPSA id 84ADB200C3; Thu, 10 Oct 2024 23:56:34 +0000 (UTC) From: "brian m. carlson" To: Cc: Junio C Hamano , Jeff King Subject: [PATCH 13/13] gitweb: make use of s///r Date: Thu, 10 Oct 2024 23:56:21 +0000 Message-ID: <20241010235621.738239-14-sandals@crustytoothpaste.net> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b In-Reply-To: <20241010235621.738239-1-sandals@crustytoothpaste.net> References: <20241010235621.738239-1-sandals@crustytoothpaste.net> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 In Perl 5.14, released in May 2011, the r modifier was added to the s/// operator to allow it to return the modified string instead of modifying the string in place. This allows to write nicer, more succinct code in several cases, so let's do that here. Signed-off-by: brian m. carlson --- gitweb/gitweb.perl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index c4f92386eb..f0d8fac7ba 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -1188,7 +1188,7 @@ sub evaluate_and_validate_params { if ($search_use_regexp) { $search_regexp = $searchtext; if (!eval { qr/$search_regexp/; 1; }) { - (my $error = $@) =~ s/ at \S+ line \d+.*\n?//; + my $error = $@ =~ s/ at \S+ line \d+.*\n?//r; die_error(400, "Invalid search regexp '$search_regexp'", esc_html($error)); } @@ -2700,7 +2700,7 @@ sub git_cmd { # Try to avoid using this function wherever possible. sub quote_command { return join(' ', - map { my $a = $_; $a =~ s/(['!])/'\\$1'/g; "'$a'" } @_ ); + map { my $a = $_ =~ s/(['!])/'\\$1'/gr; "'$a'" } @_ ); } # get HEAD ref of given project as hash