[Pkg-kde-commits] rev 1467 -
branches/kde-3.4.0/packages/kdebase/debian/patches
Christopher Martin
chrsmrtn-guest at costa.debian.org
Tue Aug 16 23:00:54 UTC 2005
Author: chrsmrtn-guest
Date: 2005-08-16 23:00:53 +0000 (Tue, 16 Aug 2005)
New Revision: 1467
Added:
branches/kde-3.4.0/packages/kdebase/debian/patches/26_face_load.diff
Log:
New patch for kdebase.
Until a recent post-3.4.2 branch commit, kdm
could load user face icons (in $HOME) even if
the home directory was not world-readable, since
kdm runs as root.
This branch commit, however, increased the amount
of code run as 'nobody' to include all of the
face-loading code, therefore losing this ability.
Oswald Buddenhagen doesn't care (I asked).
This patch partially reverts that commit, allowing
user face icons to be loaded even when $HOME isn't
world-readable. kdm once again behaves the same way
as gdm.
Allowing users to set their own faces is disabled
by default anyway, so the security implications
are exceedingly minimal (and this was never a problem
in the past).
Added: branches/kde-3.4.0/packages/kdebase/debian/patches/26_face_load.diff
===================================================================
--- branches/kde-3.4.0/packages/kdebase/debian/patches/26_face_load.diff 2005-08-16 17:59:15 UTC (rev 1466)
+++ branches/kde-3.4.0/packages/kdebase/debian/patches/26_face_load.diff 2005-08-16 23:00:53 UTC (rev 1467)
@@ -0,0 +1,41 @@
+--- kde.orig/kdm/kfrontend/kgreeter.cpp
++++ kde.patched/kdm/kfrontend/kgreeter.cpp
+@@ -167,6 +167,8 @@
+ KGreeter::insertUser( const QImage &default_pix,
+ const QString &username, struct passwd *ps )
+ {
++ seteuid( ps->pw_uid );
++
+ if (userList)
+ userList->append( username );
+ if (!userView)
+@@ -202,6 +204,8 @@
+ realname.append( "\n" ).append( username );
+ new UserListViewItem( userView, realname, QPixmap( p ), username );
+ }
++
++ seteuid( 0 );
+ }
+
+ class KCStringList : public QValueList<QCString> {
+@@ -248,10 +252,8 @@
+ {
+ struct passwd *ps;
+
+- // XXX remove seteuid-voodoo when we run as nobody
+ if (!(ps = getpwnam( "nobody" )))
+ return;
+- seteuid( ps->pw_uid );
+
+ QImage default_pix;
+ if (userView) {
+@@ -315,9 +317,6 @@
+ if (userList)
+ userList->sort();
+ }
+-
+- // XXX remove seteuid-voodoo when we run as nobody
+- seteuid( 0 );
+ }
+
+ void
More information about the Pkg-kde-commits
mailing list