summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas K. Hüttel <dilfridge@gentoo.org>2013-07-20 21:54:05 +0000
committerAndreas K. Hüttel <dilfridge@gentoo.org>2013-07-20 21:54:05 +0000
commit12b3de9f806c2ddcb0daea0cacf68fdaaaf4fe52 (patch)
treec7d22c37b65d35208efa220e7e96dcfe23319986 /kde-base/plasma-workspace
parentInstall scalable icon for better fit in gnome-shell, use eapi5 and gnome2.eclass (diff)
downloadgentoo-2-12b3de9f806c2ddcb0daea0cacf68fdaaaf4fe52.tar.gz
gentoo-2-12b3de9f806c2ddcb0daea0cacf68fdaaaf4fe52.tar.bz2
gentoo-2-12b3de9f806c2ddcb0daea0cacf68fdaaaf4fe52.zip
Fix potential nullpointer issue (backport)
(Portage version: 2.2.0_alpha188/cvs/Linux x86_64, signed Manifest commit with key EBE6A336BE19039C!)
Diffstat (limited to 'kde-base/plasma-workspace')
-rw-r--r--kde-base/plasma-workspace/ChangeLog11
-rw-r--r--kde-base/plasma-workspace/files/plasma-workspace-4.10.4-crypt.patch74
-rw-r--r--kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild145
-rw-r--r--kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild145
4 files changed, 374 insertions, 1 deletions
diff --git a/kde-base/plasma-workspace/ChangeLog b/kde-base/plasma-workspace/ChangeLog
index 0d5ad06919fc..9c92abdbebe7 100644
--- a/kde-base/plasma-workspace/ChangeLog
+++ b/kde-base/plasma-workspace/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for kde-base/plasma-workspace
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/kde-base/plasma-workspace/ChangeLog,v 1.230 2013/07/03 07:42:27 kensington Exp $
+# $Header: /var/cvsroot/gentoo-x86/kde-base/plasma-workspace/ChangeLog,v 1.231 2013/07/20 21:54:05 dilfridge Exp $
+
+*plasma-workspace-4.10.5-r2 (20 Jul 2013)
+*plasma-workspace-4.10.4-r2 (20 Jul 2013)
+
+ 20 Jul 2013; Andreas K. Huettel <dilfridge@gentoo.org>
+ +plasma-workspace-4.10.4-r2.ebuild,
+ +files/plasma-workspace-4.10.4-crypt.patch,
+ +plasma-workspace-4.10.5-r2.ebuild:
+ Fix potential nullpointer issue (backport)
*plasma-workspace-4.10.5-r1 (03 Jul 2013)
diff --git a/kde-base/plasma-workspace/files/plasma-workspace-4.10.4-crypt.patch b/kde-base/plasma-workspace/files/plasma-workspace-4.10.4-crypt.patch
new file mode 100644
index 000000000000..6d36a07aae3d
--- /dev/null
+++ b/kde-base/plasma-workspace/files/plasma-workspace-4.10.4-crypt.patch
@@ -0,0 +1,74 @@
+From 45b7f137fbc0b942fd2c9b4e8d8c1f0293e64ba7 Mon Sep 17 00:00:00 2001
+From: Michael Pyne <mpyne@kde.org>
+Date: Sat, 29 Jun 2013 16:13:20 -0400
+Subject: [PATCH] kdm, kcheckpass: Check for NULL return from crypt(3) and
+ friends.
+
+Potential issue noted and fixed by Mancha <mancha1@hush.com>.
+
+Patch reviewed by myself and ossi. Backported to 4.10 by myself.
+
+REVIEW:111261
+FIXED-IN:4.10.5
+---
+ kcheckpass/checkpass_etcpasswd.c | 3 ++-
+ kcheckpass/checkpass_osfc2passwd.c | 3 ++-
+ kcheckpass/checkpass_shadow.c | 2 +-
+ kdm/backend/client.c | 7 +++++--
+ 4 files changed, 10 insertions(+), 5 deletions(-)
+
+diff --git a/kcheckpass/checkpass_etcpasswd.c b/kcheckpass/checkpass_etcpasswd.c
+index 1dbe06f..e261b7c 100644
+--- a/kcheckpass/checkpass_etcpasswd.c
++++ b/kcheckpass/checkpass_etcpasswd.c
+@@ -35,6 +35,7 @@ AuthReturn Authenticate(const char *method,
+ {
+ struct passwd *pw;
+ char *passwd;
++ char *crpt_passwd;
+
+ if (strcmp(method, "classic"))
+ return AuthError;
+@@ -49,7 +50,7 @@ AuthReturn Authenticate(const char *method,
+ if (!(passwd = conv(ConvGetHidden, 0)))
+ return AuthAbort;
+
+- if (!strcmp(pw->pw_passwd, crypt(passwd, pw->pw_passwd))) {
++ if ((crpt_passwd = crypt(passwd, pw->pw_passwd)) && !strcmp(pw->pw_passwd, crpt_passwd)) {
+ dispose(passwd);
+ return AuthOk; /* Success */
+ }
+diff --git a/kcheckpass/checkpass_osfc2passwd.c b/kcheckpass/checkpass_osfc2passwd.c
+index 9a074f9..d181233 100644
+--- a/kcheckpass/checkpass_osfc2passwd.c
++++ b/kcheckpass/checkpass_osfc2passwd.c
+@@ -38,6 +38,7 @@ AuthReturn Authenticate(const char *method,
+ const char *login, char *(*conv) (ConvRequest, const char *))
+ {
+ char *passwd;
++ char *crpt_passwd;
+ char c2passwd[256];
+
+ if (strcmp(method, "classic"))
+@@ -52,7 +53,7 @@ AuthReturn Authenticate(const char *method,
+ if (!(passwd = conv(ConvGetHidden, 0)))
+ return AuthAbort;
+
+- if (!strcmp(c2passwd, osf1c2crypt(passwd, c2passwd))) {
++ if ((crpt_passwd = osf1c2crypt(passwd, c2passwd)) && !strcmp(c2passwd, crpt_passwd)) {
+ dispose(passwd);
+ return AuthOk; /* Success */
+ }
+diff --git a/kcheckpass/checkpass_shadow.c b/kcheckpass/checkpass_shadow.c
+index ec3a4e0..c0f6913 100644
+--- a/kcheckpass/checkpass_shadow.c
++++ b/kcheckpass/checkpass_shadow.c
+@@ -69,7 +69,7 @@ AuthReturn Authenticate(const char *method,
+ crpt_passwd = crypt(typed_in_password, password);
+ #endif
+
+- if (!strcmp(password, crpt_passwd )) {
++ if (crpt_passwd && !strcmp(password, crpt_passwd )) {
+ dispose(typed_in_password);
+ return AuthOk; /* Success */
+ }
diff --git a/kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild b/kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild
new file mode 100644
index 000000000000..b5546342a53e
--- /dev/null
+++ b/kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/kde-base/plasma-workspace/plasma-workspace-4.10.4-r2.ebuild,v 1.1 2013/07/20 21:54:05 dilfridge Exp $
+
+EAPI=5
+
+DECLARATIVE_REQUIRED="always"
+KDE_HANDBOOK="optional"
+KMNAME="kde-workspace"
+KMMODULE="plasma"
+PYTHON_DEPEND="python? 2"
+OPENGL_REQUIRED="always"
+inherit python kde4-meta
+
+DESCRIPTION="Plasma: KDE desktop framework"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug gps json python qalculate +rss semantic-desktop"
+
+COMMONDEPEND="
+ dev-libs/libdbusmenu-qt
+ >=dev-qt/qtcore-4.8.4-r3:4
+ !kde-misc/ktouchpadenabler
+ $(add_kdebase_dep kactivities)
+ $(add_kdebase_dep kdelibs 'semantic-desktop(+)?')
+ $(add_kdebase_dep kephal)
+ $(add_kdebase_dep ksysguard)
+ $(add_kdebase_dep libkworkspace)
+ $(add_kdebase_dep libplasmagenericshell)
+ $(add_kdebase_dep libtaskmanager)
+ $(add_kdebase_dep solid)
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrender
+ gps? ( >=sci-geosciences/gpsd-2.37 )
+ json? ( dev-libs/qjson )
+ python? (
+ >=dev-python/PyQt4-4.4.0[X]
+ $(add_kdebase_dep pykde4)
+ )
+ qalculate? ( sci-libs/libqalculate )
+ rss? (
+ $(add_kdebase_dep kdepimlibs 'semantic-desktop(+)?')
+ $(add_kdebase_dep libplasmaclock 'holidays(+)')
+ )
+ !rss? ( $(add_kdebase_dep libplasmaclock '-holidays(+)') )
+ semantic-desktop? (
+ dev-libs/soprano
+ $(add_kdebase_dep nepomuk-core)
+ )
+"
+DEPEND="${COMMONDEPEND}
+ rss? ( dev-libs/boost )
+ x11-proto/compositeproto
+ x11-proto/damageproto
+ x11-proto/fixesproto
+ x11-proto/renderproto
+"
+RDEPEND="${COMMONDEPEND}
+ $(add_kdebase_dep plasma-runtime)
+"
+
+KMEXTRA="
+ appmenu/
+ ktouchpadenabler/
+ statusnotifierwatcher/
+"
+KMEXTRACTONLY="
+ kcheckpass/
+ krunner/dbus/org.freedesktop.ScreenSaver.xml
+ krunner/dbus/org.kde.krunner.App.xml
+ ksmserver/org.kde.KSMServerInterface.xml
+ ksmserver/screenlocker/
+ libs/kephal/
+ libs/kworkspace/
+ libs/taskmanager/
+ libs/plasmagenericshell/
+ libs/ksysguard/
+ libs/kdm/kgreeterplugin.h
+ ksysguard/
+"
+
+KMLOADLIBS="libkworkspace libplasmaclock libplasmagenericshell libtaskmanager"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.10.1-noplasmalock.patch"
+ "${FILESDIR}/${PN}-4.10.4-keep-batterymonitor-in-sync-with-systray.patch"
+ "${FILESDIR}/${PN}-4.10.4-crypt.patch"
+ )
+
+pkg_setup() {
+ if use python ; then
+ python_set_active_version 2
+ python_pkg_setup
+ fi
+ kde4-meta_pkg_setup
+}
+
+src_unpack() {
+ if use handbook; then
+ KMEXTRA+=" doc/plasma-desktop"
+ fi
+
+ kde4-meta_src_unpack
+}
+
+src_configure() {
+ mycmakeargs=(
+ $(cmake-utils_use_with gps libgps)
+ $(cmake-utils_use_with json QJSON)
+ $(cmake-utils_use_with python PythonLibrary)
+ $(cmake-utils_use_with qalculate)
+ $(cmake-utils_use_with rss KdepimLibs)
+ $(cmake-utils_use_with semantic-desktop Akonadi)
+ $(cmake-utils_use_with semantic-desktop NepomukCore)
+ $(cmake-utils_use_with semantic-desktop Soprano)
+ -DWITH_Googlegadgets=OFF
+ -DWITH_Xmms=OFF
+ )
+
+ kde4-meta_src_configure
+}
+
+pkg_postinst() {
+ kde4-meta_pkg_postinst
+
+ if use python; then
+ python_mod_optimize \
+ PyKDE4/plasmascript.py \
+ /usr/share/apps/plasma_scriptengine_python
+ fi
+}
+
+pkg_postrm() {
+ kde4-meta_pkg_postrm
+
+ if use python; then
+ python_mod_cleanup \
+ PyKDE4/plasmascript.py \
+ /usr/share/apps/plasma_scriptengine_python
+ fi
+}
diff --git a/kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild b/kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild
new file mode 100644
index 000000000000..b8a42a122fb2
--- /dev/null
+++ b/kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/kde-base/plasma-workspace/plasma-workspace-4.10.5-r2.ebuild,v 1.1 2013/07/20 21:54:05 dilfridge Exp $
+
+EAPI=5
+
+DECLARATIVE_REQUIRED="always"
+KDE_HANDBOOK="optional"
+KMNAME="kde-workspace"
+KMMODULE="plasma"
+PYTHON_DEPEND="python? 2"
+OPENGL_REQUIRED="always"
+inherit python kde4-meta
+
+DESCRIPTION="Plasma: KDE desktop framework"
+KEYWORDS=" ~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug gps json python qalculate +rss semantic-desktop"
+
+COMMONDEPEND="
+ dev-libs/libdbusmenu-qt
+ >=dev-qt/qtcore-4.8.4-r3:4
+ !kde-misc/ktouchpadenabler
+ $(add_kdebase_dep kactivities)
+ $(add_kdebase_dep kdelibs 'semantic-desktop(+)?')
+ $(add_kdebase_dep kephal)
+ $(add_kdebase_dep ksysguard)
+ $(add_kdebase_dep libkworkspace)
+ $(add_kdebase_dep libplasmagenericshell)
+ $(add_kdebase_dep libtaskmanager)
+ $(add_kdebase_dep solid)
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrender
+ gps? ( >=sci-geosciences/gpsd-2.37 )
+ json? ( dev-libs/qjson )
+ python? (
+ >=dev-python/PyQt4-4.4.0[X]
+ $(add_kdebase_dep pykde4)
+ )
+ qalculate? ( sci-libs/libqalculate )
+ rss? (
+ $(add_kdebase_dep kdepimlibs 'semantic-desktop(+)?')
+ $(add_kdebase_dep libplasmaclock 'holidays(+)')
+ )
+ !rss? ( $(add_kdebase_dep libplasmaclock '-holidays(+)') )
+ semantic-desktop? (
+ dev-libs/soprano
+ $(add_kdebase_dep nepomuk-core)
+ )
+"
+DEPEND="${COMMONDEPEND}
+ rss? ( dev-libs/boost )
+ x11-proto/compositeproto
+ x11-proto/damageproto
+ x11-proto/fixesproto
+ x11-proto/renderproto
+"
+RDEPEND="${COMMONDEPEND}
+ $(add_kdebase_dep plasma-runtime)
+"
+
+KMEXTRA="
+ appmenu/
+ ktouchpadenabler/
+ statusnotifierwatcher/
+"
+KMEXTRACTONLY="
+ kcheckpass/
+ krunner/dbus/org.freedesktop.ScreenSaver.xml
+ krunner/dbus/org.kde.krunner.App.xml
+ ksmserver/org.kde.KSMServerInterface.xml
+ ksmserver/screenlocker/
+ libs/kephal/
+ libs/kworkspace/
+ libs/taskmanager/
+ libs/plasmagenericshell/
+ libs/ksysguard/
+ libs/kdm/kgreeterplugin.h
+ ksysguard/
+"
+
+KMLOADLIBS="libkworkspace libplasmaclock libplasmagenericshell libtaskmanager"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.10.1-noplasmalock.patch"
+ "${FILESDIR}/${PN}-4.10.5-leak.patch"
+ "${FILESDIR}/${PN}-4.10.4-crypt.patch"
+)
+
+pkg_setup() {
+ if use python ; then
+ python_set_active_version 2
+ python_pkg_setup
+ fi
+ kde4-meta_pkg_setup
+}
+
+src_unpack() {
+ if use handbook; then
+ KMEXTRA+=" doc/plasma-desktop"
+ fi
+
+ kde4-meta_src_unpack
+}
+
+src_configure() {
+ mycmakeargs=(
+ $(cmake-utils_use_with gps libgps)
+ $(cmake-utils_use_with json QJSON)
+ $(cmake-utils_use_with python PythonLibrary)
+ $(cmake-utils_use_with qalculate)
+ $(cmake-utils_use_with rss KdepimLibs)
+ $(cmake-utils_use_with semantic-desktop Akonadi)
+ $(cmake-utils_use_with semantic-desktop NepomukCore)
+ $(cmake-utils_use_with semantic-desktop Soprano)
+ -DWITH_Googlegadgets=OFF
+ -DWITH_Xmms=OFF
+ )
+
+ kde4-meta_src_configure
+}
+
+pkg_postinst() {
+ kde4-meta_pkg_postinst
+
+ if use python; then
+ python_mod_optimize \
+ PyKDE4/plasmascript.py \
+ /usr/share/apps/plasma_scriptengine_python
+ fi
+}
+
+pkg_postrm() {
+ kde4-meta_pkg_postrm
+
+ if use python; then
+ python_mod_cleanup \
+ PyKDE4/plasmascript.py \
+ /usr/share/apps/plasma_scriptengine_python
+ fi
+}