wlroots-hyprland/backend/session
Patrick Steinhardt fa05d3cde6 session: Don't refuse unprivileged creation of "direct" backend
When starting a compositor that's using the "direct" session backend,
wlroots needs to handle calls to `drmSetMaster()` and `drmDropMaster()`.
As both calls used to require `CAP_SYS_ADMIN`, wlroots thus simply
refused starting in case the process doesn't enjoy evelated privileges.

Permission rules have changed since linux.git commit 45bc3d26c95a (drm:
rework SET_MASTER and DROP_MASTER perm handling, 2020-03-19). As a
result, starting with Linux v5.8, both ioctls will now also succeed if
the process is currently or has been the DRM master. And as the first
process to open render nodes will become the DRM master automatically,
this effectively means that process elevation is not strictly required
in all setups anymore.

So let's drop the `geteuid() != 0` permission check to allow those new
rules to do their magic.
2020-09-04 11:39:25 +02:00
..
direct-freebsd.c session: Add missing init to direct-freebsd 2020-08-26 22:56:54 +02:00
direct-ipc.c session: Don't refuse unprivileged creation of "direct" backend 2020-09-04 11:39:25 +02:00
direct.c session: Add libseat backend 2020-08-24 11:13:55 +02:00
libseat.c backend/session/libseat: register log handler 2020-09-01 12:09:25 +02:00
logind.c Quieten failure to set login session type 2020-09-02 11:35:32 +02:00
meson.build backend/session/libseat: register log handler 2020-09-01 12:09:25 +02:00
noop.c session: Add libseat backend 2020-08-24 11:13:55 +02:00
session.c session: Add libseat backend 2020-08-24 11:13:55 +02:00