From e885d2dcccb49b45bd83e62f590ded1e6783ccd7 Mon Sep 17 00:00:00 2001 From: jc_gargma Date: Fri, 12 Jan 2024 13:00:23 -0800 Subject: Updated to 1.44.2 Also fixed systemd services being placed at /usr/false --- ...y-Make-curl-timeout-callback-non-repeatin.patch | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 0001-connectivity-Make-curl-timeout-callback-non-repeatin.patch (limited to '0001-connectivity-Make-curl-timeout-callback-non-repeatin.patch') diff --git a/0001-connectivity-Make-curl-timeout-callback-non-repeatin.patch b/0001-connectivity-Make-curl-timeout-callback-non-repeatin.patch new file mode 100644 index 0000000..f3f547c --- /dev/null +++ b/0001-connectivity-Make-curl-timeout-callback-non-repeatin.patch @@ -0,0 +1,34 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Tatsuyuki Ishi +Date: Fri, 13 Oct 2023 16:46:09 +0000 +Subject: [PATCH] connectivity: Make curl timeout callback non-repeating. + +The CURLMOPT_TIMERFUNCTION manual says: + Your callback function timer_callback should install a *non-repeating* + timer with an expire time of timeout_ms milliseconds. + +The previous callback returned G_SOURCE_CONTINUE, resulting in a repeating +firing callback. curl tweaked some internals in v8.4.0 and started giving +0 timeouts, which caused this to wreak havoc. + +Fix it by making the callback non-repeating as specified by the API contract. +--- + src/core/nm-connectivity.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/core/nm-connectivity.c b/src/core/nm-connectivity.c +index 92de44f17d99..d8b0004c381f 100644 +--- a/src/core/nm-connectivity.c ++++ b/src/core/nm-connectivity.c +@@ -406,9 +406,10 @@ _con_curl_timeout_cb(gpointer user_data) + { + NMConnectivityCheckHandle *cb_data = user_data; + ++ cb_data->concheck.curl_timer = 0; + _con_curl_check_connectivity(cb_data->concheck.curl_mhandle, CURL_SOCKET_TIMEOUT, 0); + _complete_queued(cb_data->self); +- return G_SOURCE_CONTINUE; ++ return G_SOURCE_REMOVE; + } + + static int -- cgit v1.2.1