commit:     e65961b54b0a29c4138b82104cda1e958ba91c84
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Sep  3 08:11:58 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Sep  3 08:12:30 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e65961b5

net-misc/smb4k: Drop slot 4

Package-Manager: Portage-2.3.8, Repoman-2.3.3

 net-misc/smb4k/Manifest                            |   1 -
 .../smb4k/files/smb4k-1.2.3-CVE-2017-8849.patch    | 365 ---------------------
 net-misc/smb4k/smb4k-1.2.3-r1.ebuild               |  29 --
 3 files changed, 395 deletions(-)

diff --git a/net-misc/smb4k/Manifest b/net-misc/smb4k/Manifest
index 658d681ba84..a1576c5916e 100644
--- a/net-misc/smb4k/Manifest
+++ b/net-misc/smb4k/Manifest
@@ -1,2 +1 @@
-DIST smb4k-1.2.3.tar.xz 3942852 SHA256 
e751ae0f6b86c532a7e3796ae9c4590f46009075938afecb5ddd0c7421cf08ef SHA512 
2066439ddda9abfb3649a1f53097637490b2187543a0cff32ad6b2ff6b250c9e3bb7b910f718a4c77761d064db8cbac7e0db2e9cf5f6ef5faf6a244fb070301b
 WHIRLPOOL 
f70b6ebb192888039844036b5798726f95c13ae5592220043c615e5378a04eb6073520ebb4b612248dd34096c17e7054db8ea11f1ed6fa6d6fad2dc6b73d410c
 DIST smb4k-2.0.2.tar.xz 3588608 SHA256 
01cbd10fe7a293243a65333baa65871eec8de007d0110639498fc1e4c190a199 SHA512 
de210b059757525c6e5b6db733c70f43f62ba14cdc447848c84325d3b838d2ac6d8aa591ef67881decb39801b9519ef05fc805e94bc02b93c629457194e1a974
 WHIRLPOOL 
3855c915319d017a5cb667c1f7b59357a2aa86586635a1ca4e80820dd695922fe54889dbd12f6b27d39cbbb767b313b680ac76069e3562791cd962e2ec3c880a

diff --git a/net-misc/smb4k/files/smb4k-1.2.3-CVE-2017-8849.patch 
b/net-misc/smb4k/files/smb4k-1.2.3-CVE-2017-8849.patch
deleted file mode 100644
index b4f619ffb67..00000000000
--- a/net-misc/smb4k/files/smb4k-1.2.3-CVE-2017-8849.patch
+++ /dev/null
@@ -1,365 +0,0 @@
-From 71554140bdaede27b95dbe4c9b5a028a83c83cce Mon Sep 17 00:00:00 2001
-From: Alexander Reinholdt <[email protected]>
-Date: Wed, 10 May 2017 10:23:34 +0200
-Subject: Find the mount/umount commands in the helper
-
-Instead of trusting what we get passed in
-CVE-2017-8849
----
- core/smb4kglobal.cpp         | 65 +++++++++++++++++++++++++++++++++++-
- core/smb4kglobal.h           | 16 ++++++++-
- core/smb4kmounter_p.cpp      | 78 ++++----------------------------------------
- helpers/CMakeLists.txt       |  6 +++-
- helpers/smb4kmounthelper.cpp | 51 +++++++++++++++++++++++++++--
- 5 files changed, 139 insertions(+), 77 deletions(-)
-
-diff --git a/core/smb4kglobal.cpp b/core/smb4kglobal.cpp
-index 172016f..818a78a 100644
---- a/core/smb4kglobal.cpp
-+++ b/core/smb4kglobal.cpp
-@@ -2,7 +2,7 @@
-     smb4kglobal  -  This is the global namespace for Smb4K.
-                              -------------------
-     begin                : Sa Apr 2 2005
--    copyright            : (C) 2005-2014 by Alexander Reinholdt
-+    copyright            : (C) 2005-2017 by Alexander Reinholdt
-     email                : [email protected]
-  ***************************************************************************/
- 
-@@ -851,3 +851,66 @@ QStringList Smb4KGlobal::whitelistedMountArguments()
- #endif
- 
- 
-+const QString Smb4KGlobal::findMountExecutable()
-+{
-+  QString mount;
-+  QStringList paths;
-+  paths << "/bin";
-+  paths << "/sbin";
-+  paths << "/usr/bin";
-+  paths << "/usr/sbin";
-+  paths << "/usr/local/bin";
-+  paths << "/usr/local/sbin";
-+
-+  for (int i = 0; i < paths.size(); ++i)
-+  {
-+#if defined(Q_OS_LINUX)
-+    mount = KGlobal::dirs()->findExe("mount.cifs", paths.at(i));
-+#elif defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)
-+    mount = KGlobal::dirs()->findExe("mount_smbfs", paths.at(i));
-+#endif
-+
-+    if (!mount.isEmpty())
-+    {
-+      break;
-+    }
-+    else
-+    {
-+      continue;
-+    }
-+  }
-+  
-+  return mount;
-+}
-+
-+
-+const QString Smb4KGlobal::findUmountExecutable()
-+{
-+  // Find the umount program.
-+  QString umount;
-+  QStringList paths;
-+  paths << "/bin";
-+  paths << "/sbin";
-+  paths << "/usr/bin";
-+  paths << "/usr/sbin";
-+  paths << "/usr/local/bin";
-+  paths << "/usr/local/sbin";
-+
-+  for ( int i = 0; i < paths.size(); ++i )
-+  {
-+    umount = KGlobal::dirs()->findExe("umount", paths.at(i));
-+
-+    if (!umount.isEmpty())
-+    {
-+      break;
-+    }
-+    else
-+    {
-+      continue;
-+    }
-+  }
-+  
-+  return umount;
-+}
-+
-+
-diff --git a/core/smb4kglobal.h b/core/smb4kglobal.h
-index db1805b..0ef377d 100644
---- a/core/smb4kglobal.h
-+++ b/core/smb4kglobal.h
-@@ -2,7 +2,7 @@
-     smb4kglobal  -  This is the global namespace for Smb4K.
-                              -------------------
-     begin                : Sa Apr 2 2005
--    copyright            : (C) 2005-2014 by Alexander Reinholdt
-+    copyright            : (C) 2005-2017 by Alexander Reinholdt
-     email                : [email protected]
-  ***************************************************************************/
- 
-@@ -455,6 +455,20 @@ namespace Smb4KGlobal
-    */
-   KDE_EXPORT QStringList whitelistedMountArguments();
- #endif
-+  
-+  /**
-+   * Find the mount executable on the system.
-+   * 
-+   * @returns the path of the mount executable.
-+   */
-+  KDE_EXPORT const QString findMountExecutable();
-+  
-+  /**
-+   * Find the umount executable on the system.
-+   * 
-+   * @returns the path of the umount executable.
-+   */
-+  KDE_EXPORT const QString findUmountExecutable();
- };
- 
- #endif
-diff --git a/core/smb4kmounter_p.cpp b/core/smb4kmounter_p.cpp
-index 63a87ed..342052a 100644
---- a/core/smb4kmounter_p.cpp
-+++ b/core/smb4kmounter_p.cpp
-@@ -207,30 +207,7 @@ bool Smb4KMountJob::createMountAction(Smb4KShare *share, 
Action *action)
- //
- bool Smb4KMountJob::fillArgs(Smb4KShare *share, QMap<QString, QVariant>& map)
- {
--  // Find the mount program.
--  QString mount;
--  QStringList paths;
--  paths << "/bin";
--  paths << "/sbin";
--  paths << "/usr/bin";
--  paths << "/usr/sbin";
--  paths << "/usr/local/bin";
--  paths << "/usr/local/sbin";
--
--  for (int i = 0; i < paths.size(); ++i)
--  {
--    mount = KGlobal::dirs()->findExe("mount.cifs", paths.at(i));
--
--    if (!mount.isEmpty())
--    {
--      map.insert("mh_command", mount);
--      break;
--    }
--    else
--    {
--      continue;
--    }
--  }
-+  const QString mount = findMountExecutable();
- 
-   if (mount.isEmpty())
-   {
-@@ -242,6 +219,8 @@ bool Smb4KMountJob::fillArgs(Smb4KShare *share, 
QMap<QString, QVariant>& map)
-     // Do nothing
-   }
-   
-+  map.insert("mh_command", mount);
-+  
-   // Mount arguments.
-   QMap<QString, QString> global_options = globalSambaOptions();
-   Smb4KCustomOptions *options  = 
Smb4KCustomOptionsManager::self()->findOptions(share);
-@@ -729,30 +708,7 @@ bool Smb4KMountJob::fillArgs(Smb4KShare *share, 
QMap<QString, QVariant>& map)
- //
- bool Smb4KMountJob::fillArgs(Smb4KShare *share, QMap<QString, QVariant>& map)
- {
--  // Find the mount program.
--  QString mount;
--  QStringList paths;
--  paths << "/bin";
--  paths << "/sbin";
--  paths << "/usr/bin";
--  paths << "/usr/sbin";
--  paths << "/usr/local/bin";
--  paths << "/usr/local/sbin";
--
--  for (int i = 0; i < paths.size(); ++i)
--  {
--    mount = KGlobal::dirs()->findExe("mount_smbfs", paths.at(i));
--
--    if (!mount.isEmpty())
--    {
--      map.insert("mh_command", mount);
--      break;
--    }
--    else
--    {
--      continue;
--    }
--  }
-+  const QString mount = findMountExecutable();
- 
-   if (mount.isEmpty())
-   {
-@@ -764,6 +720,8 @@ bool Smb4KMountJob::fillArgs(Smb4KShare *share, 
QMap<QString, QVariant>& map)
-     // Do nothing
-   }
-   
-+  map.insert("mh_command", mount);
-+  
-   // Mount arguments.
-   QMap<QString, QString> global_options = globalSambaOptions();
-   Smb4KCustomOptions *options  = 
Smb4KCustomOptionsManager::self()->findOptions(share);
-@@ -1253,29 +1211,7 @@ bool Smb4KUnmountJob::createUnmountAction(Smb4KShare 
*share, Action *action)
-     // Do nothing
-   }
-   
--  // Find the umount program.
--  QString umount;
--  QStringList paths;
--  paths << "/bin";
--  paths << "/sbin";
--  paths << "/usr/bin";
--  paths << "/usr/sbin";
--  paths << "/usr/local/bin";
--  paths << "/usr/local/sbin";
--
--  for ( int i = 0; i < paths.size(); ++i )
--  {
--    umount = KGlobal::dirs()->findExe("umount", paths.at(i));
--
--    if (!umount.isEmpty())
--    {
--      break;
--    }
--    else
--    {
--      continue;
--    }
--  }
-+  const QString umount = findUmountExecutable();
- 
-   if (umount.isEmpty() && !m_silent)
-   {
-diff --git a/helpers/CMakeLists.txt b/helpers/CMakeLists.txt
-index e9e670b..cd4228d 100644
---- a/helpers/CMakeLists.txt
-+++ b/helpers/CMakeLists.txt
-@@ -1,7 +1,11 @@
-+include_directories(
-+  ${CMAKE_SOURCE_DIR}/core
-+  ${CMAKE_BINARY_DIR}/core )
-+
- set( smb4kmounthelper_SRCS smb4kmounthelper.cpp )
- 
- kde4_add_executable( mounthelper ${smb4kmounthelper_SRCS} )
--target_link_libraries( mounthelper ${KDE4_KDECORE_LIBS} ${KDE4_KIO_LIBS} )
-+target_link_libraries( mounthelper smb4kcore ${KDE4_KDECORE_LIBS} 
${KDE4_KIO_LIBS} )
- install( TARGETS mounthelper DESTINATION ${LIBEXEC_INSTALL_DIR} )
- 
- kde4_install_auth_helper_files( mounthelper net.sourceforge.smb4k.mounthelper 
root )
-diff --git a/helpers/smb4kmounthelper.cpp b/helpers/smb4kmounthelper.cpp
-index a2f2fed..7959020 100644
---- a/helpers/smb4kmounthelper.cpp
-+++ b/helpers/smb4kmounthelper.cpp
-@@ -29,6 +29,7 @@
- 
- // application specific includes
- #include "smb4kmounthelper.h"
-+#include "core/smb4kglobal.h"
- 
- // Qt includes
- #include <QProcessEnvironment>
-@@ -43,12 +44,35 @@
- #include <kmountpoint.h>
- #include <kurl.h>
- 
-+using namespace Smb4KGlobal;
-+
- KDE4_AUTH_HELPER_MAIN( "net.sourceforge.smb4k.mounthelper", Smb4KMountHelper )
- 
- 
- ActionReply Smb4KMountHelper::mount(const QVariantMap &args)
- {
-   ActionReply reply;
-+  
-+  //
-+  // Get the mount executable
-+  //
-+  const QString mount = findMountExecutable();
-+  
-+  //
-+  // Check the executable
-+  //
-+  if (mount != args["mh_command"].toString())
-+  {
-+    // Something weird is going on, bail out.
-+    reply.setErrorCode(ActionReply::HelperError);
-+    reply.setErrorDescription(i18n("Wrong executable passed. Bailing out."));
-+    return reply;
-+  }
-+  else
-+  {
-+    // Do nothing
-+  }
-+  
-   // The mountpoint is a unique and can be used to
-   // find the share.
-   reply.addData("mh_mountpoint", args["mh_mountpoint"]);
-@@ -75,12 +99,12 @@ ActionReply Smb4KMountHelper::mount(const QVariantMap 
&args)
-   // Set the mount command here.
-   QStringList command;
- #if defined(Q_OS_LINUX)
--  command << args["mh_command"].toString();
-+  command << mount;
-   command << args["mh_unc"].toString();
-   command << args["mh_mountpoint"].toString();
-   command << args["mh_options"].toStringList();
- #elif defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)
--  command << args["mh_command"].toString();
-+  command << mount;
-   command << args["mh_options"].toStringList();
-   command << args["mh_unc"].toString();
-   command << args["mh_mountpoint"].toString();
-@@ -161,6 +185,27 @@ ActionReply Smb4KMountHelper::mount(const QVariantMap 
&args)
- ActionReply Smb4KMountHelper::unmount(const QVariantMap &args)
- {
-   ActionReply reply;
-+  
-+  //
-+  // Get the umount executable
-+  //
-+  const QString umount = findUmountExecutable();
-+  
-+  //
-+  // Check the executable
-+  //
-+  if (umount != args["mh_command"].toString())
-+  {
-+    // Something weird is going on, bail out.
-+    reply.setErrorCode(ActionReply::HelperError);
-+    reply.setErrorDescription(i18n("Wrong executable passed. Bailing out."));
-+    return reply;
-+  }
-+  else
-+  {
-+    // Do nothing
-+  }
-+  
-   // The mountpoint is a unique and can be used to
-   // find the share.
-   reply.addData("mh_mountpoint", args["mh_mountpoint"]);
-@@ -208,7 +253,7 @@ ActionReply Smb4KMountHelper::unmount(const QVariantMap 
&args)
-   
-   // Set the umount command here.
-   QStringList command;
--  command << args["mh_command"].toString();
-+  command << umount;
-   command << args["mh_options"].toStringList();
-   command << args["mh_mountpoint"].toString();
- 
--- 
-cgit v0.11.2

diff --git a/net-misc/smb4k/smb4k-1.2.3-r1.ebuild 
b/net-misc/smb4k/smb4k-1.2.3-r1.ebuild
deleted file mode 100644
index 296f781934b..00000000000
--- a/net-misc/smb4k/smb4k-1.2.3-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DECLARATIVE_REQUIRED="always"
-KDE_LINGUAS="bg bs ca ca@valencia cs da de en_GB eo es et fi fr ga gl hu is it
-ja ko lt mai mr nb nds nl nn pl pt pt_BR ro ru sk sv tr ug uk zh_CN zh_TW"
-KDE_HANDBOOK="optional"
-KDE_DOC_DIRS="doc doc-translations/%lingua_${PN}"
-inherit kde4-base
-
-DESCRIPTION="The advanced network neighborhood browser by KDE"
-HOMEPAGE="https://sourceforge.net/projects/smb4k/";
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="4"
-KEYWORDS="amd64 x86"
-IUSE="debug"
-
-RDEPEND="net-fs/samba[cups]"
-DEPEND="${RDEPEND}
-       sys-devel/gettext
-"
-
-DOCS=( AUTHORS BUGS ChangeLog README )
-
-PATCHES=( "${FILESDIR}/${P}-CVE-2017-8849.patch" )

Reply via email to