Compare commits

..

No commits in common. "master" and "f21" have entirely different histories.
master ... f21

13 changed files with 23 additions and 3944 deletions

View File

@ -1,93 +0,0 @@
diff -up kdelibs-3.5.10/configure.in.than kdelibs-3.5.10/configure.in
--- kdelibs-3.5.10/configure.in.than 2017-06-20 18:02:22.845910412 +0200
+++ kdelibs-3.5.10/configure.in 2017-06-20 18:03:09.058172814 +0200
@@ -692,10 +692,10 @@ AC_ARG_WITH(libidn,
[], with_libidn=check)
LIB_IDN=
if test "x$with_libidn" != xno; then
- AC_CHECK_HEADERS([idna.h punycode.h stringprep.h])
- KDE_CHECK_LIB(idn, idna_to_ascii_4i, [
+ AC_CHECK_HEADERS([idn2.h])
+ KDE_CHECK_LIB(idn2, idn2_to_ascii_4i, [
AC_DEFINE_UNQUOTED(HAVE_LIBIDN, 1, [Defined if you have libidn in your system])
- LIB_IDN=-lidn
+ LIB_IDN=-lidn2
])
if test "x$with_libidn" != xcheck && test -z "$LIB_IDN"; then
AC_MSG_ERROR([--with-libidn was given, but test for libidn failed])
diff -up kdelibs-3.5.10/kdecore/configure.in.in.than kdelibs-3.5.10/kdecore/configure.in.in
--- kdelibs-3.5.10/kdecore/configure.in.in.than 2017-06-20 17:53:41.544511539 +0200
+++ kdelibs-3.5.10/kdecore/configure.in.in 2017-06-20 18:01:27.557989259 +0200
@@ -48,10 +48,10 @@ AC_ARG_WITH(libidn,
[], with_libidn=check)
LIB_IDN=
if test "x$with_libidn" != xno; then
- AC_CHECK_HEADERS([idna.h punycode.h stringprep.h])
- KDE_CHECK_LIB(idn, idna_to_ascii_4i, [
+ AC_CHECK_HEADERS([idn2.h])
+ KDE_CHECK_LIB(idn2, idn2_to_ascii_4i, [
AC_DEFINE_UNQUOTED(HAVE_LIBIDN, 1, [Defined if you have libidn in your system])
- LIB_IDN=-lidn
+ LIB_IDN=-lidn2
])
if test "x$with_libidn" != xcheck && test -z "$LIB_IDN"; then
AC_MSG_ERROR([--with-libidn was given, but test for libidn failed])
diff -up kdelibs-3.5.10/kdecore/network/kresolver.cpp.than kdelibs-3.5.10/kdecore/network/kresolver.cpp
--- kdelibs-3.5.10/kdecore/network/kresolver.cpp.than 2017-06-21 12:55:55.733217103 +0200
+++ kdelibs-3.5.10/kdecore/network/kresolver.cpp 2017-06-21 13:27:38.956737181 +0200
@@ -49,8 +49,8 @@
#include <qguardedptr.h>
// IDN
-#ifdef HAVE_IDNA_H
-# include <idna.h>
+#ifdef HAVE_IDN2_H
+# include <idn2.h>
#endif
// KDE
@@ -1083,7 +1083,7 @@ static QStringList splitLabels(const QSt
static QCString ToASCII(const QString& label)
{
-#ifdef HAVE_IDNA_H
+#ifdef HAVE_IDN2_H
// We have idna.h, so we can use the idna_to_ascii
// function :)
@@ -1104,7 +1104,7 @@ static QCString ToASCII(const QString& l
ucs4[i] = (unsigned long)label[i].unicode();
ucs4[i] = 0; // terminate with NUL, just to be on the safe side
- if (idna_to_ascii_4i(ucs4, label.length(), buf, 0) == IDNA_SUCCESS)
+ if (idn2_to_ascii_4i(ucs4, label.length(), buf, 0|IDN2_NFC_INPUT|IDN2_NONTRANSITIONAL) == IDN2_OK)
// success!
retval = buf;
@@ -1117,7 +1117,7 @@ static QCString ToASCII(const QString& l
static QString ToUnicode(const QString& label)
{
-#ifdef HAVE_IDNA_H
+#ifdef HAVE_IDN2_H
// We have idna.h, so we can use the idna_to_unicode
// function :)
@@ -1131,7 +1131,7 @@ static QString ToUnicode(const QString&
// try the same length for output
ucs4_output = new Q_UINT32[outlen = label.length()];
- idna_to_unicode_44i(ucs4_input, label.length(),
+ idn2_to_unicode_44i(ucs4_input, label.length(),
ucs4_output, &outlen,
0);
@@ -1141,7 +1141,7 @@ static QString ToUnicode(const QString&
delete [] ucs4_output;
ucs4_output = new Q_UINT32[outlen];
- idna_to_unicode_44i(ucs4_input, label.length(),
+ idn2_to_unicode_44i(ucs4_input, label.length(),
ucs4_output, &outlen,
0);
}

View File

@ -1,38 +0,0 @@
diff -ur kdelibs-3.5.10/kinit/lnusertemp.c kdelibs-3.5.10-CVE-2015-7543/kinit/lnusertemp.c
--- kdelibs-3.5.10/kinit/lnusertemp.c 2007-05-14 09:52:34.000000000 +0200
+++ kdelibs-3.5.10-CVE-2015-7543/kinit/lnusertemp.c 2015-12-10 10:04:02.934321515 +0100
@@ -178,7 +178,11 @@
if (result == 0) return 0; /* Success */
unlink(kde_tmp_dir);
strncat(user_tmp_dir, "XXXXXX", PATH_MAX - strlen(user_tmp_dir));
+#if 0
mktemp(user_tmp_dir); /* We want a directory, not a file, so using mkstemp makes no sense and is wrong */
+#else
+ if (mkdtemp(user_tmp_dir)==0) return 1; /*JOWENN: isn't that the better solution ?? */
+#endif
return create_link(kde_tmp_dir, user_tmp_dir);
}
if ((result == -1) || (!S_ISLNK(stat_buf.st_mode)))
@@ -204,14 +208,22 @@
if (result == 0) return 0; /* Success */
unlink(kde_tmp_dir);
strncat(user_tmp_dir, "XXXXXX", PATH_MAX - strlen(user_tmp_dir));
+#if 0
mktemp(user_tmp_dir); /* We want a directory, not a file, so using mkstemp makes no sense and is wrong */
+#else
+ if (mkdtemp(user_tmp_dir)==0) return 1; /*JOWENN: isn't that the better solution ?? */
+#endif
return create_link(kde_tmp_dir, user_tmp_dir);
}
result = check_tmp_dir(tmp_buf);
if (result == 0) return 0; /* Success */
unlink(kde_tmp_dir);
strncat(user_tmp_dir, "XXXXXX", PATH_MAX - strlen(user_tmp_dir));
+#if 0
mktemp(user_tmp_dir); /* We want a directory, not a file, so using mkstemp makes no sense and is wrong */
+#else
+ if (mkdtemp(user_tmp_dir)==0) return 1; /*JOWENN: isn't that the better solution ?? */
+#endif
return create_link(kde_tmp_dir, user_tmp_dir);
}

View File

@ -1,48 +0,0 @@
From 261a3b7a126b7a1d28e263085b85bf1905eb4c19 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= <slavek.banko@axis.cz>
Date: Sun, 23 Oct 2016 10:48:01 +0200
Subject: Fix security issue CVE-2016-6232 Based on
https://quickgit.kde.org/?p=karchive.git&a=commitdiff&h=0cb243f6
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
diff --git a/kio/kio/karchive.cpp b/kio/kio/karchive.cpp
index b0e0dc6..69e54d1 100644
--- a/kio/kio/karchive.cpp
+++ b/kio/kio/karchive.cpp
@@ -601,6 +601,7 @@ void KArchiveDirectory::addEntry( KArchiveEntry* entry )
void KArchiveDirectory::copyTo(const QString& dest, bool recursiveCopy ) const
{
QDir root;
+ const QString destDir(QDir(dest).absPath()); // get directory path without any "." or ".."
PosSortedPtrList fileList;
QMap<int, QString> fileToDir;
@@ -620,10 +621,19 @@ void KArchiveDirectory::copyTo(const QString& dest, bool recursiveCopy ) const
QValueStack<QString> dirNameStack;
dirStack.push( this ); // init stack at current directory
- dirNameStack.push( dest ); // ... with given path
+ dirNameStack.push( destDir ); // ... with given path
do {
curDir = dirStack.pop();
- curDirName = dirNameStack.pop();
+
+ // extract only to specified folder if it is located within archive's extraction folder
+ // otherwise put file under root position in extraction folder
+ QString curDirName = dirNameStack.pop();
+ if (!QDir(curDirName).absPath().startsWith(destDir)) {
+ kdWarning() << "Attempted export into folder" << curDirName
+ << "which is outside of the extraction root folder" << destDir << "."
+ << "Changing export of contained files to extraction root folder.";
+ curDirName = destDir;
+ }
root.mkdir(curDirName);
dirEntries = curDir->entries();
--
cgit v0.10.2

View File

@ -1,24 +0,0 @@
diff -ur kdelibs-3.5.10/kio/misc/kpac/script.cpp kdelibs-3.5.10-CVE-2017-6410/kio/misc/kpac/script.cpp
--- kdelibs-3.5.10/kio/misc/kpac/script.cpp 2008-02-13 10:41:06.000000000 +0100
+++ kdelibs-3.5.10-CVE-2017-6410/kio/misc/kpac/script.cpp 2017-03-04 18:42:29.638992390 +0100
@@ -446,10 +446,18 @@
if (!findObj.isValid() || !findObj.implementsCall())
throw Error( "No such function FindProxyForURL" );
+ KURL cleanUrl = url;
+ cleanUrl.setPass(QString());
+ cleanUrl.setUser(QString());
+ if (cleanUrl.protocol().lower() == "https") {
+ cleanUrl.setPath(QString());
+ cleanUrl.setQuery(QString());
+ }
+
Object thisObj;
List args;
- args.append(String(url.url()));
- args.append(String(url.host()));
+ args.append(String(cleanUrl.url()));
+ args.append(String(cleanUrl.host()));
Value retval = findObj.call( exec, thisObj, args );
if ( exec->hadException() ) {

View File

@ -1,159 +0,0 @@
diff -ur kdelibs-3.5.10/kdeprint/cups/cupsdconf2/cups-util.c kdelibs-3.5.10-cups20/kdeprint/cups/cupsdconf2/cups-util.c
--- kdelibs-3.5.10/kdeprint/cups/cupsdconf2/cups-util.c 2007-10-08 11:52:10.000000000 +0200
+++ kdelibs-3.5.10-cups20/kdeprint/cups/cupsdconf2/cups-util.c 2014-11-25 21:41:51.000000000 +0100
@@ -32,7 +32,7 @@
char prompt[1024]; /* Prompt string */
int digest_tries; /* Number of tries with Digest */
static char filename[HTTP_MAX_URI]; /* Local filename */
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
const char *fqdn = 0;
#else
char fqdn[ HTTP_MAX_URI ]; /* Server name buffer */
@@ -118,7 +118,7 @@
* See if we should retry the current digest password...
*/
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
www_authenticate = cups_server->fields[HTTP_FIELD_WWW_AUTHENTICATE];
#else
www_authenticate = httpGetField( cups_server, HTTP_FIELD_WWW_AUTHENTICATE );
@@ -129,7 +129,7 @@
/*
* Nope - get a password from the user...
*/
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
fqdn = cups_server->hostname;
#else
httpGetHostname( cups_server, fqdn, sizeof( fqdn ) );
@@ -154,7 +154,7 @@
* Got a password; encode it for the server...
*/
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
www_authenticate = cups_server->fields[HTTP_FIELD_WWW_AUTHENTICATE];
#else
www_authenticate = httpGetField( cups_server, HTTP_FIELD_WWW_AUTHENTICATE );
@@ -166,7 +166,7 @@
*/
snprintf(plain, sizeof(plain), "%s:%s", cupsUser(), pwdstring);
-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 2
+#if CUPS_VERSION_MAJOR > 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 2)
httpEncode64_2(encode, sizeof(encode), plain, sizeof(plain));
#else
httpEncode64(encode, plain);
@@ -235,7 +235,7 @@
*/
while ((bytes =
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
httpRead
#else
httpRead2
@@ -265,7 +265,7 @@
http_status_t status; /* HTTP status from server */
char prompt[1024]; /* Prompt string */
int digest_tries; /* Number of tries with Digest */
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
const char *fqdn = 0;
#else
char fqdn[ HTTP_MAX_URI ]; /* Server name buffer */
@@ -340,7 +340,7 @@
break;
}
else
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
httpWrite
#else
httpWrite2
@@ -349,7 +349,7 @@
if (status == HTTP_CONTINUE)
{
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
httpWrite
#else
httpWrite2
@@ -380,7 +380,7 @@
* See if we should retry the current digest password...
*/
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
www_authenticate = cups_server->fields[HTTP_FIELD_WWW_AUTHENTICATE];
#else
www_authenticate = httpGetField( cups_server, HTTP_FIELD_WWW_AUTHENTICATE );
@@ -393,7 +393,7 @@
*/
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
fqdn = cups_server->hostname;
#else
httpGetHostname( cups_server, fqdn, sizeof( fqdn ) );
@@ -417,7 +417,7 @@
* Got a password; encode it for the server...
*/
-#if CUPS_VERSION_MAJOR - 0 <= 1 && CUPS_VERSION_MINOR - 0 < 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR < 2)
www_authenticate = cups_server->fields[HTTP_FIELD_WWW_AUTHENTICATE];
#else
www_authenticate = httpGetField( cups_server, HTTP_FIELD_WWW_AUTHENTICATE );
@@ -429,7 +429,7 @@
*/
snprintf(plain, sizeof(plain), "%s:%s", cupsUser(), pwdstring);
-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 2
+#if CUPS_VERSION_MAJOR > 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 2)
httpEncode64_2(encode, sizeof(encode), plain, sizeof(plain));
#else
httpEncode64(encode, plain);
@@ -511,7 +511,7 @@
* See if we are accessing localhost...
the struct has changed in newer versions - PiggZ (adam@piggz.co.uk)
*/
-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 2
+#if CUPS_VERSION_MAJOR > 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 2)
if (!httpAddrLocalhost(http))
#else
if (ntohl(*(int*)&http->hostaddr.sin_addr) != 0x7f000001 &&
diff -ur kdelibs-3.5.10/kdeprint/cups/ipprequest.cpp kdelibs-3.5.10-cups20/kdeprint/cups/ipprequest.cpp
--- kdelibs-3.5.10/kdeprint/cups/ipprequest.cpp 2007-10-08 11:52:10.000000000 +0200
+++ kdelibs-3.5.10-cups20/kdeprint/cups/ipprequest.cpp 2014-11-25 21:41:51.000000000 +0100
@@ -310,7 +310,7 @@
}
#ifdef HAVE_CUPS_NO_PWD_CACHE
-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR <= 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR <= 2)
strncpy( HTTP->authstring, cups_authstring.data(), HTTP_MAX_VALUE );
#else
httpSetAuthString( HTTP, NULL, cups_authstring.data() );
@@ -324,7 +324,7 @@
request_ = cupsDoFileRequest(HTTP, request_, (res.isEmpty() ? "/" : res.latin1()), (filename.isEmpty() ? NULL : filename.latin1()));
#ifdef HAVE_CUPS_NO_PWD_CACHE
-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR <= 2
+#if CUPS_VERSION_MAJOR < 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR <= 2)
cups_authstring = HTTP->authstring;
#else
cups_authstring = httpGetAuthString( HTTP );
@@ -523,7 +523,7 @@
cupsFreeOptions(n, options);
// find an remove that annoying "document-format" attribute
-#if CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 2
+#if CUPS_VERSION_MAJOR > 1 || (CUPS_VERSION_MAJOR == 1 && CUPS_VERSION_MINOR >= 2)
ipp_attribute_t *attr = ippFindAttribute(request_, "document-format", IPP_TAG_NAME);
ippDeleteAttribute(request_, attr);
#else

View File

@ -1,11 +0,0 @@
diff -ur kdelibs-3.5.10/kdeprint/cups/cupsaddsmb2.cpp kdelibs-3.5.10-cups22/kdeprint/cups/cupsaddsmb2.cpp
--- kdelibs-3.5.10/kdeprint/cups/cupsaddsmb2.cpp 2005-10-10 17:06:30.000000000 +0200
+++ kdelibs-3.5.10-cups22/kdeprint/cups/cupsaddsmb2.cpp 2016-09-28 19:23:09.264863318 +0200
@@ -39,6 +39,7 @@
#include <kstdguiitem.h>
#include <cups/cups.h>
+#include <cups/ppd.h>
#include <ctype.h>
CupsAddSmb::CupsAddSmb(QWidget *parent, const char *name)

View File

@ -1,21 +0,0 @@
diff -up kdelibs-3.5.10/kate/part/katebuffer.cpp.than kdelibs-3.5.10/kate/part/katebuffer.cpp
--- kdelibs-3.5.10/kate/part/katebuffer.cpp.than 2016-02-16 22:06:01.830197908 +0100
+++ kdelibs-3.5.10/kate/part/katebuffer.cpp 2016-02-16 23:33:15.810136589 +0100
@@ -42,6 +42,8 @@
#include <qcstring.h>
#include <qdatetime.h>
+#include <cmath>
+
/**
* loader block size, load 256 kb at once per default
* if file size is smaller, fall back to file size
@@ -917,7 +919,7 @@ void KateBuffer::updatePreviousNotEmptyL
} while (textLine->firstChar()==-1);
kdDebug(13020)<<"updatePreviousNotEmptyLine: updating line:"<<(blk->startLine()+current_line)<<endl;
QMemArray<uint> foldingList=textLine->foldingListArray();
- while ( (foldingList.size()>0) && ( abs(foldingList[foldingList.size()-2])==1)) {
+ while ( (foldingList.size()>0) && ( std::abs(foldingList[foldingList.size()-2])==1)) {
foldingList.resize(foldingList.size()-2,QGArray::SpeedOptim);
}
addIndentBasedFoldingInformation(foldingList,addindent,deindent);

View File

@ -1,12 +0,0 @@
diff -up kdelibs-3.5.10/kate/part/katebuffer.cpp~ kdelibs-3.5.10/kate/part/katebuffer.cpp
--- kdelibs-3.5.10/kate/part/katebuffer.cpp~ 2017-02-21 09:44:34.000000000 +0100
+++ kdelibs-3.5.10/kate/part/katebuffer.cpp 2017-02-21 09:48:20.132333343 +0100
@@ -919,7 +919,7 @@ void KateBuffer::updatePreviousNotEmptyL
} while (textLine->firstChar()==-1);
kdDebug(13020)<<"updatePreviousNotEmptyLine: updating line:"<<(blk->startLine()+current_line)<<endl;
QMemArray<uint> foldingList=textLine->foldingListArray();
- while ( (foldingList.size()>0) && ( std::abs(foldingList[foldingList.size()-2])==1)) {
+ while ( (foldingList.size()>0) && ( std::abs((long)foldingList[foldingList.size()-2])==1)) {
foldingList.resize(foldingList.size()-2,QGArray::SpeedOptim);
}
addIndentBasedFoldingInformation(foldingList,addindent,deindent);

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +1,10 @@
diff -up kdelibs-3.5.10/kio/kssl/kopenssl.cc.openssl kdelibs-3.5.10/kio/kssl/kopenssl.cc
--- kdelibs-3.5.10/kio/kssl/kopenssl.cc.openssl 2006-07-22 03:16:39.000000000 -0500
+++ kdelibs-3.5.10/kio/kssl/kopenssl.cc 2009-04-19 16:34:14.000000000 -0500
@@ -329,6 +329,20 @@ KConfig *cfg;
@@ -329,6 +329,19 @@ KConfig *cfg;
#ifdef SHLIB_VERSION_NUMBER
<< "libssl.so." SHLIB_VERSION_NUMBER
#endif
+ << "libssl.so.10"
+ << "libssl.so.0.9.8k"
+ << "libssl.so.8"
+ << "libssl.so.0.9.8g"
@ -22,11 +21,10 @@ diff -up kdelibs-3.5.10/kio/kssl/kopenssl.cc.openssl kdelibs-3.5.10/kio/kssl/kop
<< "libssl.so"
<< "libssl.so.0"
#endif
@@ -346,6 +360,20 @@ KConfig *cfg;
@@ -346,6 +359,19 @@ KConfig *cfg;
#ifdef SHLIB_VERSION_NUMBER
<< "libcrypto.so." SHLIB_VERSION_NUMBER
#endif
+ << "libcrypto.so.10"
+ << "libcrypto.so.0.9.8k"
+ << "libcrypto.so.8"
+ << "libcrypto.so.0.9.8g"

View File

@ -1,12 +0,0 @@
diff -up kdelibs-3.5.10/kdecore/svgicons/ksvgiconpainter.cpp.than kdelibs-3.5.10/kdecore/svgicons/ksvgiconpainter.cpp
--- kdelibs-3.5.10/kdecore/svgicons/ksvgiconpainter.cpp.than 2016-09-28 16:58:47.881217306 +0200
+++ kdelibs-3.5.10/kdecore/svgicons/ksvgiconpainter.cpp 2016-09-28 16:59:20.518989958 +0200
@@ -2208,7 +2208,7 @@ void KSVGIconPainter::drawPath(const QSt
break;
}
- if(*ptr == '+' || *ptr == '-' || (*ptr >= '0' && *ptr <= '9'))
+ if(*ptr == '+' || *ptr == '-' || (*ptr >= '0' && *ptr <= '9') || *ptr == '.')
{
// there are still coords in this command
if(command == 'M')

View File

@ -1,12 +1,12 @@
diff -ur kdelibs-3.5.10/kdecore/kcrash.cpp kdelibs-3.5.10-drkonqi-plasma5/kdecore/kcrash.cpp
--- kdelibs-3.5.10/kdecore/kcrash.cpp 2007-01-15 12:34:17.000000000 +0100
+++ kdelibs-3.5.10-drkonqi-plasma5/kdecore/kcrash.cpp 2017-01-22 23:25:21.373378496 +0100
diff -ur kdelibs-3.5.9/kdecore/kcrash.cpp kdelibs-3.5.9-drkonqi-kde4/kdecore/kcrash.cpp
--- kdelibs-3.5.9/kdecore/kcrash.cpp 2007-01-15 12:34:17.000000000 +0100
+++ kdelibs-3.5.9-drkonqi-kde4/kdecore/kcrash.cpp 2008-07-02 08:24:37.000000000 +0200
@@ -158,7 +158,7 @@
int i = 0;
// argument 0 has to be drkonqi
- argv[i++] = "drkonqi";
+ argv[i++] = "/usr/libexec/drkonqi";
+ argv[i++] = "/usr/libexec/kde4/drkonqi";
#if defined Q_WS_X11
// start up on the correct display
@ -15,7 +15,7 @@ diff -ur kdelibs-3.5.10/kdecore/kcrash.cpp kdelibs-3.5.10-drkonqi-plasma5/kdecor
if(!geteuid() && setuid(getuid()) < 0)
_exit(253);
- execvp("drkonqi", const_cast< char** >( argv ));
+ execv("/usr/libexec/drkonqi", const_cast< char** >( argv ));
+ execv("/usr/libexec/kde4/drkonqi", const_cast< char** >( argv ));
_exit(errno);
}
else

View File

@ -18,11 +18,12 @@
Summary: KDE 3 Libraries
Name: kdelibs3
Version: 3.5.10
Release: 94%{?dist}
Release: 63%{?dist}
License: LGPLv2
Url: http://www.kde.org/
Group: System Environment/Libraries
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Source0: ftp://ftp.kde.org/pub/kde/stable/%{version}/src/kdelibs-%{version}.tar.bz2
Source1: kde.sh
@ -52,8 +53,8 @@ Patch50: kdelibs-3.5.8-kspell2-no-ispell.patch
Patch51: kdelibs-3.5.9-cupsserverbin.patch
# initial support for (Only|Not)ShowIn=KDE3
Patch52: kdelibs-3.5.9-KDE3.patch
# use newer/plasma drkonqi in KCrash (#453243)
Patch53: kdelibs-3.5.10-drkonqi-plasma5.patch
# use /usr/libexec/kde4/drkonqi in KCrash (#453243)
Patch53: kdelibs-3.5.9-drkonqi-kde4.patch
# use inotify_* functions which are defined in glibc-header
Patch54: kdelibs-3.5.10-inotify.patch
# update the KatePart latex.xml syntax definition to the version from Kile 2.0.3
@ -62,16 +63,6 @@ Patch55: kdelibs-3.5.10-latex-syntax-kile-2.0.3.patch
Patch56: kdelibs-3.5.10-qcolor_gcc_ftbfs.patch
# fix FTBFS (cups-util.c must include stdio.h, #714133)
Patch57: kdelibs-3.5.10-cups-util-missing-header.patch
# fix FTBFS with CUPS 2.0 due to bad CUPS_VERSION_MAJOR checks
Patch58: kdelibs-3.5.10-cups20.patch
Patch59: kdelibs-3.5.10-gcc6.patch
# fix endless loop in svgicon
Patch60: kdelibs-3.5.10-svgicon-endlessloop.patch
# fix FTBFS with gcc7
Patch61: kdelibs-3.5.10-gcc7.patch
# libidn2 support for > f26
Patch62: kdelibs-3-libidn2.patch
# use /etc/kde in addition to /usr/share/config, borrowed from debian
Patch100: kdelibs-3.5.5-kstandarddirs.patch
@ -93,14 +84,6 @@ Patch111: kdelibs-3.5.10-kde-config_kde-version.patch
# http://git.trinitydesktop.org/cgit/tdelibs/commit?id=9bc0d2cd9d38750658770e69bf0445dc5162beb7
# http://git.trinitydesktop.org/cgit/tdelibs/commit?id=91bf63b43bf4cc9ff640bd3c11549644cef05e6e
Patch150: kdelibs-3.5.10-cups16.patch
# build fix for CUPS 2.2 by Slávek Banko, backported by Kevin Kofler
# http://git.trinitydesktop.org/cgit/tdelibs/commit/?id=52a1b55368ec53b14347996851aca7eb29374397
Patch151: kdelibs-3.5.10-cups22.patch
# OpenSSL 1.1 support by Slávek Banko (with prerequisite patch by Timothy
# Pearson), backported by Kevin Kofler
# http://git.trinitydesktop.org/cgit/tdelibs/commit/?id=e757d3d6ae93cf967d54c566e9c003b0f9cc3a9c
# http://git.trinitydesktop.org/cgit/tdelibs/commit/?id=e1861cb6811f7bac405ece204407ca46c000a453
Patch152: kdelibs-3.5.10-openssl-1.1.patch
## security fixes
# fix CVE-2009-2537 - select length DoS
@ -123,18 +106,6 @@ Patch207: libltdl-CVE-2009-3736.patch
Patch208: kdelibs-3.5.x-CVE-2011-3365.patch
# CVE-2013-2074, prints passwords contained in HTTP URLs in error messages
Patch209: kdelibs-3.5.10-CVE-2013-2074.patch
# CVE-2015-7543 arts,kdelibs3: Use of mktemp(3) allows attacker to hijack the IPC
# backport upstream fix (the lnusertemp.c change) from kdelibs 4:
# http://commits.kde.org/kdelibs/cc5515ed7ce8884c9b18169158ba29ab2f7a3db7
# upstream fix by Joseph Wenninger, rediffed for kdelibs 3.5.10 by Kevin Kofler
Patch210: kdelibs-3.5.10-CVE-2015-7543.patch
# CVE-2016-6232 - directory traversal vulnerability in KArchive
# patch from Trinity (Slávek Banko), based on KF5 fix (Andreas Cord-Landwehr)
Patch211: kdelibs-3.5.10-CVE-2016-6232.patch
# CVE-2017-6410 - info leak when accessing https when using a malicious PAC file
# backport upstream fix (by Albert Astals Cid) from kdelibs 4:
# http://commits.kde.org/kdelibs/1804c2fde7bf4e432c6cf5bb8cce5701c7010559
Patch212: kdelibs-3.5.10-CVE-2017-6410.patch
## fixes to common KDE 3 autotools machinery
# tweak autoconfigury so that it builds with autoconf 2.64 or 2.65
@ -145,14 +116,13 @@ Patch301: kde3-automake-version.patch
# also add --force-missing to get aarch64 support (#925029/#925627)
Patch302: kde3-automake-add-missing.patch
Requires: ca-certificates
Requires: hicolor-icon-theme
Requires: kde-settings >= 3.5
Requires: kde-filesystem
Requires: kdelibs-common
Requires: redhat-menus
Requires: shadow-utils
#Requires: sudo
Requires: sudo
BuildRequires: sudo
%if 0%{?fedora}
@ -180,18 +150,13 @@ BuildRequires: openjade
BuildRequires: jadetex
BuildRequires: docbook-dtd31-sgml
BuildRequires: docbook-style-dsssl
BuildRequires: perl-generators
BuildRequires: perl-SGMLSpm
BuildRequires: docbook-utils
BuildRequires: zlib-devel
%if 0%{?fedora} > 26 || 0%{?rhel} > 7
BuildRequires: libidn2-devel
%else
BuildRequires: libidn-devel
%endif
BuildRequires: audiofile-devel
BuildRequires: openssl-devel
BuildRequires: perl-interpreter
BuildRequires: perl
BuildRequires: gawk
BuildRequires: byacc
BuildRequires: libart_lgpl-devel
@ -203,11 +168,7 @@ BuildRequires: krb5-devel
BuildRequires: openldap-devel
BuildRequires: db4-devel
BuildRequires: alsa-lib-devel
%if 0%{?fedora} > 25 || 0%{?rhel} > 7
BuildRequires: pkgconf-pkg-config
%else
BuildRequires: pkgconfig
%endif
BuildRequires: glibc-kernheaders
BuildRequires: libutempter-devel
BuildRequires: findutils
@ -252,11 +213,6 @@ BuildArch: noarch
This package includes the KDE 3 API documentation in HTML
format for easy browsing
%package tools
Summary: KDE 3 tools.
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
%description tools
This package includes tools kgrantpty and kpac_dhcp_helper.
%prep
%setup -q -n kdelibs-%{version}
@ -283,18 +239,12 @@ This package includes tools kgrantpty and kpac_dhcp_helper.
%patch50 -p1 -b .no-ispell
%patch51 -p1 -b .cupsserverbin
%patch52 -p1 -b .KDE3
%patch53 -p1 -b .drkonqi-plasma5
%patch53 -p1 -b .drkonqi-kde4
%patch54 -p1 -b .inotify
%patch55 -p1 -b .latex-syntax
%patch56 -p1 -b .qcolor_gcc_ftbfs
%patch57 -p1 -b .cups-util
%patch58 -p1 -b .cups20
%patch59 -p1 -b .gcc6
%patch60 -p1 -b .endless-loop
%patch61 -p1 -b .gcc7
%if 0%{?fedora} > 26 || 0%{?rhel} > 7
%patch62 -p1 -b .libidn2
%endif
%patch100 -p1 -b .kstandarddirs
%patch101 -p1 -b .libtool-shlibext
%patch104 -p1 -b .gcc44
@ -306,7 +256,6 @@ This package includes tools kgrantpty and kpac_dhcp_helper.
%patch111 -p1 -b .kde-config_kde-version
%patch150 -p1 -b .cups16
%patch151 -p1 -b .cups22
# security fixes
%patch200 -p1 -b .cve-2009-2537
@ -319,17 +268,10 @@ This package includes tools kgrantpty and kpac_dhcp_helper.
%patch207 -p1 -b .CVE-2009-3736
%patch208 -p1 -b .CVE-2011-3365
%patch209 -p1 -b .CVE-2013-2074
%patch210 -p1 -b .CVE-2015-7543
%patch211 -p1 -b .CVE-2016-6232
%patch212 -p1 -b .CVE-2017-6410
# must be applied after the ossl-1.x patch (105) and the CVE-2009-2702 fix (205)
%patch152 -p1 -b .openssl-1.1
%patch300 -p1 -b .acinclude
%patch301 -p1 -b .automake-version
%patch302 -p1 -b .automake-add-missing
make -f admin/Makefile.common cvs
@ -348,10 +290,6 @@ fi
export DO_NOT_COMPILE="libkscreensaver"
%endif
# drop the extra -Werror= flags for C, they break the configure script
export CFLAGS="%{optflags}"
export CXXFLAGS="%{optflags} -Wno-deprecated-declarations -Wno-narrowing -std=gnu++98"
%configure \
--includedir=%{_includedir}/kde \
--disable-rpath \
@ -438,8 +376,8 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" | xargs \
-e "s@%{_libdir}/libpcreposix.la@@g" \
-e "s@-lpcreposix@@g" \
-e "s@-lpcre@@g" \
-e "s@-lidn2\?@@g" \
-e "s@%{_libdir}/libidn2\?.la@@g" \
-e "s@-lidn@@g" \
-e "s@%{_libdir}/libidn.la@@g" \
-e "s@-lpng@@g" \
-e "s@-ljpeg@@g" \
-e "s@%{_libdir}/libjpeg.la@@g" \
@ -518,14 +456,6 @@ rm -fv %{buildroot}%{_datadir}/config/katesyntaxhighlightingrc
# don't show kresources
sed -i -e "s,^OnlyShowIn=KDE;,OnlyShowIn=KDE3;," %{buildroot}%{_datadir}/applications/kde/kresources.desktop
# use ca-certificates' ca-bundle.crt, symlink as what most other
# distros do these days (http://bugzilla.redhat.com/521902)
if [ -f %{buildroot}%{_datadir}/apps/kssl/ca-bundle.crt -a \
-f /etc/pki/tls/certs/ca-bundle.crt ]; then
ln -sf /etc/pki/tls/certs/ca-bundle.crt \
%{buildroot}%{_datadir}/apps/kssl/ca-bundle.crt
fi
%check
ERROR=0
@ -543,6 +473,9 @@ fi
exit $ERROR
%clean
rm -rf %{buildroot}
%post
/sbin/ldconfig
@ -604,6 +537,7 @@ touch --no-create %{_datadir}/icons/crystalsvg 2> /dev/null || :
%{_bindir}/kioexec
%{_bindir}/kioslave
%{_bindir}/klauncher
%attr(4755,root,root) %{_bindir}/kpac_dhcp_helper
%{_bindir}/ksendbugmail
%{_bindir}/kshell
%{_bindir}/kstartupconfig
@ -614,6 +548,7 @@ touch --no-create %{_datadir}/icons/crystalsvg 2> /dev/null || :
%{_bindir}/meinproc
%{_bindir}/start_kdeinit
%{_bindir}/start_kdeinit_wrapper
%attr(4755,root,root) %{_bindir}/kgrantpty
%{_libdir}/lib*.so.*
%{_libdir}/libkdeinit_*.so
%{_libdir}/lib*.la
@ -652,108 +587,8 @@ touch --no-create %{_datadir}/icons/crystalsvg 2> /dev/null || :
%{_docdir}/HTML/en/kdelibs*
%endif
%files tools
%attr(4755,root,root) %{_bindir}/kgrantpty
%attr(4755,root,root) %{_bindir}/kpac_dhcp_helper
%changelog
* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 3.5.10-94
- Escape macros in %%changelog
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.10-93
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Sat Jan 20 2018 Björn Esser <besser82@fedoraproject.org> - 3.5.10-92
- Rebuilt for switch to libxcrypt
* Sat Jan 06 2018 Kevin Kofler <Kevin@tigcc.ticalc.org> - 3.5.10-91
- Build against OpenSSL 1.1, patch from Trinity, backported by Kevin Kofler
* Thu Dec 28 2017 Yaakov Selkowitz <yselkowi@redhat.com> - 3.5.10-90
- Fix loading of latest compat-openssl10 (#1529417)
- Use ca-certificates' ca-bundle.crt (#521902)
* Tue Aug 08 2017 Kevin Kofler <Kevin@tigcc.ticalc.org> - 3.5.10-89
- fix libidn dependency removal from .la files (#1479146)
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.10-88
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.10-87
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Wed Jun 21 2017 Than Ngo <than@redhat.com> - 3.5.10-86
- fix build with libidn2
* Wed May 10 2017 Than Ngo <than@redhat.com> - 3.5.10-85
- add support libidn2 for f27
* Sat Mar 04 2017 Kevin Kofler <Kevin@tigcc.ticalc.org> - 3.5.10-84
- backport fix for CVE-2017-6410 from kdelibs 4 (itself backported from KF5)
* Mon Feb 27 2017 Than Ngo <than@redhat.com> - 3.5.10-83
- devel requires compat-openssl10-devel, fix kdebase3 FTBS
* Tue Feb 21 2017 Hans de Goede <hdegoede@redhat.com> - 3.5.10-82
- Fix gcc7 FTBFS (rhbz#1423808)
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.10-81
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Mon Jan 23 2017 Kevin Kofler <Kevin@tigcc.ticalc.org> - 3.5.10-80
- backport fix for CVE-2016-6232 from Trinity (itself backported from KF5)
* Sun Jan 22 2017 Kevin Kofler <Kevin@tigcc.ticalc.org> - 3.5.10-79
- use DrKonqi from Plasma 5 rather than from kde-runtime 4
- build against compat-openssl10 for now (F26+)
- BuildRequires: pkgconf-pkg-config instead of pkgconfig on F26+
* Sat Dec 03 2016 Rex Dieter <rdieter@fedoraproject.org> - 3.5.10-78
- rebuild (jasper)
- drop the extra -Werror= flags for C, they break the configure script
* Wed Sep 28 2016 Kevin Kofler <Kevin@tigcc.ticalc.org> - 3.5.10-77
- backport CUPS 2.2 build fix from Trinity / Slávek Banko
* Wed Sep 28 2016 Than Ngo <than@redhat.com> - 3.5.10-76
- fix bz#1376181, fix endless loop in svgicons
* Mon Jun 27 2016 Than Ngo <than@redhat.com> - 3.5.10-75
- move kpac_dhcp_helper, kpac_dhcp_helper into separate subpackage
* Tue Feb 16 2016 Than Ngo <than@redhat.com> - 3.5.10-74
- fix bz#1307685, FTBFS in rawhide
* Sun Feb 14 2016 Kevin Kofler <Kevin@tigcc.ticalc.org> - 3.5.10-73
- Add -std=gnu++98 to the CXXFLAGS to fix FTBFS (#1307685)
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.10-72
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Thu Dec 10 2015 Kevin Kofler <Kevin@tigcc.ticalc.org> - 3.5.10-71
- Backport CVE-2015-7543 fix (Joseph Wenninger) from kdelibs 4 (#1289235)
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.5.10-70
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Jun 04 2015 Rex Dieter <rdieter@fedoraproject.org> 3.5.10-69
- drop hard Requires: sudo (kdesu can use it, but it's not default)
* Mon May 04 2015 Kevin Kofler <Kevin@tigcc.ticalc.org> - 3.5.10-68
- rebuild against qt3 with fixed build key (#1218091)
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 3.5.10-67
- Rebuilt for GCC 5 C++11 ABI change
* Sun Apr 05 2015 Rex Dieter <rdieter@fedoraproject.org> 3.5.10-66
- rebuild (gcc5)
* Tue Nov 25 2014 Kevin Kofler <Kevin@tigcc.ticalc.org> 3.5.10-65
- fix FTBFS with CUPS 2.0 due to bad CUPS_VERSION_MAJOR checks
* Tue Nov 25 2014 Rex Dieter <rdieter@fedoraproject.org> 3.5.10-64
- rebuild (openexr)
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.5.10-63
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
@ -1301,7 +1136,7 @@ touch --no-create %{_datadir}/icons/crystalsvg 2> /dev/null || :
- should have been 6:3.5.3-9 but accidentally built as 6:3.5.3-8.fc6
- --disable-libfam and --enable-inotify to get inotify support
and to disable gamin/fam usage
- add %%{?dist} to Release:
- add %{?dist} to Release:
* Tue Jul 11 2006 Than Ngo <than@redhat.com> 6:3.5.3-8
- upstream patches,