curl: upgraded package to upstream

Upgraded net-misc/curl to version 7.79.1 on amd64, arm64

BUG=b/202379404
TEST=presubmit,validation tests
RELEASE_NOTE=Upgraded net-misc/curl to 7.79.1. This resolved CVE-2021-22945.

Change-Id: I168d0e9f3d4212c4707b057739dc533eaae6b1f6
Reviewed-on: https://cos-review.googlesource.com/c/third_party/overlays/portage-stable/+/23730
Reviewed-by: Sam Kunz <samkunz@google.com>
Reviewed-by: Vaibhav Rustagi <vaibhavrustagi@google.com>
Tested-by: Cusky Presubmit Bot <presubmit@cos-infra-prod.iam.gserviceaccount.com>
diff --git a/metadata/md5-cache/net-misc/curl-7.78.0-r1 b/metadata/md5-cache/net-misc/curl-7.79.1
similarity index 98%
rename from metadata/md5-cache/net-misc/curl-7.78.0-r1
rename to metadata/md5-cache/net-misc/curl-7.79.1
index d5d8d37..0b6e3dd 100644
--- a/metadata/md5-cache/net-misc/curl-7.78.0-r1
+++ b/metadata/md5-cache/net-misc/curl-7.79.1
@@ -11,6 +11,6 @@
 REQUIRED_USE=winssl? ( elibc_Winnt ) threads? ( !adns ) ssl? ( ^^ ( curl_ssl_gnutls curl_ssl_mbedtls curl_ssl_nss curl_ssl_openssl curl_ssl_winssl ) )
 RESTRICT=!test? ( test )
 SLOT=0
-SRC_URI=https://curl.haxx.se/download/curl-7.78.0.tar.xz
+SRC_URI=https://curl.haxx.se/download/curl-7.79.1.tar.xz
 _eclasses_=autotools	d0e5375d47f4c809f406eb892e531513	libtool	f143db5a74ccd9ca28c1234deffede96	multibuild	40fe59465edacd730c644ec2bc197809	multilib	2477ebe553d3e4d2c606191fe6c33602	multilib-build	1979aa0ff4d356d32507ca4650d9f37d	multilib-minimal	8bddda43703ba94d8341f4e247f97566	prefix	e51c7882b7b721e54e684f7eb143cbfe	toolchain-funcs	605c126bed8d87e4378d5ff1645330cb
-_md5_=14a333f0d6e85926ad9859cf9b5e01c6
+_md5_=efd4646ee8f24d83833c8d54ce820b09
diff --git a/net-misc/curl/Manifest b/net-misc/curl/Manifest
index 4b880df..6ee95e4 100644
--- a/net-misc/curl/Manifest
+++ b/net-misc/curl/Manifest
@@ -1,2 +1,3 @@
-DIST curl-7.77.0.tar.xz 2439336 BLAKE2B 433b3179dcf2c3363514b72bf9c54286873d8e5559b33e543ba8f3e7df25a619c5be13a8aacb9361c4464b646af4d1fb214d4de57a17f3de7e8f379777214d13 SHA512 aef92a0e3f8ce8491b258a9a1c4dcea3c07c29b139a1f68f08619caa0295cfde76335d2dfb9cdf434525daea7dd05d8acd22f203f5ccc7735bd317964ec1da76
 DIST curl-7.78.0.tar.xz 2440640 BLAKE2B 0422071ce22d38b89652c702989674a2257dd18b05004245c4f2d7494ccdd24b5b52f330629ce6a411a059d5990e8c879cbbdf23d873b881141f9d2b9ad07f7f SHA512 f72e822a0b5e28320ef547c7a441c07f3b4870579a70ab4c428751baba435a1385cb89a22b9ed4b84a7fafecf620f155911e4131e3463ec1bdad80ecde47bb7a
