From a6b50e409c2493524050f890afccb920b9c03f09 Mon Sep 17 00:00:00 2001 From: Giovanni Mariani Date: Fri, 20 Apr 2018 19:50:37 +0200 Subject: [PATCH] Updated to release 7.59.0, little fix for BReqs, dropped P8 (upstreamed) and rediffed P0 and P2 --- .abf.yml | 6 +- ...547002b4d897c14364661ca4e2e5d0b80006.patch | 92 ------------------- ...4.1-debug.patch => curl-7.59.0-debug.patch | 31 ++----- ...ltilib.patch => curl-7.59.0-multilib.patch | 13 +-- curl.spec | 62 ++++++------- 5 files changed, 48 insertions(+), 156 deletions(-) delete mode 100644 6208547002b4d897c14364661ca4e2e5d0b80006.patch rename curl-7.54.1-debug.patch => curl-7.59.0-debug.patch (67%) rename curl-7.30.0-multilib.patch => curl-7.59.0-multilib.patch (59%) diff --git a/.abf.yml b/.abf.yml index 15ffcec..9021ab5 100644 --- a/.abf.yml +++ b/.abf.yml @@ -1,5 +1,3 @@ sources: - curl-7.54.0.tar.bz2: e1cc251508e98bc5a8b9d5c40d8a4f6e48465d1c - curl-7.54.0.tar.bz2.asc: 75a2beaef349af223bc1049f4dfa758cee4a7175 - curl-7.54.1.tar.lzma: 5e549585a3e9746bd672f52cea2a7ea4936021ef - curl-7.54.1.tar.lzma.asc: d7797e8036a01acab17ebf0a53adf2bb1ed1235e + curl-7.59.0.tar.xz: f6ec54869dce33abcba4e6d919165fe3c9e1dff5 + curl-7.59.0.tar.xz.asc: b28c44b1ec99b72d496ee064c1f566cbb5dd36bc diff --git a/6208547002b4d897c14364661ca4e2e5d0b80006.patch b/6208547002b4d897c14364661ca4e2e5d0b80006.patch deleted file mode 100644 index 3a80cc4..0000000 --- a/6208547002b4d897c14364661ca4e2e5d0b80006.patch +++ /dev/null @@ -1,92 +0,0 @@ -From 6208547002b4d897c14364661ca4e2e5d0b80006 Mon Sep 17 00:00:00 2001 -From: Daniel Stenberg -Date: Sun, 18 Jun 2017 17:54:55 +0200 -Subject: [PATCH] PIPELINING_SERVER_BL: cleanup the internal list use - -The list was freed incorrectly since the llist refactor of -cbae73e1dd959. Added test 1550 to verify that it works and avoid future -regressions. - -Reported-by: Pascal Terjan - -Fixes #1584 -Closes #1585 ---- - lib/pipeline.c | 37 +++++++++++++++---------------------- - tests/data/Makefile.inc | 1 + - tests/data/test1550 | 29 +++++++++++++++++++++++++++++ - tests/libtest/Makefile.inc | 8 ++++++++ - tests/libtest/lib1550.c | 39 +++++++++++++++++++++++++++++++++++++++ - 5 files changed, 92 insertions(+), 22 deletions(-) - create mode 100644 tests/data/test1550 - create mode 100644 tests/libtest/lib1550.c - -diff --git a/lib/pipeline.c b/lib/pipeline.c -index b8d2037452..4d41b04139 100644 ---- a/lib/pipeline.c -+++ b/lib/pipeline.c -@@ -230,28 +230,27 @@ CURLMcode Curl_pipeline_set_site_blacklist(char **sites, - return CURLM_OK; - } - -+struct blacklist_node { -+ struct curl_llist_element list; -+ char server_name[1]; -+}; -+ - bool Curl_pipeline_server_blacklisted(struct Curl_easy *handle, - char *server_name) - { - if(handle->multi && server_name) { -- struct curl_llist *blacklist = -+ struct curl_llist *list = - Curl_multi_pipelining_server_bl(handle->multi); - -- if(blacklist) { -- struct curl_llist_element *curr; -- -- curr = blacklist->head; -- while(curr) { -- char *bl_server_name; -- -- bl_server_name = curr->ptr; -- if(strncasecompare(bl_server_name, server_name, -- strlen(bl_server_name))) { -- infof(handle, "Server %s is blacklisted\n", server_name); -- return TRUE; -- } -- curr = curr->next; -+ struct curl_llist_element *e = list->head; -+ while(e) { -+ struct blacklist_node *bl = (struct blacklist_node *)e; -+ if(strncasecompare(bl->server_name, server_name, -+ strlen(bl->server_name))) { -+ infof(handle, "Server %s is blacklisted\n", server_name); -+ return TRUE; - } -+ e = e->next; - } - - DEBUGF(infof(handle, "Server %s is not blacklisted\n", server_name)); -@@ -259,11 +258,6 @@ bool Curl_pipeline_server_blacklisted(struct Curl_easy *handle, - return FALSE; - } - --struct blacklist_node { -- struct curl_llist_element list; -- char server_name[1]; --}; -- - CURLMcode Curl_pipeline_set_server_blacklist(char **servers, - struct curl_llist *list) - { -@@ -286,8 +280,7 @@ CURLMcode Curl_pipeline_set_server_blacklist(char **servers, - } - strcpy(n->server_name, *servers); - -- Curl_llist_insert_next(list, list->tail, n->server_name, -- &n->list); -+ Curl_llist_insert_next(list, list->tail, n, &n->list); - servers++; - } - } diff --git a/curl-7.54.1-debug.patch b/curl-7.59.0-debug.patch similarity index 67% rename from curl-7.54.1-debug.patch rename to curl-7.59.0-debug.patch index b21eb8e..287b2a7 100644 --- a/curl-7.54.1-debug.patch +++ b/curl-7.59.0-debug.patch @@ -1,18 +1,7 @@ -From 6710648c2b270c9ce68a7d9f1bba1222c7be8b58 Mon Sep 17 00:00:00 2001 -From: Kamil Dudka -Date: Wed, 31 Oct 2012 11:38:30 +0100 -Subject: [PATCH] prevent configure script from discarding -g in CFLAGS (#496778) - ---- - configure | 13 +++---------- - m4/curl-compilers.m4 | 13 +++---------- - 2 files changed, 6 insertions(+), 20 deletions(-) - -diff --git a/configure b/configure -index 8f079a3..53b4774 100755 ---- a/configure -+++ b/configure -@@ -16006,18 +16006,11 @@ $as_echo "yes" >&6; } +diff -rupN curl-7.59.0.old/configure curl-7.59.0/configure +--- curl-7.59.0.old/configure 2018-03-12 23:47:13.000000000 +0100 ++++ curl-7.59.0/configure 2018-04-16 19:08:33.190743720 +0200 +@@ -16524,18 +16524,11 @@ $as_echo "yes" >&6; } gccvhi=`echo $gccver | cut -d . -f1` gccvlo=`echo $gccver | cut -d . -f2` compiler_num=`(expr $gccvhi "*" 100 + $gccvlo) 2>/dev/null` @@ -34,11 +23,10 @@ index 8f079a3..53b4774 100755 flags_opt_off="-O0" OLDCPPFLAGS=$CPPFLAGS -diff --git a/m4/curl-compilers.m4 b/m4/curl-compilers.m4 -index 0cbba7a..9175b5b 100644 ---- a/m4/curl-compilers.m4 -+++ b/m4/curl-compilers.m4 -@@ -148,18 +148,11 @@ AC_DEFUN([CURL_CHECK_COMPILER_GNU_C], [ +diff -rupN curl-7.59.0.old/m4/curl-compilers.m4 curl-7.59.0/m4/curl-compilers.m4 +--- curl-7.59.0.old/m4/curl-compilers.m4 2018-02-15 09:29:27.000000000 +0100 ++++ curl-7.59.0/m4/curl-compilers.m4 2018-04-16 19:10:27.386145168 +0200 +@@ -157,18 +157,11 @@ AC_DEFUN([CURL_CHECK_COMPILER_GNU_C], [ gccvhi=`echo $gccver | cut -d . -f1` gccvlo=`echo $gccver | cut -d . -f2` compiler_num=`(expr $gccvhi "*" 100 + $gccvlo) 2>/dev/null` @@ -60,6 +48,3 @@ index 0cbba7a..9175b5b 100644 flags_opt_off="-O0" CURL_CHECK_DEF([_WIN32], [], [silent]) else --- -1.7.1 - diff --git a/curl-7.30.0-multilib.patch b/curl-7.59.0-multilib.patch similarity index 59% rename from curl-7.30.0-multilib.patch rename to curl-7.59.0-multilib.patch index e59f4f0..1574372 100644 --- a/curl-7.30.0-multilib.patch +++ b/curl-7.59.0-multilib.patch @@ -1,6 +1,7 @@ ---- curl-7.30.0/curl-config.in.orig 2013-02-06 09:44:37.000000000 -0500 -+++ curl-7.30.0/curl-config.in 2013-05-24 15:30:55.607019671 -0400 -@@ -75,7 +75,7 @@ +diff -rupN curl-7.59.0.old/curl-config.in curl-7.59.0/curl-config.in +--- curl-7.59.0.old/curl-config.in 2018-01-30 23:02:52.000000000 +0100 ++++ curl-7.59.0/curl-config.in 2018-04-16 19:16:30.647704720 +0200 +@@ -76,7 +76,7 @@ while test $# -gt 0; do ;; --cc) @@ -9,7 +10,7 @@ ;; --prefix) -@@ -142,16 +142,7 @@ +@@ -143,16 +143,7 @@ while test $# -gt 0; do ;; --libs) @@ -25,5 +26,5 @@ - fi + pkg-config libcurl --libs ;; - - --static-libs) + --ssl-backends) + echo "@SSL_BACKENDS@" diff --git a/curl.spec b/curl.spec index 3ec74ff..cfb1193 100644 --- a/curl.spec +++ b/curl.spec @@ -1,47 +1,45 @@ -%define major 4 -%define libname %mklibname %{name} %{major} -%define devname %mklibname %{name} -d +%define major 4 +%define libname %mklibname %{name} %{major} +%define devname %mklibname %{name} -d Summary: Gets a file from a FTP, GOPHER or HTTP server Name: curl Epoch: 1 -Version: 7.54.1 +Version: 7.59.0 Release: 1 License: BSD-like Group: Networking/Other Url: https://curl.haxx.se -Source0: https://curl.haxx.se/download/%{name}-%{version}.tar.lzma -Source1: https://curl.haxx.se/download/%{name}-%{version}.tar.lzma.asc -Patch0: curl-7.30.0-multilib.patch -#Patch1: curl-7.54.0-do-not-build-examples.patch -Patch2: curl-7.54.1-debug.patch -# Upstream patch fixing a segfault introduced in 7.54.1 -Patch8: 6208547002b4d897c14364661ca4e2e5d0b80006.patch +Source0: https://curl.haxx.se/download/%{name}-%{version}.tar.xz +Source1: https://curl.haxx.se/download/%{name}-%{version}.tar.xz.asc +Patch0: %{name}-7.59.0-multilib.patch +Patch2: %{name}-7.59.0-debug.patch BuildRequires: groff BuildRequires: stunnel -BuildRequires: krb5-devel BuildRequires: openldap-devel +BuildRequires: pkgconfig(krb5) BuildRequires: pkgconfig(libcares) -BuildRequires: pkgconfig(libidn) +#BuildRequires: pkgconfig(libidn) +BuildRequires: pkgconfig(libidn2) BuildRequires: pkgconfig(libssh2) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(zlib) +# TODO: Package and enable libpsl support Requires: %{libname} = %{EVRD} -Provides: webfetch +Provides: webfetch = %{EVRD} %description curl is a client to get documents/files from servers, using any of the -supported protocols. The command is designed to work without user -interaction or any kind of interactivity. - -curl offers a busload of useful tricks like proxy support, user -authentication, ftp upload, HTTP post, file transfer resume and more. - +supported protocols. The command is designed to work without user interaction +or any kind of interactivity. +It offers a busload of useful tricks like proxy support, user authentication, +ftp upload, HTTP post, file transfer resume and more. This version is compiled with SSL (https) support. %files -%{_bindir}/curl -%{_mandir}/man1/curl.1* +%doc COPYING +%{_bindir}/%{name} +%{_mandir}/man1/%{name}.1* #---------------------------------------------------------------------------- @@ -53,11 +51,11 @@ Requires: rootcerts >= 1:20070713.00 %description -n %{libname} libcurl is a library of functions for sending and receiving files through various protocols, including http and ftp. - You should install this package if you plan to use any applications that use libcurl. %files -n %{libname} +%doc COPYING %{_libdir}/libcurl.so.%{major}* #---------------------------------------------------------------------------- @@ -71,7 +69,6 @@ Provides: %{name}-devel = %{EVRD} %description -n %{devname} libcurl is a library of functions for sending and receiving files through various protocols, including http and ftp. - You should install this package if you wish to develop applications that use libcurl. @@ -79,13 +76,13 @@ use libcurl. %docdir docs/ %doc docs/BUGS docs/KNOWN_BUGS docs/FAQ CHANGES %doc docs/FEATURES docs/RESOURCES docs/TODO docs/THANKS -%{_bindir}/curl-config -%{multiarch_bindir}/curl-config +%{_bindir}/%{name}-config +%{multiarch_bindir}/%{name}-config %{_libdir}/libcurl.so -%{_includedir}/curl +%{_includedir}/%{name} %{_libdir}/pkgconfig/*.pc %{_datadir}/aclocal/*.m4 -%{_mandir}/man1/curl-config.1* +%{_mandir}/man1/%{name}-config.1* %{_mandir}/man3/* #---------------------------------------------------------------------------- @@ -108,6 +105,7 @@ Example files for %{name} development. %setup -q %apply_patches + %build autoreconf -fiv @@ -117,7 +115,7 @@ autoreconf -fiv --without-gnutls \ --with-zlib \ --with-lber-lib=lber \ - --with-libidn \ + --with-libidn2 \ --with-ssh2 \ --with-random \ --enable-hidden-symbols \ @@ -130,7 +128,8 @@ autoreconf -fiv --enable-ipv6 \ --with-ca-bundle=%{_sysconfdir}/pki/tls/certs/ca-bundle.crt \ --with-gssapi=%{_prefix} \ - --enable-ares + --enable-ares \ + --without-libpsl %make @@ -138,11 +137,12 @@ autoreconf -fiv rm -r docs/examples/.deps ||: # disable tests that want to connect/run sshd, which is quite impossible -#%check +#%%check # Some tests fail at random inside ABF (timeouts?), but work in local builds. # Let's make a test failure non-fatal for the moment. #make test TEST_Q='-a -p -v !SCP !SFTP !SOCKS4 !SOCKS5 !TFTP !198' || : + %install %makeinstall_std