1 |
commit: 9e03422ea373c87e67f7ad2920681a9283c1ebfc |
2 |
Author: Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com> |
3 |
AuthorDate: Wed Sep 28 20:11:02 2016 +0000 |
4 |
Commit: Michael Palimaka <kensington <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Sep 29 11:39:06 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e03422e |
7 |
|
8 |
kde-frameworks/kio: Fix ABI break and limitation to TLS 1.0 |
9 |
|
10 |
Package-Manager: portage-2.3.0 |
11 |
|
12 |
.../kio/files/kio-5.26.0-fix-abi-break.patch | 64 ++++++++++++++++ |
13 |
.../kio/files/kio-5.26.0-secureprotocols.patch | 26 +++++++ |
14 |
kde-frameworks/kio/kio-5.26.0-r2.ebuild | 86 ++++++++++++++++++++++ |
15 |
3 files changed, 176 insertions(+) |
16 |
|
17 |
diff --git a/kde-frameworks/kio/files/kio-5.26.0-fix-abi-break.patch b/kde-frameworks/kio/files/kio-5.26.0-fix-abi-break.patch |
18 |
new file mode 100644 |
19 |
index 00000000..0cbe72e |
20 |
--- /dev/null |
21 |
+++ b/kde-frameworks/kio/files/kio-5.26.0-fix-abi-break.patch |
22 |
@@ -0,0 +1,64 @@ |
23 |
+From: José Manuel Santamaría Lema <panfaust@×××××.com> |
24 |
+Date: Wed, 28 Sep 2016 07:53:08 +0000 |
25 |
+Subject: Fix ABI break in kio |
26 |
+X-Git-Url: http://quickgit.kde.org/?p=kio.git&a=commitdiff&h=89f8bcf00fc2fc17527d7bb4e0e2aea51f8776cb |
27 |
+--- |
28 |
+Fix ABI break in kio |
29 |
+ |
30 |
+From the binary compatibility page "Do's and Don'ts": |
31 |
+https://community.kde.org/Policies/Binary_Compatibility_Issues_With_C%2B%2B#The_Do.27s_and_Don.27ts |
32 |
+You cannot... |
33 |
+[...] |
34 |
+For existing functions of any type: |
35 |
+[...] |
36 |
+inline it (this includes moving a member function's body to the class definition, even without the inline keyword). |
37 |
+ |
38 |
+REVIEW: 129032 |
39 |
+--- |
40 |
+ |
41 |
+ |
42 |
+--- a/src/widgets/kpropertiesdialog.cpp |
43 |
++++ b/src/widgets/kpropertiesdialog.cpp |
44 |
+@@ -500,6 +500,11 @@ |
45 |
+ KPreviewPropsPlugin::supports( _items )*/; |
46 |
+ } |
47 |
+ |
48 |
++void KPropertiesDialog::slotOk() |
49 |
++{ |
50 |
++ accept(); |
51 |
++} |
52 |
++ |
53 |
+ void KPropertiesDialog::accept() |
54 |
+ { |
55 |
+ QList<KPropertiesDialogPlugin *>::const_iterator pageListIt; |
56 |
+@@ -541,6 +546,11 @@ |
57 |
+ deleteLater(); // somewhat like Qt::WA_DeleteOnClose would do. |
58 |
+ KPageDialog::accept(); |
59 |
+ } // else, keep dialog open for user to fix the problem. |
60 |
++} |
61 |
++ |
62 |
++void KPropertiesDialog::slotCancel() |
63 |
++{ |
64 |
++ reject(); |
65 |
+ } |
66 |
+ |
67 |
+ void KPropertiesDialog::reject() |
68 |
+ |
69 |
+--- a/src/widgets/kpropertiesdialog.h |
70 |
++++ b/src/widgets/kpropertiesdialog.h |
71 |
+@@ -341,12 +341,12 @@ |
72 |
+ * Called when the user presses 'Ok'. |
73 |
+ * @deprecated since 5.25, use accept() |
74 |
+ */ |
75 |
+- KIOWIDGETS_DEPRECATED virtual void slotOk() { accept(); } |
76 |
++ KIOWIDGETS_DEPRECATED virtual void slotOk(); |
77 |
+ /** |
78 |
+ * Called when the user presses 'Cancel'. |
79 |
+ * @deprecated since 5.25, use reject() |
80 |
+ */ |
81 |
+- KIOWIDGETS_DEPRECATED virtual void slotCancel() { reject(); } |
82 |
++ KIOWIDGETS_DEPRECATED virtual void slotCancel(); |
83 |
+ |
84 |
+ /** |
85 |
+ * Called when the user presses 'Ok'. |
86 |
+ |
87 |
|
88 |
diff --git a/kde-frameworks/kio/files/kio-5.26.0-secureprotocols.patch b/kde-frameworks/kio/files/kio-5.26.0-secureprotocols.patch |
89 |
new file mode 100644 |
90 |
index 00000000..d7b4284 |
91 |
--- /dev/null |
92 |
+++ b/kde-frameworks/kio/files/kio-5.26.0-secureprotocols.patch |
93 |
@@ -0,0 +1,26 @@ |
94 |
+From: Andrius Štikonas <andrius@××××××××.eu> |
95 |
+Date: Mon, 26 Sep 2016 17:15:02 +0000 |
96 |
+Subject: Fix kio using only tls1.0. |
97 |
+X-Git-Url: http://quickgit.kde.org/?p=kio.git&a=commitdiff&h=8196a735bebc6fd5eaf9d293bd565c00ef98516b |
98 |
+--- |
99 |
+Fix kio using only tls1.0. |
100 |
+ |
101 |
+Now kio should use QSsl::SslProtocol::SecureProtocols which will deprecate |
102 |
+unsafe TLS versions when they are no longer safe. |
103 |
+ |
104 |
+REVIEW: 129031 |
105 |
+--- |
106 |
+ |
107 |
+ |
108 |
+--- a/src/core/tcpslavebase.cpp |
109 |
++++ b/src/core/tcpslavebase.cpp |
110 |
+@@ -492,7 +492,7 @@ |
111 |
+ if (d->usingSSL) { |
112 |
+ return false; |
113 |
+ } |
114 |
+- return d->startTLSInternal(KTcpSocket::TlsV1) & ResultOk; |
115 |
++ return d->startTLSInternal(KTcpSocket::SecureProtocols) & ResultOk; |
116 |
+ } |
117 |
+ |
118 |
+ TCPSlaveBase::SslResult TCPSlaveBase::TcpSlaveBasePrivate::startTLSInternal(KTcpSocket::SslVersion version, |
119 |
+ |
120 |
|
121 |
diff --git a/kde-frameworks/kio/kio-5.26.0-r2.ebuild b/kde-frameworks/kio/kio-5.26.0-r2.ebuild |
122 |
new file mode 100644 |
123 |
index 00000000..90abbd0 |
124 |
--- /dev/null |
125 |
+++ b/kde-frameworks/kio/kio-5.26.0-r2.ebuild |
126 |
@@ -0,0 +1,86 @@ |
127 |
+# Copyright 1999-2016 Gentoo Foundation |
128 |
+# Distributed under the terms of the GNU General Public License v2 |
129 |
+# $Id$ |
130 |
+ |
131 |
+EAPI=6 |
132 |
+ |
133 |
+KDE_TEST="forceoptional" |
134 |
+VIRTUALX_REQUIRED="test" |
135 |
+inherit kde5 |
136 |
+ |
137 |
+DESCRIPTION="Framework providing transparent file and data management" |
138 |
+LICENSE="LGPL-2+" |
139 |
+KEYWORDS="~amd64 ~arm ~x86" |
140 |
+IUSE="acl +handbook kerberos +kwallet X" |
141 |
+ |
142 |
+COMMON_DEPEND=" |
143 |
+ $(add_frameworks_dep karchive) |
144 |
+ $(add_frameworks_dep kbookmarks) |
145 |
+ $(add_frameworks_dep kcodecs) |
146 |
+ $(add_frameworks_dep kcompletion) |
147 |
+ $(add_frameworks_dep kconfig) |
148 |
+ $(add_frameworks_dep kconfigwidgets) |
149 |
+ $(add_frameworks_dep kcoreaddons) |
150 |
+ $(add_frameworks_dep kdbusaddons) |
151 |
+ $(add_frameworks_dep ki18n) |
152 |
+ $(add_frameworks_dep kiconthemes) |
153 |
+ $(add_frameworks_dep kitemviews) |
154 |
+ $(add_frameworks_dep kjobwidgets) |
155 |
+ $(add_frameworks_dep knotifications) |
156 |
+ $(add_frameworks_dep kservice) |
157 |
+ $(add_frameworks_dep ktextwidgets) |
158 |
+ $(add_frameworks_dep kwidgetsaddons) |
159 |
+ $(add_frameworks_dep kwindowsystem) |
160 |
+ $(add_frameworks_dep kxmlgui) |
161 |
+ $(add_frameworks_dep solid) |
162 |
+ $(add_qt_dep qtdbus) |
163 |
+ $(add_qt_dep qtgui) |
164 |
+ $(add_qt_dep qtnetwork 'ssl') |
165 |
+ $(add_qt_dep qtscript) |
166 |
+ $(add_qt_dep qtwidgets) |
167 |
+ $(add_qt_dep qtxml) |
168 |
+ dev-libs/libxml2 |
169 |
+ dev-libs/libxslt |
170 |
+ acl? ( |
171 |
+ sys-apps/attr |
172 |
+ virtual/acl |
173 |
+ ) |
174 |
+ kerberos? ( virtual/krb5 ) |
175 |
+ kwallet? ( $(add_frameworks_dep kwallet) ) |
176 |
+ X? ( $(add_qt_dep qtx11extras) ) |
177 |
+" |
178 |
+DEPEND="${COMMON_DEPEND} |
179 |
+ $(add_qt_dep qtconcurrent) |
180 |
+ handbook? ( $(add_frameworks_dep kdoctools) ) |
181 |
+ test? ( sys-libs/zlib ) |
182 |
+ X? ( |
183 |
+ x11-libs/libX11 |
184 |
+ x11-libs/libXrender |
185 |
+ x11-proto/xproto |
186 |
+ ) |
187 |
+" |
188 |
+PDEPEND=" |
189 |
+ $(add_frameworks_dep kded) |
190 |
+" |
191 |
+RDEPEND="${COMMON_DEPEND}" |
192 |
+ |
193 |
+# tests hang |
194 |
+RESTRICT+=" test" |
195 |
+ |
196 |
+PATCHES=( |
197 |
+ "${FILESDIR}/${P}-fix-desktop-launch.patch" |
198 |
+ "${FILESDIR}/${P}-fix-abi-break.patch" |
199 |
+ "${FILESDIR}/${P}-secureprotocols.patch" |
200 |
+) |
201 |
+ |
202 |
+src_configure() { |
203 |
+ local mycmakeargs=( |
204 |
+ $(cmake-utils_use_find_package acl ACL) |
205 |
+ $(cmake-utils_use_find_package handbook KF5DocTools) |
206 |
+ $(cmake-utils_use_find_package kerberos GSSAPI) |
207 |
+ $(cmake-utils_use_find_package kwallet KF5Wallet) |
208 |
+ $(cmake-utils_use_find_package X X11) |
209 |
+ ) |
210 |
+ |
211 |
+ kde5_src_configure |
212 |
+} |