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

Brooks Davis brooks at one-eyed-alien.net
Thu Jan 6 20:46:56 PST 2005


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
> >@@ -35,5 +35,7 @@ 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20050106/8a7a36e1/attachment.bin


More information about the freebsd-current mailing list