+DIST curl-7.79.0.tar.xz 2463072 BLAKE2B c3a8a60d3c04965272b1a439a4719cfaca903daaecd6265869b9188d1b6b13be63817b9daa77260673d67330baa3d9c2d917274f939cdadc467ac64d8fcf3203 SHA512 68bccba61f18de9f94c311b0d92cfa6572bb7e55e8773917c13b25203164a5a9f4ef6b8ad84a14d3d5dcb286271bf18c3dd84c4ca353866763c726f9defce808
+DIST curl-7.79.1.tar.xz 2465212 BLAKE2B 2b694f96661c0aa0a136fdae4159e0ca8e811557c5a1f0b47cccaaad122f3ddbdaa6450c3835290955baf9357e872ee105a8cb0912064af3d3e38d16beb124ad SHA512 1edb71647a7f4dbb070baf1a019b4751aefeda793ff523c504410bb5cc74e5bffc52f20dd889697d1585f9ca3c4e81b1a9caadd182c30c8358ffd25f33e4db4d
diff --git a/net-misc/curl/curl-7.78.0-r1.ebuild b/net-misc/curl/curl-7.79.1.ebuild
similarity index 100%
rename from net-misc/curl/curl-7.78.0-r1.ebuild
rename to net-misc/curl/curl-7.79.1.ebuild
diff --git a/net-misc/curl/files/curl-7.79.0-http-3digit-response-code.patch b/net-misc/curl/files/curl-7.79.0-http-3digit-response-code.patch
new file mode 100644
index 0000000..4fa7011
--- /dev/null
+++ b/net-misc/curl/files/curl-7.79.0-http-3digit-response-code.patch
@@ -0,0 +1,47 @@
+https://github.com/curl/curl/commit/beb8990d934a01acf103871e463d4e61afc9ded2
+
+From: Daniel Stenberg <daniel@haxx.se>
+Date: Fri, 17 Sep 2021 16:31:25 +0200
+Subject: [PATCH] http: fix the broken >3 digit response code detection
+
+When the "reason phrase" in the HTTP status line starts with a digit,
+that was treated as the forth response code digit and curl would claim
+the response to be non-compliant.
+
+Added test 1466 to verify this case.
+
+Regression brought by 5dc594e44f73b17
+Reported-by: Glenn de boer
+Fixes #7738
+Closes #7739
+--- a/lib/http.c
++++ b/lib/http.c
+@@ -4232,9 +4232,9 @@ CURLcode Curl_http_readwrite_headers(struct Curl_easy *data,
+         char separator;
+         char twoorthree[2];
+         int httpversion = 0;
+-        int digit4 = -1; /* should remain untouched to be good */
++        char digit4 = 0;
+         nc = sscanf(HEADER1,
+-                    " HTTP/%1d.%1d%c%3d%1d",
++                    " HTTP/%1d.%1d%c%3d%c",
+                     &httpversion_major,
+                     &httpversion,
+                     &separator,
+@@ -4250,13 +4250,13 @@ CURLcode Curl_http_readwrite_headers(struct Curl_easy *data,
+ 
+         /* There can only be a 4th response code digit stored in 'digit4' if
+            all the other fields were parsed and stored first, so nc is 5 when
+-           digit4 is not -1 */
+-        else if(digit4 != -1) {
++           digit4 a digit */
++        else if(ISDIGIT(digit4)) {
+           failf(data, "Unsupported response code in HTTP response");
+           return CURLE_UNSUPPORTED_PROTOCOL;
+         }
+ 
+-        if((nc == 4) && (' ' == separator)) {
++        if((nc >= 4) && (' ' == separator)) {
+           httpversion += 10 * httpversion_major;
+           switch(httpversion) {
+           case 10:
diff --git a/net-misc/curl/files/curl-7.79.0-http2-connection-data.patch b/net-misc/curl/files/curl-7.79.0-http2-connection-data.patch
new file mode 100644
index 0000000..bdb1484
--- /dev/null
+++ b/net-misc/curl/files/curl-7.79.0-http2-connection-data.patch
@@ -0,0 +1,43 @@
+https://github.com/curl/curl/commit/901804ef95777b8e735a55b77f8dd630a58c575b
+
+From: Daniel Stenberg <daniel@haxx.se>
+Date: Thu, 16 Sep 2021 08:50:54 +0200
+Subject: [PATCH] Curl_http2_setup: don't change connection data on repeat
+ invokes
+
+Regression from 3cb8a748670ab88c (releasde in 7.79.0). That change moved
+transfer oriented inits to before the check but also erroneously moved a
+few connection oriented ones, which causes problems.
+
+Reported-by: Evangelos Foutras
+Fixes #7730
+Closes #7731
+--- a/lib/http2.c
++++ b/lib/http2.c
+@@ -2221,12 +2221,6 @@ CURLcode Curl_http2_setup(struct Curl_easy *data,
+   stream->mem = data->state.buffer;
+   stream->len = data->set.buffer_size;
+ 
+-  httpc->inbuflen = 0;
+-  httpc->nread_inbuf = 0;
+-
+-  httpc->pause_stream_id = 0;
+-  httpc->drain_total = 0;
+-
+   multi_connchanged(data->multi);
+   /* below this point only connection related inits are done, which only needs
+      to be done once per connection */
+@@ -2252,6 +2246,12 @@ CURLcode Curl_http2_setup(struct Curl_easy *data,
+   conn->httpversion = 20;
+   conn->bundle->multiuse = BUNDLE_MULTIPLEX;
+ 
++  httpc->inbuflen = 0;
++  httpc->nread_inbuf = 0;
++
++  httpc->pause_stream_id = 0;
++  httpc->drain_total = 0;
++
+   infof(data, "Connection state changed (HTTP/2 confirmed)");
+ 
+   return CURLE_OK;
+
diff --git a/net-misc/curl/metadata.xml b/net-misc/curl/metadata.xml
index 7ab1ec9..4846113 100644
--- a/net-misc/curl/metadata.xml
+++ b/net-misc/curl/metadata.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
 	<maintainer type="person">
 		<email>blueness@gentoo.org</email>
@@ -17,9 +17,7 @@
 		<flag name="mbedtls">Enable mbedtls ssl backend</flag>
 		<flag name="nghttp3">Enable HTTP/3.0 support using <pkg>net-libs/nghttp3</pkg> and <pkg>net-libs/ngtcp2</pkg></flag>
 		<flag name="quiche">Enable HTTP/3.0 support using <pkg>net-libs/quiche</pkg></flag>
-		<flag name="metalink">Enable metalink support</flag>
 		<flag name="nss">Enable nss ssl backend</flag>
-		<flag name="ntlm">Enable ntlm support</flag>
 		<flag name="openssl">Enable openssl ssl backend</flag>
 		<flag name="pop3">Enable Post Office Protocol 3 support</flag>
 		<flag name="progress-meter">Enable the progress meter</flag>