[curl/f14/master] cumulative update of the f14 branch
Kamil Dudka
kdudka at fedoraproject.org
Mon Aug 23 14:08:12 UTC 2010
commit b6e1edb5e4cf15ca50fc89e3709b78204a8a6006
Author: Kamil Dudka <kdudka at redhat.com>
Date: Mon Aug 23 16:06:00 2010 +0200
cumulative update of the f14 branch
- modify system headers to work around a gcc bug (#617757)
- curl -T now ignores file size of special files (#622520)
- fix kerberos proxy authentication for https (#625676)
- fix curl -J to chop filename at next semicolon
(upstream commit d76874a)
- avoid failure of test575 with threaded DNS resolver
(upstream commit d63bdba)
0002-curl-7.21.0-a6e088e.patch | 183 ++++++++++++++++++++++++++++++++
0003-curl-7.21.0-5907777.patch | 36 ++++++
0004-curl-7.21.0-13b8fc4.patch | 67 ++++++++++++
0005-curl-7.21.0-d0dea8f.patch | 26 +++++
0006-curl-7.21.0-d76874a.patch | 63 +++++++++++
0007-curl-7.21.0-d63bdba.patch | 57 ++++++++++
0107-curl-7.21.0-disable-test575.patch | 12 --
curl.spec | 43 ++++++--
8 files changed, 465 insertions(+), 22 deletions(-)
---
diff --git a/0002-curl-7.21.0-a6e088e.patch b/0002-curl-7.21.0-a6e088e.patch
new file mode 100644
index 0000000..281f1e1
--- /dev/null
+++ b/0002-curl-7.21.0-a6e088e.patch
@@ -0,0 +1,183 @@
+ CHANGES | 5 ++
+ include/curl/typecheck-gcc.h | 135 ++++++++++++++++++++++++-----------------
+ 2 files changed, 84 insertions(+), 56 deletions(-)
+
+diff --git a/CHANGES b/CHANGES
+index 30bb18b..34e0fca 100644
+--- a/CHANGES
++++ b/CHANGES
+@@ -6,6 +6,11 @@
+
+ Changelog
+
++Kamil Dudka (12 Aug 2010)
++- typecheck-gcc: work around gcc upstream bug #32061
++
++ original bug report at https://bugzilla.redhat.com/617757
++
+ Kamil Dudka (28 Jun 2010)
+ - http_ntlm: add support for NSS
+
+diff --git a/include/curl/typecheck-gcc.h b/include/curl/typecheck-gcc.h
+index c4fad51..9af90dd 100644
+--- a/include/curl/typecheck-gcc.h
++++ b/include/curl/typecheck-gcc.h
+@@ -25,11 +25,16 @@
+ /* wraps curl_easy_setopt() with typechecking */
+
+ /* To add a new kind of warning, add an
+- * if(_curl_is_sometype_option(_curl_opt) && ! _curl_is_sometype(value))
+- * _curl_easy_setopt_err_sometype();
++ * if(_curl_is_sometype_option(_curl_opt))
++ * if(!_curl_is_sometype(value))
++ * _curl_easy_setopt_err_sometype();
+ * block and define _curl_is_sometype_option, _curl_is_sometype and
+ * _curl_easy_setopt_err_sometype below
+ *
++ * NOTE: We use two nested 'if' statements here instead of the && operator, in
++ * order to work around gcc bug #32061. It affects only gcc 4.3.x/4.4.x
++ * when compiling with -Wlogical-op.
++ *
+ * To add an option that uses the same type as an existing option, you'll just
+ * need to extend the appropriate _curl_*_option macro
+ */
+@@ -37,51 +42,66 @@
+ __extension__ ({ \
+ __typeof__ (option) _curl_opt = option; \
+ if (__builtin_constant_p(_curl_opt)) { \
+- if (_curl_is_long_option(_curl_opt) && !_curl_is_long(value)) \
+- _curl_easy_setopt_err_long(); \
+- if (_curl_is_off_t_option(_curl_opt) && !_curl_is_off_t(value)) \
+- _curl_easy_setopt_err_curl_off_t(); \
+- if (_curl_is_string_option(_curl_opt) && !_curl_is_string(value)) \
+- _curl_easy_setopt_err_string(); \
+- if (_curl_is_write_cb_option(_curl_opt) && !_curl_is_write_cb(value)) \
+- _curl_easy_setopt_err_write_callback(); \
+- if ((_curl_opt) == CURLOPT_READFUNCTION && !_curl_is_read_cb(value)) \
+- _curl_easy_setopt_err_read_cb(); \
+- if ((_curl_opt) == CURLOPT_IOCTLFUNCTION && !_curl_is_ioctl_cb(value)) \
+- _curl_easy_setopt_err_ioctl_cb(); \
+- if ((_curl_opt) == CURLOPT_SOCKOPTFUNCTION && !_curl_is_sockopt_cb(value))\
+- _curl_easy_setopt_err_sockopt_cb(); \
+- if ((_curl_opt) == CURLOPT_OPENSOCKETFUNCTION && \
+- !_curl_is_opensocket_cb(value)) \
+- _curl_easy_setopt_err_opensocket_cb(); \
+- if ((_curl_opt) == CURLOPT_PROGRESSFUNCTION && \
+- !_curl_is_progress_cb(value)) \
+- _curl_easy_setopt_err_progress_cb(); \
+- if ((_curl_opt) == CURLOPT_DEBUGFUNCTION && !_curl_is_debug_cb(value)) \
+- _curl_easy_setopt_err_debug_cb(); \
+- if ((_curl_opt) == CURLOPT_SSL_CTX_FUNCTION && \
+- !_curl_is_ssl_ctx_cb(value)) \
+- _curl_easy_setopt_err_ssl_ctx_cb(); \
+- if (_curl_is_conv_cb_option(_curl_opt) && !_curl_is_conv_cb(value)) \
+- _curl_easy_setopt_err_conv_cb(); \
+- if ((_curl_opt) == CURLOPT_SEEKFUNCTION && !_curl_is_seek_cb(value)) \
+- _curl_easy_setopt_err_seek_cb(); \
+- if (_curl_is_cb_data_option(_curl_opt) && !_curl_is_cb_data(value)) \
+- _curl_easy_setopt_err_cb_data(); \
+- if ((_curl_opt) == CURLOPT_ERRORBUFFER && !_curl_is_error_buffer(value)) \
+- _curl_easy_setopt_err_error_buffer(); \
+- if ((_curl_opt) == CURLOPT_STDERR && !_curl_is_FILE(value)) \
+- _curl_easy_setopt_err_FILE(); \
+- if (_curl_is_postfields_option(_curl_opt) && !_curl_is_postfields(value)) \
+- _curl_easy_setopt_err_postfields(); \
+- if ((_curl_opt) == CURLOPT_HTTPPOST && \
+- !_curl_is_arr((value), struct curl_httppost)) \
+- _curl_easy_setopt_err_curl_httpost(); \
+- if (_curl_is_slist_option(_curl_opt) && \
+- !_curl_is_arr((value), struct curl_slist)) \
+- _curl_easy_setopt_err_curl_slist(); \
+- if ((_curl_opt) == CURLOPT_SHARE && !_curl_is_ptr((value), CURLSH)) \
+- _curl_easy_setopt_err_CURLSH(); \
++ if (_curl_is_long_option(_curl_opt)) \
++ if (!_curl_is_long(value)) \
++ _curl_easy_setopt_err_long(); \
++ if (_curl_is_off_t_option(_curl_opt)) \
++ if (!_curl_is_off_t(value)) \
++ _curl_easy_setopt_err_curl_off_t(); \
++ if (_curl_is_string_option(_curl_opt)) \
++ if (!_curl_is_string(value)) \
++ _curl_easy_setopt_err_string(); \
++ if (_curl_is_write_cb_option(_curl_opt)) \
++ if (!_curl_is_write_cb(value)) \
++ _curl_easy_setopt_err_write_callback(); \
++ if ((_curl_opt) == CURLOPT_READFUNCTION) \
++ if (!_curl_is_read_cb(value)) \
++ _curl_easy_setopt_err_read_cb(); \
++ if ((_curl_opt) == CURLOPT_IOCTLFUNCTION) \
++ if (!_curl_is_ioctl_cb(value)) \
++ _curl_easy_setopt_err_ioctl_cb(); \
++ if ((_curl_opt) == CURLOPT_SOCKOPTFUNCTION) \
++ if (!_curl_is_sockopt_cb(value)) \
++ _curl_easy_setopt_err_sockopt_cb(); \
++ if ((_curl_opt) == CURLOPT_OPENSOCKETFUNCTION) \
++ if (!_curl_is_opensocket_cb(value)) \
++ _curl_easy_setopt_err_opensocket_cb(); \
++ if ((_curl_opt) == CURLOPT_PROGRESSFUNCTION) \
++ if (!_curl_is_progress_cb(value)) \
++ _curl_easy_setopt_err_progress_cb(); \
++ if ((_curl_opt) == CURLOPT_DEBUGFUNCTION) \
++ if (!_curl_is_debug_cb(value)) \
++ _curl_easy_setopt_err_debug_cb(); \
++ if ((_curl_opt) == CURLOPT_SSL_CTX_FUNCTION) \
++ if (!_curl_is_ssl_ctx_cb(value)) \
++ _curl_easy_setopt_err_ssl_ctx_cb(); \
++ if (_curl_is_conv_cb_option(_curl_opt)) \
++ if (!_curl_is_conv_cb(value)) \
++ _curl_easy_setopt_err_conv_cb(); \
++ if ((_curl_opt) == CURLOPT_SEEKFUNCTION) \
++ if (!_curl_is_seek_cb(value)) \
++ _curl_easy_setopt_err_seek_cb(); \
++ if (_curl_is_cb_data_option(_curl_opt)) \
++ if (!_curl_is_cb_data(value)) \
++ _curl_easy_setopt_err_cb_data(); \
++ if ((_curl_opt) == CURLOPT_ERRORBUFFER) \
++ if (!_curl_is_error_buffer(value)) \
++ _curl_easy_setopt_err_error_buffer(); \
++ if ((_curl_opt) == CURLOPT_STDERR) \
++ if (!_curl_is_FILE(value)) \
++ _curl_easy_setopt_err_FILE(); \
++ if (_curl_is_postfields_option(_curl_opt)) \
++ if (!_curl_is_postfields(value)) \
++ _curl_easy_setopt_err_postfields(); \
++ if ((_curl_opt) == CURLOPT_HTTPPOST) \
++ if (!_curl_is_arr((value), struct curl_httppost)) \
++ _curl_easy_setopt_err_curl_httpost(); \
++ if (_curl_is_slist_option(_curl_opt)) \
++ if (!_curl_is_arr((value), struct curl_slist)) \
++ _curl_easy_setopt_err_curl_slist(); \
++ if ((_curl_opt) == CURLOPT_SHARE) \
++ if (!_curl_is_ptr((value), CURLSH)) \
++ _curl_easy_setopt_err_CURLSH(); \
+ } \
+ curl_easy_setopt(handle, _curl_opt, value); \
+ })
+@@ -92,15 +112,18 @@ __extension__ ({ \
+ __extension__ ({ \
+ __typeof__ (info) _curl_info = info; \
+ if (__builtin_constant_p(_curl_info)) { \
+- if (_curl_is_string_info(_curl_info) && !_curl_is_arr((arg), char *)) \
+- _curl_easy_getinfo_err_string(); \
+- if (_curl_is_long_info(_curl_info) && !_curl_is_arr((arg), long)) \
+- _curl_easy_getinfo_err_long(); \
+- if (_curl_is_double_info(_curl_info) && !_curl_is_arr((arg), double)) \
+- _curl_easy_getinfo_err_double(); \
+- if (_curl_is_slist_info(_curl_info) && \
+- !_curl_is_arr((arg), struct curl_slist *)) \
+- _curl_easy_getinfo_err_curl_slist(); \
++ if (_curl_is_string_info(_curl_info)) \
++ if (!_curl_is_arr((arg), char *)) \
++ _curl_easy_getinfo_err_string(); \
++ if (_curl_is_long_info(_curl_info)) \
++ if (!_curl_is_arr((arg), long)) \
++ _curl_easy_getinfo_err_long(); \
++ if (_curl_is_double_info(_curl_info)) \
++ if (!_curl_is_arr((arg), double)) \
++ _curl_easy_getinfo_err_double(); \
++ if (_curl_is_slist_info(_curl_info)) \
++ if (!_curl_is_arr((arg), struct curl_slist *)) \
++ _curl_easy_getinfo_err_curl_slist(); \
+ } \
+ curl_easy_getinfo(handle, _curl_info, arg); \
+ })
diff --git a/0003-curl-7.21.0-5907777.patch b/0003-curl-7.21.0-5907777.patch
new file mode 100644
index 0000000..b979564
--- /dev/null
+++ b/0003-curl-7.21.0-5907777.patch
@@ -0,0 +1,36 @@
+ CHANGES | 5 +++++
+ src/main.c | 5 ++++-
+ 2 files changed, 9 insertions(+), 1 deletions(-)
+
+diff --git a/CHANGES b/CHANGES
+index 34e0fca..51021e5 100644
+--- a/CHANGES
++++ b/CHANGES
+@@ -6,6 +6,11 @@
+
+ Changelog
+
++Kamil Dudka (15 Aug 2010)
++- curl -T: ignore file size of special files
++
++ original bug report at https://bugzilla.redhat.com/622520
++
+ Kamil Dudka (12 Aug 2010)
+ - typecheck-gcc: work around gcc upstream bug #32061
+
+diff --git a/src/main.c b/src/main.c
+index 5827b5e..3925787 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -4883,7 +4883,10 @@ operate(struct Configurable *config, int argc, argv_item_t argv[])
+ goto quit_urls;
+ }
+ infdopen=TRUE;
+- uploadfilesize=fileinfo.st_size;
++
++ /* we ignore file size for char/block devices, sockets, etc. */
++ if(S_IFREG == (fileinfo.st_mode & S_IFMT))
++ uploadfilesize=fileinfo.st_size;
+
+ }
+ else if(uploadfile && stdin_upload(uploadfile)) {
diff --git a/0004-curl-7.21.0-13b8fc4.patch b/0004-curl-7.21.0-13b8fc4.patch
new file mode 100644
index 0000000..ec5a14c
--- /dev/null
+++ b/0004-curl-7.21.0-13b8fc4.patch
@@ -0,0 +1,67 @@
+ CHANGES | 10 ++++++++++
+ lib/http_negotiate.c | 15 ++++++++++-----
+ 2 files changed, 20 insertions(+), 5 deletions(-)
+
+diff --git a/CHANGES b/CHANGES
+index 1e3a501..c28b005 100644
+--- a/CHANGES
++++ b/CHANGES
+@@ -6,6 +6,16 @@
+
+ Changelog
+
++Daniel Stenberg (16 Aug 2010)
++- negotiation: Wrong proxy authorization
++
++ There's an error in http_negotiation.c where a mistake is using only
++ userpwd even for proxy requests. Ludek provided a patch, but I decided
++ to write the fix slightly different using his patch as inspiration.
++
++ Reported by: Ludek Finstrle
++ Bug: http://curl.haxx.se/bug/view.cgi?id=3046066
++
+ Kamil Dudka (15 Aug 2010)
+ - curl -T: ignore file size of special files
+
+diff --git a/lib/http_negotiate.c b/lib/http_negotiate.c
+index ab1296e..80b0b50 100644
+--- a/lib/http_negotiate.c
++++ b/lib/http_negotiate.c
+@@ -5,7 +5,7 @@
+ * | (__| |_| | _ <| |___
+ * \___|\___/|_| \_\_____|
+ *
+- * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel at haxx.se>, et al.
++ * Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel at haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+@@ -277,6 +277,7 @@ CURLcode Curl_output_negotiate(struct connectdata *conn, bool proxy)
+ &conn->data->state.negotiate;
+ char *encoded = NULL;
+ size_t len;
++ char *userp;
+
+ #ifdef HAVE_SPNEGO /* Handle SPNEGO */
+ if(checkprefix("Negotiate", neg_ctx->protocol)) {
+@@ -330,12 +331,16 @@ CURLcode Curl_output_negotiate(struct connectdata *conn, bool proxy)
+ if(len == 0)
+ return CURLE_OUT_OF_MEMORY;
+
+- conn->allocptr.userpwd =
+- aprintf("%sAuthorization: %s %s\r\n", proxy ? "Proxy-" : "",
+- neg_ctx->protocol, encoded);
++ userp = aprintf("%sAuthorization: %s %s\r\n", proxy ? "Proxy-" : "",
++ neg_ctx->protocol, encoded);
++
++ if(proxy)
++ conn->allocptr.proxyuserpwd = userp;
++ else
++ conn->allocptr.userpwd = userp;
+ free(encoded);
+ Curl_cleanup_negotiate (conn->data);
+- return (conn->allocptr.userpwd == NULL) ? CURLE_OUT_OF_MEMORY : CURLE_OK;
++ return (userp == NULL) ? CURLE_OUT_OF_MEMORY : CURLE_OK;
+ }
+
+ static void cleanup(struct negotiatedata *neg_ctx)
diff --git a/0005-curl-7.21.0-d0dea8f.patch b/0005-curl-7.21.0-d0dea8f.patch
new file mode 100644
index 0000000..b2c97d9
--- /dev/null
+++ b/0005-curl-7.21.0-d0dea8f.patch
@@ -0,0 +1,26 @@
+From d0dea8f8699224ac1b6888bf6da7cfc71de213ca Mon Sep 17 00:00:00 2001
+From: Kamil Dudka <kdudka at redhat.com>
+Date: Thu, 19 Aug 2010 16:38:22 +0200
+Subject: [PATCH] AC_INIT: avoid a warning with autoconf 2.66
+
+It was complaining about the '=>' operator, introduced in e3fc0d5.
+---
+ configure.ac | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index db04447..a389cfd 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -24,7 +24,7 @@ dnl Process this file with autoconf to produce a configure script.
+ AC_PREREQ(2.57)
+
+ dnl We don't know the version number "statically" so we use a dash here
+-AC_INIT([curl], [-], [a suitable curl mailing list => http://curl.haxx.se/mail/])
++AC_INIT([curl], [-], [a suitable curl mailing list: http://curl.haxx.se/mail/])
+
+ CURL_OVERRIDE_AUTOCONF
+
+--
+1.7.2.1
+
diff --git a/0006-curl-7.21.0-d76874a.patch b/0006-curl-7.21.0-d76874a.patch
new file mode 100644
index 0000000..cfb4135
--- /dev/null
+++ b/0006-curl-7.21.0-d76874a.patch
@@ -0,0 +1,63 @@
+ CHANGES | 13 +++++++++++++
+ src/main.c | 10 +++++++++-
+ 2 files changed, 22 insertions(+), 1 deletions(-)
+
+diff --git a/CHANGES b/CHANGES
+index 7b93e82..b432038 100644
+--- a/CHANGES
++++ b/CHANGES
+@@ -26,6 +26,19 @@ Kamil Dudka (12 Aug 2010)
+
+ original bug report at https://bugzilla.redhat.com/617757
+
++Daniel Stenberg (21 Jul 2010)
++- [Jeff Pohlmeyer brought this change]
++
++ remote-header-name: chop filename at next semicolon
++
++ The --remote-header-name option for the command-line tool assumes that
++ everything beyond the filename= field is part of the filename, but that
++ might not always be the case, for example:
++
++ Content-Disposition: attachment; filename=file.txt; modification-date=...
++
++ This fix chops the filename off at the next semicolon, if there is one.
++
+ Kamil Dudka (28 Jun 2010)
+ - http_ntlm: add support for NSS
+
+diff --git a/src/main.c b/src/main.c
+index 3925787..5b78860 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -4355,6 +4355,7 @@ header_callback(void *ptr, size_t size, size_t nmemb, void *stream)
+ const char* str = (char*)ptr;
+ const size_t cb = size*nmemb;
+ const char* end = (char*)ptr + cb;
++ size_t len;
+
+ if (cb > 20 && curlx_strnequal(str, "Content-disposition:", 20)) {
+ char *p = (char*)str + 20;
+@@ -4363,6 +4364,7 @@ header_callback(void *ptr, size_t size, size_t nmemb, void *stream)
+ (encoded filenames (*=) are not supported) */
+ for(;;) {
+ char *filename;
++ char *semi;
+
+ while (*p && (p < end) && !ISALPHA(*p))
+ p++;
+@@ -4376,7 +4378,13 @@ header_callback(void *ptr, size_t size, size_t nmemb, void *stream)
+ continue;
+ }
+ p+=9;
+- filename = parse_filename(p, cb - (p - str));
++ semi = strchr(p, ';');
++
++ /* this expression below typecasts 'cb' only to avoid
++ warning: signed and unsigned type in conditional expression
++ */
++ len = semi ? (semi - p) : (ssize_t)cb - (p - str);
++ filename = parse_filename(p, len);
+ if (filename) {
+ outs->filename = filename;
+ break;
diff --git a/0007-curl-7.21.0-d63bdba.patch b/0007-curl-7.21.0-d63bdba.patch
new file mode 100644
index 0000000..928361e
--- /dev/null
+++ b/0007-curl-7.21.0-d63bdba.patch
@@ -0,0 +1,57 @@
+ CHANGES | 3 +++
+ tests/libtest/lib575.c | 10 +++-------
+ 2 files changed, 6 insertions(+), 7 deletions(-)
+
+diff --git a/CHANGES b/CHANGES
+index b432038..9efe768 100644
+--- a/CHANGES
++++ b/CHANGES
+@@ -59,6 +59,9 @@ Kamil Dudka (28 Jun 2010)
+ initialized as soon as any SSL or NTLM is required, while the PEM module
+ is prevented from being loaded until the SSL is actually required.
+
++Kamil Dudka (17 June 2010)
++- Improve test575 in order to not fail with threaded DNS resolver.
++
+ Version 7.21.0 (16 June 2010)
+
+ Daniel Stenberg (5 June 2010)
+diff --git a/tests/libtest/lib575.c b/tests/libtest/lib575.c
+index 49a379e..521720e 100644
+--- a/tests/libtest/lib575.c
++++ b/tests/libtest/lib575.c
+@@ -71,7 +71,7 @@ int test(char *URL)
+ curl_multi_perform(mhandle, &still_running));
+
+ while(still_running) {
+- struct timeval timeout;
++ static struct timeval timeout = /* 100 ms */ { 0, 100000L };
+ int rc;
+ fd_set fdread;
+ fd_set fdwrite;
+@@ -80,23 +80,19 @@ int test(char *URL)
+ FD_ZERO(&fdread);
+ FD_ZERO(&fdwrite);
+ FD_ZERO(&fdexcep);
+- timeout.tv_sec = 3;
+- timeout.tv_usec = 0;
+
+ m = curl_multi_fdset(mhandle, &fdread, &fdwrite, &fdexcep, &max_fdset);
+ if(m != CURLM_OK) {
+ fprintf(stderr, "curl_multi_fdset() error\n");
+ goto test_cleanup;
+ }
++ /* We call select(max_fdset + 1, ...), specially in case of (maxfd == -1),
++ * we call select(0, ...), which is basically equal to sleep. */
+ rc = select(max_fdset + 1, &fdread, &fdwrite, &fdexcep, &timeout);
+ if(rc == -1) {
+ fprintf(stderr, "select() error\n");
+ goto test_cleanup;
+ }
+- else if(rc == 0) {
+- fprintf(stderr, "select() timeout!\n");
+- goto test_cleanup;
+- }
+ else {
+ while(CURLM_CALL_MULTI_PERFORM ==
+ curl_multi_perform(mhandle, &still_running));
diff --git a/curl.spec b/curl.spec
index 15af5ec..de0d4b9 100644
--- a/curl.spec
+++ b/curl.spec
@@ -1,7 +1,7 @@
Summary: A utility for getting files from remote servers (FTP, HTTP, and others)
Name: curl
Version: 7.21.0
-Release: 3%{?dist}
+Release: 4%{?dist}
License: MIT
Group: Applications/Internet
Source: http://curl.haxx.se/download/%{name}-%{version}.tar.lzma
@@ -11,6 +11,24 @@ Source3: hide_selinux.c
# patch adding support for NTLM authentication (#603783)
Patch1: 0001-curl-7.21.0-ntlm.patch
+# modify system headers to work around a gcc bug (#617757)
+Patch2: 0002-curl-7.21.0-a6e088e.patch
+
+# curl -T now ignores file size of special files (#622520)
+Patch3: 0003-curl-7.21.0-5907777.patch
+
+# fix kerberos proxy authentication for https (#625676)
+Patch4: 0004-curl-7.21.0-13b8fc4.patch
+
+# avoid a warning with autoconf 2.66
+Patch5: 0005-curl-7.21.0-d0dea8f.patch
+
+# remote-header-name: chop filename at next semicolon
+Patch6: 0006-curl-7.21.0-d76874a.patch
+
+# test575: do not fail with threaded DNS resolver
+Patch7: 0007-curl-7.21.0-d63bdba.patch
+
# patch making libcurl multilib ready
Patch101: 0101-curl-7.20.0-multilib.patch
@@ -29,9 +47,6 @@ Patch105: 0105-curl-7.20.0-disable-test1112.patch
# disable valgrind for certain test-cases (libssh2 problem)
Patch106: 0106-curl-7.21.0-libssh2-valgrind.patch
-# exclude test575 from the test suite (fails on s390(x))
-Patch107: 0107-curl-7.21.0-disable-test575.patch
-
Provides: webclient
URL: http://curl.haxx.se/
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -100,8 +115,14 @@ for f in CHANGES README; do
mv -f ${f}.utf8 ${f}
done
-# upstream patches (not yet applied)
+# upstream patches (already applied)
%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
# Fedora patches
%patch101 -p1
@@ -114,11 +135,6 @@ done
%patch105 -p1
rm -f tests/data/test1112
-%ifarch s390 s390x
-%patch107 -p1
-rm -f tests/data/test575
-%endif
-
autoreconf
# replace hard wired port numbers in the test suite
@@ -221,6 +237,13 @@ rm -rf $RPM_BUILD_ROOT
%{_datadir}/aclocal/libcurl.m4
%changelog
+* Mon Aug 23 2010 Kamil Dudka <kdudka at redhat.com> 7.21.0-4
+- modify system headers to work around a gcc bug (#617757)
+- curl -T now ignores file size of special files (#622520)
+- fix kerberos proxy authentication for https (#625676)
+- fix curl -J to chop filename at next semicolon (upstream commit d76874a)
+- avoid failure of test575 with thraeded DNS resolver (upstream commit d63bdba)
+
* Mon Jul 12 2010 Dan Horák <dan[at]danny.cz> 7.21.0-3
- disable test 575 on s390(x)
More information about the scm-commits
mailing list