Author: Mike A. Harris Purpose: Remove bogus unnecessary 5 second delays from libICE. Details (from Havoc Pennington in Red Hat bugzilla bug 66751): It's in the "lib/xtrans" directory in Xlib source code, trans_mkdir, it makes a directory in /tmp, checks its ownership, if not owned by root it does sleep(5). Do a default fresh install of 7.2 or 7.3 and log in with a new user account. Note that it triggers the warning about root and sleeps for 5 seconds, then continues. This happens when the GNOME/KDE session managers start up ICE. This is either a) a real security issue or b) a pointless 5-second login delay. Here is the exact code from Xtransutil.c: if (updateOwner && !updatedOwner) { PRMSG(1, "mkdir: Owner of %s should be set to root\n", path, 0, 0); sleep(5); } if (updateMode && !updatedMode) { PRMSG(1, "mkdir: Mode of %s should be set to %04o\n", path, mode, 0); sleep(5); } So the fix is either to create a setuid helper or something so that libICE can always set the owner of that dir to root, or just remove the sleep. But the current situation is just dumb. Notes from mharris: This patch has been around since Red Hat XFree86 4.2.x days or perhaps even earlier. It should be applied upstream, or the underlying problem should be resolved upstream. The 5 second delay serves no functional purpose. --- xc/lib/xtrans/Xtransutil.c.libICE-remove-stupid-delay Tue Sep 17 21:25:02 2002 +++ xc/lib/xtrans/Xtransutil.c Wed Oct 9 01:02:45 2002 @@ -503,16 +503,10 @@ if (updateOwner && !updatedOwner) { PRMSG(1, "mkdir: Owner of %s should be set to root\n", path, 0, 0); -#if !defined(__CYGWIN__) && !defined(__DARWIN__) - sleep(5); -#endif } if (updateMode && !updatedMode) { PRMSG(1, "mkdir: Mode of %s should be set to %04o\n", path, mode, 0); -#if !defined(__CYGWIN__) && !defined(__DARWIN__) - sleep(5); -#endif } return 0; }