Date: Wednesday, November 7, 2018 @ 23:35:25 Author: eworm Revision: 403210
upgpkg: libmicrohttpd 0.9.60-1 new upstream release Added: libmicrohttpd/trunk/0001-fix-tests-with-curl.patch Modified: libmicrohttpd/trunk/PKGBUILD --------------------------------+ 0001-fix-tests-with-curl.patch | 50 +++++++++++++++++++++++++++++++++++++++ PKGBUILD | 17 ++++++++++--- 2 files changed, 63 insertions(+), 4 deletions(-) Added: 0001-fix-tests-with-curl.patch =================================================================== --- 0001-fix-tests-with-curl.patch (rev 0) +++ 0001-fix-tests-with-curl.patch 2018-11-07 23:35:25 UTC (rev 403210) @@ -0,0 +1,50 @@ +From 7ae5cf2b850a9fcdc5628a09c75a250f8bd6f293 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <[email protected]> +Date: Thu, 8 Nov 2018 00:15:29 +0100 +Subject: [PATCH 1/1] fix tests with curl + +Starting with curl 7.62.0 some tests fail. The commit in question is +46e16406 [0] ("url: use the URL API internally as well"). + +Analyzing the changed behavior reveals that the url given to +curl_easy_setopt() with CURLOPT_URL is no longer encoded. Looking at the +documentation [1] this behavior is correct, the "parameter should be a +char * to a zero terminated string which must be URL-encoded [...]". + +So let's just give a valid url... + +[0] https://github.com/curl/curl/commit/46e164069d1a5230e4e64cbd2ff46c46cce056bb +[1] https://curl.haxx.se/libcurl/c/CURLOPT_URL.html + +Signed-off-by: Christian Hesse <[email protected]> +--- + src/testcurl/test_digestauth.c | 2 +- + src/testcurl/test_digestauth_with_arguments.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/testcurl/test_digestauth.c b/src/testcurl/test_digestauth.c +index 48c7a87a..89076608 100644 +--- a/src/testcurl/test_digestauth.c ++++ b/src/testcurl/test_digestauth.c +@@ -218,7 +218,7 @@ testDigestAuth () + { MHD_stop_daemon (d); return 32; } + port = (int)dinfo->port; + } +- sprintf(url, "http://127.0.0.1:%d/bar%%20 foo?a=bü%%20", port); ++ sprintf(url, "http://127.0.0.1:%d/bar%20foo%3Fkey%3Dvalue", port); + c = curl_easy_init (); + curl_easy_setopt (c, CURLOPT_URL, url); + curl_easy_setopt (c, CURLOPT_WRITEFUNCTION, ©Buffer); +diff --git a/src/testcurl/test_digestauth_with_arguments.c b/src/testcurl/test_digestauth_with_arguments.c +index 107d2256..17d0f7a2 100644 +--- a/src/testcurl/test_digestauth_with_arguments.c ++++ b/src/testcurl/test_digestauth_with_arguments.c +@@ -213,7 +213,7 @@ testDigestAuth () + { MHD_stop_daemon (d); return 32; } + port = (int)dinfo->port; + } +- sprintf(url, "http://127.0.0.1:%d/foo?key=value", port); ++ sprintf(url, "http://127.0.0.1:%d/bar%20foo%3Fkey%3Dvalue", port); + c = curl_easy_init (); + curl_easy_setopt (c, CURLOPT_URL, url); + curl_easy_setopt (c, CURLOPT_WRITEFUNCTION, ©Buffer); Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-11-07 23:05:54 UTC (rev 403209) +++ PKGBUILD 2018-11-07 23:35:25 UTC (rev 403210) @@ -5,7 +5,7 @@ # Contributor: Mathias Rohnstock <[email protected]> pkgname=libmicrohttpd -pkgver=0.9.59 +pkgver=0.9.60 pkgrel=1 pkgdesc="a small C library that is supposed to make it easy to run an HTTP server as part of another application." arch=('x86_64') @@ -15,10 +15,19 @@ checkdepends=('curl') validpgpkeys=('289FE99E138CF6D473A3F0CFBF7AC4A5EAC2BAF4' # Evgeny Grin (Karlson2k) <[email protected]> 'D8423BCB326C7907033929C7939E6BE1E29FC3CC') # Christian Grothoff <[email protected]> -source=("https://ftp.gnu.org/gnu/libmicrohttpd/$pkgname-$pkgver.tar.gz"{,.sig}) -sha256sums=('9b9ccd7d0b11b0e179f1f58dc2caa3e0c62c8609e1e1dc7dcaadf941b67d923c' - 'SKIP') +source=("https://ftp.gnu.org/gnu/libmicrohttpd/$pkgname-$pkgver.tar.gz"{,.sig} + '0001-fix-tests-with-curl.patch') +sha256sums=('cd0e5d3f95a9e55ef7cdf4d0530e997ba00b8411af9149d9287db785d729c471' + 'SKIP' + '750224c97e9a7f504869bd1e54d58dcb447e35bc831812adeb3f8f8edfb88cbe') +prepare() { + cd ${pkgname}-${pkgver} + + # fix tests with curl + patch -Np1 < ../0001-fix-tests-with-curl.patch +} + build() { cd ${pkgname}-${pkgver} ./configure \
