Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37842273
en ru br
Репозитории ALT
5.1: 4.4.5-alt0.M51.1
4.1: 4.1.3-alt0.M41.2
www.altlinux.org/Changes

Группа :: Графические оболочки/KDE
Пакет: kde4base

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: kdebase-4.1.3-alt-konsole-allow-sgid.patch
Скачать


--- kdebase-4.0.80/apps/konsole/src/main.cpp~	2008-05-21 12:32:54 +0400
+++ kdebase-4.0.80/apps/konsole/src/main.cpp	2008-05-28 19:51:48 +0400
@@ -17,6 +17,8 @@
     02110-1301  USA.
 */
 
+#include <unistd.h>
+
 // Own
 #include "Application.h"
 #include <KDebug>
@@ -89,6 +91,8 @@ extern "C" int KDE_EXPORT kdemain(int ar
     {
         exit(0);
     }
+    gid_t gid = getgid(), egid = getegid();
+    setresgid(gid,gid,egid);
 #ifdef Q_WS_X11 
 	if ( useTransparency() ) 
 	{
@@ -99,12 +103,14 @@ extern "C" int KDE_EXPORT kdemain(int ar
 		getDisplayInformation(display,visual,colormap);
 
 		Application app(display,(Qt::HANDLE)visual,(Qt::HANDLE)colormap);
+		setegid(egid);
 		return app.exec();
 	}
 	else
 #endif 
 	{
     	Application app;
+	setegid(egid);
     	return app.exec();
 	}   
 }
--- kdebase-4.1.3/apps/konsole/src/Pty.cpp~	2008-05-21 12:32:54 +0400
+++ kdebase-4.1.3/apps/konsole/src/Pty.cpp	2008-11-07 17:12:25 +0300
@@ -209,7 +209,10 @@ int Pty::start(const QString& program, 
   
   pty()->setWinSize(_windowLines, _windowColumns);
 
+  gid_t gid = getgid(), egid = getegid();
+  setresgid(gid,gid,egid);
   KProcess::start();
+  setegid(egid);
 
   if (!waitForStarted())
   	return -1;
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin