Commit graph

289 commits

Author SHA1 Message Date
Kenny Levinsen
d68c5feaee poller: Inline the poller into the server struct 2020-08-03 02:13:22 +02:00
Kenny Levinsen
3f3bdd41dd poller: Remove unnecessary poll_impl abstraction 2020-08-03 01:15:20 +02:00
Kenny Levinsen
4f4a17a2bd libseat: Remove unused stdarg.h import 2020-08-03 00:57:34 +02:00
Kenny Levinsen
3a5c17f911 compiler: Rename erroneous header-guard 2020-08-03 00:57:20 +02:00
Kenny Levinsen
9d2e63d090 terminal: Remove unused prototypes 2020-08-03 00:56:38 +02:00
Kenny Levinsen
6d031426aa list: Make list_concat argument const 2020-08-03 00:56:27 +02:00
Kenny Levinsen
a003e92600 client: Prefix notification methods with 'send' 2020-08-03 00:56:10 +02:00
Kenny Levinsen
3e301b8e70 libseat: Use symbol file instead of -fvisibility 2020-08-03 00:54:55 +02:00
Kenny Levinsen
b2cbe576d1 seat: Deactivate devices before sending disable
Previously, seatd would not deactivate devices until the client had
acked the disable. In once instance, this lead to libinput spending
significant time checking and closing each input device.

As a workaround, mimick logind's behavior of deactivating devices first.
The original behavior can be reintroduced if the client-side problem is
fixed.

Closes: https://todo.sr.ht/~kennylevinsen/seatd/5
2020-08-02 21:46:13 +02:00
Kenny Levinsen
5b4d00d6cf list: Add list_pop_back 2020-08-02 21:46:13 +02:00
Kenny Levinsen
b751481e5c seat: Open/close tty on activation/deactivation
The VT and KD ioctl's are picky about the tty fd used. In order to
satisfy these, and to improve state cleanup, we now only and store the
current tty when opening a client, and use this fd to perform teardown
later. The presence of the fd is also used to signal that teardown is
needed.
2020-08-02 21:46:10 +02:00
Kenny Levinsen
b731b18e0a terminal: Correctly set K_ON on keyboard enable 2020-08-02 17:47:34 +02:00
Kenny Levinsen
eace556aa8 log: Fix inverted loglevel check 2020-08-02 17:46:46 +02:00
Kenny Levinsen
ce6ab30d5a seat: Fix seat_device->fd assert 2020-08-01 23:13:54 +02:00
Kenny Levinsen
d26466bf3b Remove ALWAYS_INLINE
Didn't do what I wanted it to anyway.
2020-08-01 23:13:54 +02:00
Kenny Levinsen
2be0826959 connection: Shrink buffers from 1KB to 256B each 2020-08-01 23:13:44 +02:00
Kenny Levinsen
7252558689 Add platform support note to README 2020-08-01 17:18:53 +02:00
Kenny Levinsen
6f6f5de154 seatd: Perform clean server shutdown 2020-08-01 17:02:28 +02:00
Kenny Levinsen
957483fde5 ci: Add completion print to smoketest 2020-08-01 17:02:28 +02:00
Kenny Levinsen
9f5fcec874 ci: Add Alpine/FreeBSD builtin smoketest 2020-08-01 16:53:44 +02:00
Kenny Levinsen
509e64a341 simpletest: Take file to open as argument 2020-08-01 16:53:44 +02:00
Kenny Levinsen
2462284dc5 ci: Add FreeBSD 2020-08-01 16:53:44 +02:00
Kenny Levinsen
56947d530e FreeBSD compiler warning fix 2020-08-01 16:53:44 +02:00
Kenny Levinsen
2f54beb5fe client: Implement get_peer for FreeBSD 2020-08-01 16:53:44 +02:00
Kenny Levinsen
e129536a08 devices: Use path to check device type
FreeBSD device numbers cannot be used to check the type of a device, as
they are merely unique filesystem IDs.

As the paths we use have been sanitized with realpath, we can simply use
the path to check if a requested file is an evdev or drm device. This
also allows us to make the check before the file is opened.
2020-08-01 16:53:44 +02:00
Kenny Levinsen
dc9c7bff71 devices: FreeBSD support in drm and evdev code 2020-08-01 16:53:44 +02:00
Kenny Levinsen
956a378adb log: Avoid unnecessary GNU extension 2020-08-01 16:53:44 +02:00
Kenny Levinsen
c5c036531c terminal: FreeBSD VT and KD handling 2020-08-01 16:53:44 +02:00
Kenny Levinsen
f754198c5b meson: FreeBSD options 2020-08-01 02:37:26 +02:00
Kenny Levinsen
554898e6b3 meson: Set _FORTIFY_SOURCE=2 for optimized builds 2020-07-31 16:03:49 +02:00
Kenny Levinsen
85860e4e7c seat: Use PATH_MAX long array for realpath 2020-07-31 15:58:19 +02:00
Kenny Levinsen
9d08511da4 meson: Add summary printout 2020-07-31 14:19:41 +02:00
Kenny Levinsen
1d188d2f09 seat: remove_client return value was inverted 2020-07-31 13:29:05 +02:00
Kenny Levinsen
6a01725294 Add LICENSE 2020-07-31 01:34:04 +02:00
Kenny Levinsen
8656607b92 Update README 2020-07-31 01:32:29 +02:00
Kenny Levinsen
1dbd920307 ci: Initial CI 2020-07-31 00:23:15 +02:00
Kenny Levinsen
3b32bd539b Add clang format specification 2020-07-31 00:23:03 +02:00
Kenny Levinsen
61716a2c77 Initial implementation of seatd and libseat 2020-07-31 00:22:18 +02:00
Kenny Levinsen
f85434de66 Initial commit 2020-06-26 01:50:30 +02:00