[arch-commits] Commit in curl/repos/testing-x86_64 (9 files)
Date: Monday, March 9, 2020 @ 13:50:45 Author: eworm Revision: 377214 archrelease: copy trunk to testing-x86_64 Added: curl/repos/testing-x86_64/0001-Revert-pause-force-drain-the-transfer-on-unpause.patch (from rev 377213, curl/trunk/0001-Revert-pause-force-drain-the-transfer-on-unpause.patch) curl/repos/testing-x86_64/0002-pause-force-a-connection-re-check-after-unpausing.patch (from rev 377213, curl/trunk/0002-pause-force-a-connection-re-check-after-unpausing.patch) curl/repos/testing-x86_64/0003-pause-return-early-for-calls-that-don-t-change-pause-state.patch (from rev 377213, curl/trunk/0003-pause-return-early-for-calls-that-don-t-change-pause-state.patch) curl/repos/testing-x86_64/0004-socks4-fix-host-resolve-regression.patch (from rev 377213, curl/trunk/0004-socks4-fix-host-resolve-regression.patch) curl/repos/testing-x86_64/PKGBUILD (from rev 377213, curl/trunk/PKGBUILD) Deleted: curl/repos/testing-x86_64/0001-Revert-pause-force-drain-the-transfer-on-unpause.patch curl/repos/testing-x86_64/0002-pause-force-a-connection-re-check-after-unpausing.patch curl/repos/testing-x86_64/0003-pause-return-early-for-calls-that-don-t-change-pause-state.patch curl/repos/testing-x86_64/PKGBUILD ---+ 0001-Revert-pause-force-drain-the-transfer-on-unpause.patch | 110 0002-pause-force-a-connection-re-check-after-unpausing.patch | 66 ++--- 0003-pause-return-early-for-calls-that-don-t-change-pause-state.patch | 74 ++--- 0004-socks4-fix-host-resolve-regression.patch | 43 +++ PKGBUILD | 131 +- 5 files changed, 235 insertions(+), 189 deletions(-) Deleted: 0001-Revert-pause-force-drain-the-transfer-on-unpause.patch === --- 0001-Revert-pause-force-drain-the-transfer-on-unpause.patch 2020-03-09 13:50:37 UTC (rev 377213) +++ 0001-Revert-pause-force-drain-the-transfer-on-unpause.patch 2020-03-09 13:50:45 UTC (rev 377214) @@ -1,55 +0,0 @@ -From 8aa04e9a24932b830bc5eaf6838dea5a3329341e Mon Sep 17 00:00:00 2001 -From: Daniel Stenberg -Date: Thu, 5 Mar 2020 23:45:36 +0100 -Subject: [PATCH] Revert "pause: force-drain the transfer on unpause" - -This reverts commit fa0216b294af4c7113a9040ca65eefc7fc18ac1c (from #5000) - -Clearly that didn't solve the problem correctly. - -Reported-by: Christopher Reid -Reopens #4966 -Fixes #5044 - lib/easy.c | 1 - - lib/transfer.c | 5 ++--- - 2 files changed, 2 insertions(+), 4 deletions(-) - -diff --git a/lib/easy.c b/lib/easy.c -index 1a6912748..454621076 100644 a/lib/easy.c -+++ b/lib/easy.c -@@ -1033,7 +1033,6 @@ CURLcode curl_easy_pause(struct Curl_easy *data, int action) - to have this handle checked soon */ - if((newstate & (KEEP_RECV_PAUSE|KEEP_SEND_PAUSE)) != - (KEEP_RECV_PAUSE|KEEP_SEND_PAUSE)) { --data->state.drain++; - Curl_expire(data, 0, EXPIRE_RUN_NOW); /* get this handle going again */ - if(data->multi) - Curl_update_timer(data->multi); -diff --git a/lib/transfer.c b/lib/transfer.c -index 827076183..ead8b36db 100644 a/lib/transfer.c -+++ b/lib/transfer.c -@@ -5,7 +5,7 @@ - *| (__| |_| | _ <| |___ - * \___|\___/|_| \_\_| - * -- * Copyright (C) 1998 - 2020, Daniel Stenberg, , et al. -+ * Copyright (C) 1998 - 2019, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms -@@ -1217,8 +1217,7 @@ CURLcode Curl_readwrite(struct connectdata *conn, - else - fd_write = CURL_SOCKET_BAD; - -- if(data->state.drain) { --data->state.drain--; -+ if(conn->data->state.drain) { - select_res |= CURL_CSELECT_IN; - DEBUGF(infof(data, "Curl_readwrite: forcibly told to drain data\n")); - } --- -2.25.1 - Copied: curl/repos/testing-x86_64/0001-Revert-pause-force-drain-the-transfer-on-unpause.patch (from rev 377213, curl/trunk/0001-Revert-pause-force-drain-the-transfer-on-unpause.patch) === --- 0001-Revert-pause-force-drain-the-transfer-on-unpause.patch (rev 0) +++ 0001-Revert-pause-force-drain-the-transfer-on-unpause.patch 2020-03-09 13:50:45 UTC (rev 377214) @@ -0,0 +1,55 @@ +From 8aa04e9a24932b830bc5eaf6838dea5a3329341e Mon Sep 17 00:00:00 2001 +From: Daniel Stenberg +Date: Thu, 5 Mar 2020 23:45:36 +0100 +Subject: [PATCH] Revert "pause: force-drain the transfer on unpause" + +This reverts commit fa0216b294af4c7113a9040ca65eefc7fc18ac1c (from #5000) + +Clearly that didn't solve the problem correctly. + +Reported-by: Christopher Reid +Reopens #4966 +Fixes #5044 +--- + lib/easy.c | 1 - + lib/transfer.c | 5 ++--- + 2 files changed, 2
[arch-commits] Commit in curl/repos/testing-x86_64 (9 files)
Date: Tuesday, February 19, 2019 @ 15:11:42 Author: heftig Revision: 346557 archrelease: copy trunk to testing-x86_64 Added: curl/repos/testing-x86_64/0001-connection_check-restore-original-conn-data-after-th.patch (from rev 346556, curl/trunk/0001-connection_check-restore-original-conn-data-after-th.patch) curl/repos/testing-x86_64/0001-connection_check-set-data-to-the-transfer-doing-the-.patch (from rev 346556, curl/trunk/0001-connection_check-set-data-to-the-transfer-doing-the-.patch) curl/repos/testing-x86_64/0001-multi-remove-verbose-Expire-in-messages.patch (from rev 346556, curl/trunk/0001-multi-remove-verbose-Expire-in-messages.patch) curl/repos/testing-x86_64/0001-singlesocket-fix-the-sincebefore-placement.patch (from rev 346556, curl/trunk/0001-singlesocket-fix-the-sincebefore-placement.patch) curl/repos/testing-x86_64/PKGBUILD (from rev 346556, curl/trunk/PKGBUILD) Deleted: curl/repos/testing-x86_64/0001-connection_check-restore-original-conn-data-after-th.patch curl/repos/testing-x86_64/0001-connection_check-set-data-to-the-transfer-doing-the-.patch curl/repos/testing-x86_64/0001-multi-remove-verbose-Expire-in-messages.patch curl/repos/testing-x86_64/PKGBUILD -+ 0001-connection_check-restore-original-conn-data-after-th.patch | 154 +- 0001-connection_check-set-data-to-the-transfer-doing-the-.patch | 62 ++-- 0001-multi-remove-verbose-Expire-in-messages.patch | 52 +-- 0001-singlesocket-fix-the-sincebefore-placement.patch | 52 +++ PKGBUILD| 139 - 5 files changed, 258 insertions(+), 201 deletions(-) Deleted: 0001-connection_check-restore-original-conn-data-after-th.patch === --- 0001-connection_check-restore-original-conn-data-after-th.patch 2019-02-19 15:10:34 UTC (rev 346556) +++ 0001-connection_check-restore-original-conn-data-after-th.patch 2019-02-19 15:11:42 UTC (rev 346557) @@ -1,77 +0,0 @@ -From 4015fae044ce52a639c9358e22a9e948f287c89f Mon Sep 17 00:00:00 2001 -Message-Id: <4015fae044ce52a639c9358e22a9e948f287c89f.1550326608.git.jan.steff...@gmail.com> -From: Jay Satiro -Date: Mon, 11 Feb 2019 23:00:00 -0500 -Subject: [PATCH] connection_check: restore original conn->data after the check - -- Save the original conn->data before it's changed to the specified - data transfer for the connection check and then restore it afterwards. - -This is a follow-up to 38d8e1b 2019-02-11. - -History: - -It was discovered a month ago that before checking whether to extract a -dead connection that that connection should be associated with a "live" -transfer for the check (ie original conn->data ignored and set to the -passed in data). A fix was landed in 54b201b which did that and also -cleared conn->data after the check. The original conn->data was not -restored, so presumably it was thought that a valid conn->data was no -longer needed. - -Several days later it was discovered that a valid conn->data was needed -after the check and follow-up fix was landed in bbae24c which partially -reverted the original fix and attempted to limit the scope of when -conn->data was changed to only when pruning dead connections. In that -case conn->data was not cleared and the original conn->data not -restored. - -A month later it was discovered that the original fix was somewhat -correct; a "live" transfer is needed for the check in all cases -because original conn->data could be null which could cause a bad deref -at arbitrary points in the check. A fix was landed in 38d8e1b which -expanded the scope to all cases. conn->data was not cleared and the -original conn->data not restored. - -A day later it was discovered that not restoring the original conn->data -may lead to busy loops in applications that use the event interface, and -given this observation it's a pretty safe assumption that there is some -code path that still needs the original conn->data. This commit is the -follow-up fix for that, it restores the original conn->data after the -connection check. - -Assisted-by: tho...@users.noreply.github.com -Reported-by: tho...@users.noreply.github.com - -Fixes https://github.com/curl/curl/issues/3542 -Closes #3559 - lib/url.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/lib/url.c b/lib/url.c -index bc47685db..46c8fb5fb 100644 a/lib/url.c -+++ b/lib/url.c -@@ -964,8 +964,10 @@ static bool extract_if_dead(struct connectdata *conn, - /* The protocol has a special method for checking the state of the - connection. Use it to check if the connection is dead. */ - unsigned int state; -+ struct Curl_easy *olddata = conn->data; - conn->data = data; /* use this transfer for now */ - state = conn->handler->connection_check(conn, CONNCHECK_ISDEAD); -+