Re: Xorg ICE vs. Xfce4 (4.2-RC3) needs fixing /etc/rc.d/cleartmp

From: Brooks Davis <brooks_at_one-eyed-alien.net>
Date: Thu, 6 Jan 2005 20:48:46 -0800
On Fri, Jan 07, 2005 at 01:38:32PM +0900, Rob wrote:
> Brooks Davis wrote:
> >On Fri, Jan 07, 2005 at 08:08:34AM +0900, Rob wrote:
> >
> >>Hi,
> >>
> >>I'm testing Xfce 4.2-RC3, but it has following problems at startup:
> >>
> >>---------------- .xsession-errors
> >>_IceTransmkdir: ERROR: euid != 0,directory /tmp/.ICE-unix will not be 
> >>created.
> >>_IceTransSocketUNIXCreateListener: mkdir(/tmp/.ICE-unix) failed, errno = 2
> >>_IceTransMakeAllCOTSServerListeners: failed to create listener for local
> >>xfce4-session: Unable to establish ICE listeners: Cannot establish any 
> >>listening sockets
> >
> >
> >>The patch below from Pawel Worach solves the problem.
> >
> >
> >Could you please try the following patch?  It does the same thing, but
> >gives the inode paranoid a way to disable the creation of these
> >directories or only create the ones they need.
> >
> >-- Brooks
> >
> >Index: rc.d/cleartmp
> >===================================================================
> >RCS file: /usr/cvs/src/etc/rc.d/cleartmp,v
> >retrieving revision 1.11
> >diff -u -p -r1.11 cleartmp
> >--- rc.d/cleartmp	7 Oct 2004 13:55:25 -0000	1.11
> >+++ rc.d/cleartmp	7 Jan 2005 00:31:51 -0000
> >_at__at_ -35,5 +35,7 _at__at_ run_rc_command "$1"
> > # restarting X
> > #
> > rm -f /tmp/.X[0-9]-lock
> >-rm -fr /tmp/.X11-unix
> >-mkdir -m 1777 /tmp/.X11-unix
> >+if [ -n ${clear_tmp_xdirs} ]; then
> >+	rm -fr ${clear_tmp_xdirs}
> >+	mkdir -m 1777 ${clear_tmp_xdirs}
> >+fi
> 
> Brooks,
> 
> Inode paraniods are not concerned about *removing* these tmp_xdirs, but
> more about creating them, right? Moreover, if these tmp_xdirs are already
> there, and at some point ${clear_tmp_xdirs} is cleared, then the tmp_xdirs
> will never be removed at a next reboot!
> That won't make the paranoids happy....
> 
> So I'd suggest to always remove them, but check whether you should create 
> them;
> something like this:
> 
>  rm -f /tmp/.X[0-9]-lock
> -rm -fr /tmp/.X11-unix
> -mkdir -m 1777 /tmp/.X11-unix
> +rm -fr /tmp/.X11-unix /tmp/.font-unix /tmp/.ICE-unix
> +case ${create_tmp_xdirs} in
> +[Yy][Ee][Ss])
> +	mkdir -m 1777 /tmp/.X11-unix /tmp/.font-unix /tmp/.ICE-unix
> +	;;
> +esac

I prefer my idea.  People who are really worried about the inodes know
where to find rm(1).  This allows people who do need some directories,
but not others to change the list by editing rc.conf.  Avoiding
hardcoding these directories was a good portion of my goal.  One could
argue that create_tmp_sockdirs would be a better name on the principle
that someone could add a non-X11 program that uses a similar scheme.

-- Brooks

-- 
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4

Received on Fri Jan 07 2005 - 03:46:56 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:25 UTC