On Mon, 5 Apr 1999, Eric Delaunay wrote: > About wrong /dev/fb0 permissions, could someone investigate why X does > not find the device if not world writable ? I was not able to track it
Alright, I just found the answer. X uses the access() syscall to check to see if it can access /dev/fb*, and access() uses your _real_ uid/gid, not your _effective_ uid/gid, so even when it's setuid it's still checking if _you_ can access /dev/fb*. I suspect you could play games with set(r)euid(2) here to work around this, or perhaps fake the access() calls with a stat() and some logic. > Why X don't use /dev/sunmouse directly then ? And gpm too ? > This way, no need to manage the symlink. X and gpm default to /dev/mouse on all platforms, it seems. > I'm using a french keyboard (latin1 layout) and I cannot switch back to > virtual consoles. CTRL-ALT + F<n> are inoperant. Any advice ? It doesn't work here, either. (Type 5, US UNIX layout, 2.2.5-cvs.) stracing chvt shows the kernel successfully completing the ioctl() to switch consoles, and then blocking on the "wait for switch to complete" ioctl(). --Jeff

