* [bug#40663] [PATCH] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle @ 2020-04-16 15:19 R Veera Kumar 2020-04-16 21:47 ` Danny Milosavljevic 2020-04-17 16:51 ` [bug#40663] [PATCH v2] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle file R Veera Kumar 0 siblings, 2 replies; 6+ messages in thread From: R Veera Kumar @ 2020-04-16 15:19 UTC (permalink / raw) To: 40663; +Cc: R Veera Kumar * gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/maths.scm (libqalculate)[source]: Use it. --- gnu/local.mk | 1 + gnu/packages/maths.scm | 4 ++- .../libqalculate-3.8.0-libcurl-ssl-fix.patch | 29 +++++++++++++++++++ 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch diff --git a/gnu/local.mk b/gnu/local.mk index 952fc55df4..ece99b892f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1144,6 +1144,7 @@ dist_patch_DATA = \ %D%/packages/patches/libmpeg2-global-symbol-test.patch \ %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \ %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \ + %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch \ %D%/packages/patches/libsndfile-armhf-type-checks.patch \ %D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \ %D%/packages/patches/libsndfile-CVE-2017-8362.patch \ diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 9930f491a2..7db2b31012 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -5416,7 +5416,9 @@ researchers and developers alike to get started on SAT.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1vbaza9c7159xf2ym90l0xkyj2mp6c3hbghhsqn29yvz08fda9df")))) + (base32 "1vbaza9c7159xf2ym90l0xkyj2mp6c3hbghhsqn29yvz08fda9df")) + (patches + (search-patches "libqalculate-3.8.0-libcurl-ssl-fix.patch")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) diff --git a/gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch b/gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch new file mode 100644 index 0000000000..d13c9feaf7 --- /dev/null +++ b/gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch @@ -0,0 +1,29 @@ +Author: R Veera Kumar 2020 <vkor@vkten.in> +Desc: + 1) Fixes download of exchange rates by specifying SSL CA certificates bundle + while using libcurl (Since libcurl in guix is compiled without using a + default CA cert bundle file) + 2) Like above fix for using https site in another case + +diff -uNr libqalculate-3.8.0/libqalculate/Calculator-definitions.cc libqalculate-3.8.0.new/libqalculate/Calculator-definitions.cc +--- libqalculate-3.8.0/libqalculate/Calculator-definitions.cc 2020-02-16 15:08:29.000000000 +0530 ++++ libqalculate-3.8.0.new/libqalculate/Calculator-definitions.cc 2020-04-16 18:07:26.839310304 +0530 +@@ -3610,6 +3610,7 @@ + curl = curl_easy_init(); + if(!curl) {return false;} + curl_easy_setopt(curl, CURLOPT_URL, getExchangeRatesUrl(1).c_str()); ++ curl_easy_setopt(curl, CURLOPT_CAINFO, "/etc/ssl/certs/ca-certificates.crt"); + curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer); +diff -uNr libqalculate-3.8.0/libqalculate/util.cc libqalculate-3.8.0.new/libqalculate/util.cc +--- libqalculate-3.8.0/libqalculate/util.cc 2019-12-14 22:56:45.000000000 +0530 ++++ libqalculate-3.8.0.new/libqalculate/util.cc 2020-04-16 18:06:55.930816131 +0530 +@@ -769,6 +769,7 @@ + curl = curl_easy_init(); + if(!curl) {return -1;} + curl_easy_setopt(curl, CURLOPT_URL, "https://qalculate.github.io/CURRENT_VERSIONS"); ++ curl_easy_setopt(curl, CURLOPT_CAINFO, "/etc/ssl/certs/ca-certificates.crt"); + curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer); -- 2.26.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [bug#40663] [PATCH] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle 2020-04-16 15:19 [bug#40663] [PATCH] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle R Veera Kumar @ 2020-04-16 21:47 ` Danny Milosavljevic 2020-04-17 16:51 ` [bug#40663] [PATCH v2] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle file R Veera Kumar 1 sibling, 0 replies; 6+ messages in thread From: Danny Milosavljevic @ 2020-04-16 21:47 UTC (permalink / raw) To: R Veera Kumar; +Cc: 40663 [-- Attachment #1: Type: text/plain, Size: 213 bytes --] Hi Veera, hmm, what about using getenv("SSL_CERT_FILE") ? The following environment variables have been set automatically: SSL_CERT_DIR=/etc/ssl/certs SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#40663] [PATCH v2] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle file 2020-04-16 15:19 [bug#40663] [PATCH] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle R Veera Kumar 2020-04-16 21:47 ` Danny Milosavljevic @ 2020-04-17 16:51 ` R Veera Kumar 2020-04-19 18:30 ` Danny Milosavljevic 1 sibling, 1 reply; 6+ messages in thread From: R Veera Kumar @ 2020-04-17 16:51 UTC (permalink / raw) To: 40663; +Cc: R Veera Kumar * gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/maths.scm (libqalculate)[source]: Use it. --- Changes in v2: - Use getenv to get path of CA cert bundle file - Include fix for missed exchange urls --- gnu/local.mk | 1 + gnu/packages/maths.scm | 4 +- .../libqalculate-3.8.0-libcurl-ssl-fix.patch | 53 +++++++++++++++++++ 3 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch diff --git a/gnu/local.mk b/gnu/local.mk index af79f9afed..fb0454fd45 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1144,6 +1144,7 @@ dist_patch_DATA = \ %D%/packages/patches/libmpeg2-global-symbol-test.patch \ %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \ %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \ + %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch \ %D%/packages/patches/libsndfile-armhf-type-checks.patch \ %D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \ %D%/packages/patches/libsndfile-CVE-2017-8362.patch \ diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 9930f491a2..7db2b31012 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -5416,7 +5416,9 @@ researchers and developers alike to get started on SAT.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1vbaza9c7159xf2ym90l0xkyj2mp6c3hbghhsqn29yvz08fda9df")))) + (base32 "1vbaza9c7159xf2ym90l0xkyj2mp6c3hbghhsqn29yvz08fda9df")) + (patches + (search-patches "libqalculate-3.8.0-libcurl-ssl-fix.patch")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) diff --git a/gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch b/gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch new file mode 100644 index 0000000000..b638963874 --- /dev/null +++ b/gnu/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch @@ -0,0 +1,53 @@ +Author: R Veera Kumar 2020 <vkor@vkten.in> +Desc: + 1) Fixes download of exchange rates by specifying SSL CA certificates bundle + file while using libcurl (Since libcurl in guix is compiled without using + a default CA cert bundle file) + 2) Like above fix for using https site in another case + +diff -uNr libqalculate-3.8.0/libqalculate/Calculator-definitions.cc libqalculate-3.8.0.new/libqalculate/Calculator-definitions.cc +--- libqalculate-3.8.0/libqalculate/Calculator-definitions.cc 2020-02-16 15:08:29.000000000 +0530 ++++ libqalculate-3.8.0.new/libqalculate/Calculator-definitions.cc 2020-04-17 21:27:36.386039369 +0530 +@@ -3610,6 +3610,7 @@ + curl = curl_easy_init(); + if(!curl) {return false;} + curl_easy_setopt(curl, CURLOPT_URL, getExchangeRatesUrl(1).c_str()); ++ curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE")); + curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer); +@@ -3663,6 +3664,7 @@ + + sbuffer = ""; + curl_easy_setopt(curl, CURLOPT_URL, getExchangeRatesUrl(2).c_str()); ++ curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE")); + curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer); +@@ -3687,6 +3689,7 @@ + + sbuffer = ""; + curl_easy_setopt(curl, CURLOPT_URL, getExchangeRatesUrl(3).c_str()); ++ curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE")); + curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer); +@@ -3710,6 +3713,7 @@ + + sbuffer = ""; + curl_easy_setopt(curl, CURLOPT_URL, getExchangeRatesUrl(4).c_str()); ++ curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE")); + curl_easy_setopt(curl, CURLOPT_TIMEOUT, (timeout > 4 && n <= 0) ? 4 : timeout); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer); +diff -uNr libqalculate-3.8.0/libqalculate/util.cc libqalculate-3.8.0.new/libqalculate/util.cc +--- libqalculate-3.8.0/libqalculate/util.cc 2019-12-14 22:56:45.000000000 +0530 ++++ libqalculate-3.8.0.new/libqalculate/util.cc 2020-04-17 21:12:17.259674572 +0530 +@@ -769,6 +769,7 @@ + curl = curl_easy_init(); + if(!curl) {return -1;} + curl_easy_setopt(curl, CURLOPT_URL, "https://qalculate.github.io/CURRENT_VERSIONS"); ++ curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE")); + curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer); -- 2.26.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [bug#40663] [PATCH v2] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle file 2020-04-17 16:51 ` [bug#40663] [PATCH v2] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle file R Veera Kumar @ 2020-04-19 18:30 ` Danny Milosavljevic 2020-04-20 1:19 ` R Veera Kumar 0 siblings, 1 reply; 6+ messages in thread From: Danny Milosavljevic @ 2020-04-19 18:30 UTC (permalink / raw) To: R Veera Kumar; +Cc: 40663 [-- Attachment #1: Type: text/plain, Size: 122 bytes --] Hi Veera, thanks! What happens if SSL_CERT_FILE is unset? Does it crash with a segfault or just fail regularily? [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#40663] [PATCH v2] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle file 2020-04-19 18:30 ` Danny Milosavljevic @ 2020-04-20 1:19 ` R Veera Kumar 2020-04-20 18:06 ` bug#40663: " Danny Milosavljevic 0 siblings, 1 reply; 6+ messages in thread From: R Veera Kumar @ 2020-04-20 1:19 UTC (permalink / raw) To: Danny Milosavljevic; +Cc: 40663 On Sun, Apr 19, 2020 at 08:30:05PM +0200, Danny Milosavljevic wrote: > Hi Veera, > > thanks! > > What happens if SSL_CERT_FILE is unset? Does it crash with a segfault or just > fail regularily? If SSL_CERT_FILE is unset, it does not segfaults. It just fails saying unable to download the urls. So can the patch be accepted? Veera ^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#40663: [PATCH v2] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle file 2020-04-20 1:19 ` R Veera Kumar @ 2020-04-20 18:06 ` Danny Milosavljevic 0 siblings, 0 replies; 6+ messages in thread From: Danny Milosavljevic @ 2020-04-20 18:06 UTC (permalink / raw) To: R Veera Kumar; +Cc: 40663-done [-- Attachment #1: Type: text/plain, Size: 101 bytes --] Hi Veera, thanks! Pushed to guix master as commit 9b3c231e3c144de11d670dff362be3afdd0f4d27. [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-04-20 18:07 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-04-16 15:19 [bug#40663] [PATCH] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle R Veera Kumar 2020-04-16 21:47 ` Danny Milosavljevic 2020-04-17 16:51 ` [bug#40663] [PATCH v2] gnu: libqalculate: Fixes for libcurl gnutls CA cert bundle file R Veera Kumar 2020-04-19 18:30 ` Danny Milosavljevic 2020-04-20 1:19 ` R Veera Kumar 2020-04-20 18:06 ` bug#40663: " Danny Milosavljevic
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).