Merge branch 'master' into private-kdudka-libcurl-minimal

This commit is contained in:
Kamil Dudka 2016-03-16 15:42:54 +01:00
commit 68237ca69d
2 changed files with 64 additions and 7 deletions

View File

@ -0,0 +1,47 @@
From 090ee789dda468fe0d9b715ec4e5dc47a948a239 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tim=20R=C3=BChsen?= <tim.ruehsen@gmx.de>
Date: Wed, 2 Mar 2016 11:07:16 +0100
Subject: [PATCH] cookie: do not refuse cookies for localhost
Closes #658
---
lib/cookie.c | 10 ++++++----
tests/data/test1136 | 1 +
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/lib/cookie.c b/lib/cookie.c
index d62f446..e5c7b7e 100644
--- a/lib/cookie.c
+++ b/lib/cookie.c
@@ -788,10 +788,12 @@ Curl_cookie_add(struct SessionHandle *data,
#ifdef USE_LIBPSL
/* Check if the domain is a Public Suffix and if yes, ignore the cookie.
This needs a libpsl compiled with builtin data. */
- if(co->domain && !isip(co->domain) && (psl = psl_builtin()) != NULL) {
- if(psl_is_public_suffix(psl, co->domain)) {
- infof(data, "cookie '%s' dropped, domain '%s' is a public suffix\n",
- co->name, co->domain);
+ if(domain && co->domain && !isip(co->domain)) {
+ if (((psl = psl_builtin()) != NULL)
+ && !psl_is_cookie_domain_acceptable(psl, domain, co->domain)) {
+ infof(data,
+ "cookie '%s' dropped, domain '%s' must not set cookies for '%s'\n",
+ co->name, domain, co->domain);
freecookie(co);
return NULL;
}
diff --git a/tests/data/test1136 b/tests/data/test1136
index e42ca06..d3327e8 100644
--- a/tests/data/test1136
+++ b/tests/data/test1136
@@ -58,6 +58,7 @@ http://www.example.ck/1136 http://www.ck/1136 http://z-1.compute-1.amazonaws.com
.www.example.ck TRUE / FALSE 0 test2 allowed2
.www.ck TRUE / FALSE 0 test4 allowed4
+.z-1.compute-1.amazonaws.com TRUE / FALSE 0 test5 forbidden5
</file>
</verify>
</testcase>
--
2.5.0

View File

@ -1,12 +1,15 @@
Summary: A utility for getting files from remote servers (FTP, HTTP, and others)
Name: curl
Version: 7.47.1
Release: 2.2%{?dist}
Release: 4.1%{?dist}
License: MIT
Group: Applications/Internet
Source: http://curl.haxx.se/download/%{name}-%{version}.tar.lzma
Source2: curlbuild.h
# do not refuse cookies for localhost (#1308791)
Patch1: 0001-curl-7.47.1-psl-localhost.patch
# patch making libcurl multilib ready
Patch101: 0101-curl-7.32.0-multilib.patch
@ -142,7 +145,7 @@ be installed.
%setup -q
# upstream patches
# (none)
%patch1 -p1
# Fedora patches
%patch101 -p1
@ -150,6 +153,10 @@ be installed.
%patch104 -p1
%patch107 -p1
# use RSA instead of DSA for host authentication in SCP and SFTP test-cases
# because DSA is no longer supported by OpenSSH
sed -e 's/ds[as]/rsa/g' -i tests/ssh{help.pm,server.pl}
# disable test 1112 (#565305) and test 1801
# <https://github.com/bagder/curl/commit/21e82bd6#commitcomment-12226582>
printf "1112\n1801\n" >> tests/data/DISABLED
@ -212,7 +219,7 @@ make %{?_smp_mflags} V=1 -C build-full
%check
# we have to override LD_LIBRARY_PATH because we eliminated rpath
LD_LIBRARY_PATH=$RPM_BUILD_ROOT%{_libdir}:$LD_LIBRARY_PATH
LD_LIBRARY_PATH="$RPM_BUILD_ROOT%{_libdir}:$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH
# compile upstream test-cases
@ -298,11 +305,14 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libcurl.so.[0-9].[0-9].[0-9].minimal
%changelog
* Fri Feb 26 2016 Kamil Dudka <kdudka@redhat.com> 7.47.1-2.2
- provide the curl-minimal subpackage with a lightweight build of curl
* Wed Mar 16 2016 Kamil Dudka <kdudka@redhat.com> 7.47.1-4.1
- provide curl-minimal and libcurl-minimal subpkgs with a minimal build of curl
* Thu Feb 11 2016 Kamil Dudka <kdudka@redhat.com> 7.47.1-2.1
- provide the libcurl-minimal subpackage with a lightweight build of libcurl
* Wed Mar 02 2016 Kamil Dudka <kdudka@redhat.com> 7.47.1-4
- do not refuse cookies for localhost (#1308791)
* Wed Feb 17 2016 Kamil Dudka <kdudka@redhat.com> 7.47.1-3
- make SCP and SFTP test-cases work with up2date OpenSSH
* Wed Feb 10 2016 Kamil Dudka <kdudka@redhat.com> 7.47.1-2
- enable support for Public Suffix List (#1305701)