diff options
author | Tomas Chvatal <scarabeus@gentoo.org> | 2010-08-10 13:10:29 +0000 |
---|---|---|
committer | Tomas Chvatal <scarabeus@gentoo.org> | 2010-08-10 13:10:29 +0000 |
commit | b3bff42b4c1b3412d739666904967d0361824837 (patch) | |
tree | e43a723ed018f9692f04c1d4f8b029fc16c79cd9 /kde-base/kdm | |
parent | Drop unused patch. (diff) | |
download | gentoo-2-b3bff42b4c1b3412d739666904967d0361824837.tar.gz gentoo-2-b3bff42b4c1b3412d739666904967d0361824837.tar.bz2 gentoo-2-b3bff42b4c1b3412d739666904967d0361824837.zip |
Drop unused patch.
(Portage version: 2.2_rc67/cvs/Linux x86_64)
Diffstat (limited to 'kde-base/kdm')
-rw-r--r-- | kde-base/kdm/ChangeLog | 8 | ||||
-rw-r--r-- | kde-base/kdm/files/kdm-4.3.1-set-grub-default.patch | 37 | ||||
-rw-r--r-- | kde-base/kdm/files/kdm-4.3.5-CVE-2010-0436.patch | 225 | ||||
-rw-r--r-- | kde-base/kdm/files/kdm-4.4.2-CVE-2010-0436.patch | 202 |
4 files changed, 7 insertions, 465 deletions
diff --git a/kde-base/kdm/ChangeLog b/kde-base/kdm/ChangeLog index c4ee2221f4e6..b6a86ac1ed7f 100644 --- a/kde-base/kdm/ChangeLog +++ b/kde-base/kdm/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for kde-base/kdm # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/kde-base/kdm/ChangeLog,v 1.229 2010/08/09 17:35:04 scarabeus Exp $ +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdm/ChangeLog,v 1.230 2010/08/10 13:10:29 scarabeus Exp $ + + 10 Aug 2010; Tomáš Chvátal <scarabeus@gentoo.org> + -files/kdm-4.3.1-set-grub-default.patch, + -files/kdm-4.3.5-CVE-2010-0436.patch, + -files/kdm-4.4.2-CVE-2010-0436.patch: + Drop unused patch. 09 Aug 2010; Tomáš Chvátal <scarabeus@gentoo.org> kdm-4.4.5.ebuild: Drop alpha ia64 and sparc per the AT Lead permission. diff --git a/kde-base/kdm/files/kdm-4.3.1-set-grub-default.patch b/kde-base/kdm/files/kdm-4.3.1-set-grub-default.patch deleted file mode 100644 index 54843d51803b..000000000000 --- a/kde-base/kdm/files/kdm-4.3.1-set-grub-default.patch +++ /dev/null @@ -1,37 +0,0 @@ -Index: kdm/backend/bootman.c -=================================================================== ---- kdm/backend/bootman.c (revision 1030992) -+++ kdm/backend/bootman.c (revision 1030993) -@@ -80,7 +80,7 @@ - int len; - char line[1000]; - -- if (!grub && !(grub = locate( "grub" ))) -+ if (!grub && !(grub = locate( "grub-set-default" ))) - return BO_NOMAN; - - *def = 0; -@@ -130,19 +130,15 @@ - static void - commitGrub( void ) - { -- FILE *f; -- int pid; -- static const char *args[] = { 0, "--batch", "--no-floppy", 0 }; -+ char index[16]; -+ const char *args[3] = { grub, index, 0 }; - - if (sdRec.bmstamp != mTime( GRUB_MENU ) && - setGrub( sdRec.osname, &sdRec ) != BO_OK) - return; - -- args[0] = grub; -- if ((f = pOpen( (char **)args, 'w', &pid ))) { -- fprintf( f, "savedefault --default=%d --once\n", sdRec.osindex ); -- pClose( f, &pid ); -- } -+ sprintf( index, "%d", sdRec.osindex ); -+ runAndWait( (char **)args, environ ); - } - - static char *lilo; diff --git a/kde-base/kdm/files/kdm-4.3.5-CVE-2010-0436.patch b/kde-base/kdm/files/kdm-4.3.5-CVE-2010-0436.patch deleted file mode 100644 index 2ca173a10f74..000000000000 --- a/kde-base/kdm/files/kdm-4.3.5-CVE-2010-0436.patch +++ /dev/null @@ -1,225 +0,0 @@ -Index: kdm/ConfigureChecks.cmake -=================================================================== ---- kdm/ConfigureChecks.cmake (revision 1114813) -+++ kdm/ConfigureChecks.cmake (working copy) -@@ -80,6 +80,38 @@ - define_library(nsl gethostbyname) - endif (NOT have_gethostbyname) - -+macro_push_required_vars() -+set(CMAKE_REQUIRED_LIBRARIES ${SOCKET_LIBRARIES}) -+check_c_source_runs(" -+#include <sys/socket.h> -+#include <sys/un.h> -+#include <sys/stat.h> -+#include <sys/types.h> -+#include <string.h> -+#include <unistd.h> -+#include <errno.h> -+int main() -+{ -+ int fd, fd2; -+ struct sockaddr_un sa; -+ -+ if ((fd = socket(PF_UNIX, SOCK_STREAM, 0)) < 0) -+ return 2; -+ sa.sun_family = AF_UNIX; -+ strcpy(sa.sun_path, \"testsock\"); -+ unlink(sa.sun_path); -+ if (bind(fd, (struct sockaddr *)&sa, sizeof(sa))) -+ return 2; -+ chmod(sa.sun_path, 0); -+ setuid(getuid() + 1000); -+ if ((fd2 = socket(PF_UNIX, SOCK_STREAM, 0)) < 0) -+ return 2; -+ connect(fd2, (struct sockaddr *)&sa, sizeof(sa)); -+ return errno != EACCES; -+} -+" HONORS_SOCKET_PERMS) -+macro_pop_required_vars() -+ - # for genkdmconf; this is TODO - #if (EXISTS /etc/ttys) - # set(BSD_INIT 1) -Index: kdm/config-kdm.h.cmake -=================================================================== ---- kdm/config-kdm.h.cmake (revision 1114813) -+++ kdm/config-kdm.h.cmake (working copy) -@@ -129,6 +129,9 @@ - /* Define to 1 if the ck-connector library is found */ - #cmakedefine HAVE_CKCONNECTOR 1 - -+/* Define to 1 if OS honors permission bits on socket inodes */ -+#cmakedefine HONORS_SOCKET_PERMS 1 -+ - /* $PATH defaults set by KDM */ - #cmakedefine KDM_DEF_USER_PATH "${KDM_DEF_USER_PATH}" - #cmakedefine KDM_DEF_SYSTEM_PATH "${KDM_DEF_SYSTEM_PATH}" -Index: kdm/backend/ctrl.c -=================================================================== ---- kdm/backend/ctrl.c (revision 1114813) -+++ kdm/backend/ctrl.c (working copy) -@@ -78,8 +78,26 @@ - } - - -+#ifdef HONORS_SOCKET_PERMS - static CtrlRec ctrl = { 0, 0, -1, 0 }; -+#else -+static CtrlRec ctrl = { 0, 0, 0, -1, 0 }; - -+static int mkTempDir( char *dir ) -+{ -+ int i, l = strlen( dir ) - 6; -+ -+ for (i = 0; i < 100; i++) { -+ randomStr( dir + l ); -+ if (!mkdir( dir, 0700 )) -+ return True; -+ if (errno != EEXIST) -+ break; -+ } -+ return False; -+} -+#endif -+ - void - openCtrl( struct display *d ) - { -@@ -97,7 +115,7 @@ - if (cr->fd < 0) { - if (mkdir( fifoDir, 0755 )) { - if (errno != EEXIST) { -- logError( "mkdir %\"s failed; no control FiFos will be available\n", -+ logError( "mkdir %\"s failed: %m; no control sockets will be available\n", - fifoDir ); - return; - } -@@ -110,38 +128,74 @@ - strApp( &cr->path, sockdir, "/socket", (char *)0 ); - if (cr->path) { - if (strlen( cr->path ) >= sizeof(sa.sun_path)) -- logError( "path %\"s too long; no control sockets will be available\n", -+ logError( "path %\"s too long; control socket will not be available\n", - cr->path ); -- else if (mkdir( sockdir, 0755 ) && errno != EEXIST) -- logError( "mkdir %\"s failed; no control sockets will be available\n", -+#ifdef HONORS_SOCKET_PERMS -+ else if (mkdir( sockdir, 0700 ) && errno != EEXIST) -+ logError( "mkdir %\"s failed: %m; control socket will not be available\n", - sockdir ); -+ else if (unlink( cr->path ) && errno != ENOENT) -+ logError( "unlink %\"s failed: %m; control socket will not be available\n", -+ cr->path ); - else { -- if (!d) -- chown( sockdir, -1, fifoGroup ); -+#else -+ else if (unlink( sockdir ) && errno != ENOENT) -+ logError( "unlink %\"s failed: %m; control socket will not be available\n", -+ sockdir ); -+ else if (!strApp( &cr->realdir, sockdir, "-XXXXXX", (char *)0)) -+ ; -+ else if (!mkTempDir( cr->realdir )) { -+ logError( "mkdir %\"s failed: %m; control socket will not be available\n", -+ cr->realdir ); -+ free( cr->realdir ); -+ cr->realdir = 0; -+ } else if (symlink( cr->realdir, sockdir )) { -+ logError( "symlink %\"s => %\"s failed: %m; control socket will not be available\n", -+ sockdir, cr->realdir ); -+ rmdir( cr->realdir ); -+ free( cr->realdir ); -+ cr->realdir = 0; -+ } else { -+ chown( sockdir, 0, d ? 0 : fifoGroup ); - chmod( sockdir, 0750 ); -+#endif - if ((cr->fd = socket( PF_UNIX, SOCK_STREAM, 0 )) < 0) -- logError( "Cannot create control socket\n" ); -+ logError( "Cannot create control socket: %m\n" ); - else { -- unlink( cr->path ); - sa.sun_family = AF_UNIX; - strcpy( sa.sun_path, cr->path ); - if (!bind( cr->fd, (struct sockaddr *)&sa, sizeof(sa) )) { - if (!listen( cr->fd, 5 )) { -+#ifdef HONORS_SOCKET_PERMS -+ chmod( cr->path, 0660 ); -+ if (!d) -+ chown( cr->path, -1, fifoGroup ); -+ chmod( sockdir, 0755 ); -+#else - chmod( cr->path, 0666 ); -+#endif - registerCloseOnFork( cr->fd ); - registerInput( cr->fd ); - free( sockdir ); - return; - } - unlink( cr->path ); -- logError( "Cannot listen on control socket %\"s\n", -+ logError( "Cannot listen on control socket %\"s: %m\n", - cr->path ); - } else -- logError( "Cannot bind control socket %\"s\n", -+ logError( "Cannot bind control socket %\"s: %m\n", - cr->path ); - close( cr->fd ); - cr->fd = -1; - } -+#ifdef HONORS_SOCKET_PERMS -+ rmdir( sockdir ); -+#else -+ unlink( sockdir ); -+ rmdir( cr->realdir ); -+ free( cr->realdir ); -+ cr->realdir = 0; -+#endif - } - free( cr->path ); - cr->path = 0; -@@ -162,7 +216,14 @@ - cr->fd = -1; - unlink( cr->path ); - *strrchr( cr->path, '/' ) = 0; -+#ifdef HONORS_SOCKET_PERMS - rmdir( cr->path ); -+#else -+ rmdir( cr->realdir ); -+ free( cr->realdir ); -+ cr->realdir = 0; -+ unlink( cr->path ); -+#endif - free( cr->path ); - cr->path = 0; - while (cr->css) { -@@ -177,10 +238,11 @@ - chownCtrl( CtrlRec *cr, int uid ) - { - if (cr->path) { -- char *ptr = strrchr( cr->path, '/' ); -- *ptr = 0; -+#ifdef HONORS_SOCKET_PERMS - chown( cr->path, uid, -1 ); -- *ptr = '/'; -+#else -+ chown( cr->realdir, uid, -1 ); -+#endif - } - } - -Index: kdm/backend/dm.h -=================================================================== ---- kdm/backend/dm.h (revision 1114813) -+++ kdm/backend/dm.h (working copy) -@@ -232,6 +232,9 @@ - struct cmdsock *css; /* open connections */ - - char *path; /* filename of the socket */ -+#ifndef HONORS_SOCKET_PERMS -+ char *realdir; /* real dirname of the socket */ -+#endif - int fd; /* fd of the socket */ - int gid; /* owner group of the socket */ - } CtrlRec; diff --git a/kde-base/kdm/files/kdm-4.4.2-CVE-2010-0436.patch b/kde-base/kdm/files/kdm-4.4.2-CVE-2010-0436.patch deleted file mode 100644 index b6363bfac521..000000000000 --- a/kde-base/kdm/files/kdm-4.4.2-CVE-2010-0436.patch +++ /dev/null @@ -1,202 +0,0 @@ -Index: kdm/ConfigureChecks.cmake -=================================================================== ---- kdm/ConfigureChecks.cmake (revision 1114416) -+++ kdm/ConfigureChecks.cmake (revision 1114417) -@@ -80,6 +80,38 @@ - define_library(nsl gethostbyname) - endif (NOT have_gethostbyname) - -+macro_push_required_vars() -+set(CMAKE_REQUIRED_LIBRARIES ${SOCKET_LIBRARIES}) -+check_c_source_runs(" -+#include <sys/socket.h> -+#include <sys/un.h> -+#include <sys/stat.h> -+#include <sys/types.h> -+#include <string.h> -+#include <unistd.h> -+#include <errno.h> -+int main() -+{ -+ int fd, fd2; -+ struct sockaddr_un sa; -+ -+ if ((fd = socket(PF_UNIX, SOCK_STREAM, 0)) < 0) -+ return 2; -+ sa.sun_family = AF_UNIX; -+ strcpy(sa.sun_path, \"testsock\"); -+ unlink(sa.sun_path); -+ if (bind(fd, (struct sockaddr *)&sa, sizeof(sa))) -+ return 2; -+ chmod(sa.sun_path, 0); -+ setuid(getuid() + 1000); -+ if ((fd2 = socket(PF_UNIX, SOCK_STREAM, 0)) < 0) -+ return 2; -+ connect(fd2, (struct sockaddr *)&sa, sizeof(sa)); -+ return errno != EACCES; -+} -+" HONORS_SOCKET_PERMS) -+macro_pop_required_vars() -+ - # for genkdmconf; this is TODO - #if (EXISTS /etc/ttys) - # set(BSD_INIT 1) -Index: kdm/config-kdm.h.cmake -=================================================================== ---- kdm/config-kdm.h.cmake (revision 1114416) -+++ kdm/config-kdm.h.cmake (revision 1114417) -@@ -129,6 +129,9 @@ - /* Define to 1 if the ck-connector library is found */ - #cmakedefine HAVE_CKCONNECTOR 1 - -+/* Define to 1 if OS honors permission bits on socket inodes */ -+#cmakedefine HONORS_SOCKET_PERMS 1 -+ - /* $PATH defaults set by KDM */ - #cmakedefine KDM_DEF_USER_PATH "${KDM_DEF_USER_PATH}" - #cmakedefine KDM_DEF_SYSTEM_PATH "${KDM_DEF_SYSTEM_PATH}" -Index: kdm/backend/ctrl.c -=================================================================== ---- kdm/backend/ctrl.c (revision 1114416) -+++ kdm/backend/ctrl.c (revision 1114417) -@@ -79,8 +79,26 @@ - } - - -+#ifdef HONORS_SOCKET_PERMS - static CtrlRec ctrl = { 0, 0, -1, 0 }; -+#else -+static CtrlRec ctrl = { 0, 0, 0, -1, 0 }; - -+static int mkTempDir( char *dir ) -+{ -+ int i, l = strlen( dir ) - 6; -+ -+ for (i = 0; i < 100; i++) { -+ randomStr( dir + l ); -+ if (!mkdir( dir, 0700 )) -+ return True; -+ if (errno != EEXIST) -+ break; -+ } -+ return False; -+} -+#endif -+ - void - openCtrl( struct display *d ) - { -@@ -113,22 +131,50 @@ - if (strlen( cr->path ) >= sizeof(sa.sun_path)) - logError( "path %\"s too long; control socket will not be available\n", - cr->path ); -- else if (mkdir( sockdir, 0755 ) && errno != EEXIST) -+#ifdef HONORS_SOCKET_PERMS -+ else if (mkdir( sockdir, 0700 ) && errno != EEXIST) - logError( "mkdir %\"s failed: %m; control socket will not be available\n", - sockdir ); -+ else if (unlink( cr->path ) && errno != ENOENT) -+ logError( "unlink %\"s failed: %m; control socket will not be available\n", -+ cr->path ); - else { -- if (!d) -- chown( sockdir, -1, fifoGroup ); -+#else -+ else if (unlink( sockdir ) && errno != ENOENT) -+ logError( "unlink %\"s failed: %m; control socket will not be available\n", -+ sockdir ); -+ else if (!strApp( &cr->realdir, sockdir, "-XXXXXX", (char *)0)) -+ ; -+ else if (!mkTempDir( cr->realdir )) { -+ logError( "mkdir %\"s failed: %m; control socket will not be available\n", -+ cr->realdir ); -+ free( cr->realdir ); -+ cr->realdir = 0; -+ } else if (symlink( cr->realdir, sockdir )) { -+ logError( "symlink %\"s => %\"s failed: %m; control socket will not be available\n", -+ sockdir, cr->realdir ); -+ rmdir( cr->realdir ); -+ free( cr->realdir ); -+ cr->realdir = 0; -+ } else { -+ chown( sockdir, 0, d ? 0 : fifoGroup ); - chmod( sockdir, 0750 ); -+#endif - if ((cr->fd = socket( PF_UNIX, SOCK_STREAM, 0 )) < 0) - logError( "Cannot create control socket: %m\n" ); - else { -- unlink( cr->path ); - sa.sun_family = AF_UNIX; - strcpy( sa.sun_path, cr->path ); - if (!bind( cr->fd, (struct sockaddr *)&sa, sizeof(sa) )) { - if (!listen( cr->fd, 5 )) { -+#ifdef HONORS_SOCKET_PERMS -+ chmod( cr->path, 0660 ); -+ if (!d) -+ chown( cr->path, -1, fifoGroup ); -+ chmod( sockdir, 0755 ); -+#else - chmod( cr->path, 0666 ); -+#endif - registerCloseOnFork( cr->fd ); - registerInput( cr->fd ); - free( sockdir ); -@@ -143,6 +189,14 @@ - close( cr->fd ); - cr->fd = -1; - } -+#ifdef HONORS_SOCKET_PERMS -+ rmdir( sockdir ); -+#else -+ unlink( sockdir ); -+ rmdir( cr->realdir ); -+ free( cr->realdir ); -+ cr->realdir = 0; -+#endif - } - free( cr->path ); - cr->path = 0; -@@ -163,7 +217,14 @@ - cr->fd = -1; - unlink( cr->path ); - *strrchr( cr->path, '/' ) = 0; -+#ifdef HONORS_SOCKET_PERMS - rmdir( cr->path ); -+#else -+ rmdir( cr->realdir ); -+ free( cr->realdir ); -+ cr->realdir = 0; -+ unlink( cr->path ); -+#endif - free( cr->path ); - cr->path = 0; - while (cr->css) { -@@ -178,10 +239,11 @@ - chownCtrl( CtrlRec *cr, int uid ) - { - if (cr->path) { -- char *ptr = strrchr( cr->path, '/' ); -- *ptr = 0; -+#ifdef HONORS_SOCKET_PERMS - chown( cr->path, uid, -1 ); -- *ptr = '/'; -+#else -+ chown( cr->realdir, uid, -1 ); -+#endif - } - } - -Index: kdm/backend/dm.h -=================================================================== ---- kdm/backend/dm.h (revision 1114416) -+++ kdm/backend/dm.h (revision 1114417) -@@ -232,6 +232,9 @@ - struct cmdsock *css; /* open connections */ - - char *path; /* filename of the socket */ -+#ifndef HONORS_SOCKET_PERMS -+ char *realdir; /* real dirname of the socket */ -+#endif - int fd; /* fd of the socket */ - int gid; /* owner group of the socket */ - } CtrlRec; |