Commit Graph

25 Commits

Author SHA1 Message Date
matthieu
1c882161e8 In priv_open_device() allow opening tty[E-J]0. While there remove
ttyD[1-7] from the list, since those devices will never get used by X.
2012-08-14 15:57:57 +00:00
matthieu
1996326d50 Fix a logic introducred in rev 1.23. The parent pid is initialized
by the main X server too late in the privsep case (already in the
unpriviliged child). So keep the early init for this case.
2012-08-12 14:06:42 +00:00
matthieu
5f8132e311 Add privsep prototypes to osdep.h 2012-08-07 20:16:12 +00:00
matthieu
c7c0180b4c In non-privilege sepration mode, avoid accidentally sending
a SIGUSR1 signal to init(8).

It can happen that xdm dies before the X server that it started.
In that case X's is reparented by init...

This is handled correctly when privilege separation is not compiled
but got overlooked in the privilege separation case.
2012-08-07 20:15:23 +00:00
matthieu
4f2bf5df6d Rename 'socket' parameter to avoid shadowing the global declaration. 2012-08-07 20:13:18 +00:00
matthieu
e60da74507 Update to xserver 1.12.2. tested by naddy@, krw@, mpi@. 2012-06-10 13:21:05 +00:00
matthieu
b4a75b3e96 Return an error much earlier if recvmsg fails. 2012-04-04 20:34:55 +00:00
matthieu
b9f30b39b5 Remove warnings emitted when a device can't be opened. This
is just noise and now happens while the X autoconfiguration
code probes all /dev/wsmouse<n> devices.
If the error matters, the driver will emit a proper error
nevertheless.
2011-08-20 17:30:37 +00:00
matthieu
3870417379 restart recvmsg() if returning with errno==EINTR.
Fixes a crash on server reset on some machines.
Code inspired by ssh, with feedback from guenther@ and millert@
ok guenther@ miod@
2011-01-28 19:37:55 +00:00
matthieu
55b9b068ae Bring fix from rev 1.12 back once more. ok oga@. 2010-12-22 21:36:05 +00:00
matthieu
428261197a Upgrade to xorg-server 1.9.2.
Tested by ajacoutot@, krw@, shadchin@ and jasper@ on various configurations
including multihead with both zaphod and xrandr.
2010-12-05 15:36:02 +00:00
matthieu
0026b7ed04 restore version 1.12 of privsep.c which got accidentally reverted
by my xserver 1.6 merge. noticed by oga@
2009-09-08 19:52:26 +00:00
matthieu
88f6f3ea75 update to xserver 1.6.4rc1. Tested by many, ok oga@. 2009-09-06 19:44:18 +00:00
oga
251e57a556 Make the !privsep and privsep paths a little more similar (still
checking the list), this allows drm to work in -keepPriv situations.

This diff has been in my tree awaiting proper testing for months, now
i'm sure it works correctly in it goes.

ok matthieu@ an aeon ago.
2009-07-14 18:25:16 +00:00
matthieu
60021fe985 xserver 1.5.2. tested by ckuethe@, oga@, and others. 2008-11-02 15:26:08 +00:00
mbalmer
6ce13d3a8e Add /dev/tty04 to the list of devices privilege separated X can open.
(The IBM SurePos 500 has six serial lines and the touch screen is at
this device).

ok oga@
2008-08-28 17:50:21 +00:00
matthieu
97eda17882 Update to xserver 1.4.2. Tested by landry@, ckuethe@, jsing@ mbalmer@. 2008-06-15 00:17:32 +00:00
mbalmer
c0e3e5ed7f Add amdmsr(4) to the list of privsep devices.
ok matthieu
2008-06-14 21:37:13 +00:00
oga
4b526e486b change /dev/dri/card0 to /dev/drm0. Subdirs in /dev considered
irritating.
2008-06-12 22:20:24 +00:00
oga
bfd8533a7d Deal with devices that need to be opened differently to what we do in
privsep ( O_NONBLOCK | O_RDWR | O_EXCL) by turning the list of allowed
devices into a struct, with the flags we're supposed to use, then using
these values with open(). Add /dev/dri/card0 there too (more'll be needed to be
added when it matters).

This gives privsep with dri a chance to work.

ok matthieu
2008-06-12 18:50:19 +00:00
matthieu
d00d2dd896 msg_controllen has to be CMSG_SPACE so that the kernel can account for
each cmsg_len (ie. msg_controllen = sum of CMSG_ALIGN(cmsg_len).  This
works now that kernel fd passing has been fixed to accept a bit of
sloppiness because of this ABI repair.
lots of discussion with kettenis. From deraadt@
2008-03-24 21:24:52 +00:00
matthieu
16236de311 Repair msg_controllen. In those cases it should just be
CMSG_SIZE(sizeof(int)), not sizeof(buffer) which may be larger because
of alignment. Based on fixes in base system.
2008-03-15 17:14:11 +00:00
matthieu
f0623845fe Correct CMSG_SPACE and CMSG_LEN usage, same fixes as in the base system.
ok deraadt@
2008-03-13 06:53:06 +00:00
matthieu
a7908c655f Support the new AGP device. Work by oga@ and me, with some ideas from
dim@ long ago.
2007-11-25 18:41:23 +00:00
matthieu
c155af5f9a OpenBSD local modifications:
- privilege separation
- some snprintf/strlc{at,py} conversions
- support for more architectures
- signal handler fixes
- default mouse wheel support in config tools
- sunmouse protocol
2006-11-28 20:29:31 +00:00